@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--ink:#1d3737;--deep:#102b31;--deep2:#173840;--mint:#dce8e3;--cream:#faf8f2;--sand:#f0eadf;--gold:#d9b889;--gold2:#bc945f;--line:#e4e4dd;--body:#586568;--white:#fff;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.container{width:min(1190px,calc(100% - 72px));margin:auto}.preview-notice{display:flex;align-items:center;justify-content:center;gap:16px;background:#ede6d8;color:#304044;font-size:11px;padding:9px 18px;text-align:center}.preview-notice strong{text-transform:uppercase;letter-spacing:1.1px}.topline{height:29px;background:var(--deep);color:#d5e0df;display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100vw - 1190px)/2),36px);font-size:10px;letter-spacing:1.1px;text-transform:uppercase}.site-header{background:var(--cream);position:relative;z-index:20;box-shadow:0 2px 9px #00000012}.head-inner{min-height:86px;display:flex;align-items:center;gap:26px}.logo{display:flex;align-items:center;gap:10px;white-space:nowrap}.logo-symbol{display:flex;border:1px solid var(--gold2);width:38px;height:38px;border-radius:50%;align-items:center;justify-content:center;color:var(--gold2);font-size:29px;font-family:serif;font-weight:normal}.logo-text{font-family:var(--serif);font-size:14px;letter-spacing:1.1px;line-height:1.2}.logo-text b{display:block;font-family:var(--sans);font-size:9px;letter-spacing:1.4px;margin-top:2px;font-weight:600}.main-nav{display:flex;align-items:center;justify-content:center;gap:23px;margin-left:auto}.main-nav a{font-size:11.5px;font-weight:600;white-space:nowrap;transition:color .2s}.main-nav a:hover{color:var(--gold2)}.header-cta{background:var(--deep);color:white;padding:14px 17px;white-space:nowrap;font-size:11px;letter-spacing:.15px;font-weight:600}.header-cta span{padding-left:8px;color:var(--gold)}.nav-toggle{display:none}.hero{height:min(760px,74vw);min-height:560px;position:relative;background:var(--deep);overflow:hidden;color:white}.hero-bg{position:absolute;inset:0;background-image:url('https://static.wixstatic.com/media/a9dbab_8b86060a85e84b159f775ef1e4da34bc~mv2.png');background-position:center 47%;background-size:cover;filter:saturate(.9)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,32,42,.85) 0%,rgba(6,36,44,.56) 47%,rgba(7,31,40,.1) 100%),linear-gradient(0deg,#102c3299 0%,transparent 30%)}.hero-content{position:relative;padding-top:clamp(95px,10.5vw,150px)}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:700;color:#ae916d;text-transform:uppercase;margin-bottom:22px}.eyebrow.light{color:var(--gold)}.eyebrow-line{display:inline-block;width:29px;height:1px;background:var(--gold);vertical-align:middle;margin-right:12px}.hero h1{font-family:var(--serif);font-size:clamp(43px,5.5vw,76px);font-weight:400;letter-spacing:-1.6px;line-height:1.12;margin:0 0 25px}.hero h1 em,.section h2 em,.intro-band em,.family h2 em,.final-cta h2 em{font-weight:400;color:#dbbd8f}.hero p{max-width:490px;font-size:14px;line-height:1.9;color:#eff4f3;margin:0 0 31px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}.btn{font-size:11px;letter-spacing:.5px;font-weight:700;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:50px;padding:0 24px;transition:background .2s,transform .2s}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#1b3032}.btn-gold:hover{background:#ebd0a4}.btn-outline{border:1px solid #d0e3ddad;color:white}.btn-outline:hover{background:#ffffff24}.hero-trust{display:flex;gap:15px;align-items:center;position:absolute;top:calc(min(760px,74vw) - 112px);left:0;color:#e7ededbb;font-size:9px;letter-spacing:1.4px}.hero-trust i{width:3px;height:3px;background:var(--gold);border-radius:50%}.trust-line{width:23px;height:1px;background:var(--gold)}.hero-side-label{position:absolute;right:20px;bottom:24px;writing-mode:vertical-rl;font-size:9px;letter-spacing:2px;color:#fff8;transform:rotate(180deg);text-transform:uppercase}.intro-band{background:#edf1ec;border-bottom:1px solid #dde4dc}.intro-layout{display:grid;grid-template-columns:200px 1fr 300px;align-items:center;gap:40px;padding-top:44px;padding-bottom:44px}.mini-label{font-size:10px;letter-spacing:1.8px;font-weight:700;line-height:1.7;color:#82968d}.intro-band h2{font:400 25px/1.35 var(--serif);margin:0}.intro-band h2 em{color:#71847c}.intro-band p{font-size:12px;color:var(--body);line-height:1.85;margin:0}.section{padding:95px 0}.section-header{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:35px}.section h2,.approach h2{font:400 clamp(31px,3.5vw,48px)/1.22 var(--serif);margin:0;letter-spacing:-.8px}.section h2 em,.approach h2 em{color:var(--gold2)}.section-header p{max-width:340px;font-size:13px;color:var(--body);line-height:1.8;margin:0}.match-shell{display:grid;grid-template-columns:47% 53%;background:#f6f3ed;box-shadow:0 12px 50px #0d302417}.match-image{min-height:460px;position:relative;overflow:hidden}.match-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.match-image:after{content:'';position:absolute;inset:70% 0 0;background:linear-gradient(transparent,#18363d99)}.match-caption{position:absolute;bottom:26px;left:32px;z-index:1;color:#fff;letter-spacing:2px;font-size:11px;font-weight:700}.match-panel{padding:45px 49px}.step,.result-kicker{font-size:10px;color:var(--gold2);font-weight:700;letter-spacing:1.6px}.match-panel h3{font:400 29px/1.3 var(--serif);margin:16px 0 21px}.pill-group{display:flex;flex-wrap:wrap;gap:8px}.pill{background:transparent;border:1px solid #cacfc7;padding:11px 15px;cursor:pointer;border-radius:3px;font-size:11px;color:#455452}.pill.selected{background:var(--deep);color:white;border-color:var(--deep)}.pill:focus-visible,.nav-toggle:focus-visible,a:focus-visible{outline:3px solid var(--gold2);outline-offset:3px}.field-prompt{margin:24px 0 12px;font-size:12px;font-weight:600}.match-result{background:#e9eee7;padding:20px;margin-top:25px}.result-name{font:400 24px/1.3 var(--serif);margin-top:7px}.match-result p{font-size:12px;color:var(--body);line-height:1.7;margin:7px 0 11px}.match-result a{font-size:11px;color:#245451;font-weight:700}.match-panel small{display:block;color:#76807d;font-size:10px;margin-top:12px}.resorts{background:var(--cream)}.text-link{font-size:12px;color:#476a66;font-weight:700;border-bottom:1px solid #799891;padding-bottom:7px}.text-link span{padding-left:11px}.resort-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.resort-card a{display:block;position:relative;overflow:hidden;min-height:480px;background:#50646b}.resort-card img{position:absolute;width:100%;height:100%;object-fit:cover;transition:transform .6s}.resort-card:hover img{transform:scale(1.07)}.resort-card a:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b2931d9 0%,#122e3811 70%)}.resort-overlay{position:absolute;bottom:35px;left:30px;right:25px;z-index:1;color:#fff}.resort-overlay span{font-size:9px;letter-spacing:2px;color:var(--gold)}.resort-overlay h3{font:400 39px var(--serif);margin:12px 0 3px}.resort-overlay p{font-size:12px;color:#f0f6f4;margin:0 0 23px}.resort-overlay b{font-size:10px;letter-spacing:1px;border-bottom:1px solid #ffffff8a;padding-bottom:7px;text-transform:uppercase}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.guide-card{border:1px solid var(--line);background:white}.guide-photo{height:215px;overflow:hidden;background:#cedbd7}.guide-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.guide-card:hover .guide-photo img{transform:scale(1.05)}.guide-inner{padding:25px 24px 30px}.guide-kicker{font-size:9px;letter-spacing:1.4px;font-weight:700;color:#b39572}.guide-inner h3{font:400 22px/1.42 var(--serif);min-height:94px;margin:14px 0 11px}.guide-inner h3 a:hover{color:#957550}.guide-inner p{font-size:12px;line-height:1.7;color:var(--body);min-height:62px}.arrow-link{font-size:11px;font-weight:700;color:#275b58}.family{display:grid;grid-template-columns:50% 50%;background:var(--deep);color:white;min-height:510px}.family-picture{min-height:510px;overflow:hidden}.family-picture img{width:100%;height:100%;max-height:550px;object-fit:cover}.family-text{padding:80px min(10%,90px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.family h2{font:400 clamp(34px,3.5vw,48px)/1.26 var(--serif);margin:0 0 19px}.family p{font-size:13px;line-height:1.85;max-width:425px;color:#d4e5e2;margin:0 0 28px}.family-links{display:flex;align-items:flex-start;gap:24px;flex-wrap:wrap}.family-secondary{font-size:11px;color:var(--gold);padding-top:16px}.approach{background:#f5f5ee}.approach-grid{display:grid;grid-template-columns:45% 1fr;gap:60px}.approach-grid>div>p{color:var(--body);font-size:14px;line-height:1.9;margin:0 0 26px}.value-list>div{display:grid;grid-template-columns:40px 1fr;gap:5px 17px;padding:15px 0;border-top:1px solid #d7ded6}.value-list span{color:#aa906b;font-size:10px;margin-top:5px;grid-row:span 2}.value-list strong{font:400 19px var(--serif)}.value-list p{font-size:12px;margin:0;color:var(--body);line-height:1.7}.final-cta{padding:92px 0;background:linear-gradient(115deg,#112d35e8,#153f42ef),url('https://static.wixstatic.com/media/a9dbab_6a8f585beed346979b037c5b7ba1ba6a~mv2.jpeg') center/cover;color:white;text-align:center}.final-cta h2{font:400 48px/1.3 var(--serif);margin:0 0 16px}.final-cta p{font-size:13px;color:#d3e1df;line-height:1.8;margin:0 auto 25px;max-width:510px}.final-cta .micro{font-size:10px;margin:17px auto 0;color:#b6cac6}footer{background:#0c252c;color:#dbe3e0;padding:60px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:40px}.foot-logo{color:white}.footer-grid p{font-size:11px;color:#b7c6c3;line-height:1.9;max-width:285px}.footer-grid>div{display:flex;flex-direction:column;gap:13px}.footer-grid b{color:#d8bb92;font-size:10px;letter-spacing:1.4px}.footer-grid a:not(.logo){font-size:11px;color:#c0cecb}.footer-grid a:hover{color:var(--gold)}.footer-contact{color:#ddc19a!important}.footer-bottom{border-top:1px solid #ffffff2b;margin-top:49px;padding-top:21px;display:flex;justify-content:space-between;gap:25px;font-size:10px;color:#9eaeab}.footer-bottom span:last-child{max-width:710px;text-align:right;line-height:1.8}
@media(max-width:1100px){.main-nav{gap:13px}.main-nav a{font-size:10px}.head-inner{gap:16px}.header-cta{padding:14px 12px}.logo-text{font-size:12px}.hero-trust{top:auto;bottom:45px}.intro-layout{grid-template-columns:180px 1fr}.intro-band p{grid-column:2}.match-panel{padding:35px}}
@media(max-width:830px){.topline span:last-child{display:none}.container{width:min(100% - 40px,720px)}.head-inner{min-height:70px}.header-cta{margin-left:auto}.nav-toggle{display:flex;flex-direction:column;gap:4px;background:transparent;border:0;padding:10px;order:3;cursor:pointer}.nav-toggle span{display:block;width:21px;height:2px;background:var(--deep)}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;background:var(--cream);padding:20px 35px;box-shadow:0 10px 14px #0002}.main-nav.open{display:flex}.main-nav a{font-size:13px;padding:7px}.hero{height:680px;min-height:0}.hero-content{padding-top:125px}.hero-trust{display:none}.intro-layout{grid-template-columns:1fr;gap:10px;padding:38px 0}.intro-band p{grid-column:auto;max-width:460px}.section{padding:65px 0}.match-shell{grid-template-columns:1fr}.match-image{min-height:300px}.match-panel{padding:32px}.resort-grid{gap:12px}.resort-card a{min-height:360px}.resort-overlay{left:18px;bottom:23px}.resort-overlay h3{font-size:30px}.guide-grid{gap:12px}.guide-inner{padding:18px}.guide-inner h3{font-size:19px;min-height:100px}.family-text{padding:48px 30px}.approach-grid{gap:22px}}
@media(max-width:590px){.preview-notice{flex-direction:column;gap:3px;font-size:10px}.topline{height:28px;padding:0 19px}.topline span{font-size:8px}.container{width:calc(100% - 34px)}.head-inner{gap:5px;min-height:70px}.logo-symbol{width:29px;height:29px;font-size:24px}.logo{gap:6px}.logo-text{font-size:10px}.logo-text b{font-size:7px;letter-spacing:.75px}.header-cta{font-size:9px;padding:11px 8px}.header-cta span{display:none}.hero{height:620px}.hero-bg{background-position:62% 50%}.hero-shade{background:linear-gradient(90deg,#0c2a33df,#11303c40),linear-gradient(0deg,#0b2632ba,transparent 58%)}.hero-content{padding-top:102px}.hero h1{font-size:46px}.hero p{font-size:12px;max-width:350px}.hero-side-label{display:none}.intro-band h2{font-size:25px}.section-header{display:block}.section-header p{margin-top:19px}.match-image{min-height:240px}.match-panel{padding:27px 22px}.match-panel h3{font-size:26px}.resort-grid,.guide-grid{grid-template-columns:1fr;gap:16px}.resort-card a{min-height:400px}.guide-photo{height:245px}.guide-inner h3,.guide-inner p{min-height:0}.guide-card{margin-bottom:10px}.family{grid-template-columns:1fr}.family-picture{min-height:260px;height:260px}.family-text{padding:52px 28px}.approach-grid{grid-template-columns:1fr}.final-cta{padding:70px 18px}.final-cta h2{font-size:38px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:span 2}.footer-bottom{display:block}.footer-bottom span{display:block}.footer-bottom span:last-child{text-align:left;margin-top:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Keep longer editorial navigation accessible at laptop widths */
@media(min-width:831px) and (max-width:1130px){.main-nav{gap:10px}.main-nav a{font-size:9.7px}.head-inner{gap:12px}.header-cta{font-size:10px;padding:12px 9px}.logo-text{font-size:11px}}


/* CHR v3: owner-selected luxury logo + more natural, sharply presented resort imagery */
.site-header .brand-logo{display:flex;flex:none;align-items:center;max-width:273px;min-width:190px}
.brand-logo img{width:100%;height:auto;max-height:88px;object-fit:contain}
.site-header .head-inner{gap:19px;min-height:92px}
.hero-bg{width:100%;height:100%;object-fit:cover;object-position:center 47%;background-image:none!important;filter:none!important}
.hero-shade{background:linear-gradient(90deg,rgba(5,32,42,.72) 0%,rgba(7,36,43,.27) 50%,rgba(7,31,40,.025) 100%),linear-gradient(0deg,rgba(13,39,45,.23),transparent 28%)}
.hero h1{text-shadow:0 2px 10px rgba(4,24,29,.15)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (max-width:1180px) and (min-width:831px){.site-header .brand-logo{max-width:205px;min-width:165px}.head-inner{gap:11px!important}.main-nav{gap:10px!important}.main-nav a{font-size:9.4px!important}}
@media(max-width:830px){.site-header .brand-logo{max-width:230px;min-width:158px}.site-header .head-inner{min-height:78px;gap:8px}}
@media(max-width:590px){.site-header .brand-logo{max-width:49vw;min-width:0}.brand-logo img{max-height:70px}.site-header .header-cta{margin-left:auto;font-size:9px}.site-header .head-inner{min-height:73px}.hero-bg{object-position:63% center}.hero-shade{background:linear-gradient(90deg,rgba(5,30,38,.79),rgba(8,31,38,.28)),linear-gradient(0deg,rgba(11,38,50,.23),transparent 58%)}}

/* v4 · User-approved Concept 1 brand identity. */
:root{--chr-charcoal:#1f2933;--chr-champagne:#d4b278;--chr-soft-sand:#eadcc6;--chr-ocean-teal:#0e5f73}
.site-header .brand-logo{max-width:286px;min-width:214px}
.site-header .brand-logo img{width:100%;height:auto;max-height:69px;object-fit:contain;object-position:left center;mix-blend-mode:multiply}
.site-header .head-inner{min-height:84px}
.foot-brand-lockup{display:flex;align-items:center;gap:13px;text-decoration:none;color:#faf8f2!important}
.foot-brand-lockup img{width:54px;height:54px;object-fit:contain;flex:0 0 auto}
.foot-brand-lockup span{font-family:var(--serif);font-size:18px;line-height:1.12;letter-spacing:.09em}
.foot-brand-lockup small{font-family:var(--sans);display:block;color:#d4b278;font-size:9px;letter-spacing:.30em;margin-top:7px}
@media(min-width:831px) and (max-width:1200px){.site-header .brand-logo{min-width:160px;max-width:222px}.site-header .head-inner{gap:13px}}
@media(max-width:830px){.site-header .brand-logo{max-width:248px;min-width:165px}.site-header .brand-logo img{max-height:65px}}
@media(max-width:590px){.site-header .brand-logo{max-width:50vw;min-width:0}.site-header .brand-logo img{max-height:56px}.foot-brand-lockup span{font-size:15px}}
