.stay-page { --stay-sage:#dde4e6; --stay-slate:#4b6075; }
.stay-page [hidden] { display:none!important; }
.stay-page :is(#inquiry-form,#residences) { scroll-margin-top:2rem; }
.stay-page :is(a,button,summary):focus-visible { outline:3px solid #a8672c; outline-offset:4px; }
.stay-page ul { margin:0; padding-inline-start:1.2rem; }
.stay-page li { line-height:1.65; margin-block:.45rem; }
.stay-page .corporate-section { padding-block:clamp(3.5rem,6vw,6rem); }
.stay-page .corporate-section--pale,.stay-winter .corporate-form-section,.stay-relocation .stay-residences { background:var(--stay-sage); }
.stay-page .stay-prose > * + * { margin-block-start:1.4rem; }
.stay-split { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(2rem,5vw,5rem); }
.stay-page .stay-display-title { font-size:clamp(2.8rem,5vw,5rem); line-height:1.06; }
.stay-buttons { display:flex; flex-wrap:wrap; gap:.8rem; margin-block-start:2rem; }
.stay-page .stay-button-slate { background:var(--stay-slate); border-color:var(--stay-slate); }
.stay-page .stay-button-outline { background:transparent; color:var(--corporate-ink); }
.stay-page .stay-button-outline-light { background:transparent; border-color:#fff; color:#fff; }
.stay-page .stay-button-outline-light:hover { background:#fff; color:var(--corporate-ink); }
.stay-page svg { inline-size:2rem; block-size:2rem; flex-shrink:0; }
.stay-winter-hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); margin-block-start:clamp(1.5rem,4vw,4rem); background:var(--stay-sage); }
.stay-winter-hero > * { min-inline-size:0; }
.stay-winter-hero__image { inline-size:100%; block-size:100%; min-block-size:36rem; object-fit:cover; object-position:center 75%; }
.stay-winter-hero__copy { padding:clamp(1.5rem,3.3vw,3.5rem); }
.stay-winter-logo { inline-size:7rem; block-size:auto; margin-inline-start:auto; margin-block-end:2rem; }
.stay-winter-hero h1 { font-size:clamp(4rem,7vw,7rem); line-height:1; margin-block:.8rem; }
.stay-winter-hero .stay-winter-hero__subtitle { font-family:"Classico",serif; font-size:clamp(2rem,3vw,3rem); line-height:1.1; margin-block-end:1.5rem; }
.stay-page .stay-hero-offer { font-size:.65rem; letter-spacing:.08em; text-transform:uppercase; margin-block-start:1.2rem; }
.stay-winter-intro h2 { text-transform:uppercase; font-size:clamp(2.4rem,4.65vw,5rem); line-height:1.2; padding-block-end:1.8rem; border-block-end:1px solid #b5bdbf; }
.stay-winter-intro h2 span { box-shadow:inset 0 -.2em var(--stay-sage); }
.stay-intro-columns { display:grid; grid-template-columns:1fr 1.2fr 1.2fr; gap:clamp(1.5rem,3vw,3rem); margin-block-start:2rem; }
.stay-intro-columns h3 { font-size:clamp(1.8rem,2.5vw,2.7rem); }
.stay-intro-columns > p { border-block-start:1px solid #b5bdbf; padding-block-start:1.1rem; }
.stay-intro-columns .stay-buttons { flex-direction:column; align-items:flex-start; margin-block-start:1.2rem; }
.stay-warm-intro { align-items:start; margin-block-end:3rem; }
.stay-activity-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.stay-activity-grid figure { margin:0; }
.stay-activity-grid img { inline-size:100%; block-size:auto; aspect-ratio:3/2; object-fit:cover; }
.stay-activity-grid figcaption { padding-block-start:1.2rem; }
.stay-page .stay-activity-grid h3 { font:700 .8rem/1.5 "Avenir",sans-serif; letter-spacing:.1em; text-transform:uppercase; margin-block-end:.6rem; }
.stay-activity-grid p { font-size:.9rem; }
.stay-residences h2 { max-inline-size:60rem; margin-block-end:2.5rem; font-size:clamp(2.6rem,4vw,4.5rem); line-height:1.1; }
.stay-residence-tabs { display:flex; overflow-x:auto; border-block-end:1px solid #a9b5b4; margin-block-end:2rem; gap:1.4rem; scrollbar-width:thin; }
.stay-residence-tabs button { flex:1 0 auto; background:transparent; border:0; border-block-end:3px solid transparent; padding:1rem .25rem; color:#555; font:500 .9rem/1.4 "Avenir",sans-serif; cursor:pointer; min-block-size:48px; }
.stay-residence-tabs button[aria-selected="true"] { border-block-end-color:var(--stay-slate); color:#263747; font-weight:700; }
.stay-relocation .stay-residence-tabs { border:0; gap:.75rem; }
.stay-relocation .stay-residence-tabs button { border:1px solid #73828b; padding:1rem; }
.stay-relocation .stay-residence-tabs button[aria-selected="true"] { background:var(--corporate-ink); color:#fff; border-color:var(--corporate-ink); }
.stay-residence-panel { display:grid; grid-template-columns:1.55fr 1fr; gap:clamp(2rem,4vw,4rem); align-items:start; }
.stay-residence-stage { position:relative; aspect-ratio:3/2; background:#cdd5d7; }
.stay-residence-slide { margin:0; block-size:100%; }
.stay-residence-slide img { inline-size:100%; block-size:100%; object-fit:cover; }
.stay-residence-slide figcaption { position:absolute; inset-inline-start:1rem; inset-block-end:1rem; background:#303c46e6; color:#fff; padding:.5rem .8rem; font-size:.8rem; }
.stay-residence-stage button { position:absolute; inset-block-start:calc(50% - 24px); background:#fffffff2; border:0; inline-size:48px; block-size:48px; color:#283c4c; cursor:pointer; font:2rem/1 sans-serif; }
.stay-gallery-prev { inset-inline-start:.7rem; }
.stay-gallery-next { inset-inline-end:.7rem; }
.stay-gallery-count { position:absolute; inset-inline-end:1rem; inset-block-end:1rem; padding:.5rem .7rem; color:#fff; background:#303c46e6; font-size:.8rem; }
.stay-residence-thumbs { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:.5rem; margin-block-start:.7rem; }
.stay-residence-thumbs button { border:2px solid transparent; padding:2px; background:transparent; min-block-size:44px; cursor:pointer; opacity:.65; }
.stay-residence-thumbs button[aria-pressed="true"] { border-color:var(--stay-slate); opacity:1; }
.stay-residence-thumbs img { inline-size:100%; block-size:auto; aspect-ratio:3/2; object-fit:cover; }
.stay-residence-details h3 { font-size:clamp(2rem,3vw,3.4rem); line-height:1.1; margin-block:.7rem 1.1rem; }
.stay-page .stay-residence-specs { font-size:.72rem; letter-spacing:.06em; margin-block-end:1.5rem; }
.stay-page .stay-residence-details ul { padding:0; list-style:none; margin-block-end:1.5rem; }
.stay-residence-details li { margin:0; padding-block:.8rem; border-block-start:1px solid #afbabd; font-size:.92rem; }
.stay-residence-details .corporate-button { display:flex; }
.stay-video-tour { display:block; margin-block-start:1rem; padding-block:.6rem; text-align:center; font-size:.76rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.stay-video-dialog { inline-size:min(1100px,calc(100vw - 2rem)); max-inline-size:none; max-block-size:calc(100dvh - 2rem); padding:0; border:0; background:#fff; color:#333; overflow-y:auto; }
.stay-video-dialog::backdrop { background:#000c; }
.stay-video-dialog__bar { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.5rem 1rem; }
.stay-page .stay-video-dialog h2 { font:500 1rem/1.4 "Avenir",sans-serif; margin:0; }
.stay-video-close { background:transparent; border:0; font-size:2rem; min-inline-size:44px; min-block-size:44px; cursor:pointer; }
.stay-video-player { aspect-ratio:16/9; background:#111; }
.stay-video-player iframe { display:block; inline-size:100%; block-size:100%; border:0; }
body.stay-video-open { overflow:hidden; }
.stay-included { background:var(--stay-slate); color:#fff; padding-block:3.5rem; text-align:center; }
.stay-included h2 { font-size:clamp(2rem,3.4vw,3.5rem); }
.stay-page .stay-included ul { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); list-style:none; padding:0; margin-block-start:2.5rem; }
.stay-included li { display:flex; flex-direction:column; align-items:center; gap:1rem; padding:.5rem 1rem; margin:0; font-size:.66rem; letter-spacing:.09em; text-transform:uppercase; }
.stay-included li + li { border-inline-start:1px solid #ffffff50; }
.stay-included svg { inline-size:2.5rem; block-size:2.5rem; }
.stay-winter-why { position:relative; padding-block:clamp(4rem,9vw,9rem); }
.stay-winter-why__background { position:absolute; inset:0; inline-size:100%; block-size:100%; object-fit:cover; }
.stay-why-cards { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:2rem; }
.stay-why-cards article { display:flex; flex-direction:column; padding:clamp(2rem,4vw,4rem); background:var(--stay-slate); color:#fff; }
.stay-why-cards article + article { background:var(--stay-sage); color:var(--corporate-ink); }
.stay-why-cards article:first-child .corporate-eyebrow { color:inherit; }
.stay-why-cards h2 { font-size:clamp(2rem,3.4vw,3.8rem); margin-block:.7rem 1.5rem; }
.stay-why-cards ul { margin-block-end:2rem; }
.stay-why-cards .corporate-button { margin-block-start:auto; align-self:flex-start; }
.stay-faq-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2rem,5vw,5rem); }
.stay-faq-intro p { margin-block:1.5rem; }
.stay-faq-intro h2 { font-size:clamp(2.6rem,4vw,4.5rem); }
.stay-faq-intro a,.stay-page .corporate-form-intro a { text-decoration:underline; text-underline-offset:.2em; }
.stay-faq-intro img { inline-size:100%; block-size:auto; aspect-ratio:3/2; object-fit:cover; }
.stay-faq-items details { border-block-start:1px solid #a9b5b4; }
.stay-faq-items details:last-child { border-block-end:1px solid #a9b5b4; }
.stay-faq-items summary { display:flex; justify-content:space-between; align-items:center; gap:1.5rem; padding-block:1.4rem; cursor:pointer; font-weight:600; list-style:none; }
.stay-faq-items summary::-webkit-details-marker { display:none; }
.stay-faq-items summary::after { content:'+'; font:1.5rem/1 sans-serif; }
.stay-faq-items details[open] summary::after { content:'−'; }
.stay-faq-items details p { padding-block-end:1.5rem; font-size:.95rem; line-height:1.7; }
.stay-page .corporate-form-section { position:relative; }
.stay-form-anchor { position:absolute; inset-block-start:0; scroll-margin-top:2rem; }
.stay-page .corporate-form-intro { position:static; }
.stay-page .corporate-form-intro > p { max-inline-size:none; }
.stay-page .corporate-form-intro > h2 + p { margin-block:1.5rem; }
.stay-map { display:block; inline-size:100%; aspect-ratio:1.5; border:0; margin-block:1.8rem 1rem; }
.stay-page .stay-map-address { font-size:.85rem; }
.stay-offer-terms { padding-block-start:2.5rem; font-size:.75rem; line-height:1.6; }
.stay-page .corporate-form__footer { display:flex; flex-direction:column; align-items:stretch; gap:1rem; }
.stay-page .corporate-form__footer p { text-align:center; }
.stay-relocation .corporate-hero { text-align:center; align-items:center; padding-block:clamp(5rem,10vw,9rem); }
.stay-relocation .corporate-hero__content { display:flex; flex-direction:column; align-items:center; }
.stay-relocation .corporate-hero h1 { max-inline-size:none; font-size:clamp(3rem,6.5vw,7rem); }
.stay-relocation .corporate-hero__lead { max-inline-size:none; }
.stay-relocation .corporate-hero__shade { background:#101a2360; }
.stay-video-toggle { position:absolute; inset-inline-end:1.5rem; inset-block-start:1.5rem; z-index:2; color:#fff; background:#3f3e40; border:1px solid #fff; padding:.75rem 1rem; font:inherit; min-block-size:44px; cursor:pointer; }
.stay-three-cards { grid-template-columns:repeat(3,minmax(0,1fr)); }
.stay-page .corporate-value-card__body { display:flex; flex-direction:column; }
.stay-three-cards .corporate-value-card__body { padding:clamp(1.25rem,2.3vw,2.5rem); }
.stay-three-cards h3 { font-size:clamp(1.5rem,2.5vw,2.5rem); line-height:1.15; min-block-size:2.3em; }
.stay-page .stay-card-ending { margin-block-start:auto; padding-block-start:1.8rem; }
.stay-page .stay-card-ending { min-block-size:calc(3.4em + 1.8rem); }
.stay-segment-cards .stay-card-ending { color:#426176; font-size:.95rem; font-weight:500; border-block-start:1px solid #bac3c5; }
.stay-amenities { align-items:start; margin-block-end:4rem; }
.stay-amenities h2 { font-size:clamp(2.4rem,4vw,4rem); }
.stay-page .stay-amenities ul { list-style:none; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:1.8rem 1rem; }
.stay-amenities li { display:flex; align-items:center; gap:1rem; margin:0; padding-block-end:1.2rem; border-block-end:1px solid #ffffff40; font-size:1.25rem; line-height:1.4; }
.stay-amenities li:nth-last-child(-n+2) { padding-block-end:0; border-block-end:0; }
.stay-facts-block { display:grid; grid-template-columns:46% 54%; background:#f7f7f5; }
.stay-facts-block > img { inline-size:100%; block-size:100%; object-fit:cover; }
.stay-facts-copy { align-self:center; padding:clamp(2rem,5vw,5rem); }
.stay-facts-copy h2 { font-size:clamp(2.6rem,4vw,4.5rem); }
.stay-facts-copy > p { margin-block:1.5rem 2rem; }
.stay-facts-copy dl { margin-block-end:2rem; }
.stay-facts-copy dl > div { display:grid; grid-template-columns:1fr 1.5fr; gap:1rem; padding-block:1rem; border-block-start:1px solid #bdc4c5; font-size:.9rem; }
.stay-facts-copy dt { text-transform:uppercase; letter-spacing:.06em; font-size:.7rem; align-self:center; font-weight:700; }
.stay-facts-copy dd { margin:0; }
.stay-next-steps { margin-block-start:2.8rem; }
.stay-page .stay-next-steps h3 { font:700 .75rem/1.5 "Avenir",sans-serif; letter-spacing:.12em; text-transform:uppercase; color:#486579; }
.stay-next-steps ol { list-style:none; counter-reset:steps; padding:0; margin-block:1rem 0; }
.stay-next-steps li { counter-increment:steps; display:grid; grid-template-columns:2rem 1fr; align-items:center; gap:1rem; padding-block:1.3rem; margin:0; border-block-start:1px solid #b9c2c5; font-size:.95rem; }
.stay-next-steps li::before { content:counter(steps); font:300 2.4rem/1 "Avenir",sans-serif; color:#607887; }
.stay-page .stay-direct { padding-block:3rem; text-align:start; }
.stay-direct .corporate-shell { display:flex; align-items:center; justify-content:space-between; gap:2rem; }
.stay-page .stay-direct h2 { font-size:clamp(2rem,2.5vw,3rem); margin-block-end:.7rem; }
.stay-direct .stay-buttons { margin:0; flex-wrap:nowrap; }
.stay-direct .corporate-button { padding-inline:1rem; gap:.6rem; font-size:.65rem; white-space:nowrap; }
.stay-page .stay-direct .corporate-button--light { color:var(--stay-slate); }
.stay-direct svg { inline-size:1.1rem; block-size:1.1rem; }
@media (max-width:1100px) {
.stay-direct .corporate-shell { flex-direction:column; align-items:flex-start; }
.stay-page .corporate-form-layout { gap:3rem; }
}
@media (max-width:800px) {
.stay-split,.stay-intro-columns,.stay-activity-grid,.stay-residence-panel,.stay-why-cards,.stay-faq-layout,.stay-facts-block,.stay-three-cards,.stay-segment-cards { grid-template-columns:1fr; }
.stay-winter-hero { grid-template-columns:1fr; }
.stay-winter-hero__image { min-block-size:0; block-size:20rem; }
.stay-winter-hero__copy { padding:2rem 1.5rem; }
.stay-winter-logo { inline-size:6rem; margin-block-end:1.5rem; }
.stay-intro-columns .stay-buttons { flex-direction:row; }
.stay-page .stay-included ul { grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:2rem; }
.stay-included li:nth-child(4) { border-inline-start:0; }
.stay-why-cards { gap:1.5rem; }
.stay-three-cards h3 { min-block-size:0; font-size:2.4rem; }
.stay-page .stay-card-ending { margin-block-start:1rem; padding-block-start:0; }
.stay-page .stay-card-ending { min-block-size:0; }
.stay-facts-block > img { block-size:auto; aspect-ratio:3/2; }
.stay-facts-copy { padding:3rem 1.5rem; }
.stay-relocation .corporate-hero__lead { font-size:1.05rem; }
.stay-amenities { gap:2rem; }
.stay-amenities li { font-size:1rem; }
}
@media (max-width:500px) {
.stay-buttons .corporate-button { flex:1; padding-inline:1rem; }
.stay-winter-hero__image { block-size:16rem; }
.stay-winter-hero .stay-buttons { flex-direction:column; }
.stay-included li { padding-inline:.5rem; font-size:.58rem; }
.stay-residence-tabs { gap:1rem; }
.stay-residence-thumbs { gap:.2rem; }
.stay-page .stay-direct .stay-buttons { inline-size:100%; flex-direction:column; }
.stay-video-toggle { inset-inline-end:1rem; inset-block-start:1rem; font-size:.75rem; }
.stay-page .corporate-field :is(input,select,textarea) { min-inline-size:0; inline-size:100%; }
}
@media (prefers-reduced-motion:no-preference) { html:has(.stay-page) { scroll-behavior:smooth; } }
