@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600&display=swap');
:root{--sand:#f3eee5;--forest:#263f35;--terracotta:#b96c50;--peach:#e7c5b2;--sage:#aab7a2;--ink:#252722;--white:#fff;--muted:#666b62;--line:rgba(37,39,34,.18);--font-body:'DM Sans',sans-serif;--font-display:'Cormorant Garamond',Georgia,serif;--font-label:'Space Grotesk',sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--sand);color:var(--ink);font:16px/1.7 var(--font-body);-webkit-font-smoothing:antialiased}body.no-scroll,html.age-locked{overflow:hidden}a{color:inherit;text-decoration:none}a:hover{color:var(--terracotta)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}img{display:block;max-width:100%;height:auto}p{margin:0 0 1.25rem}h1,h2,h3,h4{font-weight:500;margin:0;line-height:1.06}h1,h2{font-family:var(--font-display)}h3,h4{font-family:var(--font-body)}.container{width:min(1440px,calc(100% - 112px));margin-inline:auto}.container-narrow{width:min(850px,calc(100% - 48px));margin:auto}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{font:600 11px/1.3 var(--font-label);text-transform:uppercase;letter-spacing:.22em}.body-large{font-size:clamp(17px,1.55vw,21px);line-height:1.7}.muted{color:var(--muted)}.light{color:var(--sand)}.section{padding:clamp(80px,10vw,170px) 0}.section-tight{padding:80px 0}.section-sand{background:var(--sand)}.section-white{background:#fff}.section-forest{background:var(--forest);color:var(--sand)}.section-sage{background:var(--sage)}.section-peach{background:var(--peach)}.section-terra{background:var(--terracotta);color:#fff9f4}.display{font-size:clamp(42px,5.5vw,95px);letter-spacing:-.05em;line-height:.87}.display-medium{font-size:clamp(36px,4.8vw,75px);letter-spacing:-.04em}.heading-large{font-size:clamp(31px,3.5vw,58px);letter-spacing:-.028em}.heading-med{font-size:clamp(27px,2.7vw,44px)}.eyeline{display:flex;align-items:center;gap:18px;margin-bottom:30px}.eyeline::before{content:'';width:54px;height:1px;background:currentColor;opacity:.45}.fine-line{border:0;border-top:1px solid var(--line);margin:30px 0}.section-forest .fine-line{border-color:#ffffff42}.small-note{font-size:12px;color:var(--muted)}.section-forest .small-note{color:#cfddcf}.button{appearance:none;display:inline-flex;align-items:center;gap:28px;justify-content:space-between;padding:15px 20px;min-height:53px;border:1px solid var(--ink);background:transparent;color:var(--ink);font:600 12px/1.2 var(--font-label);letter-spacing:.08em;text-transform:uppercase;transition:background .3s,color .3s,transform .3s var(--ease)}.button:hover{transform:translateY(-2px);background:var(--ink);color:#fff}.button svg{width:19px;height:19px}.button-filled{background:var(--forest);color:#fff;border-color:var(--forest)}.button-filled:hover{background:var(--terracotta);border-color:var(--terracotta)}.button-light{color:#fff;border-color:#fff}.button-light:hover{color:var(--forest);background:#fff}.button-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.arrow-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid currentColor;padding-bottom:10px;font:600 12px var(--font-label);text-transform:uppercase;letter-spacing:.09em}.arrow-link:hover{color:var(--terracotta)}.arrow-link span:last-child{font-size:20px}.img-wrap{position:relative;overflow:hidden;background:#c9c6b9}.img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}a:hover .img-wrap img,.img-wrap:hover img{transform:scale(1.045)}.image-caption{font:500 11px var(--font-label);text-transform:uppercase;letter-spacing:.16em;margin-top:15px;color:var(--muted)}
.site-header{height:92px;position:fixed;inset:0 0 auto;z-index:60;display:flex;align-items:center;border-bottom:1px solid rgba(37,39,34,.15);transition:background .35s,box-shadow .35s,height .35s;background:rgba(243,238,229,.96);backdrop-filter:blur(14px)}.site-header.is-scrolled{height:78px;box-shadow:0 8px 35px #19271f0d}.home .site-header:not(.is-scrolled){background:transparent;border-color:rgba(255,255,255,.35);color:#fff}.home .site-header:not(.is-scrolled) .button{color:#fff;border-color:#fff}.home .site-header:not(.is-scrolled) .button:hover{background:#fff;color:var(--forest)}.nav-inner{width:min(1500px,calc(100% - 90px));margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.wordmark{font:600 42px/1 var(--font-display);letter-spacing:-.055em;white-space:nowrap}.nav-links{display:flex;gap:36px;align-items:center}.nav-links a,.nav-drop-trigger{font-size:12px;font-weight:600;letter-spacing:.02em;position:relative}.nav-links a:after,.nav-drop-trigger:after{content:'';position:absolute;bottom:-7px;left:0;width:0;height:1px;background:currentColor;transition:width .3s}.nav-links a:hover:after,.nav-links a[aria-current=page]:after,.nav-drop-trigger:hover:after{width:100%}.nav-drop{position:relative}.nav-drop-trigger{border:0;background:transparent;color:inherit;padding:7px 0}.nav-drop-trigger .chev{display:inline-block;margin-left:7px;transition:transform .2s}.nav-drop:hover .chev,.nav-drop:focus-within .chev{transform:rotate(180deg)}.nav-menu{display:none;position:absolute;top:100%;left:-32px;width:260px;padding:18px 22px;background:var(--sand);box-shadow:0 14px 45px #0002;color:var(--ink);border:1px solid var(--line)}.nav-menu a{display:block;padding:10px 0}.nav-drop:hover .nav-menu,.nav-drop:focus-within .nav-menu,.nav-drop.is-open .nav-menu{display:block}.nav-actions{justify-self:end}.nav-actions .button{min-height:44px;padding:11px 17px}.mobile-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;border:1px solid currentColor;color:inherit}.mobile-toggle svg{width:25px}.mobile-overlay{display:none;position:fixed;inset:0;z-index:75;background:var(--forest);color:#fff;padding:100px 25px 35px;overflow:auto}.mobile-overlay.is-open{display:flex;flex-direction:column}.mobile-close{position:absolute;right:24px;top:24px;border:1px solid #fff6;background:transparent;color:#fff;padding:8px 13px}.mobile-links{display:grid;gap:14px}.mobile-links>a{font:500 clamp(34px,7vw,55px) var(--font-display);border-bottom:1px solid #fff3;padding:8px 0}.mobile-links .mobile-submenu{display:grid;gap:10px;padding:0 0 18px 15px}.mobile-submenu a{font-size:14px}.mobile-foot{margin-top:auto;padding-top:30px;font:11px var(--font-label);letter-spacing:.12em}
.page-hero{padding:180px 0 110px;background:var(--sand)}.page-hero h1{font-size:clamp(44px,5.8vw,90px);max-width:1200px;letter-spacing:-.05em}.page-hero .hero-lede{max-width:780px;margin:35px 0 0 auto;font-size:clamp(17px,1.5vw,22px)}.editorial-hero{min-height:770px;height:min(880px,100svh);background:var(--forest);position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-picture{position:absolute;inset:0 0 0 28%;overflow:hidden}.hero-picture img{width:100%;height:100%;object-fit:cover;filter:brightness(.75)}.hero-picture:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--forest) 0%,#263f3512 52%,#263f3550)}.hero-content{position:relative;width:min(1450px,calc(100% - 112px));margin:auto;padding-top:85px}.hero-content h1{max-width:910px;font-size:clamp(48px,6.2vw,105px);line-height:.82;letter-spacing:-.062em;margin:35px 0}.hero-content .hero-description{max-width:480px;font-size:17px;line-height:1.8}.hero-content .button{color:#fff;border-color:#fff}.hero-content .button:hover{background:#fff;color:var(--forest)}.hero-scroll{position:absolute;bottom:32px;left:calc((100% - min(1450px,100% - 112px))/2);display:flex;align-items:center;gap:15px;font:11px var(--font-label);text-transform:uppercase;letter-spacing:.18em}.hero-scroll:before{content:'';height:1px;width:60px;background:#fff}.hero-location{position:absolute;right:50px;bottom:40px;font:11px var(--font-label);letter-spacing:.2em}.hero-ornament{position:absolute;right:4vw;top:16%;border:1px solid #fffb;border-radius:100%;width:95px;height:95px;display:grid;place-items:center;font:11px var(--font-label);letter-spacing:.1em;transform:rotate(-14deg)}
.split-editorial{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(42px,7vw,135px);align-items:start}.split-editorial .img-wrap{height:620px}.split-editorial.reverse .img-wrap{order:2}.text-flow{max-width:670px}.text-flow p{color:#50584e}.text-flow h2{margin:0 0 33px}.text-flow .eyebrow{display:block;margin-bottom:18px}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:75px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.feature-strip>div{padding:24px 12px 24px 0;border-right:1px solid var(--line)}.feature-strip>div:not(:first-child){padding-left:22px}.feature-strip>div:last-child{border-right:0}.feature-strip span{font:12px var(--font-label);color:var(--terracotta);display:block;margin-bottom:20px}.feature-strip strong{font-size:15px;font-weight:500}.section-intro{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:65px}.section-intro h2{max-width:750px}.section-intro p{max-width:385px}.destinations-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 32px}.destination-card{display:block}.destination-card.featured{grid-column:span 2;display:grid;grid-template-columns:1.45fr 1fr;gap:50px;align-items:center}.destination-card .img-wrap{height:425px}.destination-card.featured .img-wrap{height:540px}.destination-card .card-copy{padding:22px 3px}.destination-card h3{font:500 clamp(33px,3.3vw,57px)/1 var(--font-display);margin:12px 0 16px;letter-spacing:-.025em}.destination-card p{color:var(--muted);line-height:1.75;font-size:14px}.destination-card.featured p{font-size:16px}.destination-card .arrow-link{margin-top:12px}.packages{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.package{border:1px solid #d9e4d152;padding:clamp(30px,4vw,62px);display:flex;flex-direction:column;transition:background .3s}.package:hover{background:#345347}.package-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:45px}.package-icon{font:300 43px var(--font-display);line-height:1}.package h3{font:500 clamp(34px,3vw,53px) var(--font-display);margin-bottom:20px}.package p{color:#e3e7df}.package ul{list-style:none;padding:0;margin:15px 0 40px}.package li{border-top:1px solid #ffffff3c;padding:7px 0 7px 18px;position:relative;font-size:13px}.package li:before{content:'·';position:absolute;left:1px;font-size:22px;top:1px}.package .button{margin-top:auto;width:fit-content}.experience-visual .img-wrap{height:560px}.experience-top{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:55px}.experience-top p{max-width:530px}.experience-bottom{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:75px}.experience-bottom>div{padding-top:25px;border-top:1px solid #25272255}.experience-bottom h3{font:500 31px var(--font-display);margin:18px 0}.experience-bottom p{font-size:14px}.philosophy-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 70px;margin-top:70px}.philosophy-cell{border-top:1px solid #263f3555;padding:36px 10px 60px 0}.philosophy-cell:nth-child(even){margin-top:85px}.philosophy-cell h3{font:500 45px var(--font-display);margin:0 0 20px}.philosophy-cell p{max-width:580px}.big-cta{overflow:hidden}.big-cta h2{font-size:clamp(56px,8vw,130px);line-height:.78;letter-spacing:-.065em;max-width:1250px}.big-cta .cta-row{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-top:50px}.big-cta p{max-width:500px}.big-cta .button{color:#fff;border-color:#fff}.big-cta .button:hover{background:#fff;color:var(--terracotta)}
.about-editorial{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.vertical-word{writing-mode:vertical-rl;transform:rotate(180deg);font:12px var(--font-label);letter-spacing:.2em}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:65px}.timeline-item{border-top:1px solid var(--line);padding-top:25px}.timeline-item .num{font:11px var(--font-label);color:var(--terracotta)}.timeline-item h3{font:500 28px var(--font-display);margin:15px 0}.timeline-item p{font-size:13px}.values-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.value-panel{padding:45px;border:1px solid var(--line)}.value-panel h3{font:500 38px var(--font-display);margin-bottom:24px}.value-panel p{font-size:14px}.perspective-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.perspective-card{border-top:1px solid var(--line);padding:28px 10px 0 0}.perspective-card h3{font:500 31px var(--font-display);margin:14px 0}.perspective-card p{font-size:14px}.hotel-hero{position:relative;padding-top:92px;min-height:740px;background:var(--forest);color:#fff;display:grid;align-items:end;overflow:hidden}.hotel-hero .hotel-hero-img{position:absolute;inset:92px 0 0}.hotel-hero .hotel-hero-img img{width:100%;height:100%;object-fit:cover;filter:brightness(.55)}.hotel-hero .hotel-hero-img:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#15291fca,transparent 70%)}.hotel-hero .hero-inner{position:relative;padding-bottom:85px}.hotel-hero h1{font-size:clamp(44px,5.8vw,86px);max-width:1120px;letter-spacing:-.05em;margin-top:22px}.hotel-intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.hotel-intro p{font-size:18px;line-height:1.9}.hotel-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(40px,7vw,125px)}.hotel-feature .img-wrap{height:600px}.hotel-feature.alt .img-wrap{order:2}.hotel-feature h2{margin:12px 0 27px}.hotel-feature p{font-size:15px}.room-list{margin-top:35px;border-top:1px solid var(--line)}.room-item{padding:18px 0;border-bottom:1px solid var(--line)}.room-item h3{font:500 25px var(--font-display);margin-bottom:7px}.room-item p{font-size:13px;margin:0}.casino-section{background:#e2d5c6}.casino-section .casino-notice{display:inline-block;border:1px solid var(--ink);padding:9px 15px;font:600 11px var(--font-label);text-transform:uppercase;letter-spacing:.12em;margin:18px 0}.location-block{display:grid;grid-template-columns:1fr 1fr;gap:55px}.location-facts{border-top:1px solid var(--line);margin-top:30px}.location-facts>div{padding:15px 0;border-bottom:1px solid var(--line)}.location-facts dt{font:600 10px var(--font-label);letter-spacing:.18em;text-transform:uppercase}.location-facts dd{margin:7px 0 0}.map-shell{min-height:405px;position:relative;background:#d7dbd0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;text-align:center}.map-shell iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.map-shell .button{margin-top:15px}.map-shell p{max-width:350px}.map-caption{margin-top:12px;font-size:12px;color:var(--muted)}
.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.contact-details h3{font:500 36px var(--font-display);margin-bottom:10px}.contact-details article{border-top:1px solid var(--line);padding:23px 0}.contact-details article p{font-size:14px}.form-card{padding:clamp(30px,5vw,75px);background:#fff}.form-card h2{font-size:clamp(34px,2.8vw,48px);margin-bottom:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font:600 12px var(--font-label)}.field input,.field select,.field textarea{width:100%;background:#f7f5f0;color:var(--ink);border:1px solid #d5d8d1;padding:13px 15px;border-radius:0;min-height:54px}.field textarea{resize:vertical;min-height:160px}.field [aria-invalid=true]{border-color:#a63820}.field-error{font-size:12px;color:#a63820;min-height:15px}.checkbox-field{display:flex;gap:12px;align-items:flex-start;margin:22px 0;font-size:13px}.checkbox-field input{margin-top:5px;accent-color:var(--forest);width:18px;height:18px}.form-status{font-size:13px;margin-top:15px}.faq-list{max-width:1100px;margin:55px auto 0;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:30px;align-items:center;padding:25px 5px;font:500 clamp(22px,2vw,34px) var(--font-display)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font:400 28px var(--font-body)}.faq-list details[open] summary:after{content:'−'}.faq-list details p{max-width:880px;padding:0 45px 22px 5px;font-size:15px}
.legal-layout{display:grid;grid-template-columns:265px minmax(0,800px);gap:clamp(50px,8vw,140px);align-items:start}.legal-toc{position:sticky;top:110px;max-height:calc(100vh - 135px);overflow:auto;border-top:1px solid var(--line);padding-top:22px}.legal-toc .eyebrow{margin-bottom:15px;display:block}.legal-toc a{display:block;font-size:12px;padding:4px 0;color:var(--muted)}.legal-toc a:hover{color:var(--terracotta)}.legal-article section{padding-bottom:32px;margin-bottom:35px;border-bottom:1px solid var(--line)}.legal-article h2{font:500 clamp(25px,2.2vw,36px) var(--font-display);letter-spacing:-.02em;margin-bottom:18px}.legal-article h3{font-size:18px;margin:16px 0}.legal-article p{font-size:15px;line-height:1.85}.legal-article a{text-decoration:underline;text-underline-offset:3px}.legal-article ul{padding-left:23px}.legal-article li{padding:4px 0}.legal-table{width:100%;border-collapse:collapse;font-size:12px;margin:25px 0}.legal-table th,.legal-table td{text-align:left;border-bottom:1px solid var(--line);padding:13px 10px;vertical-align:top}.legal-table th{background:#e6e7de}.help-banner{padding:35px;background:var(--forest);color:#fff;margin:30px 0}.help-banner p{font-size:16px;color:#fff}.help-banner a{font-weight:700}
.site-footer{background:var(--forest);color:var(--sand);padding:44px 0 25px}.footer-cols{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;padding:24px 0 75px;border-top:1px solid #ffffff42}.footer-col h3{font:500 11px var(--font-label);letter-spacing:.18em;text-transform:uppercase;margin-bottom:23px}.footer-col a,.footer-col button,.footer-col span{display:block;font-size:13px;color:#ebefe7c9;margin:0 0 11px}.footer-col a:hover,.footer-col button:hover{color:#fff}.footer-col button{background:none;border:none;padding:0;text-align:left}.footer-bottom{border-top:1px solid #ffffff42;display:flex;justify-content:space-between;gap:45px;padding:32px 0}.footer-bottom .notice{font:600 15px var(--font-label);letter-spacing:.08em}.footer-bottom p{font-size:12px;color:#e5eadfbd}.footer-bottom a{text-decoration:underline}.footer-meta{display:flex;justify-content:space-between;align-items:center;gap:30px;color:#d9e1d6a6;font-size:11px;border-top:1px solid #ffffff24;padding-top:22px}
.overlay[hidden],.cookie-banner[hidden]{display:none!important}.overlay{position:fixed;inset:0;z-index:200;background:#172a22d9;backdrop-filter:blur(8px);display:grid;place-items:center;padding:24px;overflow:auto}.age-card,.settings-card{width:min(100%,620px);background:var(--sand);padding:clamp(28px,5vw,72px);position:relative;max-height:calc(100svh - 40px);overflow:auto;box-shadow:0 30px 80px #0003}.age-card h2{font-size:clamp(36px,3.5vw,60px);line-height:1}.age-card .age-number{font:500 150px/.8 var(--font-display);letter-spacing:-.07em;color:var(--terracotta);margin:18px 0}.age-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.settings-card h2{font:500 39px var(--font-display);margin-bottom:10px}.setting-row{border-top:1px solid var(--line);padding:19px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.setting-row strong{display:block;font-size:14px}.setting-row p{font-size:12px;margin:6px 0 0}.switch{position:relative;width:46px;height:26px;flex:none}.switch input{opacity:0;width:46px;height:26px;position:absolute;z-index:1}.switch span{display:block;width:46px;height:26px;border-radius:14px;background:#979d96;transition:background .2s}.switch span:after{content:'';position:absolute;top:4px;left:4px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .2s}.switch input:checked+span{background:var(--forest)}.switch input:checked+span:after{transform:translateX(20px)}.switch input:focus-visible+span{outline:3px solid var(--terracotta);outline-offset:4px}.settings-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.settings-close{position:absolute;right:18px;top:18px;background:none;border:1px solid var(--line);width:38px;height:38px}.cookie-banner{position:fixed;z-index:150;left:25px;right:25px;bottom:20px;margin:auto;width:min(1180px,calc(100% - 50px));background:var(--sand);color:var(--ink);display:grid;grid-template-columns:1.1fr auto;gap:30px;align-items:center;padding:25px 30px;box-shadow:0 20px 65px #101d1590;border:1px solid var(--line)}.cookie-banner h2{font:500 24px var(--font-display);margin-bottom:7px}.cookie-banner p{font-size:13px;margin:0}.cookie-actions{display:flex;gap:8px;flex-wrap:wrap}.cookie-actions .button{min-height:44px;padding:10px 12px;font-size:10px;gap:8px}.back-top{position:fixed;right:25px;bottom:24px;width:48px;height:48px;z-index:50;background:var(--forest);color:#fff;border:1px solid #fff8;opacity:0;pointer-events:none;transition:opacity .3s}.back-top.is-visible{opacity:1;pointer-events:auto}.reveal{opacity:1;transform:none}.js-enabled .reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.js-enabled .reveal.is-visible{opacity:1;transform:none}
:focus-visible{outline:3px solid var(--terracotta);outline-offset:4px}::selection{background:#b96c5070;color:var(--ink)}
@media(max-width:1200px){.container{width:calc(100% - 70px)}.nav-inner{width:calc(100% - 55px)}.nav-links{gap:21px}.hero-content{width:calc(100% - 70px)}.hero-scroll{left:35px}.split-editorial{gap:55px}.split-editorial .img-wrap{height:520px}.destination-card.featured .img-wrap{height:450px}.footer-cols{grid-template-columns:repeat(3,1fr)}.legal-layout{grid-template-columns:205px 1fr;gap:55px}}
@media(max-width:900px){.site-header,.site-header.is-scrolled{height:75px}.nav-inner{display:flex;justify-content:space-between}.nav-links,.nav-actions{display:none}.mobile-toggle{display:flex}.editorial-hero{height:850px}.hero-picture{inset:0}.hero-picture:after{background:linear-gradient(90deg,#152a249c,#152a2460)}.hero-content h1{max-width:690px}.hero-ornament{display:none}.split-editorial,.hotel-feature,.hotel-intro,.location-block,.contact-layout,.experience-top{grid-template-columns:1fr;gap:35px}.split-editorial.reverse .img-wrap,.hotel-feature.alt .img-wrap{order:0}.split-editorial .img-wrap,.hotel-feature .img-wrap{height:450px}.section-intro{align-items:start;display:block}.section-intro p{max-width:630px;margin-top:20px}.destination-card.featured{display:block;grid-column:span 2}.destination-card.featured .img-wrap{height:450px}.packages{grid-template-columns:1fr 1fr}.feature-strip{grid-template-columns:1fr 1fr}.feature-strip>div:nth-child(2){border-right:0}.feature-strip>div:nth-child(n+3){border-top:1px solid var(--line)}.timeline{grid-template-columns:1fr 1fr}.philosophy-grid{gap:0 30px}.philosophy-cell h3{font-size:38px}.legal-layout{display:block}.legal-toc{position:relative;top:auto;max-height:225px;margin-bottom:50px;display:grid;grid-template-columns:1fr 1fr;gap:2px 15px}.legal-toc .eyebrow{grid-column:1/-1}.cookie-banner{grid-template-columns:1fr}}
@media(max-width:600px){.container,.hero-content{width:calc(100% - 38px)}.section{padding:80px 0}.section-tight{padding:60px 0}.site-header{height:68px}.nav-inner{width:calc(100% - 38px)}.wordmark{font-size:35px}.hero-content{padding-top:20px}.editorial-hero{height:calc(100svh - 0px);min-height:730px}.hero-content h1{font-size:clamp(44px,11vw,69px);margin:23px 0}.hero-content .hero-description{font-size:15px}.hero-location{right:20px;bottom:24px;font-size:9px}.hero-scroll{left:20px;bottom:60px}.page-hero{padding:130px 0 75px}.page-hero h1{font-size:clamp(40px,9vw,65px)}.page-hero .hero-lede{margin-top:23px;font-size:16px}.eyeline{margin-bottom:20px}.display{font-size:clamp(44px,10vw,65px)}.display-medium{font-size:clamp(36px,8vw,56px)}.heading-large{font-size:clamp(31px,7.5vw,45px)}.split-editorial .img-wrap,.hotel-feature .img-wrap{height:310px}.feature-strip{margin-top:45px}.feature-strip strong{font-size:13px}.feature-strip>div{padding-right:12px}.feature-strip>div:not(:first-child){padding-left:14px}.destinations-grid{display:block}.destination-card{margin-bottom:50px}.destination-card .img-wrap,.destination-card.featured .img-wrap{height:300px}.destination-card.featured p{font-size:14px}.packages,.philosophy-grid,.timeline,.values-grid,.perspective-cards,.experience-bottom{grid-template-columns:1fr;gap:18px}.package{padding:32px 25px}.package-top{margin-bottom:25px}.experience-visual .img-wrap{height:300px}.experience-bottom{margin-top:35px}.philosophy-cell:nth-child(even){margin-top:0}.big-cta h2{font-size:clamp(50px,11.5vw,78px)}.big-cta .cta-row{display:block}.hotel-hero{min-height:650px;padding-top:68px}.hotel-hero .hotel-hero-img{inset:68px 0 0}.hotel-hero h1{font-size:clamp(42px,9vw,62px)}.hotel-hero .hero-inner{padding-bottom:55px}.hotel-intro p{font-size:16px}.contact-layout{gap:30px}.form-card{padding:28px 22px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.location-block{gap:25px}.map-shell{min-height:320px}.legal-toc{grid-template-columns:1fr;max-height:210px}.legal-table{display:block;overflow-x:auto}.footer-cols{grid-template-columns:1fr 1fr;gap:26px;padding-bottom:55px}.footer-bottom{display:block}.footer-meta{display:block}.footer-meta span{display:block;margin-bottom:7px}.cookie-banner{left:10px;right:10px;bottom:10px;width:calc(100% - 20px);padding:16px;gap:14px}.cookie-banner p{font-size:12px}.cookie-actions{gap:5px}.cookie-actions .button{padding:9px;font-size:9px}.age-card,.settings-card{padding:30px 23px}.age-card .age-number{font-size:105px}.age-card h2{font-size:37px}.age-actions .button{width:100%}.settings-card h2{font-size:32px}.back-top{right:15px;bottom:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.js-enabled .reveal{opacity:1;transform:none}}
.age-locked #siteShell{pointer-events:none;user-select:none;filter:blur(2px)}

.package-icon{position:relative;display:block;width:62px;height:62px;flex:none}
.package-icon:before,.package-icon:after{content:'';position:absolute;box-sizing:border-box}
.icon-01:before{width:47px;height:47px;border:1.5px solid var(--sand);border-radius:50%;left:7px;top:4px}
.icon-01:after{width:46px;height:11px;border:1.5px solid var(--sand);border-left:0;border-right:0;border-top:0;border-radius:50%;left:8px;top:35px;transform:rotate(-14deg)}
.icon-02:before{width:37px;height:51px;left:10px;top:2px;background:repeating-linear-gradient(to bottom,transparent 0 8px,var(--sand) 8px 9px,transparent 9px 17px);border-left:1px solid var(--sand);border-right:1px solid var(--sand)}
.icon-02:after{width:19px;height:39px;border:1px solid var(--sand);left:40px;top:14px}
.icon-03:before{width:43px;height:43px;border:1px solid var(--sand);border-radius:50%;top:7px;left:9px}
.icon-03:after{width:57px;height:1px;background:var(--sand);top:32px;left:2px;transform:rotate(-35deg)}
.icon-04:before{width:41px;height:41px;border:1px solid var(--sand);left:11px;top:9px;transform:rotate(45deg)}
.icon-04:after{width:18px;height:18px;border:1px solid var(--sand);left:22px;top:20px;transform:rotate(45deg)}

.form-status.is-loading,.form-status.is-error,.form-status.is-info{padding:14px 17px;line-height:1.6;background:#f3eee5;border-left:3px solid #263f35}
.form-status.is-error{background:#fff0eb;border-left-color:#a63820;color:#823522}
#contactForm.is-submitted > :not(#formStatus){display:none!important}
#contactForm.is-submitted .form-status.is-success{margin:0;padding:38px 24px 34px;min-height:300px;background:#f3eee5;border:1px solid #d9ded2;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px}
.form-status.is-success .success-symbol{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#263f35;color:white;font:600 30px/1 var(--font-body)}
.form-status.is-success strong{display:block;font:500 clamp(30px,3vw,42px)/1.12 var(--font-display);color:#263f35}
.form-status.is-success p{font-size:15px;max-width:430px;margin:0;line-height:1.7}
.form-status.is-success .button{margin-top:8px}
.form-status:focus{outline:2px solid #b96c50;outline-offset:4px}
@media(max-width:600px){#contactForm.is-submitted .form-status.is-success{padding:32px 16px;min-height:270px}}


.page-hero.policy-hero {
  padding: 136px 0 55px;
}
.page-hero.policy-hero > .container {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  align-items: end;
  gap: 22px clamp(42px, 6vw, 112px);
}
.page-hero.policy-hero .eyeline {
  grid-column: 1 / -1;
  margin: 0 0 7px;
}
.page-hero.policy-hero h1 {
  grid-column: 1;
  font-size: clamp(44px, 4.4vw, 74px);
  line-height: .97;
  letter-spacing: -.045em;
  max-width: 690px;
}
.page-hero.policy-hero .hero-lede {
  grid-column: 2;
  margin: 0 0 5px;
  max-width: 570px;
  font-size: clamp(15px, 1.15vw, 18px);
  line-height: 1.65;
}
.page-hero.policy-hero-responsible h1 {
  font-size: clamp(38px, 3.65vw, 60px);
  line-height: .99;
}
.section.policy-body { padding: 48px 0 110px; }
.section.cta-section { padding: clamp(66px, 6.3vw, 100px) 0; }
.cta-section .big-cta h2 {
  font-size: clamp(44px, 5.1vw, 82px);
  line-height: .94;
  letter-spacing: -.045em;
  max-width: 940px;
}
.cta-section .big-cta .eyeline { margin-bottom: 28px; }
.cta-section .big-cta .cta-row {
  margin-top: 33px;
  gap: 24px;
  align-items: end;
}
.cta-section .big-cta .cta-row p {
  max-width: 520px;
  font-size: clamp(15px, 1.2vw, 18px);
  line-height: 1.65;
  margin: 0;
}
.cta-section .big-cta .cta-row .button-row {
  margin-top: 0;
  justify-content: flex-end;
}
.cta-section .big-cta > .button-row { margin-top: 29px; }
@media (max-width: 900px) {
  .page-hero.policy-hero { padding: 110px 0 42px; }
  .page-hero.policy-hero > .container { grid-template-columns: 1fr; row-gap: 20px; }
  .page-hero.policy-hero .eyeline,
  .page-hero.policy-hero h1,
  .page-hero.policy-hero .hero-lede { grid-column: 1; }
  .page-hero.policy-hero h1 { font-size: clamp(43px, 6.5vw, 64px); }
  .page-hero.policy-hero-responsible h1 { font-size: clamp(37px, 5vw, 55px); }
  .page-hero.policy-hero .hero-lede { max-width: 700px; }
  .section.policy-body { padding: 45px 0 85px; }
}
@media (max-width: 600px) {
  .page-hero.policy-hero { padding: 100px 0 35px; }
  .page-hero.policy-hero > .container { row-gap: 18px; }
  .page-hero.policy-hero .eyeline { margin: 0; }
  .page-hero.policy-hero h1 { font-size: clamp(39px, 10vw, 49px); line-height: 1; }
  .page-hero.policy-hero-responsible h1 { font-size: clamp(35px, 8.3vw, 43px); }
  .page-hero.policy-hero .hero-lede { font-size: 15px; line-height: 1.6; margin: 0; }
  .section.policy-body { padding: 36px 0 70px; }
  .section.cta-section { padding: 58px 0 65px; }
  .cta-section .big-cta h2 { font-size: clamp(40px, 9.5vw, 56px); line-height: .97; }
  .cta-section .big-cta .eyeline { margin-bottom: 22px; }
  .cta-section .big-cta .cta-row { margin-top: 24px; }
  .cta-section .big-cta .cta-row p { font-size: 15px; }
  .cta-section .big-cta .cta-row .button-row { margin-top: 22px; justify-content: flex-start; }
  .cta-section .big-cta .button-row .button { width: 100%; }
}


.page-hero.about-hero { padding: 145px 0 66px; }
.about-hero .eyeline { margin-bottom: 35px; }
.about-hero-top { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; column-gap: clamp(42px, 7vw, 120px); }
.page-hero.about-hero h1 { font-size: clamp(49px, 4.6vw, 76px); line-height: .99; max-width: 620px; letter-spacing: -.046em; }
.about-hero-lead { font-size: clamp(16px, 1.18vw, 18px); line-height: 1.75; max-width: 660px; }
.about-hero-lead p { margin: 0; }
.about-hero-details { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(35px, 7vw, 110px); margin-top: 45px; padding-top: 28px; border-top: 1px solid var(--line); }
.about-hero-details p { max-width: 630px; margin: 0; font-size: clamp(15px, 1.05vw, 17px); line-height: 1.75; }
@media(max-width:900px) {
 .page-hero.about-hero { padding: 116px 0 56px; }
 .about-hero .eyeline { margin-bottom: 25px; }
 .about-hero-top { gap: 32px; }
 .page-hero.about-hero h1 { font-size: clamp(43px, 6.4vw, 62px); }
 .about-hero-lead { font-size: 16px; line-height: 1.7; }
 .about-hero-details { gap: 30px; margin-top: 30px; padding-top: 25px; }
}
@media(max-width:650px) {
 .page-hero.about-hero { padding: 105px 0 45px; }
 .about-hero .eyeline { margin-bottom: 23px; }
 .about-hero-top { grid-template-columns: 1fr; gap: 24px; }
 .page-hero.about-hero h1 { font-size: clamp(41px, 9vw, 54px); line-height: 1.02; }
 .about-hero-lead { font-size: 15px; line-height: 1.7; }
 .about-hero-details { grid-template-columns: 1fr; gap: 18px; margin-top: 26px; padding-top: 22px; }
 .about-hero-details p { font-size: 15px; line-height: 1.7; }
}


.page-hero.contact-hero { padding: 145px 0 64px; }
.contact-hero .eyeline { margin-bottom: 32px; }
.contact-hero-top { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; column-gap: clamp(42px, 7vw, 120px); }
.page-hero.contact-hero h1 { font-size: clamp(48px, 4.5vw, 73px); line-height: .98; max-width: 610px; letter-spacing: -.046em; }
.contact-hero-lead { max-width: 660px; font-size: clamp(16px, 1.16vw, 18px); line-height: 1.75; }
.contact-hero-lead p { margin: 0; }
.contact-hero-details { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(35px, 7vw, 110px); margin-top: 39px; padding-top: 26px; border-top: 1px solid var(--line); }
.contact-hero-details p { max-width: 630px; margin: 0; font-size: clamp(15px, 1.05vw, 17px); line-height: 1.75; }
@media (max-width:900px) {
 .page-hero.contact-hero { padding: 116px 0 54px; }
 .contact-hero .eyeline { margin-bottom: 25px; }
 .contact-hero-top { gap: 32px; }
 .page-hero.contact-hero h1 { font-size: clamp(43px, 6.1vw, 62px); }
 .contact-hero-lead { font-size: 16px; line-height: 1.7; }
 .contact-hero-details { gap: 30px; margin-top: 30px; padding-top: 24px; }
}
@media (max-width:650px) {
 .page-hero.contact-hero { padding: 105px 0 44px; }
 .contact-hero .eyeline { margin-bottom: 22px; }
 .contact-hero-top { grid-template-columns: 1fr; gap: 24px; }
 .page-hero.contact-hero h1 { font-size: clamp(41px, 8.8vw, 54px); line-height: 1.02; }
 .contact-hero-lead { font-size: 15px; line-height: 1.7; }
 .contact-hero-details { grid-template-columns: 1fr; gap: 18px; margin-top: 26px; padding-top: 22px; }
 .contact-hero-details p { font-size: 15px; line-height: 1.7; }
}


.experience-top,
.hotel-intro {
  display: block;
  margin-bottom: clamp(30px, 4vw, 52px);
}
.experience-top > h2,
.hotel-intro > h2 {
  max-width: 980px;
  margin: 0 0 clamp(25px, 3.2vw, 40px);
  line-height: 1.03;
}
.experience-top > div,
.hotel-intro > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: clamp(30px, 6vw, 108px);
  align-items: start;
}
.experience-top > div p,
.hotel-intro > div p {
  min-width: 0;
  max-width: none;
  margin: 0;
  line-height: 1.8;
}
.experience-top > div p { font-size: clamp(15px, 1.06vw, 17px); }
.hotel-intro > div p { font-size: clamp(16px, 1.15vw, 18px); }
.experience-top + .experience-visual { margin-top: 0; }
.section-intro { align-items: start; }
.hotel-feature { align-items: start; }
@media (max-width: 900px) {
  .experience-top > h2,
  .hotel-intro > h2 { max-width: 760px; }
  .experience-top > div,
  .hotel-intro > div { column-gap: 32px; }
}
@media (max-width: 650px) {
  .experience-top,
  .hotel-intro { margin-bottom: 30px; }
  .experience-top > h2,
  .hotel-intro > h2 { margin-bottom: 24px; }
  .experience-top > div,
  .hotel-intro > div { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .experience-top > div p,
  .hotel-intro > div p { font-size: 15px; line-height: 1.72; }
}
