body.mrj-service-page { --mrjs-primary:#284638; --mrjs-dark:#1b3026; --mrjs-ink:#22382d; --mrjs-muted:#536157; --mrjs-paper:#f9f8f0; --mrjs-pale:#edf2e9; --mrjs-line:#d9e2d5; --mrjs-font:var(--rdm-font-family-base,sans-serif); background:var(--mrjs-paper); }
.mrj-service-page .rdm-content-hero--zero { display:none; }
.mrj-service-page #masthead, .mrj-service-page #masthead *, .mrj-service-page #masthead *::before { box-sizing:border-box; }
.mrj-service-page #masthead .rdmmb-revoza-bar, .mrj-service-page #masthead.rdmmb-is-stuck .rdmmb-revoza-bar { background:var(--mrjs-primary); border-color:#ffffff24; margin-inline:auto; }
.mrj-service-page #masthead .rdmmb-revoza-action .vc_btn3, .mrj-service-page #masthead .rdmmb-wp-menu__toggle { background:#e2eccf; color:var(--mrjs-ink); border-color:#cfdbca; }
.mrj-service-page #masthead .rdmmb-revoza-action .vc_btn3 { padding:12px 20px; }
.mrj-service-page #masthead .rdmmb-revoza-action .vc_btn3::before { content:none; }
.mrj-service-page:has(#masthead[data-rdmmb-position="fixed"]) .mrjs-main { padding-top:var(--rdm-header-height,118px); }
.mrjs-main { color:var(--mrjs-ink); font:400 16px/1.7 var(--mrjs-font); }
.mrjs-main *, .mrjs-main *::before, .mrjs-main *::after { box-sizing:border-box; }
.mrjs-main :is(h1,h2,h3,p,figure,dl,dd) { margin:0; }
.mrjs-main :is(h1,h2,h3) { font-family:inherit; color:inherit; font-weight:600; text-wrap:balance; }
.mrjs-main h2 { font-size:clamp(28px,3vw,38px); line-height:1.18; letter-spacing:-.035em; }
.mrjs-main a { color:inherit; text-decoration:none; }
.mrjs-main a:focus-visible, .mrjs-main summary:focus-visible { outline:3px solid #829853; outline-offset:5px; }
.mrjs-main svg { width:20px; height:20px; flex-shrink:0; }
.mrjs-container { width:min(100% - 64px,1200px); margin-inline:auto; }
.mrjs-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; padding:30px 0; color:var(--mrjs-muted); font-size:12px; }
.mrjs-breadcrumb a:hover { text-decoration:underline; }
.mrjs-breadcrumb [aria-current] { color:var(--mrjs-ink); }
.mrjs-hero { display:grid; grid-template-columns:1.05fr 1fr; gap:clamp(32px,5vw,72px); align-items:center; padding:14px 0 64px; }
.mrjs-eyebrow { display:inline-flex; align-items:center; gap:8px; border:1px solid #cfdbca; background:var(--mrjs-pale); border-radius:99px; padding:6px 14px; font-size:12px; margin-bottom:30px; }
.mrjs-eyebrow svg { width:16px; height:16px; }
.mrjs-main .mrjs-kicker { text-transform:uppercase; font-size:11px; font-weight:600; letter-spacing:.14em; line-height:1.6; color:var(--mrjs-muted); margin-bottom:12px; }
.mrjs-hero h1 { font-size:clamp(40px,4.5vw,62px); line-height:1.06; letter-spacing:-.045em; margin-bottom:24px; overflow-wrap:anywhere; }
.mrjs-intro { font-size:18px; line-height:1.75; color:var(--mrjs-muted); max-width:550px; }
.mrjs-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px; margin-top:28px; }
.mrjs-button { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:50px; padding:14px 20px; border:1px solid transparent; border-radius:100px; background:var(--mrjs-primary); color:var(--mrjs-paper)!important; font-size:14px; line-height:1.4; font-weight:600; transition:background .2s; }
.mrjs-button:hover { background:var(--mrjs-dark); }
.mrjs-text-link { display:inline-flex; align-items:center; gap:9px; min-height:44px; font-size:13px; font-weight:600; }
.mrjs-text-link:hover { text-decoration:underline; text-underline-offset:5px; }
.mrjs-hero-facts { display:flex; flex-wrap:wrap; gap:12px 24px; padding-top:24px; margin-top:28px; border-top:1px solid var(--mrjs-line); color:var(--mrjs-muted); font-size:12px; }
.mrjs-hero-facts span { display:inline-flex; align-items:center; gap:8px; }
.mrjs-hero-facts svg { width:16px; height:16px; }
.mrjs-visual { position:relative; aspect-ratio:1/1.03; border-radius:100px 24px 24px; overflow:hidden; background:var(--mrjs-pale); }
.mrjs-visual > img { display:block; width:100%; height:100%; object-fit:cover; }
.mrjs-visual figcaption { position:absolute; inset:auto 20px 20px; display:flex; align-items:center; gap:12px; padding:16px 20px; border:1px solid #ffffff66; border-radius:16px; background:#f9f8f0ee; backdrop-filter:blur(8px); font-size:17px; font-weight:600; }
.mrjs-visual figcaption > svg { width:28px; height:28px; }
.mrjs-visual figcaption small { display:block; font-size:12px; font-weight:400; color:var(--mrjs-muted); }
.mrjs-image-placeholder { height:100%; display:grid; place-items:center; }
.mrjs-image-placeholder svg { width:80px; height:80px; color:var(--mrjs-primary); }
.mrjs-detail-layout { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr); gap:clamp(32px,6vw,88px); padding:56px 0 64px; border-top:1px solid var(--mrjs-line); scroll-margin-top:calc(var(--rdm-header-height,100px) + 50px); }
.mrjs-content { min-width:0; }
.mrjs-content h2 { margin:0 0 24px; }
.mrjs-content h2:not(:first-of-type) { margin-top:42px; }
.mrjs-content p { color:var(--mrjs-muted); margin-bottom:20px; }
.mrjs-content ul { list-style:none; margin:0; padding:0; }
.mrjs-content li { position:relative; padding:14px 0 14px 30px; border-bottom:1px solid var(--mrjs-line); }
.mrjs-content li::before { content:'✓'; position:absolute; left:0; color:var(--mrjs-primary); font-weight:600; }
.mrjs-content details { border:1px solid var(--mrjs-line); border-radius:14px; background:#ffffff66; margin-bottom:12px; }
.mrjs-content summary { cursor:pointer; padding:18px 20px; font-size:15px; font-weight:600; line-height:1.5; }
.mrjs-content details[open] summary { border-bottom:1px solid var(--mrjs-line); }
.mrjs-content details p { margin:0; padding:16px 20px 20px; font-size:14px; }
.mrjs-booking { align-self:start; padding:30px; border-radius:24px; background:var(--mrjs-primary); color:var(--mrjs-paper); }
.mrjs-booking-icon { width:46px; height:46px; border:1px solid #ffffff40; border-radius:50%; display:grid; place-items:center; margin-bottom:24px; }
.mrjs-booking .mrjs-kicker { color:#d7e5b7; font-size:10px; }
.mrjs-booking h2 { font-size:29px; margin-bottom:16px; }
.mrjs-booking > p:not(.mrjs-kicker) { color:#dbe5d9; font-size:14px; }
.mrjs-booking dl { margin:24px 0; }
.mrjs-booking dl > div { padding:14px 0; border-bottom:1px solid #ffffff26; }
.mrjs-booking dt { font-size:11px; text-transform:uppercase; letter-spacing:.07em; color:#d7e5b7; margin-bottom:3px; }
.mrjs-booking dd { font-size:14px; }
.mrjs-booking .mrjs-button--light { background:#e2eccf; color:var(--mrjs-dark)!important; width:100%; font-size:13px; padding-inline:12px; }
.mrjs-booking .mrjs-button--light:hover { background:var(--mrjs-paper); }
.mrjs-booking a:focus-visible { outline-color:#e2eccf; }
.mrjs-address { display:flex; align-items:flex-start; gap:9px; margin-top:22px; font-size:12px; line-height:1.6; }
.mrjs-address > svg { margin-top:2px; width:17px; height:17px; }
.mrjs-address small { display:flex; align-items:center; gap:7px; margin-top:7px; color:#d7e5b7; font-size:12px; }
.mrjs-address small svg { width:15px; height:15px; }
.mrjs-steps { background:var(--mrjs-pale); border:1px solid var(--mrjs-line); border-radius:24px; padding:36px; }
.mrjs-steps ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; padding:0; margin:30px 0 0; list-style:none; }
.mrjs-steps li > span { display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:50%; background:#dde7d4; font-size:12px; margin-bottom:16px; }
.mrjs-steps h3 { font-size:18px; line-height:1.35; margin-bottom:10px; }
.mrjs-steps li p { font-size:14px; color:var(--mrjs-muted); }
.mrjs-related { padding:64px 0 72px; }
.mrjs-section-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:30px; }
.mrjs-section-heading h2 { max-width:620px; }
.mrjs-section-heading > a { flex-shrink:0; }
.mrjs-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.mrjs-card { min-width:0; background:#fff; border:1px solid var(--mrjs-line); border-radius:20px; overflow:hidden; }
.mrjs-card > a { display:flex; flex-direction:column; height:100%; }
.mrjs-card-image { position:relative; aspect-ratio:16/10; overflow:hidden; background:var(--mrjs-pale); }
.mrjs-card-image img { width:100%; height:100%; display:block; object-fit:cover; }
.mrjs-card-image > span { position:absolute; right:14px; bottom:14px; display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:var(--mrjs-paper); }
.mrjs-card h3 { font-size:22px; line-height:1.25; padding:22px 22px 12px; letter-spacing:-.02em; }
.mrjs-card p { font-size:14px; color:var(--mrjs-muted); padding:0 22px 20px; }
.mrjs-card-link { display:flex; gap:8px; align-items:center; font-size:12px; font-weight:600; padding:0 22px 22px; margin-top:auto; }
.mrjs-protected { padding:30px 0 80px; }
@media (max-width:1000px) {
    .mrjs-hero { gap:32px; }.mrjs-intro { font-size:16px; }.mrjs-hero h1 { font-size:42px; }
    .mrjs-detail-layout { gap:32px; grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr); }.mrjs-booking { padding:24px; }
    .mrjs-section-heading { align-items:flex-start; flex-direction:column; gap:12px; }
}
@media (max-width:760px) {
    .mrjs-container { width:calc(100% - 40px); }.mrjs-breadcrumb { padding:22px 0; font-size:11px; gap:8px; }
    .mrjs-hero { grid-template-columns:minmax(0,1fr); gap:28px; padding:8px 0 36px; }.mrjs-hero h1 { font-size:clamp(36px,10vw,48px); margin-bottom:18px; }
    .mrjs-eyebrow { margin-bottom:24px; }.mrjs-actions { gap:10px; margin-top:24px; }.mrjs-actions .mrjs-button { width:100%; }
    .mrjs-hero-facts { margin-top:18px; padding-top:18px; }.mrjs-visual { aspect-ratio:4/3; border-radius:64px 20px 20px; }
    .mrjs-visual figcaption { inset:auto 14px 14px; padding:12px 14px; font-size:15px; }.mrjs-visual figcaption small { font-size:11px; }
    .mrjs-detail-layout { grid-template-columns:minmax(0,1fr); padding:34px 0 40px; gap:28px; }.mrjs-content h2 { font-size:29px; }
    .mrjs-content summary { padding:16px; }.mrjs-content details p { padding:16px; }.mrjs-booking { padding:26px; }
    .mrjs-steps { padding:26px; }.mrjs-steps ol { grid-template-columns:minmax(0,1fr); gap:24px; }.mrjs-steps li + li { padding-top:24px; border-top:1px solid var(--mrjs-line); }
    .mrjs-steps li > span { margin-bottom:12px; }.mrjs-steps h3 { font-size:18px; }.mrjs-related { padding:42px 0; }.mrjs-card-grid { grid-template-columns:minmax(0,1fr); gap:22px; }
}
@media(prefers-reduced-motion:reduce) { .mrjs-main *, .mrjs-main *::before { transition:none!important; scroll-behavior:auto!important; } }
