/* Seasonal editions share the ranch's typography, palette, header and footer. */
.winter-page{background:var(--bone)}
.winter-page main{padding-top:112px}
.winter-opening{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:36px;padding:32px 5vw 42px}
.winter-heading .eyebrow{color:var(--moss);font-size:10px;margin-bottom:21px}
.winter-page h1{font:400 clamp(48px,5.6vw,88px)/1.05 var(--serif);letter-spacing:-.025em}
.winter-page h1 em,.winter-page h2 em{color:var(--moss);font-weight:400}
.winter-intro{justify-self:end;padding-bottom:3px}
.winter-intro p{font:24px/1.35 var(--serif)}
.winter-page .text-link{font-size:10px;line-height:1.6;gap:30px}
.winter-intro .text-link{margin-top:12px}
.winter-feature{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:center;background:#e7dfce}
.winter-photo{position:relative;background:#0b1116;align-self:center;display:flex;align-items:center;overflow:hidden}
.winter-photo img{width:100%;height:auto;object-fit:cover;object-position:right center;aspect-ratio:7/5}
.winter-photo figcaption{position:absolute;bottom:14px;left:22px;right:22px;color:#eee8dc;font-size:9px;line-height:1.5;letter-spacing:.03em;text-shadow:0 1px 4px #000}
.winter-invitation{padding:40px clamp(28px,4vw,68px)}
.winter-invitation>.eyebrow{color:var(--moss);font-size:10px}
.winter-invitation h2{font-size:clamp(40px,3.8vw,60px);margin:20px 0 24px;line-height:1.04}
.winter-saving{display:flex;align-items:center;gap:20px;border-block:1px solid #8a80754d;padding:15px 0;margin-bottom:21px}
.winter-saving>span{font:64px/1 var(--serif);letter-spacing:-.035em}.winter-saving small{font-size:36px}
.winter-saving p{font-size:15px;line-height:1.6}.winter-saving p span{font-size:11px;color:#665f54}
.winter-copy{font-size:14px;line-height:1.85;max-width:400px;color:#655d51}
.winter-invitation .text-link{margin-top:20px}
.winter-small{font-size:10px;letter-spacing:.04em;color:#6c6358;margin-top:17px}
.winter-rituals{padding:65px 7vw;display:grid;grid-template-columns:1fr 1.12fr;gap:9vw;background:var(--moss);color:var(--bone)}
.winter-rituals .eyebrow{font-size:10px;color:#e2dfd0}.winter-rituals h2{font-size:clamp(38px,4vw,60px);margin-top:22px;line-height:1.08}.winter-rituals h2 em{color:var(--bone)}
.winter-ritual-list article{display:flex;gap:24px;border-bottom:1px solid #f3eee535;padding:21px 0}
.winter-ritual-list article:first-child{padding-top:0}.winter-ritual-list article:last-child{border:0;padding-bottom:0}
.winter-ritual-list article>span{font:14px/2 var(--serif);opacity:.65}
.winter-ritual-list h3{font-size:28px;line-height:1.15;margin-bottom:9px}
.winter-ritual-list p{font-size:14px;line-height:1.75;color:#eee8dc;max-width:490px}
.winter-request{padding:65px 7vw 28px;display:grid;grid-template-columns:1fr 1.12fr;gap:9vw;scroll-margin-top:100px}
.winter-request .eyebrow{font-size:10px;color:var(--moss)}.winter-request h2{font-size:clamp(42px,4.3vw,64px);line-height:1.05;margin:20px 0}
.winter-request-copy>p:not(.eyebrow){max-width:390px;font-size:15px;color:#6a6256;line-height:1.8}.winter-request-copy>.text-link{margin-top:18px}
.winter-form{padding-top:6px;min-width:0}.winter-form label{display:flex;flex-direction:column;gap:10px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:22px}
.winter-date-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.winter-form input,.winter-form select{width:100%;max-width:100%;min-width:0;border:0;border-bottom:1px solid #8a8075;border-radius:0;padding:12px 0;background:transparent;color:var(--cedar);font:16px/1.4 var(--sans);height:49px;color-scheme:light}
.winter-form .button{width:100%;margin:14px 0 10px;min-height:54px;font-size:11px;justify-content:space-between}
.winter-form-note{font-size:11px;color:#6a6256;line-height:1.7}
#winter-form-status{font-size:13px;margin-top:12px;color:var(--moss)}#winter-form-status:empty{display:none}#winter-form-status[data-error=true]{color:#a23b30}
#winter-email-fallback{display:inline-block;font-size:12px;border-bottom:1px solid #8a807566;line-height:1.6;margin-top:12px;overflow-wrap:anywhere}
.winter-details{padding:0 7vw 55px}.winter-details details{border-block:1px solid #8a80754d}.winter-details summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;min-height:58px;font-size:13px}.winter-details summary::-webkit-details-marker{display:none}.winter-details summary>span{font-size:22px;font-weight:300}.winter-details details[open] summary>span{transform:rotate(45deg)}.winter-details details>div{display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding-bottom:24px}.winter-details p{font-size:12px;line-height:1.8;color:#6a6256}
.winter-ended{padding:60px 7vw 90px;background:#e7dfce}.winter-ended h2{margin:20px 0 24px}.winter-ended p{font-size:15px}.winter-ended .button{margin-top:25px}
@media(max-width:1100px){.winter-feature{grid-template-columns:1.3fr 1fr}.winter-invitation{padding:30px}.winter-invitation h2{font-size:45px}.winter-copy{font-size:13px}.winter-saving>span{font-size:56px}.winter-photo figcaption{font-size:8px}}
@media(max-width:800px){.winter-page main{padding-top:96px}.winter-opening{grid-template-columns:1fr;padding:26px 24px 30px;gap:20px}.winter-heading .eyebrow{font-size:9px;margin-bottom:16px}.winter-page h1{font-size:clamp(46px,9vw,66px)}.winter-intro{justify-self:start}.winter-intro p{font-size:22px}.winter-intro .text-link{margin-top:8px}.winter-feature{grid-template-columns:1fr}.winter-photo{display:block}.winter-photo img{height:auto}.winter-photo figcaption{left:14px;bottom:9px;font-size:8px}.winter-invitation{padding:32px 24px}.winter-invitation h2{font-size:48px}.winter-saving{max-width:450px}.winter-copy{font-size:15px;max-width:550px}.winter-rituals,.winter-request{grid-template-columns:1fr;gap:30px;padding:40px 24px}.winter-rituals h2{font-size:44px;margin-top:16px}.winter-ritual-list h3{font-size:28px}.winter-ritual-list p{font-size:14px}.winter-request h2{font-size:46px}.winter-request-copy>p:not(.eyebrow){max-width:540px}.winter-request{padding-bottom:25px}.winter-form{padding:0}.winter-date-fields{gap:14px}.winter-form label{font-size:10px}.winter-details{padding:0 24px 40px}.winter-details details>div{grid-template-columns:1fr;gap:16px}.winter-ended{padding:40px 24px 60px}}
@media(prefers-reduced-motion:reduce){.winter-page *{scroll-behavior:auto}}
.winter-choice-label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px}
.winter-stay-picker{position:relative;margin-bottom:22px}
.winter-stay-picker summary{display:flex;justify-content:space-between;align-items:center;list-style:none;border-bottom:1px solid #8a8075;min-height:49px;font-size:16px;cursor:pointer;padding:12px 0}
.winter-stay-picker summary::-webkit-details-marker{display:none}
.winter-stay-picker fieldset{margin:0;padding:10px 15px 16px;border:1px solid #8a80754d;background:#e7dfce;max-height:310px;overflow:auto}
.winter-stay-picker fieldset>p{color:var(--moss);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:13px 5px 6px}
.winter-form .winter-stay-picker label{flex-direction:row;align-items:center;gap:12px;min-height:42px;margin:0;padding:7px 5px;font-size:14px;letter-spacing:0;text-transform:none;cursor:pointer}
.winter-form .winter-stay-picker input{width:16px;height:16px;flex:none;accent-color:var(--moss);margin:0}
.winter-stay-picker label:hover{background:#f3eee588}
.winter-page #booking-dock{display:none!important}
.winter-offer-dock{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);width:calc(100% - 48px);max-width:660px;z-index:80;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:17px 25px;background:linear-gradient(130deg,#f3eee5ed,#e7dfcedd);border:1px solid #fff9e9b0;border-radius:9px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 8px 35px #10161222}
.winter-offer-dock b{display:block;font:27px/1.1 var(--serif);font-weight:400}.winter-offer-dock small{display:block;font-size:10px;margin-top:6px}.winter-offer-dock>span:last-child{display:flex;gap:18px;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
body.modal-open .winter-offer-dock{visibility:hidden;pointer-events:none}
@media(max-width:600px){.winter-offer-dock{bottom:12px;width:calc(100% - 28px);padding:14px 16px;gap:12px}.winter-offer-dock b{font-size:22px}.winter-offer-dock small{font-size:9px}.winter-offer-dock>span:last-child{font-size:9px;gap:8px}.winter-offer-dock svg{width:18px}.winter-page .concierge-root{bottom:98px}}
.winter-form-in-view .winter-offer-dock,.winter-form-in-view .concierge-root{visibility:hidden;pointer-events:none}
@media(max-width:600px){.winter-offer-dock b{font-size:21px}.winter-offer-dock>span:last-child{max-width:100px}.winter-page .concierge-launch{width:44px;height:44px;min-width:44px;padding:10px;justify-content:center}.winter-page .concierge-launch>span{display:none}.winter-page .concierge-root{bottom:98px;right:16px}}

/* Trim only the existing left margin at the terrace edge; never extend the photo. */
.winter-coupon{margin:20px 0 4px;padding:14px 0;border-bottom:1px solid #8a80754d}
.winter-coupon>p{color:var(--moss);font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin:0 0 8px}
.winter-coupon-row{display:flex;align-items:center;justify-content:space-between;gap:14px}
.winter-coupon code{font:23px/1.3 var(--serif);letter-spacing:.08em;color:var(--cedar)}
.winter-coupon button{border:0;background:transparent;color:var(--cedar);padding:10px 0 10px 14px;font:11px var(--sans);cursor:pointer;min-height:44px;white-space:nowrap}
.winter-coupon button:focus-visible{outline:2px solid var(--moss);outline-offset:4px}
.winter-coupon small{display:block;font-size:10px;line-height:1.7;color:#665f54;margin-top:7px;max-width:320px}
@media(min-width:801px){.winter-invitation{padding-top:24px;padding-bottom:24px}.winter-invitation h2{font-size:clamp(40px,3.3vw,52px);margin:14px 0 16px}.winter-saving{padding:10px 0;margin-bottom:14px}.winter-coupon{margin-top:12px;padding:8px 0}.winter-coupon small{max-width:none}.winter-invitation .text-link{margin-top:12px}.winter-small{margin-top:12px}}
