:root{
  --bg:#090705;--bg-2:#100c08;--panel:#17110b;--panel-2:#21170e;--paper:#f5eee2;--paper-2:#ebe0cf;
  --ink:#23190f;--text:#f8f2e9;--muted:#cbbba5;--dark-muted:#655744;--gold:#d5a64c;--gold-2:#f0cf83;
  --line:rgba(213,166,76,.28);--paper-line:rgba(63,42,22,.18);--success:#86c796;--error:#ff9b91;
  --shadow:0 24px 70px rgba(0,0,0,.28);--radius:22px;--radius-sm:12px;--container:min(1180px,calc(100% - 40px));
  --serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.65;overflow-x:hidden}body.menu-open,body.lightbox-open{overflow:hidden}img,video{max-width:100%;height:auto}picture{display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:var(--container);margin-inline:auto}.narrow{max-width:840px}.section{padding:92px 0;position:relative}.soft-section{background:var(--paper);color:var(--ink)}.dark-section{background:#050403}.align-center{align-items:center}.center-actions{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;margin-top:34px}.skip-link{position:fixed;top:8px;left:8px;z-index:9999;background:#fff;color:#000;padding:10px 16px;border-radius:8px;transform:translateY(-160%)}.skip-link:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.eyebrow{margin:0 0 12px;color:var(--gold-2);font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800}.soft-section .eyebrow,.legal-page .eyebrow{color:#8a5b17}h1,h2,h3{font-family:var(--serif);line-height:1.08;margin:0 0 18px;font-weight:600}h1{font-size:clamp(2.65rem,6.5vw,6.1rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,4.2vw,3.85rem);letter-spacing:-.035em}h3{font-size:clamp(1.25rem,2vw,1.72rem)}p{margin:0 0 18px}.section-head{max-width:820px;margin-bottom:48px}.section-head p:last-child{color:var(--muted);font-size:1.05rem}.section-head.light p:last-child{color:#d5c8b8}.section-copy>p:not(.eyebrow){color:var(--muted);font-size:1.04rem}.soft-section .section-copy>p:not(.eyebrow){color:var(--dark-muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid transparent;border-radius:999px;font-weight:800;letter-spacing:.015em;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn:focus-visible,.text-link:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #fff;outline-offset:3px}.soft-section .btn:focus-visible,.legal-page .btn:focus-visible{outline-color:#000}.btn-primary{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#1c1308;box-shadow:0 12px 28px rgba(213,166,76,.18)}.btn-primary:hover{background:#f4d891}.btn-secondary{background:#2b1c0d;color:#fff;border-color:#754f21}.btn-secondary:hover{background:#3a2714}.btn-ghost{border-color:rgba(255,255,255,.58);color:#fff;background:rgba(0,0,0,.18);backdrop-filter:blur(8px)}.btn-ghost:hover{background:#fff;color:#1b1209}.btn-ghost.dark{border-color:#6a4a24;color:#2b1b0c;background:transparent}.btn-ghost.dark:hover{background:#2b1b0c;color:#fff}.btn-small{min-height:40px;padding:8px 15px;font-size:.88rem}.btn-wide{width:100%}.text-link{display:inline-flex;align-items:center;color:var(--gold-2);font-weight:800;border-bottom:1px solid transparent}.soft-section .text-link,.legal-page .text-link{color:#74480d}.text-link:hover{border-color:currentColor}.pill{display:inline-flex;padding:6px 11px;border-radius:999px;background:rgba(213,166,76,.12);border:1px solid var(--line);color:var(--gold-2);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.soft-section .pill{color:#6a430d;border-color:#c5a46f;background:#efe1c9}
.site-header{position:fixed;inset:0 0 auto;z-index:1000;background:rgba(5,4,3,.78);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.07);transition:background .2s ease,box-shadow .2s ease}.site-header.scrolled{background:rgba(5,4,3,.96);box-shadow:0 10px 40px rgba(0,0,0,.26)}.utility-bar{min-height:34px;padding:5px max(20px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid rgba(255,255,255,.07);font-size:.72rem;color:#d8c8b6;text-transform:uppercase;letter-spacing:.08em}.utility-bar div{display:flex;gap:18px}.utility-bar a:hover{color:var(--gold-2)}.header-main{width:var(--container);min-height:76px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand-link{display:flex;align-items:center;width:210px;flex:0 0 auto}.brand-logo{display:block;width:100%;height:auto}.primary-nav{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:750}.primary-nav>a,.nav-dropdown>button{padding:10px 11px;border-radius:10px;border:0;background:none;color:#eee5d9}.primary-nav>a:hover,.primary-nav>a.active,.primary-nav>a[aria-current=page],.nav-dropdown>button:hover{background:rgba(255,255,255,.075);color:var(--gold-2)}.primary-nav .nav-book{background:var(--gold);color:#161008;padding-inline:17px}.primary-nav .nav-book:hover,.primary-nav .nav-book.active{background:var(--gold-2);color:#161008}.nav-dropdown{position:relative}.nav-dropdown>button{display:flex;align-items:center;gap:5px}.dropdown-menu{position:absolute;top:calc(100% + 12px);left:0;width:245px;padding:10px;background:#100c08;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.18s}.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu,.nav-dropdown.open .dropdown-menu{opacity:1;visibility:visible;transform:none}.dropdown-menu a{display:block;padding:10px 12px;border-radius:9px;color:#e9dfd1}.dropdown-menu a:hover,.dropdown-menu a.active{background:rgba(213,166,76,.13);color:var(--gold-2)}.menu-toggle{display:none;width:46px;height:46px;border:1px solid rgba(255,255,255,.25);border-radius:12px;background:transparent;padding:10px}.menu-toggle span{display:block;height:2px;background:#fff;margin:5px 0;border-radius:2px}
main{padding-top:110px}.breadcrumbs{padding-top:18px;padding-bottom:14px}.breadcrumbs ol{display:flex;gap:9px;flex-wrap:wrap;list-style:none;margin:0;padding:0;font-size:.78rem;color:#a99984}.breadcrumbs li:not(:last-child)::after{content:' /';margin-left:9px;color:#6f604f}.breadcrumbs a:hover{color:var(--gold-2)}
.hero{min-height:calc(100vh - 110px);display:flex;align-items:center;position:relative;overflow:hidden}.hero-media,.page-hero-media{position:absolute;inset:0}.hero-media{background:#080604 url('../media/responsive/van-02-1200.webp') center/cover no-repeat}.hero-media video,.page-hero-media img,.page-hero-media picture{width:100%;height:100%;object-fit:cover}.hero-media video{position:absolute}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,2,1,.94) 0%,rgba(3,2,1,.7) 45%,rgba(3,2,1,.32) 75%,rgba(3,2,1,.58) 100%),linear-gradient(0deg,rgba(3,2,1,.78),transparent 45%)}.hero-content{position:relative;z-index:2;padding:88px 0;max-width:850px;margin-left:max(20px,calc((100vw - 1180px)/2));margin-right:20px}.hero-content h1{max-width:850px}.hero-lead{max-width:720px;font-size:clamp(1.05rem,2.1vw,1.35rem);color:#e1d5c6}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:28px}.hero-points{display:flex;gap:15px 28px;flex-wrap:wrap;padding:0;margin:32px 0 0;list-style:none;color:#ddd0c1;font-size:.9rem}.hero-points li::before{content:'✦';color:var(--gold);margin-right:8px}.video-control{position:absolute;z-index:3;right:24px;bottom:22px;background:rgba(0,0,0,.62);color:#fff;border:1px solid rgba(255,255,255,.42);border-radius:999px;padding:8px 13px;font-size:.78rem}.trust-strip{background:#1a1108;border-block:1px solid var(--line)}.trust-strip .container{display:grid;grid-template-columns:repeat(4,1fr);gap:1px}.trust-strip span{padding:17px 14px;text-align:center;color:#e1d4c4;font-size:.84rem;border-right:1px solid var(--line)}.trust-strip span:last-child{border:0}
.page-hero{min-height:610px;display:flex;align-items:flex-end;position:relative;overflow:hidden}.page-hero-content{position:relative;z-index:2;padding:110px 0 76px;max-width:900px}.page-hero-content h1{font-size:clamp(2.7rem,6vw,5.3rem)}.page-hero-content>p:not(.eyebrow):not(.hero-note){max-width:760px;color:#e4d9ca;font-size:1.12rem}.hero-note{font-size:.78rem;color:#bcae9d;margin-top:18px}.legal-hero{padding:95px 0 64px;background:linear-gradient(135deg,#1c1208,#080604);border-bottom:1px solid var(--line)}.legal-hero h1{font-size:clamp(2.5rem,5vw,4.7rem)}
.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.experience-card,.content-card,.price-card,.route-card,.empty-proof,.thank-you-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));box-shadow:0 10px 35px rgba(0,0,0,.12)}.experience-card{display:flex;flex-direction:column}.card-media{aspect-ratio:4/3;overflow:hidden}.card-media picture,.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.experience-card:hover .card-media img{transform:scale(1.035)}.card-body{padding:26px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.card-body p:not(.eyebrow){color:var(--muted);flex:1}.split-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:64px}.media-frame{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:#120d08}.media-frame picture,.media-frame img{width:100%;height:100%;object-fit:cover}.media-caption{display:block;padding:10px 14px;color:#bfb09f;font-size:.75rem}.benefit-list{display:grid;gap:14px;margin:28px 0}.benefit-list article{padding:15px 18px;border-left:3px solid var(--gold);background:rgba(255,255,255,.045);border-radius:0 12px 12px 0}.benefit-list strong,.benefit-list span{display:block}.benefit-list span{color:var(--muted);font-size:.9rem}.layout-showcase{background:var(--paper);color:var(--ink)}.layout-showcase .section-head p:last-child{color:var(--dark-muted)}.layout-art{margin:0;border:1px solid #c8b496;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 18px 60px rgba(56,37,16,.14)}.layout-art picture,.layout-art img{width:100%;height:auto}.layout-art figcaption{padding:15px 20px;background:#fff8ee;color:#5e4a31;font-size:.86rem;border-top:1px solid #decdb5}.mode-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px}.mode-facts article{padding:25px;border:1px solid #cdbb9f;border-radius:16px;background:#fff9ef}.mode-facts span,.mode-facts strong{display:block}.mode-facts span{text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;color:#8a5a19;font-weight:800}.mode-facts strong{font-family:var(--serif);font-size:1.35rem;margin:7px 0;color:#332313}.mode-facts p{margin:0;color:#695943;font-size:.86rem}.mode-facts.detailed ul{padding-left:18px;margin:12px 0 0;color:#665844}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.pricing-grid.three{grid-template-columns:repeat(3,1fr)}.price-card{padding:28px;display:flex;flex-direction:column}.price-card .price{font-family:var(--serif);font-size:2.25rem;color:var(--gold-2);margin:4px 0}.price-card ul{padding-left:19px;color:var(--muted);flex:1}.price-card li{margin-bottom:8px}.price-card .btn{margin-top:12px}.route-quote{background:linear-gradient(145deg,#2a1a0b,#120c07)}.quote-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.soft-section .content-card,.soft-section .price-card{background:#fff9ef;border-color:#cfbfa8;color:var(--ink)}.soft-section .content-card p,.soft-section .content-card li{color:#665744}.price.small{font-size:1.7rem;color:#7a4f13}.route-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.route-card{padding:25px}.route-card>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;color:var(--gold-2);font-weight:800}.route-card p{color:var(--muted)}.route-tags{display:flex;gap:7px;flex-wrap:wrap;margin:15px 0}.route-tags small{padding:5px 9px;background:rgba(213,166,76,.1);border-radius:999px;color:#d8c5ad}.gallery-preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gallery-preview-item{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:16px;border:1px solid var(--line)}.gallery-preview-item picture,.gallery-preview-item img{width:100%;height:100%;object-fit:cover}.gallery-preview-item span{position:absolute;inset:auto 0 0;padding:30px 13px 11px;background:linear-gradient(transparent,rgba(0,0,0,.85));font-size:.76rem}.empty-proof{padding:42px;max-width:800px}.empty-proof p{color:var(--muted)}
.check-list{list-style:none;margin:23px 0;padding:0}.check-list li{position:relative;padding:10px 0 10px 31px;color:var(--muted);border-bottom:1px solid rgba(255,255,255,.08)}.soft-section .check-list li,.legal-page .check-list li{color:#5f513e;border-color:var(--paper-line)}.check-list li::before{content:'✓';position:absolute;left:0;top:9px;color:var(--gold);font-weight:900}.content-card{padding:30px}.process-list{display:grid;gap:14px;list-style:none;padding:0;margin:0}.process-list li{display:grid;grid-template-columns:65px 1fr;gap:20px;align-items:center;padding:17px 21px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.035)}.soft-section .process-list li{border-color:#cbb99e;background:#fffaf1}.process-list span{font-family:var(--serif);font-size:1.4rem;color:var(--gold)}.process-list p{margin:0}.triptych,.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.safety-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.number-badge{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:rgba(213,166,76,.12);color:var(--gold-2);font-weight:900;margin-bottom:16px}.amenity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.amenity-grid span{padding:16px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.035)}.dark-card{background:#171109}.contact-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:27px}.contact-cards a{padding:15px;border:1px solid var(--line);border-radius:13px;color:var(--muted)}.contact-cards strong{color:var(--gold-2)}.related-links{display:flex;flex-direction:column;gap:8px;margin-top:20px}.related-links a{color:var(--gold-2)}
.booking-section{background:linear-gradient(135deg,#0c0906,#181008)}.booking-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}.booking-copy{position:sticky;top:150px}.booking-copy>p:not(.eyebrow){color:var(--muted)}.booking-form{background:var(--paper);color:var(--ink);border-radius:var(--radius);padding:30px;border:1px solid #d5c3a8;box-shadow:var(--shadow)}.booking-form label,.booking-form legend{font-weight:750;font-size:.9rem}.booking-form input,.booking-form select,.booking-form textarea{display:block;width:100%;margin-top:7px;border:1px solid #b9a78f;background:#fffdf8;color:#21180f;border-radius:10px;padding:12px 13px;min-height:48px}.booking-form textarea{resize:vertical}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:#805612;box-shadow:0 0 0 3px rgba(169,117,36,.16);outline:none}.booking-form input[aria-invalid=true],.booking-form select[aria-invalid=true]{border-color:#b9352a}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.four-columns{grid-template-columns:repeat(4,1fr)}.booking-form small{display:block;margin-top:5px;color:#786957;font-weight:500}.inquiry-switch{border:0;padding:0;margin:0 0 21px}.inquiry-switch legend{margin-bottom:10px}.inquiry-switch label{display:inline-flex;align-items:center;margin-right:10px}.inquiry-switch input{position:absolute;opacity:0;width:1px;height:1px}.inquiry-switch span{display:inline-flex;padding:11px 19px;border:1px solid #a99575;border-radius:999px;background:#fff}.inquiry-switch input:checked+span{background:#2b1c0d;color:#fff;border-color:#2b1c0d}.conditional-fields{border:1px solid #d4c4ad;border-radius:15px;padding:20px;margin:0 0 18px;background:#fbf5eb}.conditional-fields[hidden]{display:none}.check-label{display:grid!important;grid-template-columns:22px 1fr;gap:11px;align-items:start;margin:15px 0;font-weight:550!important}.check-label input{width:20px;height:20px;min-height:0;margin:3px 0 0;accent-color:#7d5415}.check-label a{text-decoration:underline;color:#6d430c}.check-label.optional{color:#615240}.form-help{color:#6c5e4c;font-size:.8rem;margin:13px 0 0}.form-status{min-height:25px;margin:10px 0 0;font-weight:700}.form-status.success{color:#17632c}.form-status.error{color:#a32820}.field-error{display:block;color:#a32820;font-size:.75rem;font-weight:650;min-height:0}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.partner-form{max-width:none}.compact-steps{list-style:none;padding:0}.compact-steps li{padding:15px 0;border-bottom:1px solid var(--paper-line)}.compact-steps strong,.compact-steps span{display:block}.compact-steps span{color:var(--dark-muted)}
.faq-list{display:grid;gap:12px}.faq-item{border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.035);overflow:hidden}.faq-item summary{list-style:none;padding:19px 55px 19px 21px;font-weight:800;position:relative;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:'+';position:absolute;right:20px;font-size:1.4rem;color:var(--gold)}.faq-item[open] summary::after{content:'−'}.faq-item>div{padding:0 21px 4px}.faq-item p{color:var(--muted)}.soft-section .faq-item,.legal-page .faq-item{border-color:#cdbb9f;background:#fffaf2}.soft-section .faq-item p,.legal-page .faq-item p{color:#62543f}.faq-group{margin-bottom:38px}.faq-group h3{color:var(--gold-2)}
.gallery-filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:20px}.gallery-filters button{padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:transparent;color:#ded2c3}.gallery-filters button.active,.gallery-filters button:hover{background:var(--gold);color:#1a1007;border-color:var(--gold)}.gallery-status{min-height:28px;color:var(--muted);font-size:.86rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-item{position:relative;display:block;padding:0;border:1px solid var(--line);background:#110d09;color:#fff;border-radius:16px;overflow:hidden;aspect-ratio:4/3;text-align:left}.gallery-item[hidden]{display:none}.gallery-item picture,.gallery-item>picture img,.gallery-layout-image{width:100%;height:100%;object-fit:cover}.gallery-item span{position:absolute;inset:auto 0 0;padding:35px 13px 11px;background:linear-gradient(transparent,rgba(0,0,0,.9));font-size:.78rem}.layout-owner-art{grid-column:span 2;aspect-ratio:1080/801}.media-pending-grid article{border:1px dashed var(--line);padding:28px;border-radius:16px;margin-top:18px}.media-pending-grid article[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:3000;background:rgba(0,0,0,.94);display:grid;grid-template-columns:70px 1fr 70px;align-items:center;padding:30px;opacity:0;visibility:hidden;transition:.18s}.lightbox.active{opacity:1;visibility:visible}.lightbox figure{margin:0;max-width:min(1100px,85vw);max-height:90vh;justify-self:center;text-align:center}.lightbox img{max-height:82vh;width:auto;border-radius:12px}.lightbox figcaption{padding:10px;color:#ddd}.lightbox button{border:1px solid rgba(255,255,255,.4);background:rgba(0,0,0,.5);color:#fff;border-radius:50%;width:48px;height:48px;font-size:2rem}.lightbox-close{position:absolute;top:20px;right:20px}.lightbox-nav.next{justify-self:end}
.legal-page{background:var(--paper);color:var(--ink)}.legal-page h2{font-size:1.7rem;margin-top:38px}.legal-page p{color:#5e503e}.legal-page a{text-decoration:underline}.notice{padding:18px;border-left:4px solid #b4771d;background:#fff4df;border-radius:0 12px 12px 0;color:#4d3b25;margin-top:28px}.fine-print{font-size:.78rem;color:#a99a88}.reference{font-size:1.1rem}.thank-you-section{min-height:65vh;display:flex;align-items:center}.thank-you-card{text-align:center;padding:55px}.success-mark{display:inline-flex;width:70px;height:70px;align-items:center;justify-content:center;border-radius:50%;background:#1e4d2a;color:#bff0ca;font-size:2.3rem;margin-bottom:19px}.thank-you-card .hero-actions{justify-content:center}.not-found{min-height:68vh;display:flex;align-items:center;text-align:center}.not-found .hero-actions{justify-content:center}.final-cta{padding-top:50px}.cta-panel{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:42px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,#2b1908,#0d0905)}.cta-panel h2{font-size:clamp(2rem,4vw,3.3rem);margin-bottom:10px}.cta-panel p{color:var(--muted);margin:0}
.site-footer{background:#050403;border-top:1px solid var(--line);padding:70px 0 100px}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:45px}.footer-grid h2{font-family:var(--sans);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-2);margin-bottom:18px}.footer-grid a,.footer-grid span{display:block;margin:9px 0;color:#cdbfae;font-size:.9rem}.footer-grid a:hover{color:var(--gold-2)}.footer-logo{display:block;width:240px;margin-bottom:20px}.footer-intro>p{color:#c3b5a4;max-width:430px}.legal-links{display:flex;gap:19px;flex-wrap:wrap;margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}.legal-links a,.legal-links button{font-size:.78rem;color:#b9aa98;background:none;border:0;padding:0}.legal-links button{text-decoration:underline}.footer-bottom{width:var(--container);margin:30px auto 0;display:flex;justify-content:space-between;gap:20px;color:#8f8171;font-size:.75rem}.footer-bottom p{margin:0}.mobile-action-bar{display:none}.cookie-banner{position:fixed;left:20px;right:20px;bottom:20px;z-index:2500;max-width:900px;margin:auto;padding:18px 20px;background:#fff8ec;color:#24190f;border:1px solid #b89154;border-radius:16px;box-shadow:0 20px 70px rgba(0,0,0,.45);display:flex;align-items:center;justify-content:space-between;gap:25px}.cookie-banner[hidden]{display:none}.cookie-banner p{margin:3px 0 0;color:#5c4e3c;font-size:.85rem}.cookie-actions{display:flex;gap:9px;flex:0 0 auto}.analytics-frame{display:none}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.in-view{opacity:1;transform:none}
@media(max-width:1100px){.primary-nav{gap:1px;font-size:.82rem}.primary-nav>a,.nav-dropdown>button{padding-inline:8px}.brand-link{width:180px}.experience-grid,.route-card-grid{grid-template-columns:repeat(2,1fr)}.pricing-grid{grid-template-columns:repeat(2,1fr)}.amenity-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1.4fr repeat(3,1fr);gap:28px}}
@media(max-width:900px){:root{--container:min(100% - 30px,760px)}.utility-bar{display:none}.header-main{min-height:78px}.brand-link{width:170px}.menu-toggle{display:block}.primary-nav{position:fixed;top:78px;left:15px;right:15px;max-height:calc(100vh - 95px);overflow:auto;display:none;align-items:stretch;flex-direction:column;padding:14px;background:#0b0805;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);font-size:1rem}.primary-nav.open{display:flex}.primary-nav>a,.nav-dropdown>button{width:100%;text-align:left;padding:13px}.nav-dropdown>button{justify-content:space-between}.dropdown-menu{position:static;width:100%;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:rgba(255,255,255,.035);margin-top:4px}.nav-dropdown.open .dropdown-menu{display:block}.nav-dropdown:hover .dropdown-menu{display:none}.nav-dropdown.open:hover .dropdown-menu{display:block}main{padding-top:78px}.breadcrumbs{padding-top:14px}.hero{min-height:760px}.hero-content{margin:0 auto;width:var(--container);padding:95px 0 80px}.split-grid,.booking-grid{grid-template-columns:1fr;gap:38px}.booking-copy{position:static}.experience-grid,.route-card-grid{grid-template-columns:repeat(2,1fr)}.pricing-grid,.pricing-grid.three{grid-template-columns:repeat(2,1fr)}.mode-facts,.triptych,.related-grid,.safety-grid{grid-template-columns:repeat(2,1fr)}.gallery-preview-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.footer-intro{grid-column:span 2}.page-hero{min-height:560px}.cta-panel{align-items:flex-start;flex-direction:column}.booking-form{padding:24px}.four-columns{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){:root{--container:calc(100% - 24px);--radius:17px}.section{padding:68px 0}h1{font-size:clamp(2.45rem,13vw,4rem)}h2{font-size:clamp(1.9rem,9vw,3rem)}.header-main{width:calc(100% - 24px)}.brand-link{width:152px}.hero{min-height:710px}.hero-content{padding:74px 0}.hero-actions{align-items:stretch}.hero-actions .btn{width:100%}.hero-points{display:grid;gap:9px}.video-control{right:12px;bottom:12px}.trust-strip .container{grid-template-columns:repeat(2,1fr)}.trust-strip span:nth-child(2){border-right:0}.trust-strip span:nth-child(-n+2){border-bottom:1px solid var(--line)}.experience-grid,.route-card-grid,.pricing-grid,.pricing-grid.three,.quote-grid,.mode-facts,.triptych,.related-grid,.safety-grid,.amenity-grid{grid-template-columns:1fr}.gallery-preview-grid{grid-template-columns:repeat(2,1fr);gap:8px}.form-row,.four-columns{grid-template-columns:1fr;gap:13px;margin-bottom:13px}.booking-form{padding:19px}.conditional-fields{padding:15px}.contact-cards{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.layout-owner-art{grid-column:auto}.lightbox{grid-template-columns:45px 1fr 45px;padding:12px}.lightbox button{width:40px;height:40px}.page-hero{min-height:530px}.page-hero-content{padding:85px 0 54px}.process-list li{grid-template-columns:48px 1fr;padding:14px}.footer-grid{grid-template-columns:1fr}.footer-intro{grid-column:auto}.footer-bottom{flex-direction:column}.site-footer{padding-bottom:115px}.mobile-action-bar{position:fixed;left:0;right:0;bottom:0;z-index:1500;display:grid;grid-template-columns:repeat(3,1fr);padding:7px max(7px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(7px,env(safe-area-inset-left));background:rgba(5,4,3,.96);border-top:1px solid var(--line);backdrop-filter:blur(14px);transition:transform .2s ease}.mobile-action-bar a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:52px;color:#f6eee4;font-size:.75rem;font-weight:800;border-right:1px solid rgba(255,255,255,.09)}.mobile-action-bar a:last-child{border:0;background:var(--gold);color:#191007;border-radius:10px}.form-active .mobile-action-bar{transform:translateY(120%)}.cookie-banner{left:10px;right:10px;bottom:82px;display:block;padding:16px}.cookie-actions{margin-top:12px;display:grid;grid-template-columns:1fr 1fr}.cookie-actions .btn{white-space:normal}.cta-panel{padding:28px}.thank-you-card{padding:32px 20px}.layout-art figcaption{font-size:.78rem}.gallery-filters{gap:6px}.gallery-filters button{font-size:.75rem;padding:8px 10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.hero video{display:none}}
@media(prefers-contrast:more){:root{--line:rgba(255,215,133,.65)}.btn-ghost{border-color:#fff}.muted{color:#fff}}

/* Common Book Now popup */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.booking-modal{position:fixed;inset:0;z-index:4000;display:none;align-items:center;justify-content:center;padding:20px}.booking-modal.active{display:flex}.booking-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(7px)}.booking-modal-dialog{position:relative;z-index:1;width:min(780px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:32px;border:1px solid rgba(219,170,85,.55);border-radius:22px;background:linear-gradient(145deg,#16100b,#080604);box-shadow:0 30px 100px rgba(0,0,0,.65);outline:0}.booking-modal-close{position:absolute;top:12px;right:14px;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#0a0705;color:#fff;font-size:1.8rem;line-height:1}.booking-modal-heading{padding-right:45px}.booking-modal-heading h2{font-size:clamp(2rem,5vw,3.2rem);margin-bottom:8px}.booking-modal-heading>p:last-child{color:var(--muted);max-width:650px}.quick-booking-form{margin-top:22px}.quick-booking-switch{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:0;padding:0;margin:0 0 22px}.quick-booking-switch label{cursor:pointer}.quick-booking-switch input{position:absolute;opacity:0;pointer-events:none}.quick-booking-switch span{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:74px;padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.035);font-weight:800;color:#f3e7d6;text-align:center}.quick-booking-switch small{display:block;margin-top:3px;color:var(--muted);font-weight:500}.quick-booking-switch input:checked+span{border-color:var(--gold);background:linear-gradient(135deg,rgba(215,163,75,.3),rgba(117,74,24,.23));color:var(--gold-2);box-shadow:inset 0 0 0 1px rgba(255,220,147,.2)}.quick-booking-branch{padding:19px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025);margin-bottom:16px}.quick-booking-branch[hidden]{display:none}.quick-booking-branch h3{font-size:1.35rem;margin-bottom:15px;color:var(--gold-2)}.quick-booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quick-booking-form label{display:block;font-size:.84rem;font-weight:700;color:#eee1d1}.quick-booking-form input{width:100%;margin-top:7px;padding:13px 14px;border:1px solid #5c4935;border-radius:10px;background:#100c08;color:#fff;font:inherit}.quick-booking-form input:focus{border-color:var(--gold);outline:3px solid rgba(215,163,75,.16)}.quick-mobile-row{display:grid;grid-template-columns:1fr auto;align-items:end;gap:12px}.quick-otp-button{min-height:48px}.quick-otp-row{max-width:350px;margin-top:14px}.quick-otp-row[hidden]{display:none}.quick-booking-note{margin:16px 0 11px;padding:12px 14px;border-left:3px solid var(--gold);background:rgba(215,163,75,.08);color:#cabcaa;font-size:.79rem}.booking-modal-open{overflow:hidden}.booking-modal .form-status{min-height:24px;margin:8px 0}.booking-modal .form-status.success{color:#9de0aa}.booking-modal .form-status.error{color:#ffb3a8}
@media(max-width:640px){.booking-modal{padding:8px}.booking-modal-dialog{max-height:calc(100vh - 16px);padding:24px 16px 22px;border-radius:17px}.booking-modal-heading{padding-right:35px}.quick-booking-switch,.quick-booking-grid,.quick-mobile-row{grid-template-columns:1fr}.quick-otp-button{width:100%}.quick-otp-row{max-width:none}}

/* Exact quick-booking popup UI — 17 Jul 2026 */
.booking-modal{
  position:fixed;
  inset:0;
  z-index:4000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
}
.booking-modal.active{display:flex}
.booking-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.82);
  -webkit-backdrop-filter:blur(7px);
  backdrop-filter:blur(7px);
}
.booking-modal-dialog{
  position:relative;
  z-index:1;
  width:min(560px,100%);
  max-height:calc(100vh - 36px);
  overflow:auto;
  padding:28px 28px 24px;
  border:1px solid #c8a979;
  border-radius:18px;
  background:#f5ecde;
  color:#24180f;
  box-shadow:0 24px 90px rgba(0,0,0,.62),0 0 0 4px rgba(255,255,255,.72);
  outline:0;
}
.booking-modal-close{
  position:absolute;
  top:12px;
  right:12px;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid #d8c8b1;
  border-radius:50%;
  background:#fffaf1;
  color:#4a3929;
  font-size:1.35rem;
  line-height:1;
  cursor:pointer;
}
.booking-modal-close:hover,.booking-modal-close:focus-visible{
  background:#2c1b0e;
  color:#fff;
  border-color:#2c1b0e;
}
.booking-modal-heading{padding-right:38px}
.booking-modal-kicker{
  margin:0 0 8px;
  color:#8d5d17;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.19em;
  text-transform:uppercase;
}
.booking-modal-heading h2{
  margin:0 0 7px;
  color:#26170d;
  font-size:clamp(2rem,5vw,2.75rem);
  line-height:1.02;
}
.booking-modal-heading>p:last-child{
  margin:0;
  max-width:510px;
  color:#725f4d;
  font-size:.84rem;
  line-height:1.45;
}
.quick-booking-form{margin-top:19px}
.quick-booking-switch{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin:0 0 15px;
  padding:0;
  border:0;
}
.quick-booking-switch label{cursor:pointer}
.quick-booking-switch input{position:absolute;opacity:0;pointer-events:none}
.quick-booking-switch span{
  min-height:43px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  padding:8px 12px;
  border:1px solid #cbb38e;
  border-radius:10px;
  background:#fffaf1;
  color:#5a4634;
  font-size:.79rem;
  font-weight:700;
  text-align:center;
  transition:.18s ease;
}
.quick-booking-switch strong{font:inherit;color:inherit}
.quick-booking-switch small{margin:0;color:inherit;font-size:.72rem;font-weight:500}
.quick-booking-switch input:checked+span{
  border-color:#c4943c;
  background:#2d1a0d;
  color:#fff;
  box-shadow:0 0 0 2px #e2b44f,0 0 0 4px #2d1a0d;
}
.quick-booking-switch input:focus-visible+span{outline:3px solid rgba(182,127,39,.24);outline-offset:3px}
.quick-booking-branch{
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.quick-booking-branch[hidden]{display:none}
.quick-booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px 12px}
.quick-booking-grid-local .quick-mobile-field{grid-column:1 / 2}
.quick-booking-form label{
  display:block;
  color:#2e2118;
  font-size:.74rem;
  font-weight:800;
  line-height:1.35;
}
.quick-booking-form label>small{
  display:block;
  margin-top:6px;
  color:#776653;
  font-size:.63rem;
  font-weight:500;
  line-height:1.45;
}
.quick-booking-form input{
  width:100%;
  min-height:40px;
  margin-top:7px;
  padding:9px 10px;
  border:1px solid #c4aa83;
  border-radius:8px;
  background:#fffdf8;
  color:#25180f;
  font:inherit;
  font-size:.78rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.quick-booking-form input::placeholder{color:#9b8b7a}
.quick-booking-form input:focus{
  border-color:#a46a17;
  outline:3px solid rgba(181,126,40,.16);
}
.quick-booking-form input[readonly]{background:#f8f1e6;color:#6e5a47}
.quick-mobile-field{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:9px;
}
.quick-send-otp,.quick-verify-otp{
  min-height:40px;
  padding:9px 17px;
  border:1px solid #d39d3c;
  border-radius:999px;
  background:#2d1a0d;
  color:#fff;
  font-size:.72rem;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:inset 0 0 0 1px rgba(255,214,135,.12);
}
.quick-send-otp:hover,.quick-verify-otp:hover,
.quick-send-otp:focus-visible,.quick-verify-otp:focus-visible{
  background:#4a2a10;
  border-color:#e0b35d;
  transform:translateY(-1px);
}
.quick-send-otp:disabled,.quick-verify-otp:disabled{opacity:.58;cursor:not-allowed;transform:none}
.quick-otp-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:10px;
  margin-top:14px;
  padding-top:13px;
  border-top:1px solid #ddcdb7;
}
.quick-otp-row[hidden],.quick-verify-otp[hidden]{display:none}
.booking-modal .form-status{
  min-height:18px;
  margin:10px 0 0;
  color:#6d5946;
  font-size:.72rem;
  font-weight:700;
}
.booking-modal .form-status.success{color:#1d6a39}
.booking-modal .form-status.error{color:#a72c20}
.quick-booking-safety{
  margin:8px 0 0;
  color:#806e5a;
  font-size:.61rem;
  line-height:1.45;
}
.booking-modal-open{overflow:hidden}
@media(max-width:640px){
  .booking-modal{padding:8px}
  .booking-modal-dialog{
    max-height:calc(100vh - 16px);
    padding:24px 16px 20px;
    border-radius:15px;
  }
  .booking-modal-heading{padding-right:32px}
  .booking-modal-heading h2{font-size:2.05rem}
  .quick-booking-switch{grid-template-columns:1fr 1fr}
  .quick-booking-switch span{min-height:46px;flex-direction:column;gap:0}
  .quick-booking-grid{grid-template-columns:1fr}
  .quick-booking-grid-local .quick-mobile-field{grid-column:auto}
  .quick-mobile-field,.quick-otp-row{grid-template-columns:1fr auto}
}
@media(max-width:400px){
  .quick-mobile-field,.quick-otp-row{grid-template-columns:1fr}
  .quick-send-otp,.quick-verify-otp{width:100%}
}


/* SIMPLE CENTERED PAGE STRUCTURE */
.page-main{
  width:100%;
  min-height:45vh;
}
.page-content-shell{
  width:100%;
  max-width:1440px;
  margin:0 auto;
  overflow:hidden;
}
.page-content-shell > .breadcrumbs{
  margin-left:auto;
  margin-right:auto;
}
@media (min-width:1441px){
  .page-content-shell{
    box-shadow:0 0 50px rgba(0,0,0,.28);
  }
}

/* Final override: remove redundant hero button pairs on every page and device. */
body .page-main .hero-actions,
html.touch-mobile body .page-main .hero-actions{
  display:none!important;
}

/* Page-level action pairs are intentionally omitted; persistent floating actions remain available. */
.page-main .hero-actions{
  display:none!important;
}


/* =========================================================
   LIGHT PREMIUM THEME — CorbettLads-inspired visual direction
   Arial typography, soft nature colours, restrained font weight
   ========================================================= */
:root{
  --bg:#ffffff;
  --bg-2:#f6f7f3;
  --panel:#ffffff;
  --panel-2:#f1f4ed;
  --paper:#ffffff;
  --paper-2:#f3f5ef;
  --ink:#1f2d27;
  --text:#283730;
  --muted:#66736c;
  --dark-muted:#66736c;
  --gold:#b58a4b;
  --gold-2:#8f6a34;
  --line:rgba(31,58,47,.14);
  --paper-line:rgba(31,58,47,.12);
  --success:#2f7a4d;
  --error:#b84338;
  --shadow:0 16px 46px rgba(33,53,44,.10);
  --radius:18px;
  --radius-sm:10px;
  --serif:Arial,Helvetica,sans-serif;
  --sans:Arial,Helvetica,sans-serif;
}
html{scroll-padding-top:104px}
body{
  background:#fff;
  color:var(--text);
  font-family:Arial,Helvetica,sans-serif;
  font-weight:400;
  line-height:1.62;
}
h1,h2,h3,h4,h5,h6{
  font-family:Arial,Helvetica,sans-serif;
  color:#1f332b;
  font-weight:500;
  letter-spacing:-.02em;
  line-height:1.16;
}
h1{font-size:clamp(2.55rem,5.5vw,5rem)}
h2{font-size:clamp(2rem,3.8vw,3.35rem)}
h3{font-size:clamp(1.2rem,1.9vw,1.55rem)}
strong,b{font-weight:600}
.eyebrow{
  color:#7e6237;
  font-weight:500;
  letter-spacing:.15em;
}
.section{padding:84px 0}
.soft-section,.dark-section,.layout-showcase,.booking-section,.legal-page{
  background:#f6f7f3;
  color:var(--text);
}
.section:nth-of-type(even):not(.hero):not(.page-hero){background:#fafbf8}
.section-head p:last-child,.section-head.light p:last-child,.section-copy>p:not(.eyebrow),
.soft-section .section-copy>p:not(.eyebrow),.card-body p:not(.eyebrow),.route-card p,
.empty-proof p,.booking-copy>p:not(.eyebrow),.faq-item p,.soft-section .faq-item p,
.legal-page p,.cta-panel p{color:var(--muted)}

/* Header */
.site-header{
  background:rgba(255,255,255,.96);
  border-bottom:1px solid rgba(31,58,47,.10);
  box-shadow:0 5px 24px rgba(31,58,47,.06);
  backdrop-filter:blur(15px);
}
.site-header.scrolled{
  background:rgba(255,255,255,.99);
  box-shadow:0 8px 28px rgba(31,58,47,.10);
}
.utility-bar{
  min-height:32px;
  color:#53675d;
  background:#eef2eb;
  border-bottom:1px solid rgba(31,58,47,.08);
  text-transform:none;
  letter-spacing:.02em;
  font-size:.75rem;
  font-weight:400;
}
.utility-bar a:hover{color:#1f5a42}
.header-main{min-height:74px}
.brand-link{width:188px;padding:4px 0}
.brand-logo{width:100%;height:auto;object-fit:contain}
.primary-nav{
  gap:4px;
  color:#34473e;
  font-size:.91rem;
  font-weight:400;
}
.primary-nav>a,.nav-dropdown>button{
  color:#34473e;
  font-weight:400;
  padding:10px 10px;
  border-radius:7px;
}
.primary-nav>a:hover,.primary-nav>a.active,.primary-nav>a[aria-current=page],.nav-dropdown>button:hover{
  background:#eef3ed;
  color:#1f5a42;
}
.primary-nav .nav-book{
  background:#1f5a42;
  color:#fff;
  font-weight:500;
  border-radius:6px;
  padding-inline:18px;
}
.primary-nav .nav-book:hover,.primary-nav .nav-book.active{
  background:#173f31;
  color:#fff;
}
.dropdown-menu{
  background:#fff;
  border:1px solid rgba(31,58,47,.12);
  border-radius:10px;
  box-shadow:0 18px 45px rgba(31,58,47,.14);
}
.dropdown-menu a{color:#3f5148;font-weight:400}
.dropdown-menu a:hover,.dropdown-menu a.active{background:#eef3ed;color:#1f5a42}
.menu-toggle{border-color:rgba(31,58,47,.25);background:#fff}
.menu-toggle span{background:#1f3a2f}
main{padding-top:106px}
.breadcrumbs ol{color:#728078}
.breadcrumbs li:not(:last-child)::after{color:#a0aaa4}
.breadcrumbs a:hover{color:#1f5a42}

/* Hero */
.hero{min-height:calc(100vh - 106px)}
.hero-shade{
  background:
    linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.86) 35%,rgba(255,255,255,.35) 67%,rgba(255,255,255,.12) 100%),
    linear-gradient(0deg,rgba(255,255,255,.45),transparent 45%);
}
.hero-content,.page-hero-content{color:#1f332b}
.hero-content h1,.page-hero-content h1{color:#173d2e;font-weight:500}
.hero-lead,.page-hero-content>p:not(.eyebrow):not(.hero-note){color:#4f6258}
.hero-points{color:#50645a}
.hero-points li::before{color:#a47b3d}
.video-control{background:rgba(255,255,255,.92);color:#264237;border-color:rgba(31,58,47,.22)}
.trust-strip{background:#eef3ed;border-color:rgba(31,58,47,.10)}
.trust-strip span{color:#40564b;border-color:rgba(31,58,47,.10);font-weight:400}
.page-hero{min-height:570px}
.legal-hero{background:#eef3ed;border-color:rgba(31,58,47,.10)}
.legal-hero h1{color:#1f3a2f}
.hero-note{color:#66766e}

/* Buttons and links */
.btn{font-weight:500;border-radius:6px;letter-spacing:0;box-shadow:none}
.btn-primary{background:#1f5a42;color:#fff;box-shadow:0 9px 22px rgba(31,90,66,.18)}
.btn-primary:hover{background:#173f31;color:#fff}
.btn-secondary{background:#fff;color:#1f5a42;border-color:#1f5a42}
.btn-secondary:hover{background:#eef3ed;color:#173f31}
.btn-ghost,.btn-ghost.dark{background:rgba(255,255,255,.88);color:#1f5a42;border-color:rgba(31,90,66,.42);backdrop-filter:blur(7px)}
.btn-ghost:hover,.btn-ghost.dark:hover{background:#1f5a42;color:#fff;border-color:#1f5a42}
.text-link,.soft-section .text-link,.legal-page .text-link{color:#1f5a42;font-weight:500}
.pill,.soft-section .pill{background:#eef3ed;border-color:#d8e1d8;color:#2e624b;font-weight:500}

/* Cards, sections and content */
.experience-card,.content-card,.price-card,.route-card,.empty-proof,.thank-you-card,
.faq-item,.soft-section .faq-item,.legal-page .faq-item,.process-list li,.soft-section .process-list li{
  background:#fff;
  color:var(--text);
  border:1px solid rgba(31,58,47,.12);
  box-shadow:0 10px 34px rgba(31,58,47,.07);
}
.experience-card,.content-card,.price-card,.route-card{transition:transform .22s ease,box-shadow .22s ease}
.experience-card:hover,.content-card:hover,.price-card:hover,.route-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(31,58,47,.11)}
.media-frame{background:#f2f4ef;border-color:rgba(31,58,47,.12)}
.media-caption{color:#66756d;background:#fff}
.benefit-list article{background:#f4f7f2;border-left-color:#8b6b3b}
.benefit-list span,.check-list li,.soft-section .check-list li,.legal-page .check-list li{color:#5d6e65;border-color:rgba(31,58,47,.10)}
.mode-facts article,.soft-section .content-card,.soft-section .price-card{background:#fff;border-color:rgba(31,58,47,.12);color:var(--text)}
.mode-facts span{color:#6f5834;font-weight:500}
.mode-facts strong,.price-card .price,.process-list span{font-family:Arial,Helvetica,sans-serif;color:#1f5a42;font-weight:500}
.mode-facts p,.mode-facts.detailed ul,.soft-section .content-card p,.soft-section .content-card li,.price-card ul{color:#617168}
.route-quote{background:#eef3ed}
.route-card>span,.faq-group h3,.number-badge,.related-links a{color:#1f5a42;font-weight:500}
.route-tags small{background:#eef3ed;color:#4b6759}
.amenity-grid span,.dark-card{background:#fff;border-color:rgba(31,58,47,.12)}
.contact-cards a{color:#52665b;border-color:rgba(31,58,47,.14);background:#fff}
.contact-cards strong{color:#1f5a42}
.gallery-filters button{color:#40564b;border-color:rgba(31,58,47,.18);background:#fff;font-weight:400}
.gallery-filters button.active,.gallery-filters button:hover{background:#1f5a42;color:#fff;border-color:#1f5a42}
.gallery-item{background:#eef2ed;border-color:rgba(31,58,47,.12)}
.faq-item summary{font-weight:500;color:#2e453a}
.faq-item summary::after{color:#1f5a42}
.notice{background:#f7f3e8;color:#4a554f;border-left-color:#a47b3d}
.cta-panel{background:#eef3ed;border-color:rgba(31,58,47,.12)}
.cta-panel h2{color:#1f3a2f}

/* Forms */
.booking-section{background:#f6f7f3}
.booking-form,.conditional-fields{
  background:#fff;
  color:#283730;
  border-color:rgba(31,58,47,.14);
  box-shadow:0 18px 50px rgba(31,58,47,.09);
}
.booking-form label,.booking-form legend{font-weight:500;color:#30473b}
.booking-form input,.booking-form select,.booking-form textarea{
  border-color:#cbd5ce;
  background:#fff;
  color:#24372d;
  border-radius:7px;
}
.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:#1f5a42;box-shadow:0 0 0 3px rgba(31,90,66,.12)}
.inquiry-switch span{border-color:#cbd5ce;background:#fff;font-weight:400}
.inquiry-switch input:checked+span{background:#1f5a42;color:#fff;border-color:#1f5a42}
.form-status{font-weight:500}

/* Popup — keep the requested compact layout, switch to Arial/light premium styling */
.booking-modal-dialog{
  background:#fff;
  color:#26372f;
  border-color:#d6ded8;
  box-shadow:0 26px 80px rgba(16,37,27,.26),0 0 0 4px rgba(255,255,255,.70);
  font-family:Arial,Helvetica,sans-serif;
}
.booking-modal-heading h2{font-family:Arial,Helvetica,sans-serif;color:#1f3a2f;font-weight:500;letter-spacing:-.025em}
.booking-modal-kicker{color:#766039;font-weight:500}
.booking-modal-heading>p:last-child{color:#65736b}
.booking-modal-close{background:#fff;color:#31483d;border-color:#d6ded8}
.booking-modal-close:hover,.booking-modal-close:focus-visible{background:#1f5a42;color:#fff;border-color:#1f5a42}
.quick-booking-switch span{background:#fff;color:#41544a;border-color:#cdd7d0;font-weight:400}
.quick-booking-switch input:checked+span{background:#1f5a42;color:#fff;border-color:#1f5a42;box-shadow:0 0 0 2px #b7c9bd}
.quick-booking-form label{color:#30473b;font-weight:500}
.quick-booking-form input{background:#fff;color:#26372f;border-color:#cbd5ce;border-radius:7px;font-weight:400}
.quick-booking-form input:focus{border-color:#1f5a42;outline:3px solid rgba(31,90,66,.12)}
.quick-booking-form input[readonly]{background:#f3f5f1;color:#617168}
.quick-send-otp,.quick-verify-otp{background:#1f5a42;color:#fff;border-color:#1f5a42;font-weight:500;border-radius:6px}
.quick-send-otp:hover,.quick-verify-otp:hover,.quick-send-otp:focus-visible,.quick-verify-otp:focus-visible{background:#173f31;border-color:#173f31}
.quick-otp-row{border-top-color:#dfe5e0}
.booking-modal .form-status{font-weight:500}
.quick-booking-safety{color:#718078}

/* Footer */
.site-footer{background:#f0f3ee;color:#41544a;border-top:1px solid rgba(31,58,47,.10)}
.footer-grid h2{font-family:Arial,Helvetica,sans-serif;color:#1f5a42;font-size:.84rem;font-weight:500;letter-spacing:.08em}
.footer-grid a,.footer-grid span,.footer-intro>p{color:#5b6d63;font-weight:400}
.footer-grid a:hover{color:#1f5a42}
.footer-logo{width:220px}
.legal-links{border-top-color:rgba(31,58,47,.12)}
.legal-links a,.legal-links button{color:#65756c}
.footer-bottom{color:#728078}
.cookie-banner{background:#fff;color:#283730;border-color:#c7d2ca;box-shadow:0 18px 55px rgba(31,58,47,.18)}
.cookie-banner p{color:#65736b}

@media(max-width:900px){
  .primary-nav{background:#fff;border-color:rgba(31,58,47,.12);box-shadow:0 18px 45px rgba(31,58,47,.14)}
  .dropdown-menu{background:#f6f8f4}
  main{padding-top:78px}
}
@media(max-width:640px){
  h1{font-size:clamp(2.25rem,11vw,3.65rem)}
  h2{font-size:clamp(1.85rem,8vw,2.75rem)}
  .mobile-action-bar{background:rgba(255,255,255,.98);border-top-color:rgba(31,58,47,.13);box-shadow:0 -8px 25px rgba(31,58,47,.08)}
  .mobile-action-bar a{color:#3e5549;border-right-color:rgba(31,58,47,.10);font-weight:500}
  .mobile-action-bar a:last-child{background:#1f5a42;color:#fff;border-radius:7px}
}

/* =========================================================
   PREMIUM LIGHT INTERACTIONS — refined hover, depth and motion
   ========================================================= */
:root{
  --premium-green:#1c5b43;
  --premium-green-dark:#123e2e;
  --premium-gold:#b58a4b;
  --premium-glow:rgba(181,138,75,.22);
  --premium-shadow:0 22px 58px rgba(24,62,45,.14);
  --premium-shadow-hover:0 30px 75px rgba(24,62,45,.21);
}
body{
  background:
    radial-gradient(circle at 8% 12%,rgba(31,90,66,.045),transparent 26rem),
    radial-gradient(circle at 92% 30%,rgba(181,138,75,.055),transparent 28rem),
    #fff;
}
.section{position:relative;isolation:isolate}
.section-head h2,.section-copy h2{position:relative}
.section-head h2::after,.section-copy h2::after{
  content:"";
  display:block;
  width:52px;
  height:2px;
  margin-top:16px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--premium-green),var(--premium-gold));
  transition:width .45s cubic-bezier(.2,.8,.2,1);
}
.section:hover .section-head h2::after,.section:hover .section-copy h2::after{width:88px}

/* Premium header motion */
.brand-link{transition:transform .35s ease,filter .35s ease}
.brand-link:hover{transform:translateY(-2px) scale(1.015);filter:drop-shadow(0 8px 13px rgba(31,90,66,.13))}
.primary-nav>a,.nav-dropdown>button{position:relative;overflow:hidden;transition:color .25s ease,background .25s ease,transform .25s ease}
.primary-nav>a:not(.nav-book)::after,.nav-dropdown>button::after{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  bottom:5px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--premium-green),var(--premium-gold));
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .3s ease;
}
.primary-nav>a:not(.nav-book):hover::after,.primary-nav>a.active:not(.nav-book)::after,.primary-nav>a[aria-current=page]:not(.nav-book)::after,.nav-dropdown>button:hover::after{transform:scaleX(1)}
.primary-nav>a:not(.nav-book):hover,.nav-dropdown>button:hover{transform:translateY(-1px);background:rgba(31,90,66,.055)}
.primary-nav .nav-book{position:relative;overflow:hidden;box-shadow:0 10px 25px rgba(31,90,66,.18);transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.primary-nav .nav-book::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.35) 48%,transparent 72%);
  transform:translateX(-130%);transition:transform .65s ease;
}
.primary-nav .nav-book:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(31,90,66,.28)}
.primary-nav .nav-book:hover::before{transform:translateX(130%)}
.dropdown-menu{transform-origin:top left;transition:opacity .22s ease,visibility .22s ease,transform .22s ease,box-shadow .22s ease}
.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu,.nav-dropdown.open .dropdown-menu{box-shadow:0 24px 60px rgba(24,62,45,.18)}
.dropdown-menu a{transition:background .22s ease,color .22s ease,transform .22s ease,padding-left .22s ease}
.dropdown-menu a:hover{transform:translateX(3px);padding-left:15px}

/* Hero refinement */
.hero-media picture,.hero-media img,.hero-media video,.page-hero-media picture,.page-hero-media img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .8s ease}
.hero:hover .hero-media img,.hero:hover .hero-media video,.page-hero:hover .page-hero-media img{transform:scale(1.025);filter:saturate(1.04) contrast(1.02)}
.hero-content>*{transition:transform .35s ease}
.hero-content:hover h1{transform:translateX(4px)}
.trust-strip span{transition:background .25s ease,color .25s ease,transform .25s ease}
.trust-strip span:hover{background:rgba(255,255,255,.58);color:var(--premium-green);transform:translateY(-2px)}

/* Premium buttons */
.btn{position:relative;overflow:hidden;isolation:isolate;transition:transform .25s ease,box-shadow .25s ease,color .25s ease,border-color .25s ease,background .25s ease}
.btn::before{
  content:"";
  position:absolute;
  inset:-2px;
  z-index:-1;
  background:linear-gradient(105deg,transparent 18%,rgba(255,255,255,.38) 48%,transparent 78%);
  transform:translateX(-130%);
  transition:transform .7s ease;
}
.btn:hover{transform:translateY(-3px)}
.btn:hover::before{transform:translateX(130%)}
.btn-primary:hover{box-shadow:0 16px 36px rgba(31,90,66,.28)}
.btn-secondary:hover,.btn-ghost:hover{box-shadow:0 14px 32px rgba(31,90,66,.15)}
.text-link{position:relative;display:inline-flex;align-items:center;gap:5px;transition:gap .25s ease,color .25s ease}
.text-link::after{content:"";position:absolute;left:0;bottom:-3px;width:100%;height:1px;background:currentColor;transform:scaleX(.25);transform-origin:left;transition:transform .3s ease}
.text-link:hover{gap:10px;color:var(--premium-green-dark)}
.text-link:hover::after{transform:scaleX(1)}

/* Shared interactive surfaces */
.experience-card,.content-card,.price-card,.route-card,.empty-proof,.thank-you-card,.faq-item,.process-list li,.mode-facts article,.contact-cards a,.gallery-preview-item,.gallery-item,.media-frame,.layout-art,.booking-form{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s ease,border-color .3s ease,background .3s ease;
}
.experience-card::before,.content-card::before,.price-card::before,.route-card::before,.empty-proof::before,.thank-you-card::before,.faq-item::before,.process-list li::before,.mode-facts article::before,.contact-cards a::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:radial-gradient(300px circle at var(--mx,50%) var(--my,0%),rgba(181,138,75,.14),transparent 55%);
  opacity:0;
  transition:opacity .35s ease;
}
.experience-card::after,.content-card::after,.price-card::after,.route-card::after,.faq-item::after,.mode-facts article::after{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:3px;
  background:linear-gradient(90deg,var(--premium-green),var(--premium-gold),var(--premium-green));
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .4s cubic-bezier(.2,.8,.2,1);
}
.experience-card:hover,.content-card:hover,.price-card:hover,.route-card:hover,.empty-proof:hover,.thank-you-card:hover,.faq-item:hover,.process-list li:hover,.mode-facts article:hover,.contact-cards a:hover{
  transform:translateY(-9px);
  border-color:rgba(31,90,66,.28);
  box-shadow:var(--premium-shadow-hover);
}
.experience-card:hover::before,.content-card:hover::before,.price-card:hover::before,.route-card:hover::before,.empty-proof:hover::before,.thank-you-card:hover::before,.faq-item:hover::before,.process-list li:hover::before,.mode-facts article:hover::before,.contact-cards a:hover::before{opacity:1}
.experience-card:hover::after,.content-card:hover::after,.price-card:hover::after,.route-card:hover::after,.faq-item:hover::after,.mode-facts article:hover::after{transform:scaleX(1)}
.card-media picture,.card-media img,.gallery-preview-item picture,.gallery-preview-item img,.gallery-item picture,.gallery-item img,.media-frame picture,.media-frame img,.layout-art picture,.layout-art img{transition:transform .75s cubic-bezier(.2,.8,.2,1),filter .5s ease}
.experience-card:hover .card-media img,.gallery-preview-item:hover img,.gallery-item:hover img,.media-frame:hover img,.layout-art:hover img{transform:scale(1.075);filter:saturate(1.08) contrast(1.025)}
.card-body{transition:transform .35s ease}
.experience-card:hover .card-body{transform:translateY(-3px)}

/* Gallery premium overlay */
.gallery-preview-item::after,.gallery-item::after{
  content:"View";
  position:absolute;
  left:50%;top:50%;
  display:grid;place-items:center;
  width:76px;height:76px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.78);
  background:rgba(17,54,40,.72);
  color:#fff;
  font-size:.78rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  backdrop-filter:blur(9px);
  opacity:0;
  transform:translate(-50%,-42%) scale(.75);
  transition:opacity .35s ease,transform .35s ease;
  box-shadow:0 12px 38px rgba(0,0,0,.2);
}
.gallery-preview-item:hover::after,.gallery-item:hover::after{opacity:1;transform:translate(-50%,-50%) scale(1)}
.gallery-preview-item:hover,.gallery-item:hover{transform:translateY(-7px);border-color:rgba(181,138,75,.55);box-shadow:0 24px 56px rgba(24,62,45,.2)}
.gallery-preview-item span,.gallery-item span{transition:padding .35s ease,background .35s ease}
.gallery-preview-item:hover span,.gallery-item:hover span{padding-bottom:17px;background:linear-gradient(transparent,rgba(13,48,35,.9))}

/* Pricing, routes, process and FAQs */
.price-card .price{transition:transform .3s ease,color .3s ease}
.price-card:hover .price{transform:scale(1.045);transform-origin:left;color:var(--premium-green-dark)}
.price-card .btn{align-self:stretch;text-align:center}
.route-card>span{display:inline-flex;transition:transform .3s ease,letter-spacing .3s ease}
.route-card:hover>span{transform:translateX(4px);letter-spacing:.14em}
.route-tags small{transition:background .25s ease,color .25s ease,transform .25s ease}
.route-card:hover .route-tags small{background:rgba(31,90,66,.10);color:var(--premium-green);transform:translateY(-2px)}
.process-list li span{transition:transform .3s ease,background .3s ease,color .3s ease,box-shadow .3s ease}
.process-list li:hover span{transform:scale(1.08) rotate(-3deg);background:var(--premium-green);color:#fff;box-shadow:0 10px 25px rgba(31,90,66,.25)}
.faq-item summary{transition:color .25s ease,padding-left .25s ease}
.faq-item:hover summary{color:var(--premium-green);padding-left:4px}
.faq-item[open]{border-color:rgba(31,90,66,.25);box-shadow:0 20px 50px rgba(24,62,45,.12)}
.faq-item[open] summary::after{transform:rotate(45deg)}

/* Forms and popup polish */
.booking-form:hover{box-shadow:0 26px 70px rgba(24,62,45,.14);border-color:rgba(31,90,66,.22)}
.booking-form input,.booking-form select,.booking-form textarea,.quick-booking-form input{
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease,background .22s ease;
}
.booking-form input:hover,.booking-form select:hover,.booking-form textarea:hover,.quick-booking-form input:hover{border-color:rgba(31,90,66,.48);background:#fff}
.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus,.quick-booking-form input:focus{transform:translateY(-1px);box-shadow:0 0 0 4px rgba(31,90,66,.10),0 8px 22px rgba(24,62,45,.08)}
.booking-modal-dialog{animation:premiumModalIn .42s cubic-bezier(.2,.8,.2,1);overflow:hidden}
.booking-modal-dialog::before{
  content:"";position:absolute;left:0;right:0;top:0;height:4px;
  background:linear-gradient(90deg,var(--premium-green),var(--premium-gold),var(--premium-green));
}
.quick-booking-switch span{transition:background .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease}
.quick-booking-switch span:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(24,62,45,.12)}
.quick-send-otp,.quick-verify-otp{position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.quick-send-otp:hover,.quick-verify-otp:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(31,90,66,.27)}
@keyframes premiumModalIn{from{opacity:0;transform:translateY(20px) scale(.975)}to{opacity:1;transform:none}}

/* Footer refinement */
.footer-grid a{position:relative;display:inline-flex;width:max-content;transition:color .25s ease,transform .25s ease}
.footer-grid a::after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:var(--premium-gold);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.footer-grid a:hover{transform:translateX(4px)}
.footer-grid a:hover::after{transform:scaleX(1)}
.footer-logo{transition:transform .35s ease,filter .35s ease}
.footer-logo:hover{transform:translateY(-3px);filter:drop-shadow(0 12px 20px rgba(31,90,66,.16))}

/* Staggered reveal for premium rhythm */
.experience-grid .reveal:nth-child(2),.route-card-grid .reveal:nth-child(2),.pricing-grid .reveal:nth-child(2),.gallery-grid .reveal:nth-child(2){transition-delay:.06s}
.experience-grid .reveal:nth-child(3),.route-card-grid .reveal:nth-child(3),.pricing-grid .reveal:nth-child(3),.gallery-grid .reveal:nth-child(3){transition-delay:.12s}
.experience-grid .reveal:nth-child(4),.route-card-grid .reveal:nth-child(4),.pricing-grid .reveal:nth-child(4),.gallery-grid .reveal:nth-child(4){transition-delay:.18s}

@media (hover:none),(max-width:900px){
  .experience-card:hover,.content-card:hover,.price-card:hover,.route-card:hover,.empty-proof:hover,.thank-you-card:hover,.faq-item:hover,.process-list li:hover,.mode-facts article:hover,.contact-cards a:hover,.gallery-preview-item:hover,.gallery-item:hover,.btn:hover{transform:none}
  .gallery-preview-item::after,.gallery-item::after{display:none}
  .section:hover .section-head h2::after,.section:hover .section-copy h2::after{width:52px}
}

/* =========================================================
   STANDARD PRICING — supplied July 2026
   Light premium presentation of the official pricing artwork.
   ========================================================= */
.pricing-standard-section{position:relative;overflow:hidden}
.pricing-standard-section::before{
  content:"";
  position:absolute;
  width:520px;height:520px;
  right:-260px;top:-210px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(181,138,75,.16),transparent 68%);
  pointer-events:none;
}
.standard-price-banner{
  display:grid;
  grid-template-columns:minmax(260px,.7fr) 1.3fr;
  align-items:center;
  gap:36px;
  margin-bottom:34px;
  padding:34px 38px;
  border:1px solid rgba(181,138,75,.32);
  border-radius:28px;
  background:linear-gradient(135deg,#fff 0%,#fbf6ed 58%,#f3ead9 100%);
  box-shadow:0 24px 70px rgba(48,68,55,.12);
  position:relative;
  overflow:hidden;
}
.standard-price-banner::after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.8) 46%,transparent 72%);
  transform:translateX(-120%);
  transition:transform .9s ease;
  pointer-events:none;
}
.standard-price-banner:hover::after{transform:translateX(120%)}
.standard-price-banner>div{display:flex;flex-direction:column;align-items:flex-start}
.standard-price-banner strong{
  display:block;
  font-size:clamp(3.3rem,7vw,6.6rem);
  line-height:.95;
  font-weight:500;
  letter-spacing:-.06em;
  color:var(--premium-green-dark);
}
.standard-price-banner p{max-width:680px;margin:0;font-size:1.08rem;color:var(--text-muted)}
.standard-pricing-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:26px;
}
.standard-price-card{
  min-height:100%;
  padding:34px;
  border:1px solid rgba(31,90,66,.16);
  border-radius:28px;
  background:#fff;
  box-shadow:0 18px 55px rgba(24,62,45,.10);
  position:relative;
  overflow:hidden;
  transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s ease,border-color .3s ease;
}
.standard-price-card::before{
  content:"";
  position:absolute;inset:0 0 auto 0;height:5px;
  background:linear-gradient(90deg,var(--premium-green),var(--premium-gold));
}
.standard-price-card::after{
  content:"";
  position:absolute;
  width:260px;height:260px;
  right:-120px;bottom:-150px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(181,138,75,.18),transparent 68%);
  transition:transform .55s ease;
  pointer-events:none;
}
.standard-price-card:hover{
  transform:translateY(-10px);
  border-color:rgba(181,138,75,.45);
  box-shadow:0 30px 80px rgba(24,62,45,.17);
}
.standard-price-card:hover::after{transform:scale(1.18) translate(-8px,-6px)}
.standard-card-topline{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px}
.standard-card-topline span{font-size:1.12rem;font-weight:600;color:var(--premium-green-dark)}
.standard-card-topline small{
  padding:7px 12px;
  border-radius:999px;
  background:rgba(181,138,75,.12);
  color:#805d29;
  font-weight:600;
  letter-spacing:.02em;
}
.standard-price{
  margin:0;
  font-size:clamp(3rem,6vw,5.6rem);
  line-height:.95;
  font-weight:500;
  letter-spacing:-.055em;
  color:var(--premium-green-dark);
}
.standard-price em{font-size:.28em;font-style:normal;font-weight:600;letter-spacing:0;color:var(--text-muted)}
.standard-unit{margin:14px 0 24px;font-size:1.18rem;color:var(--text-muted)}
.standard-unit strong{color:var(--premium-green-dark)}
.premium-feature-list{display:grid;gap:12px;margin:0 0 28px;padding:0;list-style:none}
.premium-feature-list li{position:relative;padding-left:28px;color:var(--text-muted)}
.premium-feature-list li::before{
  content:"✓";
  position:absolute;left:0;top:0;
  width:20px;height:20px;
  display:grid;place-items:center;
  border-radius:50%;
  background:rgba(31,90,66,.1);
  color:var(--premium-green);
  font-size:.72rem;font-weight:700;
}
.standard-price-card .btn{width:100%;justify-content:center}
.charge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:25px}
.charge-grid article{
  display:flex;gap:14px;align-items:flex-start;
  padding:18px;
  border:1px solid rgba(31,90,66,.12);
  border-radius:18px;
  background:rgba(255,255,255,.72);
  transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.charge-grid article:hover{transform:translateY(-5px);border-color:rgba(181,138,75,.38);box-shadow:0 16px 38px rgba(24,62,45,.1)}
.charge-grid article>span{
  flex:0 0 36px;height:36px;
  display:grid;place-items:center;
  border-radius:12px;
  background:var(--premium-green);
  color:#fff;
  font-size:.74rem;font-weight:700;
}
.charge-grid h3{margin:0 0 4px;font-size:1rem;font-weight:600}
.charge-grid p{margin:0;font-size:.92rem;color:var(--text-muted)}
.pricing-artwork{
  margin:0;
  padding:14px;
  border-radius:28px;
  background:#fff;
  box-shadow:0 26px 70px rgba(24,62,45,.16);
  transform:rotate(1deg);
  transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease;
}
.pricing-artwork:hover{transform:rotate(0) translateY(-7px);box-shadow:0 34px 86px rgba(24,62,45,.2)}
.pricing-artwork img{display:block;width:100%;border-radius:20px}
.pricing-artwork figcaption{padding:12px 8px 4px;text-align:center;font-size:.82rem;color:var(--text-muted)}
.distance-policy{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:24px;
  align-items:center;
  padding:30px 34px;
  border-radius:24px;
  border:1px solid rgba(181,138,75,.28);
  background:linear-gradient(135deg,#fbf7ef,#fff);
  box-shadow:0 18px 55px rgba(24,62,45,.09);
}
.distance-policy>span{
  width:68px;height:68px;
  display:grid;place-items:center;
  border-radius:22px;
  background:var(--premium-green);
  color:#fff;
  font-size:2rem;
  box-shadow:0 14px 34px rgba(31,90,66,.24);
}
.distance-policy h2{margin:3px 0 7px}
.distance-policy p:last-child{margin:0;color:var(--text-muted)}
.home-standard-pricing{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.home-standard-pricing .price-card{display:flex;flex-direction:column}
.home-standard-pricing .price-card .btn{margin-top:auto}
.home-standard-pricing .price small{font-size:.3em;font-weight:600;letter-spacing:0;color:var(--text-muted)}

@media (max-width:900px){
  .standard-price-banner,.standard-pricing-grid,.home-standard-pricing{grid-template-columns:1fr}
  .standard-price-banner{gap:18px;padding:28px}
  .charge-grid{grid-template-columns:1fr}
  .pricing-artwork{transform:none}
}
@media (max-width:600px){
  .standard-price-card{padding:26px 22px;border-radius:22px}
  .standard-card-topline{align-items:flex-start;flex-direction:column;gap:8px}
  .standard-price{font-size:3.25rem}
  .distance-policy{grid-template-columns:1fr;padding:25px 22px}
  .distance-policy>span{width:54px;height:54px;border-radius:17px;font-size:1.55rem}
}

/* =========================================================
   REAL MOBILE RESPONSIVE OVERRIDE
   Uses the early .touch-mobile class so Android Chrome remains
   responsive even when a desktop-sized layout viewport is used.
   ========================================================= */
html.touch-mobile{
  --container:calc(100% - 24px);
  width:100%;
  max-width:100%;
  overflow-x:hidden;
  font-size:16px;
}
html.touch-mobile body{
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0;
  overflow-x:hidden;
}
html.touch-mobile *,html.touch-mobile *::before,html.touch-mobile *::after{box-sizing:border-box}
html.touch-mobile img,html.touch-mobile video,html.touch-mobile picture,html.touch-mobile iframe{
  max-width:100%;
}
html.touch-mobile .site-header{
  width:100%;
  max-width:100%;
  left:0;
  right:0;
}
html.touch-mobile .utility-bar{display:none!important}
html.touch-mobile .header-main{
  width:calc(100% - 24px)!important;
  max-width:none!important;
  min-height:72px!important;
  margin:0 auto!important;
  gap:12px!important;
}
html.touch-mobile .brand-link{
  width:148px!important;
  max-width:48vw!important;
  flex:0 1 auto!important;
  padding:3px 0!important;
}
html.touch-mobile .menu-toggle{
  display:block!important;
  flex:0 0 44px!important;
  width:44px!important;
  height:44px!important;
  padding:9px!important;
}
html.touch-mobile .primary-nav{
  position:fixed!important;
  top:72px!important;
  left:12px!important;
  right:12px!important;
  width:auto!important;
  max-width:none!important;
  max-height:calc(100svh - 88px)!important;
  overflow:auto!important;
  display:none!important;
  align-items:stretch!important;
  flex-direction:column!important;
  gap:2px!important;
  padding:12px!important;
  background:#fff!important;
  border:1px solid rgba(31,58,47,.14)!important;
  border-radius:14px!important;
  box-shadow:0 20px 55px rgba(24,62,45,.20)!important;
  font-size:1rem!important;
}
html.touch-mobile .primary-nav.open{display:flex!important}
html.touch-mobile .primary-nav>a,
html.touch-mobile .nav-dropdown>button{
  width:100%!important;
  min-height:46px!important;
  padding:11px 12px!important;
  text-align:left!important;
  justify-content:space-between!important;
}
html.touch-mobile .dropdown-menu{
  position:static!important;
  width:100%!important;
  display:none!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  margin:3px 0 5px!important;
  box-shadow:none!important;
  background:#f5f7f3!important;
  border:0!important;
}
html.touch-mobile .nav-dropdown.open .dropdown-menu{display:block!important}
html.touch-mobile main{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  padding-top:72px!important;
  margin:0!important;
}
html.touch-mobile .page-main,
html.touch-mobile .page-content-shell,
html.touch-mobile .hero,
html.touch-mobile .section,
html.touch-mobile .trust-strip,
html.touch-mobile .site-footer{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
}
html.touch-mobile .page-content-shell{overflow:visible!important}
html.touch-mobile .container,
html.touch-mobile .hero-content,
html.touch-mobile .page-hero-content,
html.touch-mobile .footer-bottom{
  width:calc(100% - 24px)!important;
  max-width:none!important;
  min-width:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
html.touch-mobile .hero{
  min-height:calc(100svh - 72px)!important;
  height:auto!important;
  padding:0!important;
  align-items:flex-end!important;
  overflow:hidden!important;
}
html.touch-mobile .hero-media,
html.touch-mobile .hero-shade{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  max-width:100%!important;
}
html.touch-mobile .hero-media video,
html.touch-mobile .hero-media picture,
html.touch-mobile .hero-media img{
  display:block!important;
  width:100%!important;
  min-width:100%!important;
  max-width:none!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
html.touch-mobile .hero-shade{
  background:linear-gradient(180deg,rgba(255,255,255,.10) 0%,rgba(255,255,255,.30) 28%,rgba(255,255,255,.88) 58%,rgba(255,255,255,.98) 100%)!important;
}
html.touch-mobile .hero-content{
  position:relative!important;
  z-index:2!important;
  padding:96px 0 54px!important;
  color:#1f332b!important;
}
html.touch-mobile .hero-content h1{
  max-width:100%!important;
  margin-bottom:14px!important;
  font-size:clamp(2.15rem,10.5vw,3.15rem)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}
html.touch-mobile .hero-lead{
  max-width:100%!important;
  font-size:1rem!important;
  line-height:1.55!important;
}
html.touch-mobile .hero-actions{
  display:none!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  width:100%!important;
  margin-top:22px!important;
}
html.touch-mobile .hero-actions .btn{width:100%!important;min-width:0!important}
html.touch-mobile .hero-points{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  margin-top:22px!important;
  font-size:.84rem!important;
}
html.touch-mobile .video-control{right:12px!important;bottom:12px!important}
html.touch-mobile .trust-strip .container{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  width:100%!important;
  gap:0!important;
}
html.touch-mobile .trust-strip span{
  min-width:0!important;
  padding:14px 8px!important;
  font-size:.76rem!important;
  border-bottom:1px solid rgba(31,58,47,.10)!important;
}
html.touch-mobile .section{padding:64px 0!important}
html.touch-mobile h1{font-size:clamp(2.15rem,10.5vw,3.15rem)!important}
html.touch-mobile h2{font-size:clamp(1.8rem,8.2vw,2.55rem)!important}
html.touch-mobile h3{font-size:1.28rem!important}
html.touch-mobile .section-head{margin-bottom:30px!important}
html.touch-mobile .experience-grid,
html.touch-mobile .route-card-grid,
html.touch-mobile .pricing-grid,
html.touch-mobile .pricing-grid.three,
html.touch-mobile .home-standard-pricing,
html.touch-mobile .standard-pricing-grid,
html.touch-mobile .standard-price-banner,
html.touch-mobile .quote-grid,
html.touch-mobile .mode-facts,
html.touch-mobile .triptych,
html.touch-mobile .related-grid,
html.touch-mobile .safety-grid,
html.touch-mobile .amenity-grid,
html.touch-mobile .split-grid,
html.touch-mobile .booking-grid,
html.touch-mobile .form-row,
html.touch-mobile .four-columns,
html.touch-mobile .contact-cards,
html.touch-mobile .footer-grid{
  grid-template-columns:1fr!important;
  gap:18px!important;
}
html.touch-mobile .gallery-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
html.touch-mobile .gallery-grid{grid-template-columns:1fr!important}
html.touch-mobile .footer-intro{grid-column:auto!important}
html.touch-mobile .site-footer{padding-bottom:105px!important}
html.touch-mobile .footer-bottom{flex-direction:column!important;gap:8px!important}
html.touch-mobile .mobile-action-bar{
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:1500!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  width:100%!important;
  padding:7px 7px calc(7px + env(safe-area-inset-bottom))!important;
  background:rgba(255,255,255,.98)!important;
  border-top:1px solid rgba(31,58,47,.13)!important;
  box-shadow:0 -8px 25px rgba(31,58,47,.08)!important;
}
html.touch-mobile .mobile-action-bar a{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:50px!important;
  color:#3e5549!important;
  font-size:.72rem!important;
  border-right:1px solid rgba(31,58,47,.10)!important;
}
html.touch-mobile .mobile-action-bar a:last-child{background:#1f5a42!important;color:#fff!important;border:0!important;border-radius:7px!important}
html.touch-mobile .booking-modal{padding:8px!important}
html.touch-mobile .booking-modal-dialog{width:100%!important;max-width:100%!important;max-height:calc(100svh - 16px)!important;padding:22px 15px 20px!important}
html.touch-mobile .quick-booking-grid{grid-template-columns:1fr!important}
html.touch-mobile .quick-mobile-field,html.touch-mobile .quick-otp-row{grid-template-columns:1fr!important}
html.touch-mobile .quick-send-otp,html.touch-mobile .quick-verify-otp{width:100%!important}

/* Header and footer logo sizing correction — 21 July 2026 */
.header-main .brand-link{
  display:flex;
  align-items:center;
  width:188px;
  max-width:24vw;
  min-width:142px;
  overflow:hidden;
}
.header-main .brand-link .brand-logo{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  max-height:64px;
  object-fit:contain;
}
.footer-grid .footer-logo{
  display:block;
  width:220px;
  max-width:100%;
  margin:0 0 20px;
  overflow:hidden;
}
.footer-grid .footer-logo .footer-logo-image{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
.footer-grid > div > a{
  display:flex;
  width:fit-content;
}
@media(max-width:900px){
  .header-main .brand-link{width:164px;max-width:48vw;min-width:0}
  .header-main .brand-link .brand-logo{max-height:58px}
}
@media(max-width:640px){
  .header-main .brand-link,
  html.touch-mobile .header-main .brand-link{
    width:142px!important;
    max-width:48vw!important;
    min-width:0!important;
    flex:0 1 142px!important;
    padding:2px 0!important;
  }
  .header-main .brand-link .brand-logo,
  html.touch-mobile .header-main .brand-link .brand-logo{
    width:100%!important;
    height:auto!important;
    max-height:54px!important;
    object-fit:contain!important;
  }
  .footer-grid .footer-logo,
  html.touch-mobile .footer-grid .footer-logo{
    width:min(190px,65vw)!important;
    max-width:65vw!important;
  }
}

/* Homepage lounge and bed layout photography */
.layout-mode-card{overflow:hidden}
.layout-mode-card .mode-card-photo{
  margin:-30px -30px 24px;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#f6f1e9;
  border-bottom:1px solid #cdbb9f;
}
.layout-mode-card .mode-card-photo picture,
.layout-mode-card .mode-card-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

/* Entire journey cards are keyboard and pointer clickable. */
a.experience-card{color:inherit;text-decoration:none;cursor:pointer}
a.experience-card:focus-visible{outline:3px solid var(--gold);outline-offset:4px}

/* Redundant bottom CTA panels are removed site-wide; floating actions remain available. */
.page-main .final-cta{display:none!important}

/* Site-wide phone responsiveness and homepage hero label color — 22 July 2026 */
.home-main .hero .eyebrow{color:#064c38!important}
html,body{max-width:100%;overflow-x:hidden}
img,picture,video,iframe{max-width:100%}

@media(max-width:768px){
  :root{--container:calc(100% - 24px)}
  body{width:100%;min-width:0;overflow-x:hidden}
  main,.page-main,.page-content-shell{width:100%;max-width:100%;min-width:0;margin:0}
  .container,.hero-content,.page-hero-content,.footer-bottom{width:calc(100% - 24px)!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}
  .section{padding:56px 0}
  h1,.hero-content h1,.page-hero-content h1{max-width:100%;font-size:clamp(2rem,10.5vw,3.15rem)!important;line-height:1.08!important;overflow-wrap:anywhere}
  h2{font-size:clamp(1.7rem,8.5vw,2.55rem)!important;line-height:1.12!important;overflow-wrap:anywhere}
  h3{font-size:1.2rem;overflow-wrap:anywhere}
  p,li,a,span{overflow-wrap:anywhere}
  .hero{min-height:calc(100svh - 72px);height:auto;align-items:flex-end}
  .hero-content{padding:88px 0 48px!important}
  .hero-content>p{max-width:100%}
  .hero-lead{font-size:1rem!important;line-height:1.55!important}
  .hero-points{grid-template-columns:1fr!important;gap:8px!important;font-size:.84rem!important}
  .page-hero{min-height:520px;height:auto}
  .page-hero-content{padding:82px 0 48px!important}
  .page-hero-content>p:not(.eyebrow):not(.hero-note){font-size:1rem!important;line-height:1.55!important}
  .split-grid,.booking-grid,.experience-grid,.route-card-grid,.pricing-grid,.pricing-grid.three,.quote-grid,.mode-facts,.triptych,.related-grid,.safety-grid,.amenity-grid,.four-columns,.contact-cards,.footer-grid{grid-template-columns:1fr!important;gap:18px!important}
  .gallery-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .gallery-grid{grid-template-columns:1fr!important}
  .layout-art,.media-frame,.mode-card-photo,.content-card,.experience-card,.price-card,.route-card{max-width:100%;min-width:0}
  .layout-art picture,.layout-art img,.media-frame picture,.media-frame img{width:100%;height:auto}
  .layout-mode-card .mode-card-photo{aspect-ratio:4/3}
  .form-row,.quick-booking-grid,.quick-mobile-field,.quick-otp-row{grid-template-columns:1fr!important}
  input,select,textarea,button,.btn{max-width:100%;min-width:0}
  .booking-form{width:100%;padding:18px!important}
  .booking-modal{padding:8px!important}
  .booking-modal-dialog{width:100%!important;max-width:100%!important;max-height:calc(100svh - 16px)!important;padding:20px 14px!important;overflow-y:auto}
  table{display:block;width:100%;max-width:100%;overflow-x:auto;white-space:nowrap}
  .footer-intro{grid-column:auto!important}
  .site-footer{padding:52px 0 108px!important}
  .footer-bottom{flex-direction:column;gap:8px}
}

@media(max-width:420px){
  :root{--container:calc(100% - 20px)}
  .container,.hero-content,.page-hero-content,.footer-bottom{width:calc(100% - 20px)!important}
  .header-main .brand-link{width:132px!important;flex-basis:132px!important}
  .gallery-preview-item span{font-size:.68rem;padding:24px 8px 8px}
  .mobile-action-bar a{font-size:.68rem!important;min-width:0!important}
}
