:root{--color-forest-950: #102d27;--color-forest-900: #173f36;--color-forest-800: #205347;--color-forest-100: #dfeae6;--color-sand-50: #fcfaf6;--color-sand-100: #f5efe3;--color-sand-200: #eadfcd;--color-clay: #a95f3c;--color-ink: #1b2622;--color-muted: #5e6a65;--color-white: #fff;--font-display: Georgia, "Times New Roman", serif;--font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--container: min(90rem, calc(100% - 3rem) );--reading: 44rem;--radius-sm: .4rem;--radius-md: 1rem;--radius-lg: 1.75rem;--shadow-soft: 0 1.4rem 4rem rgb(20 51 44 / .1);--section-space: clamp(4.5rem, 9vw, 8rem);--transition: .18s ease}.webcam-reading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,3vw,2rem)}.webcam-reading-grid article{padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--line, #ded6c8);border-radius:1rem;background:#fff}.webcam-reading-grid h2{margin-top:.25rem;font-size:clamp(1.35rem,2vw,1.8rem)}.webcam-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.1rem,2.5vw,2rem)}.webcam-card{overflow:hidden;border:1px solid var(--line, #ded6c8);border-radius:1.1rem;background:#fff;box-shadow:0 18px 45px #173f3614;scroll-margin-top:7rem}.webcam-image-shell{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:#dce6e1}.webcam-image-shell img{width:100%;height:100%;object-fit:cover}.webcam-image-link{display:block;width:100%;height:100%}.webcam-live-badge{position:absolute;top:.8rem;left:.8rem;padding:.35rem .65rem;border-radius:999px;color:#fff;background:#173f36e0;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;backdrop-filter:blur(8px)}.webcam-card-body{padding:clamp(1rem,2.5vw,1.5rem)}.webcam-card-heading{display:flex;align-items:start;justify-content:space-between;gap:1rem}.webcam-card-heading h3{margin:.2rem 0 .8rem}.webcam-card-heading>strong{flex:0 0 auto;padding:.35rem .55rem;border-radius:.5rem;color:#173f36;background:#edf3ef;font-size:.82rem}.webcam-facts{display:grid;gap:.4rem;margin:1rem 0}.webcam-facts div{display:grid;grid-template-columns:minmax(8rem,.8fr) 1.4fr;gap:.75rem;padding-top:.45rem;border-top:1px solid #e8e1d6}.webcam-facts dt{color:var(--muted, #5e6a65);font-size:.82rem;font-weight:750}.webcam-facts dd{margin:0;font-size:.88rem}.webcam-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1rem}.webcam-panorama-button{border:0;cursor:pointer}.webcam-dialog{position:fixed;inset:0;z-index:11000;display:grid;place-items:center;padding:.75rem;color:#17211e;background:#081410c7;backdrop-filter:blur(4px)}.webcam-dialog[hidden]{display:none}.webcam-dialog-panel{overflow:hidden;width:min(1120px,100%);max-height:calc(100vh - 1.5rem);border-radius:1rem;background:#fff;box-shadow:0 30px 90px #00000059}.has-webcam-dialog{overflow:hidden}.webcam-dialog-head{display:flex;min-height:3.5rem;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem 1rem;color:#fff;background:#173f36}.webcam-dialog-head button{width:2.4rem;height:2.4rem;border:1px solid rgb(255 255 255 / 45%);border-radius:50%;color:#fff;background:transparent;font-size:1.6rem;cursor:pointer}.webcam-frame-shell{aspect-ratio:16 / 9;background:#102d26}.webcam-frame-shell iframe{width:100%;height:100%;border:0}.webcam-dialog-panel>p{margin:0;padding:.8rem 1rem 1rem;color:var(--muted, #5e6a65);font-size:.82rem}@media(max-width:760px){.webcam-reading-grid,.webcam-grid{grid-template-columns:1fr}.webcam-facts div{grid-template-columns:1fr;gap:.1rem}.webcam-frame-shell{min-height:62vh;aspect-ratio:auto}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-sand-50)}body{margin:0;color:var(--color-ink);background:var(--color-sand-50);font-family:var(--font-body);font-size:clamp(1rem,.97rem + .12vw,1.075rem);line-height:1.7;text-rendering:optimizeLegibility}img{display:block;max-width:100%}a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.18em}button,input,select,textarea{font:inherit}h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:500;line-height:1.08;letter-spacing:-.025em;text-wrap:balance}h1{max-width:16ch;font-size:clamp(3rem,6.4vw,6.2rem)}h2{font-size:clamp(2.25rem,4.2vw,4rem)}h3{font-size:clamp(1.55rem,2.7vw,2.25rem)}p{margin:0}p+p{margin-top:1em}ul,ol{margin:0;padding:0}:focus-visible{outline:3px solid var(--color-clay);outline-offset:4px}.container{width:var(--container);margin-inline:auto}.section{padding-block:var(--section-space)}.section-muted{background:var(--color-sand-100)}.section-dark{color:var(--color-white);background:var(--color-forest-950)}.eyebrow{margin-bottom:.9rem;color:var(--color-clay);font-size:.74rem;font-weight:750;line-height:1.3;letter-spacing:.16em;text-transform:uppercase}.section-dark .eyebrow,.site-footer .eyebrow,.cta-band .eyebrow{color:#ddae91}.lead{max-width:42rem;color:var(--color-muted);font-size:clamp(1.15rem,1.05rem + .45vw,1.5rem);line-height:1.55}.button{display:inline-flex;min-height:3.2rem;align-items:center;justify-content:center;padding:.85rem 1.35rem;border:1px solid var(--color-forest-900);border-radius:999px;color:var(--color-white);background:var(--color-forest-900);font-size:.92rem;font-weight:750;line-height:1.2;text-decoration:none;transition:color var(--transition),background var(--transition),transform var(--transition)}.button:hover{background:var(--color-forest-800);transform:translateY(-2px)}.button-small{min-height:2.75rem;padding-inline:1.1rem;font-size:.82rem}.header-actions{display:flex;align-items:center;gap:.55rem}.header-actions .button-secondary{background:var(--color-sand-50)}.language-switcher{display:flex;gap:.25rem;margin-left:.2rem}.language-switcher a{padding:.35rem;color:var(--color-forest-900);font-size:.72rem;font-weight:700;text-decoration:none}.language-switcher a[aria-current=page]{text-decoration:underline;text-underline-offset:.25rem}.mobile-language-switcher{display:flex;gap:1rem;padding-block:.65rem}.mobile-header-language{display:none;margin-left:auto;align-items:center;gap:.2rem}.mobile-header-language a{min-width:1.8rem;padding:.35rem .25rem;color:var(--color-forest-900);font-size:.68rem;font-weight:750;text-align:center;text-decoration:none}.mobile-header-language a[aria-current=page]{border-radius:999px;color:var(--color-white);background:var(--color-forest-900)}.button-secondary{color:var(--color-forest-900);background:transparent}.button-secondary:hover{color:var(--color-white)}.button-light{border-color:var(--color-sand-100);color:var(--color-forest-950);background:var(--color-sand-100)}.button-light:hover{background:var(--color-white)}.cta-button-secondary{border-color:#ffffffb3;color:var(--color-white);background:transparent}.cta-button-secondary:hover{color:var(--color-forest-950);background:var(--color-white)}.footer-booking-links{display:flex;flex-wrap:wrap;gap:.75rem 1.4rem}.text-link{display:inline-flex;align-items:center;gap:.65rem;color:var(--color-forest-900);font-weight:750;text-decoration:none}.text-link:after{content:"→";transition:transform var(--transition)}.text-link:hover:after{transform:translate(.25rem)}.text-link.light{color:var(--color-white)}.booking-hero{padding-block:clamp(2.5rem,5vw,4.5rem);color:var(--color-white);background:linear-gradient(115deg,#102d27f5,#173f36c7),url(/images/hero/haus-klausberg-sommer.webp) center / cover}.booking-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(18rem,.55fr);gap:clamp(2rem,6vw,7rem);align-items:end}.booking-hero h1{max-width:24ch;font-size:clamp(1.4rem,2.8vw,2.75rem)}.booking-promise{padding:1.5rem;border:1px solid rgb(255 255 255 / .3);border-radius:var(--radius-md);background:#102d279e;backdrop-filter:blur(.65rem)}.booking-promise strong{display:block;margin-bottom:.35rem;color:#f1c6a8}.booking-search-section{padding-block:clamp(1.5rem,4vw,3rem);background:linear-gradient(180deg,var(--color-sand-100),var(--color-sand-50))}.booking-shell{display:grid;gap:1.25rem;max-width:78rem}.booking-search,.booking-results,.booking-request,.booking-alternatives{padding:clamp(.9rem,2vw,1.4rem);border:1px solid var(--color-sand-200);border-radius:var(--radius-lg);background:var(--color-white);box-shadow:var(--shadow-soft)}.booking-step-heading{display:flex;gap:.75rem;align-items:center;margin-bottom:.7rem}.booking-step-heading>span{display:grid;flex:0 0 2.15rem;width:2.15rem;height:2.15rem;place-items:center;border-radius:50%;color:var(--color-white);background:var(--color-clay);font-weight:800}.booking-step-heading .eyebrow{margin-bottom:.35rem}.booking-step-heading h2{font-size:clamp(1.25rem,2vw,1.75rem)}.booking-fields{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem;margin-bottom:.75rem}.booking-fields .field label,.booking-request .field label{display:block;margin-bottom:.4rem;font-size:.86rem;font-weight:750}.booking-fields input,.booking-fields select,.booking-request input,.booking-request select,.booking-request textarea{width:100%;min-height:2.75rem;padding:.5rem .7rem;border:1px solid #b9c4bf;border-radius:var(--radius-sm);color:var(--color-ink);background:var(--color-white)}.booking-request textarea{min-height:4.75rem;resize:vertical}.booking-wellness-choice{display:flex;grid-column:1 / -1;gap:.75rem;align-items:flex-start;padding:.75rem .9rem;border-radius:var(--radius-sm);background:var(--color-sand-100);cursor:pointer}.booking-child-ages{grid-column:1 / -1;margin:0;padding:.85rem 1rem;border:1px solid var(--color-sand-200);border-radius:var(--radius-sm);background:var(--color-sand-50)}.booking-child-ages legend{padding-inline:.35rem;font-weight:800}.booking-child-ages>p{margin-bottom:.7rem;color:var(--color-muted);font-size:.86rem}[data-child-age-fields],#inquiry-child-age-fields{display:grid;grid-template-columns:1fr;gap:.65rem}.child-age-picker{min-width:0}.child-age-picker-label{display:block;margin-bottom:.35rem;font-size:.8rem;font-weight:750}.child-age-options{display:flex;overflow-x:auto;gap:.28rem;padding:.08rem 0 .35rem;scrollbar-width:thin}.child-age-option{flex:0 0 2.05rem;min-height:2.05rem;padding:0;border:1px solid var(--color-sand-200);border-radius:999px;color:var(--color-forest-900);background:var(--color-white);font:inherit;font-size:.76rem;font-weight:750;cursor:pointer}.child-age-option.is-selected{border-color:var(--color-forest-700);color:var(--color-white);background:var(--color-forest-800)}#inquiry-child-ages{padding-block:.65rem}#inquiry-child-ages legend{font-size:.82rem;font-weight:750}.booking-wellness-choice input{width:1.2rem;min-height:auto;height:1.2rem;margin-top:.2rem}.booking-wellness-choice span,.booking-wellness-choice small{display:block}.booking-wellness-choice small,.form-note,.booking-local-note{color:var(--color-muted)}.booking-form-message{min-height:1.6rem;margin-top:.8rem;color:var(--color-forest-900);font-weight:700}.form-required-note{margin:-.45rem 0 1rem;color:var(--color-muted);font-size:.82rem}.form-error-summary{margin:-.35rem 0 .8rem;padding:.55rem .7rem;border-left:3px solid #a24b3e;border-radius:.35rem;color:#713229;background:#fff2ef;font-size:.84rem;font-weight:750}.form-error-summary[hidden]{display:none}.inquiry-form [aria-invalid=true]{border-color:#a24b3e;box-shadow:0 0 0 2px #a24b3e1f}.required-mark{margin-left:.12rem;color:#9b3d32;font-weight:900}.booking-continuation-heading{padding:clamp(1.25rem,3vw,2.3rem);border:1px solid var(--color-forest-200);border-radius:var(--radius-lg);background:var(--color-forest-100)}.booking-continuation-heading h2{max-width:25ch;margin-bottom:.65rem;font-size:clamp(1.7rem,3vw,2.6rem)}.booking-engine{display:grid;gap:1.25rem}.booking-engine[hidden]{display:none}.booking-engine-continuation{gap:.75rem}.booking-engine-continuation .booking-search{display:none}.booking-engine-continuation .booking-continuation-heading{order:0;padding:1rem 1.15rem}.booking-engine-continuation .booking-continuation-heading .eyebrow{margin-bottom:.2rem}.booking-engine-continuation .booking-continuation-heading h2{max-width:none;margin-bottom:.3rem;font-size:clamp(1.25rem,2vw,1.55rem)}.booking-engine-continuation .booking-search{order:1;padding:1rem 1.15rem}.booking-engine-continuation .booking-search .booking-step-heading,.booking-engine-continuation .booking-search .form-required-note{display:none}.booking-engine-continuation .booking-results{order:3}.booking-engine-continuation .booking-alternatives{order:2}.booking-engine-continuation .booking-request{order:4}.booking-engine-continuation.has-bookable-results .booking-results{order:1}.booking-engine-continuation.has-bookable-results .booking-search{order:2}.booking-engine-continuation.has-bookable-results .booking-alternatives{order:3}.booking-alternatives h3{margin:.8rem 0 .65rem;font-size:clamp(1.15rem,2vw,1.45rem)}.booking-offer-ready{display:flex;align-items:center;gap:.7rem;margin:-.2rem -.2rem .65rem;padding:.7rem .8rem;border:1px solid #9dceb0;border-radius:var(--radius-sm);color:var(--color-forest-900);background:#e9f5ed}.booking-offer-ready[hidden]{display:none}.booking-offer-ready span{display:grid;width:1.8rem;height:1.8rem;flex:0 0 1.8rem;place-items:center;border-radius:50%;color:var(--color-white);background:#278348;font-weight:900}.booking-offer-ready h2{margin:0;font-size:clamp(1.05rem,2vw,1.35rem)}.booking-alternative-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.booking-alternative-columns h4{margin-bottom:.45rem;font-size:.95rem}.booking-alternative-columns>div>div{display:grid;gap:.4rem}.booking-alternative-card{display:flex;gap:.8rem;align-items:center;justify-content:space-between;padding:.55rem .65rem;border:1px solid var(--color-sand-200);border-radius:var(--radius-sm);background:var(--color-sand-50)}.booking-alternative-card strong,.booking-alternative-card span{display:block}.booking-alternative-use{border-color:var(--color-forest-200);color:var(--color-forest-900);background:var(--color-forest-100)}.booking-alternative-use:hover{background:var(--color-forest-200)}.inquiry-submit-progress{position:relative;display:grid;overflow:hidden;gap:0;margin-top:.75rem;padding:.55rem .75rem;border:1px solid var(--color-forest-200);border-radius:var(--radius-sm);background:linear-gradient(120deg,var(--color-forest-100),var(--color-white),var(--color-forest-100));background-size:220% 100%;box-shadow:0 .55rem 1.4rem #1c42371a;transition:border-color .35s ease,box-shadow .35s ease}.inquiry-submit-progress.is-working{animation:inquiry-sheen 2.2s ease-in-out infinite}.inquiry-submit-progress.is-complete{border-color:#76b58a;box-shadow:0 .55rem 1.4rem #27834824}.inquiry-submit-progress[hidden]{display:none}.inquiry-progress-step{position:relative;display:flex;min-height:2.25rem;align-items:center;gap:.55rem;padding-left:.1rem;color:var(--color-muted);font-size:.88rem;opacity:.58;transform:translateY(.15rem);transition:color .3s ease,opacity .3s ease,transform .3s ease}.inquiry-progress-step+.inquiry-progress-step:before{position:absolute;left:.68rem;top:-.45rem;width:2px;height:.8rem;content:"";background:var(--color-forest-200)}.inquiry-progress-step.is-active,.inquiry-progress-step.is-done{color:var(--color-forest-900);opacity:1;transform:translateY(0)}.inquiry-progress-icon{width:1.25rem;height:1.25rem;flex:0 0 1.25rem;border:2px solid var(--color-forest-200);border-top-color:var(--color-forest-800);border-radius:50%}.is-active .inquiry-progress-icon{animation:inquiry-spin .75s linear infinite,inquiry-pulse 1.4s ease-out infinite}.is-done .inquiry-progress-icon{display:grid;width:1.5rem;height:1.5rem;flex-basis:1.5rem;border:0;color:var(--color-white);background:#278348;place-items:center}.is-done .inquiry-progress-icon:after{content:"✓";font-weight:900}.inquiry-progress-dots{display:flex;width:1.5rem;flex:0 0 1.5rem;justify-content:center;gap:.15rem}.inquiry-progress-dots i{width:.27rem;height:.27rem;border-radius:50%;background:currentColor}.is-active .inquiry-progress-dots i{animation:inquiry-dot .9s ease-in-out infinite alternate}.is-active .inquiry-progress-dots i:nth-child(2){animation-delay:.16s}.is-active .inquiry-progress-dots i:nth-child(3){animation-delay:.32s}.is-done .inquiry-progress-dots:before{content:"✓";color:#278348;font-size:1.25rem;font-weight:900}.is-done .inquiry-progress-dots i{display:none}@keyframes inquiry-spin{to{transform:rotate(1turn)}}@keyframes inquiry-dot{0%{transform:translateY(0);opacity:.35}to{transform:translateY(-.25rem);opacity:1}}@keyframes inquiry-pulse{0%,to{box-shadow:0 0 #27834800}45%{box-shadow:0 0 0 .35rem #27834821}}@keyframes inquiry-sheen{0%,to{background-position:100% 0}50%{background-position:0 0}}.booking-flow-launch{margin:-.15rem 0 .85rem}.booking-flow-launch .button{min-height:2.55rem;padding:.55rem .85rem}.booking-request-heading{margin-bottom:.35rem}.booking-alternative-card span{margin-top:.15rem;color:var(--color-muted);font-size:.8rem}.booking-alternative-inquiry{margin:.8rem 0 0;text-align:center}.booking-result-list{display:grid;gap:1rem}.booking-result-card{display:grid;grid-template-columns:minmax(16rem,.72fr) minmax(0,1.28fr);overflow:hidden;border:1px solid var(--color-sand-200);border-radius:var(--radius-md);background:var(--color-sand-50)}.booking-result-card>img{width:100%;height:100%;min-height:20rem;object-fit:cover}.booking-inline-gallery{padding:clamp(1rem,2.5vw,1.8rem);border-top:1px solid var(--color-sand-200);background:var(--color-white);grid-column:1 / -1}.booking-inline-gallery-heading{display:flex;margin-bottom:1rem;align-items:center;justify-content:space-between;gap:1rem}.booking-inline-gallery-heading h4{margin:0;font-size:clamp(1.25rem,2vw,1.7rem)}.booking-inline-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:.8rem}.booking-gallery-thumb{display:grid;padding:0;overflow:hidden;border:1px solid var(--color-sand-200);border-radius:var(--radius-sm);background:var(--color-sand-50);color:inherit;text-align:left;cursor:zoom-in}.booking-gallery-thumb img{width:100%;aspect-ratio:4 / 3;object-fit:contain;background:var(--color-white)}.booking-gallery-thumb span{padding:.65rem .75rem;color:var(--color-muted);font-size:.78rem}.booking-gallery-thumb:hover,.booking-gallery-thumb:focus-visible{border-color:var(--color-forest-500);box-shadow:0 0 0 3px #173f361f}.booking-result-copy dt small{color:var(--color-muted);font-size:.74rem;font-weight:600}body.booking-lightbox-open{overflow:hidden}.booking-lightbox{position:fixed;z-index:10000;inset:0;display:grid;grid-template-columns:minmax(3rem,8vw) minmax(0,1fr) minmax(3rem,8vw);align-items:center;background:#060d0bf5;color:#fff}.booking-lightbox[hidden]{display:none}.booking-lightbox figure{display:grid;width:100%;height:100dvh;margin:0;padding:clamp(3.8rem,7vh,5.5rem) 0 clamp(2.5rem,5vh,4rem);place-items:center;grid-template-rows:minmax(0,1fr) auto}.booking-lightbox img{width:100%;height:100%;max-height:calc(100dvh - 9rem);object-fit:contain}.booking-lightbox figcaption{display:flex;width:min(100%,70rem);padding-top:.75rem;justify-content:space-between;gap:1rem;color:#fff;font-size:.9rem}.booking-lightbox figcaption small{color:#ffffffb8;white-space:nowrap}.booking-lightbox-close,.booking-lightbox-nav{border:0;background:#ffffff1f;color:#fff;cursor:pointer}.booking-lightbox-close{position:absolute;z-index:2;top:max(.8rem,env(safe-area-inset-top));right:max(.8rem,env(safe-area-inset-right));width:3rem;height:3rem;border-radius:999px;font-size:2rem;line-height:1}.booking-lightbox-nav{width:clamp(2.8rem,5vw,4rem);height:clamp(4rem,10vh,6rem);margin:auto;border-radius:.65rem;font-size:clamp(2.4rem,5vw,4rem);line-height:1}.booking-lightbox-close:hover,.booking-lightbox-close:focus-visible,.booking-lightbox-nav:hover,.booking-lightbox-nav:focus-visible{background:#ffffff3d;outline:2px solid #fff;outline-offset:2px}@media(max-width:680px){.booking-lightbox{grid-template-columns:3rem minmax(0,1fr) 3rem}.booking-lightbox figure{padding:4.25rem .15rem calc(1rem + env(safe-area-inset-bottom))}.booking-lightbox img{max-height:calc(100dvh - 7.5rem)}.booking-lightbox-nav{width:2.65rem;height:4.5rem;border-radius:.4rem}.booking-lightbox figcaption{padding-inline:.35rem;font-size:.78rem}}.booking-gallery-open{margin-top:.8rem;border:0;background:transparent;cursor:pointer}.booking-result-copy{padding:clamp(1rem,2vw,1.5rem)}.booking-result-copy>p:not(.eyebrow){margin-top:.65rem;color:var(--color-muted)}.booking-result-copy dl{margin-block:.85rem}.booking-result-copy dl>div,.booking-total{display:flex;gap:1rem;justify-content:space-between;padding-block:.48rem;border-bottom:1px solid var(--color-sand-200)}.booking-result-copy dt,.booking-result-copy dd{margin:0}.booking-result-copy dd{font-weight:750}.booking-total{display:grid;grid-template-columns:1fr auto;align-items:baseline;margin-bottom:.85rem;border-bottom:0}.booking-total strong{color:var(--color-forest-900);font-family:var(--font-display);font-size:1.8rem}.booking-total small{grid-column:1 / -1;color:var(--color-muted)}.booking-result-copy .text-link{margin-left:1rem}.booking-unavailable{padding:.6rem .75rem;border-left:.25rem solid var(--color-clay);background:var(--color-sand-100)}.booking-local-note{margin-top:1.25rem;padding:1rem;border-radius:var(--radius-sm);background:var(--color-forest-100);font-size:.92rem}.booking-selection-summary{display:flex;gap:.5rem 1.5rem;justify-content:space-between;margin-bottom:.9rem;padding:.7rem .85rem;border-radius:var(--radius-sm);color:var(--color-white);background:var(--color-forest-900)}.booking-request .checkbox{align-items:flex-start;padding:.9rem 0}.booking-request .checkbox input{width:1.15rem;min-height:auto;height:1.15rem;margin-top:.35rem}.booking-request-cancellation,.booking-request-deposit{padding:1rem 1.15rem;border-left:.25rem solid var(--color-clay);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--color-sand-100)}.booking-request-cancellation p,.booking-request-deposit p{margin-top:.45rem;white-space:pre-line}.booking-request-deposit{border-left-color:var(--color-forest-700);background:var(--color-forest-100)}.booking-conditions .info-card{position:relative}.booking-condition-number{display:block;margin-bottom:1.2rem;color:var(--color-clay);font-weight:850;letter-spacing:.12em}.booking-cancellation{margin-top:2rem;padding:clamp(1.4rem,3vw,2.3rem);border:1px solid var(--color-sand-200);border-radius:var(--radius-md);background:var(--color-white)}.booking-cancellation h3{margin-bottom:.8rem}.booking-cancellation p:last-child{max-width:62rem;white-space:pre-line}.guest-pass-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,7vw,7rem);align-items:start}.guest-pass-benefits{display:grid;gap:1rem}.guest-pass-benefits article{padding:1.3rem 1.5rem;border-left:.3rem solid var(--color-clay);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--color-white)}.guest-pass-benefits strong{display:block;margin-bottom:.3rem;color:var(--color-forest-900);font-size:1.1rem}.stay-information-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.stay-information-card{padding:clamp(1.3rem,3vw,2rem);border:1px solid var(--color-sand-200);border-radius:var(--radius-md);background:var(--color-white)}.stay-information-card h3{margin-bottom:.7rem}.stay-information-wide{grid-column:1 / -1}.included-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem 2rem;margin-top:1.2rem;list-style:none}.included-list li{position:relative;padding-left:1.4rem}.included-list li:before{position:absolute;left:0;color:var(--color-clay);content:"✓";font-weight:850}.cancellation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.cancellation-grid article{padding:clamp(1.3rem,3vw,2rem);border:1px solid rgb(255 255 255 / .18);border-radius:var(--radius-md);background:#ffffff12}.cancellation-grid strong{display:block;margin-bottom:.7rem;color:#f1c6a8;font-family:var(--font-display);font-size:clamp(2.4rem,5vw,4.4rem);line-height:1}.cancellation-grid h3{margin-bottom:.6rem}.cancellation-note{margin-top:1rem;padding:1.2rem 1.4rem;border-radius:var(--radius-sm);color:var(--color-forest-950);background:var(--color-sand-100)}.wellness-dining{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,6rem);margin-top:2rem;padding:clamp(1.5rem,4vw,3rem);border-radius:var(--radius-lg);color:var(--color-white);background:var(--color-forest-900)}.wellness-dining .eyebrow{color:#f1c6a8}.skip-link{position:fixed;z-index:100;top:.75rem;left:.75rem;padding:.75rem 1rem;color:var(--color-white);background:var(--color-forest-950);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;z-index:50;top:0;border-bottom:1px solid rgb(23 63 54 / .09);background:#fcfaf6f0;backdrop-filter:blur(16px)}.header-inner{display:flex;min-height:5.25rem;align-items:center;gap:2rem}.brand{display:inline-flex;align-items:center;gap:.8rem;text-decoration:none}.brand-mark{display:grid;width:2.7rem;height:2.7rem;place-items:center;border-radius:50%;color:var(--color-sand-100);background:var(--color-forest-900);font-family:var(--font-display);font-size:1.45rem}.brand strong,.brand small{display:block}.brand strong{font-family:var(--font-display);font-size:1.22rem;font-weight:600;line-height:1.15}.brand small{margin-top:.15rem;color:var(--color-muted);font-size:.66rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.desktop-nav{display:flex;margin-left:auto;align-items:center;gap:clamp(.8rem,1.35vw,1.45rem)}.desktop-nav a{position:relative;font-size:.88rem;font-weight:650;text-decoration:none}.desktop-nav a:after{position:absolute;right:0;bottom:-.45rem;left:0;height:2px;background:var(--color-clay);content:"";transform:scaleX(0);transition:transform var(--transition)}.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{transform:scaleX(1)}.mobile-menu{display:none;margin-left:auto}.mobile-menu summary{display:grid;width:2.8rem;height:2.8rem;cursor:pointer;list-style:none;place-content:center;gap:.32rem;border:1px solid var(--color-sand-200);border-radius:50%}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{width:1.15rem;height:2px;background:currentColor}.mobile-menu nav{position:absolute;top:100%;right:0;left:0;display:grid;padding:1.5rem;border-top:1px solid var(--color-sand-200);background:var(--color-sand-50);box-shadow:var(--shadow-soft);gap:.5rem}.mobile-menu nav>a:not(.button){padding:.7rem 0;font-family:var(--font-display);font-size:1.35rem;text-decoration:none}.hero{position:relative;display:grid;min-height:calc(100svh - 5.25rem);overflow:hidden;align-items:end;color:var(--color-white);background:var(--color-forest-950)}.hero-media{position:absolute;inset:0}.hero-media:after{position:absolute;z-index:1;inset:0;background:linear-gradient(0deg,rgb(10 28 24 / .24) 0%,transparent 34%);content:"";pointer-events:none}.hero-slider,.hero-slides{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;width:100%;height:100%;opacity:0;object-fit:cover;transition:opacity 1.1s ease}.hero-slide.is-active{opacity:1}.hero-slider-controls{position:absolute;z-index:2;right:1.5rem;bottom:1.5rem;display:flex;padding:.35rem;border:1px solid rgb(255 255 255 / .35);border-radius:999px;align-items:center;gap:.2rem;color:var(--color-white);background:#081c17a3;backdrop-filter:blur(8px)}.hero-slider-controls button{display:grid;width:2.35rem;height:2.35rem;padding:0;border:0;border-radius:50%;place-items:center;color:inherit;background:transparent;cursor:pointer}.hero-slider-controls button:hover,.hero-slider-controls button:focus-visible{color:var(--color-forest-950);background:var(--color-white)}.hero-slider-status{min-width:3.4rem;padding-inline:.45rem;font-size:.78rem;text-align:center}.hero-content{position:relative;z-index:3;display:grid;padding-block:clamp(5rem,12vw,9rem) 3rem;grid-template-columns:minmax(0,1fr) 17rem;align-items:end;gap:4rem}.hero-text-panel{width:fit-content;max-width:50rem;padding:clamp(.8rem,1.7vw,1.4rem) clamp(.8rem,2.1vw,1.75rem);border-radius:1.25rem;background:linear-gradient(90deg,#081c178f,#081c176e 74%,#081c171f);box-shadow:0 .7rem 2.1rem #0000001a;backdrop-filter:blur(2px)}.hero h1{margin-bottom:1.1rem;font-size:clamp(2.1rem,3.64vw,3.78rem)}.hero-copy{max-width:41rem;font-size:clamp(.9rem,.82rem + .28vw,1rem)}.hero-actions{display:flex;margin-top:2rem;flex-wrap:wrap;gap:.8rem}.hero .button-secondary{border-color:#ffffffb8;color:var(--color-white)}.hero .button-secondary:hover{border-color:var(--color-white);background:#ffffff1f}.hero-note{max-width:14rem;margin-bottom:4.75rem;padding:.9rem 1rem;border:1px solid rgb(255 255 255 / .28);border-radius:var(--radius-md);justify-self:end;background:#ffffff1a;backdrop-filter:blur(8px)}.hero-note strong{display:block;margin-bottom:.4rem;font-family:var(--font-display);font-size:1.65rem;font-weight:500}.hero-note span{font-size:.8rem;line-height:1.35}.trust-strip{border-bottom:1px solid var(--color-sand-200)}.trust-list{display:grid;min-height:7rem;align-items:center;list-style:none;grid-template-columns:repeat(4,1fr)}.trust-list li{padding:1rem clamp(1rem,2vw,2rem);border-right:1px solid var(--color-sand-200);text-align:center}.trust-list li:first-child{padding-left:0}.trust-list li:last-child{border-right:0}.trust-list strong,.trust-list span{display:block}.trust-list strong{color:var(--color-forest-900);font-family:var(--font-display);font-size:1.45rem;font-weight:500}.trust-list span{margin-top:.2rem;color:var(--color-muted);font-size:.78rem}.split-heading{display:grid;margin-bottom:clamp(2.5rem,5vw,4.5rem);grid-template-columns:minmax(0,1.1fr) minmax(18rem,.65fr);align-items:end;gap:4rem}.split-heading>p{color:var(--color-muted);font-size:1.08rem}.apartments-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.2rem,2.5vw,2rem)}.apartment-card{overflow:hidden;border-radius:var(--radius-lg);background:var(--color-white);box-shadow:var(--shadow-soft)}.apartment-image{position:relative;display:block;overflow:hidden;aspect-ratio:16 / 10}.apartment-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.apartment-image:hover img{transform:scale(1.025)}.apartment-image>span{position:absolute;right:1rem;bottom:1rem;padding:.55rem .75rem;border-radius:999px;color:var(--color-ink);background:#fcfaf6f0;font-size:.75rem;font-weight:750}.apartment-card-body{padding:clamp(1.5rem,3vw,2.35rem)}.apartment-card-body h3 a{text-decoration:none}.apartment-card-body>p:not(.eyebrow){margin-top:1rem;color:var(--color-muted)}.fact-row{display:flex;margin:1.4rem 0;list-style:none;gap:.65rem}.fact-row li{padding:.35rem .65rem;border-radius:999px;color:var(--color-forest-900);background:var(--color-forest-100);font-size:.75rem;font-weight:750}.experience-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,6vw,6rem);align-items:center}.experience-copy h2{margin-bottom:1.5rem}.experience-copy .lead{margin-bottom:2rem}.experience-list{display:grid;list-style:none;gap:1rem}.experience-list li{display:grid;padding-top:1rem;border-top:1px solid rgb(255 255 255 / .18);grid-template-columns:2rem 1fr;gap:1rem}.experience-list strong{color:#ddae91;font-family:var(--font-display);font-size:1.35rem;font-weight:500}.season-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.season-card{position:relative;display:grid;min-height:35rem;overflow:hidden;padding:clamp(1.5rem,4vw,3rem);border-radius:var(--radius-lg);align-items:end;color:var(--color-white);background:linear-gradient(0deg,#0c251fe0,#0c251f14),var(--card-image, linear-gradient(140deg, #3b7162, #b9c4ad));background-position:center;background-size:cover;text-decoration:none}.season-card.winter{background-position:58% center}.season-card h3{margin-bottom:.75rem;font-size:clamp(2.2rem,5vw,4.3rem)}.season-card p{max-width:34rem}.location-band{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(20rem,.7fr);align-items:stretch}.location-copy{padding:clamp(3rem,8vw,7rem) max(1.5rem,calc((100vw - min(90rem,calc(100vw - 3rem)))/2));color:var(--color-white);background:var(--color-forest-900)}.location-copy h2{margin-bottom:1.5rem}.location-copy>p:not(.eyebrow){max-width:40rem;color:#d9e4df}.location-facts{display:grid;padding:clamp(3rem,7vw,6rem);align-content:center;background:var(--color-sand-200);list-style:none;gap:1.5rem}.location-facts li{padding-bottom:1.2rem;border-bottom:1px solid rgb(23 63 54 / .18)}.location-facts strong,.location-facts span{display:block}.location-facts strong{color:var(--color-forest-900);font-family:var(--font-display);font-size:2.3rem;font-weight:500}.location-facts span{margin-top:.2rem;color:var(--color-muted)}.faq-list{max-width:62rem}.faq-list details{border-top:1px solid var(--color-sand-200)}.faq-list details:last-child{border-bottom:1px solid var(--color-sand-200)}.faq-list summary{position:relative;padding:1.6rem 3.5rem 1.6rem 0;cursor:pointer;list-style:none;font-family:var(--font-display);font-size:clamp(1.2rem,2vw,1.55rem)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{position:absolute;top:50%;right:.5rem;color:var(--color-clay);content:"+";font-family:var(--font-body);font-size:1.6rem;transform:translateY(-50%)}.faq-list details[open] summary:after{content:"–"}.faq-answer{max-width:48rem;padding:0 3.5rem 1.7rem 0;color:var(--color-muted)}.cta-band{padding-block:clamp(4rem,8vw,7rem);color:var(--color-white);background:var(--color-forest-900)}.cta-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:4rem}.cta-inner h2{max-width:18ch;font-size:clamp(2.5rem,5vw,4.5rem)}.cta-inner p:not(.eyebrow){max-width:43rem;margin-top:1.2rem;color:#d9e4df}.cta-actions{display:grid;justify-items:start;gap:1rem}.site-footer{padding-top:var(--section-space);color:#d8e2de;background:var(--color-forest-950)}.footer-grid{display:grid;padding-bottom:4rem;grid-template-columns:minmax(0,1.15fr) .45fr .65fr .65fr;gap:clamp(2rem,4vw,4.5rem)}.footer-intro h2{max-width:14ch;color:var(--color-white);font-size:clamp(2.3rem,4vw,4.2rem)}.footer-intro>p:not(.eyebrow){max-width:37rem;margin:1.3rem 0}.site-footer h3{margin-bottom:1.2rem;color:var(--color-white);font-family:var(--font-body);font-size:.78rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}.site-footer address{font-style:normal}.footer-links{list-style:none}.footer-links li+li{margin-top:.55rem}.footer-links a,.footer-bottom a{text-decoration-color:#ffffff59}.contact-links{margin-top:1.2rem}.footer-bottom{display:flex;padding-block:1.4rem;border-top:1px solid rgb(255 255 255 / .12);justify-content:space-between;gap:1rem;font-size:.78rem}.footer-bottom nav{display:flex;flex-wrap:wrap;gap:1.2rem}.footer-bottom button{padding:0;border:0;color:inherit;background:transparent;font:inherit;text-decoration:underline;text-decoration-color:#ffffff59;text-underline-offset:.18em;cursor:pointer}.analytics-consent{position:fixed;z-index:1000;right:clamp(.6rem,2vw,1.15rem);bottom:clamp(.6rem,2vw,1.15rem);left:auto;display:grid;max-width:min(42rem,calc(100% - 1.2rem));padding:.72rem .8rem .72rem 1rem;border:1px solid rgb(255 255 255 / .16);border-radius:.65rem;color:#eef4f1;background:var(--color-forest-950);box-shadow:0 1.2rem 4rem #00000047;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem .8rem}.analytics-consent[hidden]{display:none}.analytics-consent p{max-width:31rem;font-size:.76rem;line-height:1.45}.analytics-consent a{color:#fff}.analytics-consent-actions{display:flex;flex-wrap:nowrap;gap:.4rem}.analytics-consent .button{min-height:2.35rem;padding:.5rem .75rem;font-size:.72rem;white-space:nowrap}.analytics-consent .button-secondary{border-color:#ffffff73;color:#fff;background:transparent}.language-suggestion{position:fixed;z-index:60;top:calc(var(--header-height, 5rem) + .75rem);right:1rem;display:grid;width:min(31rem,calc(100vw - 2rem));padding:1rem 1.1rem;border:1px solid rgb(255 255 255 / .28);border-radius:1rem;color:#fff;background:#123930f0;box-shadow:0 1rem 2.8rem #00000038;gap:.8rem;backdrop-filter:blur(10px)}.language-suggestion[hidden]{display:none}.language-suggestion strong,.language-suggestion span{display:block}.language-suggestion span{margin-top:.18rem;font-size:.88rem;opacity:.88}.language-suggestion-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem}.language-suggestion-dismiss{padding:.45rem .6rem;border:0;color:#fff;background:transparent;text-decoration:underline;cursor:pointer}@media(max-width:42rem){.language-suggestion{top:auto;right:.55rem;bottom:.55rem;width:calc(100vw - 1.1rem)}}@media(max-width:720px){.analytics-consent{right:.45rem;bottom:.45rem;left:.45rem;max-width:none;padding:.7rem;grid-template-columns:1fr}.analytics-consent p{max-width:none}.analytics-consent-actions{justify-content:flex-end}}.page-hero{padding-block:clamp(4rem,8vw,7rem) clamp(3.5rem,6vw,5rem);background:var(--color-sand-100)}.page-hero .container{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(19rem,.55fr);align-items:end;gap:clamp(2rem,7vw,7rem)}.page-hero h1{color:var(--color-forest-950);font-size:clamp(2.7rem,4.4vw,4.2rem)}.page-hero-visual{position:relative;display:grid;min-height:min(43rem,72svh);align-items:end;color:var(--color-white);background:linear-gradient(90deg,#081c179e,#081c1714),linear-gradient(0deg,rgb(8 28 23 / .48),transparent 62%),var(--page-hero-image);background-position:center;background-size:cover}.page-hero-visual h1{color:var(--color-white);font-size:clamp(2.25rem,3.8vw,3.65rem)}.page-hero-visual .lead{color:#ffffffe0}.season-gallery{background:var(--color-sand-100)}.season-gallery-grid{display:grid;margin-top:clamp(2rem,5vw,4rem);grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.season-gallery-item{overflow:hidden;margin:0;border-radius:var(--radius-lg);background:var(--color-white)}.season-gallery-item img{width:100%;aspect-ratio:4 / 3;object-fit:cover}.season-gallery-item figcaption{display:grid;padding:1.35rem;gap:.35rem}.season-gallery-item figcaption strong{color:var(--color-forest-950);font-family:var(--font-display);font-size:1.45rem;font-weight:500}.season-gallery-item figcaption span{color:var(--color-ink-soft)}.season-gallery-item figcaption small{margin-top:.35rem;color:var(--color-ink-muted);font-size:.72rem}.page-hero .lead{padding-bottom:.5rem}.breadcrumbs{padding-block:1rem}.breadcrumbs ol{display:flex;overflow-x:auto;list-style:none;white-space:nowrap;gap:.65rem;font-size:.76rem}.breadcrumbs li+li:before{margin-right:.65rem;color:var(--color-muted);content:"/"}.breadcrumbs a{color:var(--color-muted)}.prose{max-width:var(--reading)}.prose h2{margin-top:1.4em;font-size:clamp(2rem,4vw,3.2rem)}.prose h3{margin-top:1.5em}.prose p,.prose ul{margin-top:1.2rem}.prose ul{padding-left:1.2rem}.prose a{color:var(--color-forest-800)}.detail-hero{display:grid;min-height:calc(100svh - 5.25rem);grid-template-columns:.9fr 1.1fr}.detail-hero-copy{display:grid;padding:clamp(3rem,7vw,7rem) max(1.5rem,calc((100vw - min(90rem,calc(100vw - 3rem)))/2));align-content:center;background:var(--color-sand-100)}.detail-hero-copy h1{color:var(--color-forest-950);font-size:clamp(3rem,5.2vw,5.4rem)}.detail-hero-copy .lead{margin-top:1.5rem}.detail-hero-image{min-height:36rem}.detail-hero-gallery-trigger{position:relative;overflow:hidden;padding:0;border:0;color:var(--color-white);background:var(--color-forest-950);cursor:zoom-in}.detail-hero-gallery-trigger:after{position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgb(8 28 23 / .62));content:"";pointer-events:none}.detail-hero-gallery-trigger>span{position:absolute;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:1;display:inline-flex;min-height:2.75rem;padding:.65rem 1rem;border:1px solid rgb(255 255 255 / .58);border-radius:999px;align-items:center;background:#081c17b8;backdrop-filter:blur(8px);font-size:.82rem;font-weight:700}.detail-hero-gallery-trigger:hover img{transform:scale(1.015)}.detail-hero-gallery-trigger:focus-visible{outline:3px solid var(--color-clay);outline-offset:-5px}.detail-hero-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition)}.detail-facts{display:grid;margin:2rem 0;grid-template-columns:repeat(3,1fr);gap:.75rem}.detail-facts div{padding:1rem;border:1px solid var(--color-sand-200);border-radius:var(--radius-sm);background:var(--color-sand-50)}.detail-facts strong,.detail-facts span{display:block}.detail-facts strong{color:var(--color-forest-900);font-family:var(--font-display);font-size:1.8rem;font-weight:500}.detail-facts span{color:var(--color-muted);font-size:.75rem}.content-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(20rem,.45fr);gap:clamp(2rem,8vw,8rem)}.floorplan-section{padding-top:0}.apartment-gallery-section{background:var(--color-sand-50)}.gallery-heading{margin-bottom:clamp(2rem,4vw,3rem)}.apartment-gallery{overflow:hidden;border:1px solid var(--color-sand-200);border-radius:var(--radius-lg);background:var(--color-white);box-shadow:var(--shadow-soft)}.gallery-viewport{outline-offset:-4px;touch-action:pan-y}.gallery-slide{margin:0}.gallery-slide[hidden]{display:none}.gallery-open{position:relative;display:block;width:100%;padding:0;border:0;color:var(--color-white);background:var(--color-forest-950);cursor:zoom-in}.gallery-open img{display:block;width:100%;height:auto;aspect-ratio:16 / 9;object-fit:contain}.gallery-open>span{position:absolute;right:1rem;bottom:1rem;padding:.55rem .8rem;border:1px solid rgb(255 255 255 / .48);border-radius:999px;background:#081c17c2;backdrop-filter:blur(8px);font-size:.78rem;font-weight:700}.gallery-slide>figcaption{display:grid;padding:1.2rem clamp(1.2rem,3vw,2rem);border-top:1px solid var(--color-sand-200);grid-template-columns:minmax(12rem,.45fr) 1fr;align-items:baseline;gap:1rem 2rem}.gallery-slide>figcaption strong{color:var(--color-forest-950);font-family:var(--font-display);font-size:1.35rem;font-weight:500}.gallery-slide>figcaption span{color:var(--color-muted);font-size:.9rem}.gallery-controls{display:flex;padding:.85rem 1rem;border-top:1px solid var(--color-sand-200);align-items:center;justify-content:center;gap:1rem;background:var(--color-sand-100)}.gallery-controls button,.gallery-dialog-arrow,.gallery-dialog-close{display:grid;width:2.75rem;height:2.75rem;padding:0;border:1px solid var(--color-sand-200);border-radius:50%;place-items:center;color:var(--color-forest-950);background:var(--color-white);cursor:pointer;transition:color var(--transition),background var(--transition),transform var(--transition)}.gallery-controls button:hover,.gallery-dialog-arrow:hover,.gallery-dialog-close:hover{color:var(--color-white);background:var(--color-forest-800);transform:translateY(-1px)}.gallery-status{min-width:4rem;color:var(--color-muted);font-size:.82rem;text-align:center}html.has-gallery-dialog{overflow:hidden}.gallery-dialog{width:min(96vw,100rem);max-width:none;max-height:94svh;padding:0;border:1px solid rgb(255 255 255 / .22);border-radius:var(--radius-md);color:var(--color-white);background:#0b1714;box-shadow:0 2rem 6rem #00000080}.gallery-dialog::backdrop{background:#030c0ae0;backdrop-filter:blur(5px)}.gallery-dialog-inner{position:relative;display:grid;min-height:min(88svh,58rem);padding:3.75rem 1rem 1rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem}.gallery-dialog figure{display:grid;min-width:0;height:100%;margin:0;grid-template-rows:minmax(0,1fr) auto;align-items:center}.gallery-dialog figure img{width:100%;max-height:calc(88svh - 9rem);object-fit:contain}.gallery-dialog figure figcaption{display:grid;padding:.9rem .25rem 0;grid-template-columns:minmax(10rem,.35fr) 1fr;gap:1rem}.gallery-dialog figure figcaption strong{font-family:var(--font-display);font-size:1.2rem;font-weight:500}.gallery-dialog figure figcaption span{color:#ffffffb8;font-size:.85rem}.gallery-dialog-arrow,.gallery-dialog-close{border-color:#ffffff3d;color:var(--color-white);background:#ffffff14}.gallery-dialog-close{position:absolute;top:.75rem;right:.75rem;z-index:2;font-size:1.6rem}.gallery-dialog-status{position:absolute;top:1.25rem;left:1.25rem;color:#ffffffb3;font-size:.8rem}.floorplan-heading{margin-bottom:clamp(2rem,4vw,3rem)}.floorplan-slider{overflow:hidden;border:1px solid var(--color-sand-200);border-radius:var(--radius-lg);background:var(--color-white);box-shadow:var(--shadow-soft)}.floorplan-viewport{outline-offset:-4px;touch-action:pan-y}.floorplan-slide{margin:0}.floorplan-slide[hidden]{display:none}.floorplan-slide img{width:100%;height:auto;aspect-ratio:1672 / 941;background:#fbfaf7;object-fit:contain}.floorplan-slide figcaption{display:grid;padding:1.2rem clamp(1.2rem,3vw,2rem);border-top:1px solid var(--color-sand-200);grid-template-columns:minmax(12rem,auto) minmax(0,1fr);align-items:baseline;gap:1rem 2rem}.floorplan-slide figcaption strong{color:var(--color-forest-950);font-family:var(--font-display);font-size:1.35rem;font-weight:500}.floorplan-slide figcaption span{color:var(--color-muted);font-size:.9rem}.floorplan-controls{display:flex;padding:.85rem 1rem;border-top:1px solid var(--color-sand-200);align-items:center;justify-content:center;gap:.75rem;background:var(--color-sand-100)}.floorplan-controls>button{display:grid;width:2.75rem;height:2.75rem;padding:0;border:1px solid var(--color-forest-900);border-radius:50%;place-items:center;color:var(--color-white);background:var(--color-forest-900);cursor:pointer;transition:color var(--transition),background var(--transition),transform var(--transition)}.floorplan-controls>button:hover{color:var(--color-forest-900);background:var(--color-white);transform:translateY(-1px)}.floorplan-dots{display:flex;align-items:center;gap:.45rem}.floorplan-dots button{width:.7rem;height:.7rem;padding:0;border:0;border-radius:50%;background:#a8b6b0;cursor:pointer}.floorplan-dots button.is-active{background:var(--color-clay);transform:scale(1.25)}.floorplan-status{min-width:3.2rem;color:var(--color-muted);font-size:.78rem;font-weight:700;text-align:center}.feature-panel{padding:clamp(1.5rem,3vw,2.5rem);border-radius:var(--radius-lg);background:var(--color-sand-100)}.feature-panel h2{margin-bottom:1.5rem;font-size:2rem}.check-list{display:grid;list-style:none;gap:.85rem}.check-list li{position:relative;padding-left:1.5rem}.check-list li:before{position:absolute;top:0;left:0;color:var(--color-clay);content:"•";font-size:1.35rem}.inquiry-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(22rem,1fr);gap:clamp(1.5rem,5vw,4rem)}.inquiry-flow{display:grid;min-width:0;gap:.75rem}.inquiry-intro h1{font-size:clamp(2rem,4vw,3.6rem)}.inquiry-intro .lead{margin-top:.85rem}.direct-contact{display:grid;margin-top:2rem;list-style:none;gap:.5rem}.direct-contact a{color:var(--color-forest-900);font-weight:750}.inquiry-form{padding:clamp(.9rem,2vw,1.4rem);border-radius:var(--radius-lg);background:var(--color-white);box-shadow:var(--shadow-soft)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}#inquiry-status.is-success{min-height:0;margin-top:.75rem;padding:.85rem 1rem;border:1px solid var(--color-forest-200);border-radius:var(--radius-sm);background:var(--color-forest-100)}.field{display:grid;min-width:0;gap:.3rem}.field-full{grid-column:1 / -1}.field label,.field legend{font-size:.82rem;font-weight:750}.field input,.field select,.field textarea{width:100%;min-height:2.8rem;padding:.55rem .7rem;border:1px solid #bac4c0;border-radius:var(--radius-sm);color:var(--color-ink);background:var(--color-sand-50)}.field textarea{min-height:5.5rem;resize:vertical}.checkbox{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:.75rem}.checkbox input{width:1.25rem;min-height:1.25rem;margin-top:.2rem}.form-note{margin-top:1rem;color:var(--color-muted);font-size:.78rem}.info-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.info-card{padding:clamp(1.5rem,3vw,2.5rem);border:1px solid var(--color-sand-200);border-radius:var(--radius-md);background:var(--color-white)}.info-card h3{margin-bottom:.85rem}.info-card p{color:var(--color-muted)}.season-planner{padding-block:clamp(2.4rem,5vw,4.5rem);border-bottom:1px solid var(--color-sand-200)}.season-planner .split-heading{margin-bottom:clamp(1.4rem,3vw,2.3rem)}.season-planner .info-card{display:flex;min-height:100%;padding:clamp(1.2rem,2.4vw,1.9rem);flex-direction:column}.season-planner .info-card .text-link{margin-top:auto;padding-top:1rem}.home-wellness{padding-block:var(--section-space)}.apartment-wellness{padding-bottom:var(--section-space)}.wellness-teaser{display:grid;overflow:hidden;border-radius:var(--radius-lg);grid-template-columns:minmax(0,1.12fr) minmax(23rem,.88fr);color:var(--color-ink);background:var(--color-sand-100);box-shadow:var(--shadow-soft)}.wellness-teaser-image{min-height:35rem}.wellness-teaser-image img{width:100%;height:100%;object-fit:cover}.wellness-teaser-copy{display:grid;padding:clamp(2rem,5vw,4.5rem);align-content:center}.wellness-teaser-copy h2{font-size:clamp(2.2rem,4vw,3.7rem)}.wellness-teaser-copy>p:not(.eyebrow){margin-top:1.3rem;color:var(--color-muted)}.wellness-inline-facts{display:grid;margin-block:2rem;grid-template-columns:repeat(3,1fr);list-style:none;gap:.75rem}.wellness-inline-facts li{padding-top:.8rem;border-top:1px solid rgb(23 63 54 / .22)}.wellness-inline-facts strong,.wellness-inline-facts span{display:block}.wellness-inline-facts strong{color:var(--color-forest-900);font-family:var(--font-display);font-size:1.75rem;font-weight:500}.wellness-inline-facts span{color:var(--color-muted);font-size:.75rem}.wellness-teaser-compact .wellness-teaser-image{min-height:29rem}.wellness-page-hero{min-height:min(49rem,78svh)}.wellness-page-hero .container{padding-block:clamp(4rem,10vw,8rem)}.wellness-page-hero h1{max-width:13ch}.wellness-page-hero .lead{max-width:43rem;margin:1.5rem 0 2rem}.wellness-answer{padding-block:clamp(3.5rem,7vw,6rem);background:var(--color-white)}.wellness-answer-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(20rem,1fr);align-items:start;gap:clamp(2rem,7vw,8rem)}.wellness-answer-grid h2{font-size:clamp(2.2rem,4vw,3.6rem)}.wellness-answer-grid>div:last-child>p:last-child{margin-top:1.25rem;color:var(--color-muted)}.wellness-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.wellness-card{overflow:hidden;border-radius:var(--radius-lg);background:var(--color-white)}.wellness-card img{width:100%;aspect-ratio:16 / 10;object-fit:cover}.wellness-card>div{padding:clamp(1.4rem,3vw,2.25rem)}.wellness-card h3{color:var(--color-forest-950)}.wellness-card>div>p:last-child{margin-top:.8rem;color:var(--color-muted)}.wellness-card-large,.wellness-card-wide{grid-column:1 / -1}.wellness-card-large{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(19rem,.65fr)}.wellness-card-large img{height:100%;aspect-ratio:auto;min-height:31rem}.wellness-card-large>div{display:grid;align-content:center}.wellness-card-wide{display:grid;grid-template-columns:minmax(19rem,.65fr) minmax(0,1.35fr)}.wellness-card-wide img{width:100%;height:100%;min-height:26rem}.wellness-card-wide>div{grid-column:1;grid-row:1;display:grid;align-content:center}.wellness-card-wide img{grid-column:2}.family-water-heading{display:grid;margin-top:clamp(4rem,8vw,7rem);margin-bottom:clamp(2rem,4vw,3rem);grid-template-columns:minmax(0,1fr) minmax(19rem,.7fr);align-items:end;gap:clamp(2rem,6vw,6rem)}.family-water-heading>p{color:var(--color-muted)}.family-water-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.family-water-card{overflow:hidden;border-radius:var(--radius-lg);background:var(--color-white);box-shadow:var(--shadow-soft)}.family-water-card img{width:100%;aspect-ratio:16 / 10;object-fit:cover}.family-water-card>div{padding:clamp(1.4rem,3vw,2.25rem)}.family-water-card h3{color:var(--color-forest-950)}.family-water-card>div>p:last-child{margin-top:.8rem;color:var(--color-muted)}.wellness-facts-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(22rem,1fr);gap:clamp(2rem,7vw,8rem)}.wellness-fact-list{margin:0}.wellness-fact-list>div{display:grid;padding:1rem 0;border-top:1px solid rgb(255 255 255 / .2);grid-template-columns:minmax(9rem,.45fr) 1fr;gap:1rem}.wellness-fact-list dt{color:#ddae91;font-weight:750}.wellness-fact-list dd{margin:0;color:#e5ede9}.wellness-day{display:grid;grid-template-columns:minmax(0,.9fr) minmax(22rem,1fr);gap:clamp(2rem,7vw,8rem)}.wellness-day ol{list-style:none}.wellness-day li{display:grid;padding:1rem 0;border-top:1px solid var(--color-sand-200);grid-template-columns:2.5rem 1fr;gap:1rem}.wellness-day li strong{color:var(--color-clay);font-family:var(--font-display);font-size:1.25rem;font-weight:500}.price-highlight{background:var(--color-sand-200)}.price-highlight .container{display:grid;grid-template-columns:minmax(0,.8fr) minmax(22rem,1.2fr);align-items:stretch}.price-highlight .container>div{display:grid;padding:clamp(2.5rem,6vw,5rem);align-content:center}.price-highlight h2{font-size:clamp(2.1rem,3.5vw,3.3rem)}.price-highlight .container>div>p:not(.eyebrow){margin-block:1.2rem 1.5rem}.price-highlight img{width:100%;height:100%;min-height:32rem;object-fit:cover}.price-section-heading{display:flex;margin-bottom:2.5rem;align-items:end;justify-content:space-between;gap:2rem}.price-section-heading>p{color:var(--color-muted);font-size:.8rem}.price-table-wrap{overflow-x:auto;border:1px solid var(--color-sand-200);border-radius:var(--radius-md);background:var(--color-white);box-shadow:var(--shadow-soft)}.price-table{width:100%;min-width:58rem;border-collapse:collapse}.price-table-winter{min-width:76rem}.price-table th,.price-table td{padding:1rem;border-right:1px solid var(--color-sand-200);border-bottom:1px solid var(--color-sand-200);text-align:center}.price-table tr>:last-child{border-right:0}.price-table tbody tr:last-child>*{border-bottom:0}.price-table thead th{color:var(--color-white);background:var(--color-forest-900);font-size:.75rem;line-height:1.45}.live-prices-note{margin-top:2rem;color:var(--color-muted);font-size:.92rem}.live-prices .price-table thead th strong,.live-prices .price-table thead th small{display:block}.live-prices .price-table thead th small{margin-top:.35rem;font-size:.7rem;font-weight:500;line-height:1.45;text-transform:none}.live-prices .price-period-linked{display:block;margin-top:.45rem;padding-top:.45rem;border-top:1px solid rgb(255 255 255 / .22)}.live-prices .price-period-linked b{display:block;margin-bottom:.15rem}.price-table tbody th{min-width:12rem;color:var(--color-forest-950);background:var(--color-sand-100);font-family:var(--font-display);font-size:1.08rem;font-weight:500;text-align:left}.price-table tbody th small{display:block;margin-top:.25rem;color:var(--color-muted);font-family:var(--font-body);font-size:.7rem}.price-table td{font-weight:750;white-space:nowrap}.price-table td a{color:var(--color-forest-800)}.price-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.price-detail-grid article{padding:clamp(1.4rem,2.5vw,2rem);border:1px solid var(--color-sand-200);border-radius:var(--radius-md);background:var(--color-white)}.price-detail-grid h3{font-size:1.55rem}.price-detail-grid p{margin-top:.8rem;color:var(--color-muted);font-size:.9rem}.guide-hero{background:var(--color-sand-100)}.guide-hero-image{position:relative;overflow:hidden;max-height:42rem;background:var(--color-forest-950)}.guide-hero-image .hero-slider{position:relative;height:min(50vw,42rem);min-height:26rem}.page-hero-with-slider{position:relative;overflow:hidden;background-image:linear-gradient(90deg,#081c17d1,#081c1747)}.page-hero-with-slider:before{display:none}.page-hero-with-slider>.container{position:relative;z-index:3}.guide-hero-image img{display:block;width:100%;height:min(50vw,42rem);min-height:26rem;object-fit:cover}.guide-hero-image>span{position:absolute;right:1rem;bottom:1rem;max-width:calc(100% - 2rem);padding:.45rem .7rem;border-radius:999px;color:#ffffffeb;background:#081c17b8;font-size:.68rem;backdrop-filter:blur(6px)}.guide-hero-copy{display:grid;padding-block:clamp(2.5rem,6vw,5rem);grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr);align-items:end;gap:clamp(2rem,6vw,7rem)}.guide-hero-copy .eyebrow,.guide-hero-copy h1{grid-column:1}.guide-hero-copy h1{max-width:17ch;font-size:clamp(3rem,6.2vw,6.2rem)}.guide-hero-copy .lead{grid-column:2;grid-row:1 / span 2}.guide-facts{display:grid;grid-column:1 / -1;margin-top:1rem;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;gap:1rem}.guide-facts li{padding-top:1rem;border-top:1px solid rgb(23 63 54 / .25)}.guide-facts strong,.guide-facts span{display:block}.guide-facts strong{color:var(--color-forest-900);font-family:var(--font-display);font-size:clamp(1.7rem,3vw,2.6rem);font-weight:500}.guide-facts span{color:var(--color-muted);font-size:.78rem}.guide-intro>.container{display:grid;gap:clamp(3rem,7vw,7rem)}.guide-answer{display:grid;max-width:72rem;grid-template-columns:minmax(18rem,.8fr) minmax(0,1.2fr);align-items:start;gap:1rem clamp(2rem,7vw,7rem)}.guide-answer .eyebrow,.guide-answer h2{grid-column:1}.guide-answer h2{font-size:clamp(2.2rem,4vw,3.7rem)}.guide-answer>p:last-child{grid-column:2;grid-row:1 / span 2;color:var(--color-muted);font-size:clamp(1.05rem,1.7vw,1.3rem);line-height:1.75}.guide-stay{display:grid;overflow:hidden;border-radius:var(--radius-lg);grid-template-columns:minmax(0,1.05fr) minmax(22rem,.95fr);color:var(--color-white);background:var(--color-forest-950);box-shadow:var(--shadow-soft)}.guide-stay-image{min-height:34rem}.guide-stay-image img{width:100%;height:100%;object-fit:cover}.guide-stay-copy{display:grid;padding:clamp(2rem,5vw,4.5rem);align-content:center}.guide-stay-copy .eyebrow{color:#ddae91}.guide-stay-copy h2{font-size:clamp(2.2rem,4vw,3.7rem)}.guide-stay-copy>p:not(.eyebrow){margin-top:1.25rem;color:#dce7e3}.guide-stay-copy>ul{display:grid;margin-block:2rem;grid-template-columns:repeat(3,1fr);list-style:none;gap:.8rem}.guide-stay-copy>ul li{padding-top:.75rem;border-top:1px solid rgb(255 255 255 / .22)}.guide-stay-copy>ul strong,.guide-stay-copy>ul span{display:block}.guide-stay-copy>ul strong{font-family:var(--font-display);font-size:1.6rem;font-weight:500}.guide-stay-copy>ul span{color:#b9cbc5;font-size:.7rem}.guide-stay-actions{display:flex;align-items:center;gap:1.2rem}.guide-stay .text-link{color:var(--color-white)}.guide-section-heading,.guide-hub-heading{display:grid;margin-bottom:clamp(2rem,5vw,4rem);grid-template-columns:minmax(0,1fr) minmax(20rem,.65fr);align-items:end;gap:clamp(2rem,6vw,7rem)}.guide-section-heading>p,.guide-hub-heading>p{color:var(--color-muted)}.guide-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.guide-card{display:flex;min-width:0;overflow:hidden;padding:0;border:1px solid var(--color-sand-200);border-radius:var(--radius-md);flex-direction:column;background:var(--color-white)}.guide-card-media{position:relative;margin:0;overflow:hidden;background:var(--color-sand-100)}.guide-card-media img{width:100%;aspect-ratio:16 / 9;object-fit:cover;transition:transform .32s ease}.guide-card:hover .guide-card-media img{transform:scale(1.025)}.guide-card-media figcaption{position:absolute;right:.55rem;bottom:.45rem;max-width:calc(100% - 1.1rem);padding:.25rem .45rem;border-radius:.25rem;color:#ffffffe6;background:#081c17b8;font-size:.58rem;line-height:1.25}.guide-card-body{display:flex;padding:clamp(1.25rem,2.5vw,2rem);flex:1;flex-direction:column}.guide-card h3{color:var(--color-forest-950);font-size:clamp(1.55rem,2.3vw,2.15rem)}.guide-card-body>p:not(.guide-tip){margin-top:.9rem;color:var(--color-muted)}.guide-card-meta{display:flex;margin-top:1.25rem;padding:0;flex-wrap:wrap;list-style:none;gap:.45rem}.guide-card-meta li{padding:.35rem .65rem;border-radius:999px;color:var(--color-forest-900);background:var(--color-sand-100);font-size:.7rem;font-weight:700}.guide-tip{margin-top:1.1rem;padding-top:1rem;border-top:1px solid var(--color-sand-200);font-size:.86rem}.guide-source-link{margin-top:auto;padding-top:1.25rem;color:var(--color-forest-800);font-size:.78rem;font-weight:750}.guide-note{padding-block:1.4rem;color:var(--color-white);background:var(--color-forest-900)}.guide-note .container{display:grid;grid-template-columns:minmax(12rem,.25fr) 1fr;gap:1rem 2rem}.guide-note p{color:#dce7e3}.guide-research-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(20rem,.8fr);gap:clamp(3rem,7vw,7rem)}.guide-related{display:grid;margin-top:2rem;gap:.7rem}.guide-related a{display:grid;padding:1.2rem;border:1px solid var(--color-sand-200);border-radius:var(--radius-sm);color:var(--color-ink);background:var(--color-white);text-decoration:none;transition:transform var(--transition),border-color var(--transition)}.guide-related a:hover{border-color:var(--color-forest-800);transform:translateY(-2px)}.guide-related strong{color:var(--color-forest-900)}.guide-related span,.guide-sources>p{color:var(--color-muted);font-size:.86rem}.guide-sources{padding:clamp(1.5rem,3vw,2.5rem);border-radius:var(--radius-md);background:var(--color-sand-100)}.guide-sources h2{font-size:2rem}.guide-sources>p{margin-top:.7rem}.guide-sources ul{display:grid;margin-top:1.2rem;padding-left:1.1rem;gap:.55rem}.guide-sources a{color:var(--color-forest-800)}.guide-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.guide-hub-card{display:grid;overflow:hidden;border:1px solid var(--color-sand-200);border-radius:var(--radius-lg);color:var(--color-ink);background:var(--color-white);text-decoration:none;box-shadow:var(--shadow-soft);transition:transform var(--transition)}.guide-hub-card:hover{transform:translateY(-3px)}.guide-hub-card img{width:100%;aspect-ratio:16 / 8;object-fit:cover}.guide-hub-card>div{display:grid;padding:clamp(1.4rem,3vw,2.5rem)}.guide-hub-card h3{font-size:clamp(1.7rem,3vw,2.6rem)}.guide-hub-card>div>p:not(.eyebrow){margin-block:.8rem 1.2rem;color:var(--color-muted)}.guide-hub-card .text-link{margin-top:auto;color:var(--color-forest-800)}@media(max-width:70rem){.header-inner{gap:.35rem}.brand{min-width:0}.mobile-menu{flex:0 0 auto;margin-left:0}.booking-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.desktop-nav,.header-actions{display:none}.mobile-menu{display:block;margin-left:.35rem}.mobile-header-language{display:flex}.hero-content,.page-hero .container{grid-template-columns:1fr}.hero-note{max-width:17rem}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.footer-intro{grid-column:1 / -1}.price-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-hero-copy,.guide-answer{grid-template-columns:1fr}.guide-hero-copy .lead,.guide-answer>p:last-child{grid-column:1;grid-row:auto}}@media(max-width:32rem){.brand small{display:none}}@media(max-width:52rem){.guest-pass-layout,.stay-information-grid,.cancellation-grid,.wellness-dining{grid-template-columns:1fr}.stay-information-wide{grid-column:auto}.booking-hero-grid,.booking-result-card{grid-template-columns:1fr}.booking-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-result-card>img{min-height:18rem;max-height:28rem}.booking-selection-summary{display:grid}:root{--container: min(100% - 1.25rem, 90rem)}h1{font-size:clamp(2.75rem,12vw,4.25rem)}.brand small{display:none}.hero{min-height:48rem}.hero-content,.split-heading,.experience-grid,.location-band,.cta-inner,.footer-grid,.detail-hero,.content-grid,.inquiry-grid{grid-template-columns:1fr}.footer-intro{grid-column:auto}.hero-content{gap:2rem}.trust-list{padding-block:1rem;grid-template-columns:repeat(2,1fr)}.trust-list li:nth-child(2){border-right:0}.trust-list li:first-child{padding-left:1rem}.apartments-grid,.season-cards,.season-gallery-grid{grid-template-columns:1fr}.season-card{min-height:27rem}.page-hero-visual{min-height:37rem;background-position:62% center}.hero-slider-controls{right:1rem;bottom:1rem}.location-copy{padding-inline:1rem}.location-facts{padding:3rem 1rem}.detail-hero-image{min-height:28rem;order:-1}.detail-hero-copy{padding:3rem 1rem 4rem}.floorplan-slide figcaption{grid-template-columns:1fr;gap:.35rem}.gallery-slide>figcaption,.gallery-dialog figure figcaption{grid-template-columns:1fr;gap:.35rem}.gallery-dialog{width:100vw;max-height:100svh;border:0;border-radius:0}.gallery-dialog-inner{min-height:100svh;padding:3.25rem 0 0;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:0}.gallery-dialog figure{width:100vw;min-height:calc(100svh - 3.25rem);grid-column:1;grid-row:1;grid-template-rows:minmax(0,1fr) auto}.gallery-dialog figure img{width:100vw;height:calc(100svh - 7.25rem);max-height:none;object-fit:contain}.gallery-dialog figure figcaption{min-height:4rem;padding:.55rem 1rem .75rem}.gallery-dialog figure figcaption span{display:none}.gallery-dialog-arrow{position:absolute;top:50%;z-index:3;width:2.65rem;height:2.65rem;border-radius:50%;background:#030c0aad;transform:translateY(-50%)}.gallery-dialog-prev{left:.4rem}.gallery-dialog-next{right:.4rem}.gallery-dialog-close{top:.35rem;right:.4rem}.gallery-dialog-status{top:.9rem;left:.8rem}.info-cards,.wellness-teaser,.wellness-answer-grid,.wellness-card-large,.wellness-card-wide,.wellness-facts-layout,.wellness-day,.price-highlight .container{grid-template-columns:1fr}.wellness-teaser-image{min-height:23rem}.wellness-gallery,.family-water-heading,.family-water-grid{grid-template-columns:1fr}.wellness-card-large,.wellness-card-wide{grid-column:auto}.wellness-card-large img,.wellness-card-wide img{min-height:22rem;grid-column:auto}.wellness-card-wide>div{grid-column:auto;grid-row:auto}.price-highlight img{min-height:24rem;order:-1}.price-section-heading{display:grid}.price-detail-grid{grid-template-columns:1fr}.guide-hero-image img{height:32rem}.guide-facts{grid-template-columns:repeat(3,1fr)}.guide-stay,.guide-section-heading,.guide-hub-heading,.guide-research-grid{grid-template-columns:1fr}.guide-stay-image{min-height:25rem}.guide-card-grid,.guide-hub-grid,.guide-note .container{grid-template-columns:1fr}}@media(max-width:35rem){.included-list{grid-template-columns:1fr}.booking-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-child-ages,.booking-wellness-choice{grid-column:1 / -1}.booking-alternative-columns{grid-template-columns:1fr}.booking-alternative-card{align-items:center;flex-direction:row}.booking-result-copy .button{width:100%}.booking-result-copy .text-link{margin:1rem 0 0}.header-inner{min-height:4.6rem}.brand-mark{width:2.4rem;height:2.4rem}.hero{min-height:calc(100svh - 4.6rem)}.hero-actions{display:grid}.hero-actions .button{width:100%}.detail-facts{grid-template-columns:1fr}.field-full{grid-column:1 / -1}.footer-bottom{display:grid}.guide-hero-image img{height:25rem;min-height:0}.guide-facts,.guide-stay-copy>ul{grid-template-columns:1fr}.guide-stay-actions{display:grid}.guide-stay-actions .button{width:100%}}@media(max-width:52rem){.booking-hero{padding-block:1.25rem}.booking-hero-grid{gap:.75rem}.booking-hero .eyebrow{margin-bottom:.3rem;font-size:.7rem}.booking-hero h1{max-width:30ch;font-size:clamp(1.45rem,7vw,2rem);line-height:1.08}.booking-promise{padding:.7rem .8rem;border-radius:.75rem;font-size:.86rem;line-height:1.35}.booking-promise strong{display:inline;margin:0 .25rem 0 0}.booking-promise p{display:inline}.booking-search-section{padding-block:.7rem 1.25rem}.booking-shell,.booking-engine{gap:.65rem}.booking-search,.booking-results,.booking-request,.booking-alternatives{padding:.75rem;border-radius:.85rem}.booking-step-heading{gap:.55rem;margin-bottom:.55rem}.booking-step-heading>span{flex-basis:1.8rem;width:1.8rem;height:1.8rem;font-size:.78rem}.booking-step-heading .eyebrow{margin:0;font-size:.65rem}.booking-step-heading h2{font-size:1.08rem;line-height:1.15}.form-required-note{margin:-.15rem 0 .55rem;font-size:.72rem}.booking-fields,.form-grid{gap:.45rem}.booking-fields .field label,.booking-request .field label,.field label,.field legend{margin-bottom:.1rem;font-size:.74rem}.booking-fields input,.booking-fields select,.booking-request input,.booking-request select,.booking-request textarea,.field input,.field select,.field textarea{min-width:0;min-height:2.65rem;padding:.48rem .58rem;font-size:1rem}.booking-wellness-choice,.booking-child-ages{padding:.55rem .65rem}.booking-form-message{min-height:0;margin-top:.4rem}.booking-alternatives h3{margin:.55rem 0 .4rem;font-size:1.05rem}.booking-alternative-columns{gap:.55rem}.booking-alternative-card{gap:.45rem;padding:.45rem .5rem}.booking-alternative-card strong{font-size:.85rem}.booking-alternative-card .button,.booking-alternative-inquiry .button{min-height:2.35rem;padding:.45rem .6rem;font-size:.76rem;line-height:1.2}.booking-alternative-empty{font-size:.82rem}.booking-selection-summary,.booking-request-cancellation,.booking-request-deposit{padding:.6rem .7rem;font-size:.82rem}.booking-request .checkbox{padding:.45rem 0;font-size:.82rem}.inquiry-grid{gap:.8rem}.inquiry-intro h1{font-size:clamp(1.55rem,7vw,2.05rem);line-height:1.08}.inquiry-intro .lead{margin-top:.55rem;font-size:.95rem}.inquiry-intro .lead+p{margin-top:.4rem;font-size:.82rem}.inquiry-form{padding:.75rem;border-radius:.85rem}}.page-link-bar{border-block:1px solid var(--color-sand-200);background:var(--color-sand-50)}.page-link-bar>.container{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem 1.5rem;align-items:center;padding-block:.85rem}.page-link-bar-label{margin:0;color:var(--color-forest-800);font-size:.72rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.page-link-bar nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.page-link-bar a{display:grid;gap:.1rem;min-width:0;padding:.65rem .8rem;border:1px solid var(--color-sand-200);border-radius:.7rem;color:var(--color-ink);background:var(--color-white);text-decoration:none;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.page-link-bar a:hover,.page-link-bar a:focus-visible{border-color:var(--color-forest-700);box-shadow:0 8px 20px #11372b14;transform:translateY(-1px)}.page-link-bar a strong{color:var(--color-forest-900);font-size:.86rem}.page-link-bar a span{overflow:hidden;color:var(--color-muted);font-size:.74rem;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}@media(max-width:760px){.page-link-bar>.container{grid-template-columns:1fr;gap:.55rem;padding-block:.7rem}.page-link-bar nav{grid-template-columns:1fr;gap:.4rem}.page-link-bar a{padding:.58rem .7rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.booking-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.knowledge-hero{position:relative;display:grid;min-height:min(42rem,72vh);align-items:end;overflow:hidden;color:var(--color-white);background:var(--color-forest-900)}.knowledge-hero:after{position:absolute;inset:0;background:linear-gradient(90deg,#09221bd1,#09221b7a 55%,#09221b2e);content:""}.knowledge-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.knowledge-hero-copy{position:relative;z-index:1;padding-block:clamp(4rem,10vw,7rem)}.knowledge-hero-copy h1{max-width:18ch;margin:0;color:var(--color-white);font-size:clamp(2.3rem,6vw,5.4rem);line-height:.98}.knowledge-hero-copy .lead{max-width:56ch;margin-top:1.25rem;color:#ffffffe5}.knowledge-intro .feature-panel p{margin-bottom:0}.knowledge-visuals{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:.75rem;padding-block:0 4rem}.knowledge-visuals figure{position:relative;min-width:0;margin:0;overflow:hidden;border-radius:var(--radius-sm);background:var(--color-sand-100)}.knowledge-visuals img{width:100%;height:16rem;object-fit:cover}.knowledge-visuals figure:first-child img{height:20rem}.knowledge-visuals figcaption{position:absolute;right:.5rem;bottom:.5rem;padding:.25rem .45rem;border-radius:999px;color:var(--color-white);background:#081b16b8;font-size:.66rem}.knowledge-section-heading{max-width:60rem;margin-bottom:1.5rem}.knowledge-section-heading h2{max-width:24ch;margin:0}.knowledge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.knowledge-card{display:flex;flex-direction:column;min-width:0;padding:clamp(1.1rem,2.5vw,1.65rem);border:1px solid var(--color-sand-200);border-radius:var(--radius-sm);background:var(--color-white);box-shadow:0 12px 30px #11372b0f}.knowledge-card h3{margin:0;color:var(--color-forest-900)}.knowledge-card p{flex:1;color:var(--color-muted)}.knowledge-card .text-link{align-self:flex-start}@media(max-width:760px){.knowledge-hero{min-height:34rem}.knowledge-hero:after{background:linear-gradient(0deg,#09221be0,#09221b57)}.knowledge-visuals,.knowledge-grid{grid-template-columns:1fr}.knowledge-visuals img,.knowledge-visuals figure:first-child img{height:16rem}}.booking-security{padding:.85rem;border:1px solid #d8ded9;border-radius:10px;background:#f8faf8}.booking-security .form-note{margin:.45rem 0 0}.date-range-dialog{width:min(850px,calc(100vw - 2rem));max-width:none;max-height:calc(100vh - 2rem);padding:0;border:0;border-radius:var(--radius-md);color:var(--color-ink);background:transparent;box-shadow:0 28px 80px #10272047}.date-range-dialog::backdrop{background:#0c1f1a8a;backdrop-filter:blur(3px)}.date-range-shell{overflow:auto;max-height:calc(100vh - 2rem);padding:1rem;background:var(--color-white)}.date-range-shell>header,.date-range-shell>nav{display:flex;gap:1rem;align-items:center;justify-content:space-between}.date-range-shell>header{padding-bottom:.8rem;border-bottom:1px solid var(--color-sand-200)}.date-range-shell>header strong{font-family:var(--font-display);font-size:1.25rem}.date-range-shell>header p{margin:.15rem 0 0;color:var(--color-forest-800);font-size:.86rem;font-weight:750}.date-range-close,.date-range-shell>nav button{display:inline-grid;width:2.5rem;height:2.5rem;flex:0 0 auto;place-items:center;padding:0;border:1px solid var(--color-sand-200);border-radius:999px;color:var(--color-forest-900);background:var(--color-sand-50);cursor:pointer}.date-range-close{font-size:1.5rem}.date-range-shell>nav{padding:.7rem 0}.date-range-shell>nav span{font-size:.9rem;font-weight:800;text-align:center;text-transform:capitalize}.date-range-shell>nav button:disabled{cursor:not-allowed;opacity:.35}.date-range-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.date-range-month{padding:.7rem;border:1px solid var(--color-sand-200);border-radius:var(--radius-sm);background:var(--color-sand-50)}.date-range-month h3{margin:0 0 .6rem;font-size:1rem;text-align:center;text-transform:capitalize}.date-range-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem}.date-range-weekday{padding-block:.25rem;color:var(--color-muted);font-size:.68rem;font-weight:800;text-align:center;text-transform:uppercase}.date-range-grid button{min-width:0;aspect-ratio:1;padding:0;border:0;border-radius:8px;color:var(--color-ink);background:var(--color-white);font-weight:750;cursor:pointer}.date-range-grid button:hover:not(:disabled),.date-range-grid button:focus-visible{outline:2px solid var(--color-forest-700);outline-offset:1px}.date-range-grid button:disabled{color:#aeb6b2;background:transparent;cursor:not-allowed}.date-range-grid button.is-between{border-radius:0;background:#dceae5}.date-range-grid button.is-start,.date-range-grid button.is-end{color:var(--color-white);background:var(--color-forest-900)}@media(max-width:700px){.date-range-dialog{width:min(430px,calc(100vw - 1rem));max-height:calc(100vh - 1rem)}.date-range-shell{max-height:calc(100vh - 1rem);padding:.75rem}.date-range-months{grid-template-columns:1fr}}
