:root{--espresso:#49302b;--espresso-deep:#33211f;--pink:#f6dfe7;--pink-strong:#f0ccd8;--cream:#fcf8f6;--taupe:#846f69;--line:#eadfda;--white:#fff;--font:Inter,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:78px}body{margin:0;background:var(--cream);color:var(--espresso);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid #bb738d;outline-offset:4px}::selection{background:#edc1d0;color:var(--espresso)}.announcement{background:var(--espresso);color:#fff3f6;text-align:center;font-size:10px;font-weight:650;letter-spacing:.21em;padding:11px 12px}.announcement span{padding:0 14px;color:#f1c5d2}.site-header{height:80px;max-width:1440px;margin:auto;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{white-space:nowrap;font-size:16px;font-weight:800;letter-spacing:-.07em}.mark{color:#bd8090;font-size:22px;vertical-align:-2px;margin-right:8px}.wordmark-dot{color:#c28da1}.desktop-nav{display:flex;gap:35px;font-size:12px;font-weight:600}.desktop-nav a:hover,.jump-links a:hover{color:#b66f87}.header-cta{font-size:12px;font-weight:700;border-bottom:1px solid var(--espresso);padding-bottom:7px}.header-cta span{padding-left:12px}.hero{position:relative;max-width:1440px;margin:0 auto;min-height:620px;display:grid;grid-template-columns:48% 52%;padding:10px 5% 48px}.hero-content{background:#f9edf0;padding:90px 9% 52px 11%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow,.section-eyebrow{font-size:10px;font-weight:750;letter-spacing:.22em}.eyebrow{display:flex;align-items:center;gap:12px}.line{width:30px;height:1px;background:var(--espresso)}h1,h2,h3,h4,p{margin-top:0}.hero h1{font-size:clamp(64px,7vw,112px);line-height:.98;letter-spacing:-.09em;margin:32px 0 25px;font-weight:750}.hero h1 em,.bottom-cta h2 em{font-style:normal;color:#c8899e}.hero-content>p{font-size:14px;line-height:1.9;color:#725a56;max-width:390px;margin-bottom:28px}.button{display:inline-flex;align-items:center;gap:38px;padding:17px 22px;font-size:12px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--espresso);color:#fff}.button-dark:hover{background:#67433c}.hero-footnote{font-size:10px;color:#987e79;margin-top:66px}.tiny-star{color:#b87890;margin-right:8px}.hero-image{min-height:560px;position:relative;background:#a69b9b url('https://images.unsplash.com/photo-1536599018102-9f803c140fc1?auto=format&fit=crop&w=1600&q=90') center/cover}.hero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 72%,rgba(28,17,17,.55))}.hero-image-label{position:absolute;bottom:24px;left:25px;right:25px;display:flex;justify-content:space-between;color:white;font-size:9px;font-weight:700;letter-spacing:.18em}.hero-side-note{position:absolute;right:5%;bottom:16px;font-size:9px;font-weight:750;letter-spacing:.2em}.hero-side-note span{margin-left:12px}.intro{max-width:1060px;margin:0 auto;padding:115px 24px 110px;text-align:center}.intro .section-eyebrow{color:#ad7d8b}.intro h2{font-size:clamp(42px,5vw,70px);line-height:1.1;letter-spacing:-.075em;margin:20px 0}.intro h2 span{color:#bd8a9a}.intro>p{max-width:545px;font-size:14px;line-height:1.9;color:var(--taupe);margin:0 auto 45px}.jump-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.jump-links a{background:#fff;border:1px solid var(--line);padding:22px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;font-size:11px;color:#b2848f;transition:transform .2s}.jump-links a:hover{transform:translateY(-3px)}.jump-links strong{color:var(--espresso);font-size:14px}.destination{max-width:1320px;margin:0 auto 100px;padding:0 24px}.destination-banner{height:430px;position:relative;background:#aa9693 var(--destination-photo) center/cover;color:#fff;overflow:hidden}.banner-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(30,17,17,.38),rgba(30,17,17,.12) 32%,rgba(30,17,17,.66))}.banner-top{position:absolute;top:30px;left:36px;right:36px;display:flex;justify-content:space-between;font-size:10px;font-weight:750;letter-spacing:.18em}.banner-title{position:absolute;left:6%;bottom:48px}.banner-tag{font-size:10px;letter-spacing:.2em;font-weight:750;margin-bottom:16px}.banner-title h2{font-size:clamp(65px,9vw,124px);letter-spacing:-.09em;line-height:1;margin:0 0 12px}.title-dot{color:#efb9cd}.banner-title p{font-size:14px;margin:0;color:#fff6f8}.destination-body{background:#fff;padding:66px clamp(22px,7%,90px) 80px}.destination-intro{max-width:650px;margin-bottom:48px}.destination-intro .section-eyebrow{color:#b48794}.destination-intro h3{font-size:clamp(35px,4.5vw,58px);letter-spacing:-.07em;line-height:1.12;margin:17px 0}.destination-intro h3 em{font-style:normal;color:#b78294}.destination-intro>p{font-size:13px;line-height:1.9;color:var(--taupe);max-width:510px}.groups{display:flex;flex-direction:column;gap:40px}.group-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:14px;border-bottom:1px solid #e9dfdc;margin-bottom:16px}.group-header h4{font-size:17px;letter-spacing:-.04em;margin:0}.group-header span{font-size:10px;font-weight:700;color:#ad8c90;letter-spacing:.15em}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-card{min-height:88px;padding:16px 19px;background:#f9eef1;border:1px solid #f4e1e7;display:flex;align-items:center;justify-content:space-between;gap:15px;transition:transform .2s,background .2s,border-color .2s}.booking-card:hover{transform:translateY(-2px);background:#f5e0e7;border-color:#edc8d5}.booking-card-copy{display:flex;flex-direction:column;gap:6px}.booking-card strong{font-size:13px;font-weight:700;letter-spacing:-.02em}.booking-card small{font-size:11px;color:#927775}.arrow-circle{width:34px;height:34px;min-width:34px;border-radius:50%;background:var(--espresso);color:#fff;display:grid;place-items:center;font-size:17px;line-height:1}.featured{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f6dfe7;border:1px solid #eecad6;padding:32px 34px;margin:0 0 45px}.featured-label{font-size:10px;letter-spacing:.19em;font-weight:800;color:#9e6075}.featured h4{font-size:clamp(24px,3vw,34px);letter-spacing:-.06em;margin:12px 0 9px}.featured p{font-size:12px;color:#775e5a;line-height:1.6;margin:0}.featured-button{display:inline-flex;align-items:center;justify-content:center;gap:25px;white-space:nowrap;background:var(--espresso);color:#fff;padding:17px 18px;font-size:12px;font-weight:700;transition:background .2s}.featured-button:hover{background:#65433d}.featured-arrow{color:#fff;font-size:20px;font-weight:700;line-height:1}.bottom-cta{text-align:center;background:#f5e0e7;padding:100px 24px 110px;position:relative;overflow:hidden}.bottom-cta .sparkle{position:absolute;top:30px;right:13%;font-size:90px;color:#e5b8c8;line-height:1}.bottom-cta .section-eyebrow{color:#a77988}.bottom-cta h2{font-size:clamp(48px,6vw,80px);letter-spacing:-.085em;line-height:1.08;margin:20px 0}.bottom-cta p{color:#846b69;font-size:13px;line-height:1.8;margin:0 auto 25px;max-width:410px}footer{max-width:1320px;margin:auto;padding:50px 24px 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:42px}.footer-top>span{font-size:12px;color:var(--taupe)}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:30px}.footer-bottom p,.footer-bottom>span{font-size:10px;line-height:1.7;color:#917e7a;max-width:550px;margin:0}.footer-bottom>span{white-space:nowrap;letter-spacing:.1em}.toast{position:fixed;z-index:10;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--espresso);color:#fff;padding:15px 23px;font-size:12px;font-weight:650;box-shadow:0 8px 25px #49302b35;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.toast.visible{opacity:1;transform:translate(-50%,0)}@media(max-width:850px){.site-header{height:70px}.desktop-nav{gap:17px}.hero{grid-template-columns:1fr 1fr;min-height:490px}.hero-content{padding:55px 7%}.hero h1{font-size:clamp(55px,7.7vw,80px)}.hero-image{min-height:490px}.hero-footnote{margin-top:40px}.destination-banner{height:370px}.destination-body{padding:48px 35px 65px}}@media(max-width:640px){.announcement{font-size:8px;letter-spacing:.14em}.site-header{height:68px;padding:0 5%}.wordmark{font-size:14px}.mark{font-size:19px}.desktop-nav{display:none}.header-cta{font-size:10px}.hero{display:flex;flex-direction:column-reverse;padding:0;min-height:0}.hero-image{min-height:350px}.hero-image-label{bottom:20px}.hero-content{padding:55px 7% 44px}.hero h1{font-size:clamp(65px,15vw,100px);margin:25px 0 20px}.hero-content>p{font-size:13px}.hero-footnote{margin-top:40px}.hero-side-note{display:none}.intro{padding:80px 20px 65px}.intro h2{font-size:49px}.jump-links{grid-template-columns:1fr;gap:8px}.jump-links a{padding:18px}.destination{padding:0;margin-bottom:55px}.destination-banner{height:330px}.banner-top{left:20px;right:20px;top:20px;font-size:8px}.banner-title{left:22px;bottom:32px;right:15px}.banner-title h2{font-size:clamp(62px,16vw,94px)}.banner-title p{font-size:12px;line-height:1.6}.destination-body{padding:43px 19px 55px}.destination-intro{margin-bottom:35px}.destination-intro h3{font-size:38px}.booking-grid{grid-template-columns:1fr;gap:9px}.booking-card{min-height:78px;padding:15px}.featured{padding:25px 21px;display:block;margin-bottom:38px}.featured-button{margin-top:24px;width:100%;justify-content:space-between}.group-header h4{font-size:15px}.groups{gap:35px}.bottom-cta{padding:80px 20px}.bottom-cta h2{font-size:52px}.bottom-cta .sparkle{font-size:55px;right:5%;top:15px}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start;gap:15px}.footer-top{padding-bottom:30px}.footer-bottom>span{white-space:normal}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Featured stay contrast */
.featured-button,.featured-button:visited,.featured-button .featured-arrow{color:#fff!important}

/* Render vector icons consistently on iOS, Android and desktop; no emoji font fallback. */
.icon{display:inline-block;width:1.15em;height:1.15em;vertical-align:-.16em;flex:none;stroke:currentColor;fill:none}
.mark .icon{width:1em;height:1em;vertical-align:-.09em}
.announcement .icon{width:1.1em;height:1.1em;vertical-align:-.18em}
.header-cta .icon,.button .icon{width:1.15em;height:1.15em}
.jump-links .icon{width:17px;height:17px;margin-left:auto}
.arrow-circle .icon{width:18px;height:18px;vertical-align:0}
.featured-arrow .icon{width:19px;height:19px;vertical-align:0}
.tiny-star .icon{width:13px;height:13px}
.bottom-cta .sparkle .icon{width:1em;height:1em}

/* Exact supplied dusty-rose eight-spoke asterisk, never an emoji or generic star. */
.icon-asterisk{display:inline-block;object-fit:contain;width:1em;height:1em;vertical-align:-.12em;flex:none}
.announcement .icon-asterisk{width:13px;height:13px;vertical-align:-.15em}
.mark .icon-asterisk{width:22px;height:22px;vertical-align:-.2em}
.tiny-star .icon-asterisk{width:14px;height:14px;vertical-align:-.2em}
.bottom-cta .sparkle .icon-asterisk{width:1em;height:1em}
/* Featured stay: espresso button with white text AND white vector arrow on every device. */
.featured-button,.featured-button:link,.featured-button:visited{background:#49302b;color:#fff!important}
.featured-button .featured-arrow,.featured-button .featured-arrow svg{color:#fff!important;stroke:#fff!important;fill:none!important}
.featured-button .featured-arrow svg{display:block;width:19px;height:19px}
