:root{--navy:#0a1a33;--navy-2:#10294d;--gold:#c9a24b;--gold-light:#e1c778;--sand:#f7f1e7;--cream:#fffdf8;--ink:#172033;--muted:#667085;--line:rgba(10,26,51,.14);--display:'Marcellus',Georgia,serif;--body:'Jost',Arial,sans-serif;--shadow:0 18px 50px rgba(10,26,51,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--sand);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.sr-only,.skip-link{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link:focus{z-index:100;width:auto;height:auto;clip:auto;top:1rem;left:1rem;padding:.7rem 1rem;background:#fff}.site-header{position:absolute;z-index:20;top:0;left:0;right:0;height:88px;padding:0 clamp(24px,5vw,72px);display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid rgba(255,255,255,.16);transition:.3s}.site-header.scrolled{position:fixed;background:rgba(10,26,51,.96);backdrop-filter:blur(10px);box-shadow:0 6px 30px rgba(0,0,0,.16)}.wordmark{font-family:var(--display);font-size:1.35rem;letter-spacing:.28em}.main-nav{display:flex;align-items:center;gap:2rem}.main-nav>a:not(.button){font-size:.82rem;letter-spacing:.08em}.menu-toggle{display:none;color:#fff;border:0;background:transparent}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:.75rem 1.5rem;border:1px solid transparent;border-radius:999px;font-size:.78rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;transition:.2s}.button:hover{transform:translateY(-2px)}.button--small{min-height:40px;padding:.55rem 1.2rem}.button--gold{background:var(--gold);color:var(--navy)}.button--gold:hover{background:var(--gold-light)}.button--navy{background:var(--navy);color:#fff}.button--outline{border-color:rgba(225,199,120,.7);color:#fff}.text-link{color:#fff;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:.2rem;font-size:.85rem}.text-link--dark{color:var(--navy);border-color:var(--gold)}.eyebrow{margin:0 0 1rem;color:var(--gold);font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.08;margin:0}h1{font-size:clamp(3rem,7vw,6.5rem)}h2{font-size:clamp(2.35rem,4.5vw,4.6rem)}h3{font-size:1.75rem}.section{padding:clamp(72px,10vw,140px) clamp(24px,6vw,90px)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:130px clamp(24px,9vw,140px) 70px;color:#fff;background-image:linear-gradient(90deg,rgba(5,15,31,.83),rgba(5,15,31,.16)),var(--hero-image);background-position:center;background-size:cover}.hero__content{max-width:720px}.hero__content>p:not(.eyebrow){max-width:590px;color:#e6e9ee;font-size:1.12rem}.button-row{display:flex;align-items:center;gap:1.7rem;margin-top:2rem}.hero__scroll{position:absolute;right:5vw;bottom:38px;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase}.intro{text-align:center;max-width:900px;margin:auto}.intro>p:last-child{max-width:660px;margin:1.7rem auto 0;color:var(--muted);font-size:1.08rem}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.8rem}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.destination-card{position:relative;min-height:530px;display:flex;align-items:end;padding:2rem;color:#fff;background-image:linear-gradient(0deg,rgba(5,15,31,.86),transparent 70%),var(--card-image);background-position:center;background-size:cover;overflow:hidden}.destination-card:before{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.18)}.destination-card h3{font-size:2.2rem}.destination-card a{display:inline-block;margin-top:1rem;font-size:.78rem;border-bottom:1px solid var(--gold)}.section--navy{background:var(--navy);color:#fff}.split-feature{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,8vw,120px);align-items:center}.split-feature__image img{width:100%;height:660px;object-fit:cover}.split-feature__copy>p:not(.eyebrow){max-width:520px;color:#c7d0dd;margin:1.7rem 0 2rem}.closing{text-align:center;background:var(--cream)}.closing p:not(.eyebrow){color:var(--muted);margin:1rem 0 1.8rem}.footer{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:3rem;padding:72px clamp(24px,6vw,90px) 28px;background:#061224;color:#c4ccda}.footer h2{font:600 .7rem var(--body);color:var(--gold);letter-spacing:.16em;text-transform:uppercase}.footer a:not(.wordmark){display:block;margin:.55rem 0;font-size:.85rem}.footer small{grid-column:1/-1;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.12);color:#8995a8}.page-hero{padding:170px 6vw 90px;text-align:center;background:var(--navy);color:#fff}.page-hero p:last-child{color:#bdc7d6}.page-hero--compact{padding-bottom:64px}.resort-list{display:grid;gap:80px}.resort-row{display:grid;grid-template-columns:1.25fr .75fr;gap:6vw;align-items:center}.resort-row:nth-child(even) img{order:2}.resort-row img{width:100%;height:470px;object-fit:cover}.resort-row p:not(.eyebrow){color:var(--muted);margin:1.2rem 0 1.8rem}.booking-shell{max-width:1120px;margin:auto}.steps{display:flex;justify-content:center;gap:8vw;list-style:none;padding:0;margin:0 0 2rem;color:#87909e}.steps li{display:flex;align-items:center;gap:.5rem}.steps .active{color:var(--navy);font-weight:600}.steps span{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.search-panel{display:grid;grid-template-columns:1.4fr repeat(3,1fr) auto;gap:12px;padding:24px;background:#fff;box-shadow:var(--shadow)}label{display:grid;gap:.35rem;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}input,select{min-height:48px;width:100%;padding:0 .8rem;border:1px solid var(--line);background:var(--cream);color:var(--ink)}.booking-results{margin-top:80px}.room-card{display:grid;grid-template-columns:.9fr 1.1fr;margin:0 0 24px;background:#fff;box-shadow:var(--shadow)}.room-card img{width:100%;height:100%;min-height:360px;object-fit:cover}.room-card>div{padding:3rem}.room-card>div>p:not(.eyebrow){color:var(--muted)}.room-card strong{display:block;margin:1.8rem 0;font-size:1.35rem;color:var(--navy)}.room-card small{font-weight:400;color:var(--muted)}.guest-hero{padding:160px 7vw 90px;display:grid;grid-template-columns:1fr 420px;gap:8vw;align-items:end;background:linear-gradient(90deg,rgba(5,15,31,.9),rgba(5,15,31,.35)),url('https://images.unsplash.com/photo-1602002418082-a4443e081dd1?auto=format&fit=crop&w=1900&q=80') center/cover;color:#fff}.guest-hero h1{font-size:clamp(3rem,6vw,5.2rem)}.guest-hero>div>p:last-child{color:#d0d7e2}.stay-card{padding:28px;background:rgba(10,26,51,.74);border:1px solid rgba(201,162,75,.55);backdrop-filter:blur(8px)}.stay-card span,.upcoming article span,.timeline article span{color:var(--gold);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.stay-card strong{display:block;margin:.8rem 0;font-family:var(--display);font-size:1.35rem}.stay-card a{font-size:.8rem;border-bottom:1px solid var(--gold)}.action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.action-card{min-height:190px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.65rem;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer;transition:.2s}.action-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.action-card svg{color:var(--gold);width:28px}.action-card span{color:var(--muted);font-size:.8rem}.upcoming{padding-top:0}.upcoming article,.timeline article{display:grid;grid-template-columns:130px 1fr auto;gap:2rem;align-items:center;padding:2rem;background:#fff;border-bottom:1px solid var(--line)}.upcoming time,.timeline time{font-family:var(--display);font-size:1.3rem}.upcoming article p,.timeline article p{color:var(--muted);margin:.4rem 0}.icon-button{border:0;background:transparent;color:var(--gold);cursor:pointer}.timeline{max-width:960px;margin:auto}.timeline article{position:relative;background:transparent;border-left:1px solid var(--gold)}.timeline h2{font-size:1.65rem}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}
@media(max-width:850px){.site-header{height:74px}.menu-toggle{display:block}.main-nav{position:fixed;inset:74px 0 auto;display:none;flex-direction:column;align-items:stretch;padding:2rem;background:var(--navy)}.main-nav.open{display:flex}.card-grid,.action-grid{grid-template-columns:repeat(2,1fr)}.split-feature,.resort-row,.guest-hero{grid-template-columns:1fr}.resort-row:nth-child(even) img{order:0}.search-panel{grid-template-columns:1fr 1fr}.search-panel .button{grid-column:1/-1}.footer{grid-template-columns:1fr 1fr}.footer>div:first-child,.footer small{grid-column:1/-1}.guest-hero{padding-top:130px}.stay-card{max-width:500px}.room-card{grid-template-columns:1fr}}
@media(max-width:560px){h1{font-size:3.2rem}.section{padding-left:20px;padding-right:20px}.button-row{align-items:flex-start;flex-direction:column}.hero{padding-left:24px}.section-heading{align-items:flex-start;flex-direction:column}.card-grid,.action-grid,.search-panel{grid-template-columns:1fr}.destination-card{min-height:430px}.split-feature__image img{height:420px}.footer{grid-template-columns:1fr}.footer>div:first-child,.footer small{grid-column:auto}.room-card>div{padding:2rem}.upcoming article,.timeline article{grid-template-columns:85px 1fr;gap:1rem}.upcoming .icon-button,.timeline .icon-button{display:none}.steps{gap:1rem}.steps span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

