:root{
  --forest:#556B4D;--forest-dark:#344331;--forest-deep:#253327;--cream:#F6F1E8;--cream-2:#EFE7DA;--wood:#5A4636;--sand:#DCC8A4;--white:#FFFCF7;--ink:#2D302A;--muted:#6E7169;--line:rgba(90,70,54,.17);--danger:#8b3d34;--shadow:0 22px 60px rgba(43,49,39,.12);--shadow-sm:0 10px 28px rgba(43,49,39,.08);--radius:24px;--radius-sm:14px;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Lato",Arial,sans-serif;--container:min(1200px,calc(100vw - 40px));
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.02;color:var(--wood)}h1{font-size:clamp(3.2rem,8vw,7.4rem);letter-spacing:-.035em}h2{font-size:clamp(2.5rem,5vw,4.6rem);letter-spacing:-.025em;margin-bottom:24px}h3{font-size:1.75rem;margin-bottom:12px}.container{width:var(--container);margin-inline:auto}.narrow{max-width:850px}.section{padding:112px 0}.alt-bg{background:var(--cream-2)}.eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;color:var(--forest);font-size:.72rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.eyebrow:before{content:"";width:32px;height:1px;background:currentColor}.eyebrow.light{color:var(--cream)}.lead{font-size:1.23rem;line-height:1.75;color:#4d5149}.icon{width:22px;height:22px;flex:0 0 auto}.skip-link{position:fixed;z-index:9999;left:16px;top:-100px;background:var(--white);padding:12px 18px;border-radius:10px}.skip-link:focus{top:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:13px 22px;border:1px solid transparent;border-radius:999px;font-weight:800;line-height:1.2;transition:.25s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--forest);color:#fff;box-shadow:0 10px 24px rgba(85,107,77,.25)}.btn-primary:hover{background:var(--forest-dark)}.btn-secondary{background:transparent;border-color:var(--forest);color:var(--forest)}.btn-secondary:hover{background:var(--forest);color:#fff}.btn-ghost{color:#fff;border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.08);backdrop-filter:blur(10px)}.btn-ghost:hover{background:#fff;color:var(--forest)}.btn-cream{background:var(--cream);color:var(--forest-dark)}.btn-sm{min-height:42px;padding:10px 17px;font-size:.9rem}.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--forest);font-weight:800}.text-link .icon{width:18px;transition:.2s}.text-link:hover .icon{transform:translateX(4px)}.center-actions{text-align:center;margin-top:38px}.site-header{position:fixed;z-index:1000;inset:0 0 auto;background:rgba(246,241,232,.91);backdrop-filter:blur(18px);border-bottom:1px solid transparent;transition:.28s}.site-header.scrolled{border-color:var(--line);box-shadow:0 8px 30px rgba(38,49,38,.07)}.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between;transition:.28s}.site-header.scrolled .nav-wrap{height:72px}.brand,.footer-brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border:1px solid var(--forest);border-radius:50%;font-family:var(--serif);font-weight:700;color:var(--forest)}.brand strong,.footer-brand strong{display:block;font-family:var(--serif);font-size:1.35rem;line-height:.9}.brand small,.footer-brand small{display:block;font-size:.64rem;text-transform:uppercase;letter-spacing:.22em;color:var(--forest);margin-top:5px}.main-nav{display:flex;align-items:center;gap:24px;font-size:.91rem;font-weight:700}.main-nav>a:not(.btn){position:relative;padding:8px 0}.main-nav>a:not(.btn):after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--forest);transition:.2s}.main-nav>a:hover:after,.main-nav>a.active:after{right:0}.menu-toggle{display:none;border:0;background:none;padding:8px}.menu-toggle span{display:block;width:26px;height:2px;background:var(--forest-dark);margin:5px 0}.hero{position:relative;min-height:800px;height:100svh;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-media,.hero-media img,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-media img{object-fit:cover;animation:heroZoom 18s ease-in-out infinite alternate}.hero-shade{background:linear-gradient(90deg,rgba(23,30,24,.79) 0%,rgba(23,30,24,.48) 48%,rgba(23,30,24,.16) 100%),linear-gradient(0deg,rgba(23,30,24,.35),transparent 50%)}@keyframes heroZoom{to{transform:scale(1.035)}}.hero-content{position:relative;z-index:2;padding-top:80px}.hero h1{color:#fff;margin:0 0 8px;max-width:900px}.hero h1 em{font-weight:500}.hero-kicker{font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.3rem);margin-bottom:14px}.hero-text{max-width:650px;font-size:1.05rem;color:rgba(255,255,255,.88)}.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}.hero-scroll{position:absolute;z-index:2;bottom:42px;right:max(24px,calc((100vw - 1200px)/2));display:flex;align-items:center;gap:12px;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}.hero-scroll span{display:block;width:55px;height:1px;background:#fff}.booking-strip{position:relative;z-index:5;margin-top:-42px}.booking-bar{display:grid;grid-template-columns:1fr 1fr .85fr auto;align-items:end;gap:14px;background:var(--white);border-radius:22px;padding:18px;box-shadow:var(--shadow)}.booking-bar label,.panel-form label,.booking-wizard label{display:grid;gap:7px;font-weight:700}.booking-bar label span,.panel-form label>span,.booking-wizard label>span{font-size:.77rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}input,select,textarea{width:100%;border:1px solid rgba(85,107,77,.22);border-radius:12px;background:#fffdf9;color:var(--ink);padding:13px 14px;outline:none;transition:.2s}input:focus,select:focus,textarea:focus{border-color:var(--forest);box-shadow:0 0 0 4px rgba(85,107,77,.1)}textarea{resize:vertical}.highlights{padding-top:96px}.highlight-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.highlight-card{padding:28px 24px;border-top:1px solid var(--line)}.highlight-card h3{font-size:1.48rem}.highlight-card p{color:var(--muted);margin:0}.icon-box{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--cream-2);color:var(--forest);margin-bottom:20px}.split-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8vw}.split-layout.reverse> :first-child{order:2}.split-copy p{max-width:600px}.image-frame{margin:0;overflow:hidden;border-radius:var(--radius);background:var(--cream-2);box-shadow:var(--shadow-sm)}.image-frame img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.image-frame:hover img{transform:scale(1.025)}.image-frame figcaption{padding:10px 14px;font-size:.84rem;color:var(--muted)}.image-collage{position:relative;padding:24px 0 30px 45px}.image-collage .image-frame{aspect-ratio:4/5}.collage-note{position:absolute;left:0;bottom:0;background:var(--forest);color:#fff;padding:24px 30px;border-radius:18px;box-shadow:var(--shadow)}.collage-note span{display:block;font-size:.85rem}.collage-note strong{font-family:var(--serif);font-size:1.55rem}.section-heading{max-width:740px;margin-bottom:52px}.section-heading.center{text-align:center;margin-inline:auto}.section-heading.center .eyebrow{justify-content:center}.gallery-section{background:var(--white)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery-item{position:relative;border:0;padding:0;border-radius:18px;overflow:hidden;background:#ddd;aspect-ratio:4/3}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.45s}.gallery-item:hover img{transform:scale(1.045)}.gallery-item span{position:absolute;left:14px;bottom:14px;background:rgba(37,51,39,.74);color:#fff;border-radius:999px;padding:7px 12px;font-size:.78rem;backdrop-filter:blur(7px)}.gallery-preview{grid-template-columns:1.45fr .8fr .8fr;grid-template-rows:220px 220px}.gallery-preview .item-1{grid-row:1/3}.gallery-preview .gallery-item{aspect-ratio:auto}.wellness-teaser{padding:0;background:var(--forest-deep)}.teaser-grid{display:grid;grid-template-columns:1.2fr .8fr;min-height:680px;align-items:stretch}.teaser-media{margin-left:calc((100vw - min(1200px,calc(100vw - 40px)))/-2);min-width:0}.teaser-media .image-frame{border-radius:0;height:100%;box-shadow:none}.teaser-copy{padding:90px 0 90px 8vw;align-self:center;color:rgba(255,255,255,.8)}.teaser-copy h2{color:#fff}.teaser-copy p{max-width:480px;font-size:1.06rem}.split-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.experience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.experience-card{position:relative;aspect-ratio:4/5;border-radius:20px;overflow:hidden}.experience-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(24,31,25,.78),transparent 60%)}.experience-card img{width:100%;height:100%;object-fit:cover;transition:.5s}.experience-card:hover img{transform:scale(1.045)}.experience-card>span{position:absolute;z-index:1;left:20px;bottom:20px;color:#fff}.experience-card strong,.experience-card small{display:block}.experience-card strong{font-family:var(--serif);font-size:1.55rem}.testimonials{background:var(--cream-2)}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial-card{position:relative;background:var(--white);border-radius:22px;padding:30px;box-shadow:var(--shadow-sm)}.testimonial-card blockquote{font-family:var(--serif);font-size:1.35rem;line-height:1.45;margin:22px 0}.testimonial-card>div:last-child strong,.testimonial-card>div:last-child span{display:block}.testimonial-card>div:last-child span{font-size:.85rem;color:var(--muted)}.stars{display:flex;color:#9b7741}.stars .icon{width:17px;height:17px;fill:currentColor}.placeholder-badge,.placeholder-note{display:inline-block;background:#fff0c9;color:#745719;border-radius:999px;padding:5px 9px;font-size:.7rem;font-weight:800}.final-cta{background:var(--forest);color:#fff}.final-cta-inner{text-align:center;padding:45px 20px}.final-cta h2{color:#fff}.final-cta .hero-actions{justify-content:center}.site-footer{background:#1f2b21;color:rgba(255,255,255,.75);padding:75px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:45px}.footer-brand strong{color:#fff}.site-footer h3{color:#fff;font-family:var(--sans);font-size:.83rem;text-transform:uppercase;letter-spacing:.12em}.site-footer a:not(.footer-brand){display:block;margin:8px 0;font-size:.92rem}.site-footer a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12);margin-top:52px;padding-top:22px;font-size:.78rem}.mobile-booking{display:none}.page-hero{min-height:610px;padding:185px 0 110px;display:flex;align-items:flex-end;color:#fff;background:linear-gradient(90deg,rgba(30,41,31,.84),rgba(30,41,31,.28)),url('../img/hero-cabin.svg') center/cover}.page-hero.compact{min-height:500px;background:linear-gradient(90deg,rgba(30,41,31,.87),rgba(30,41,31,.35)),url('../img/interior.svg') center/cover}.page-hero.wellness-hero{background-image:linear-gradient(90deg,rgba(30,41,31,.87),rgba(30,41,31,.25)),url('../img/sauna.svg')}.page-hero.nature-hero{background-image:linear-gradient(90deg,rgba(30,41,31,.82),rgba(30,41,31,.2)),url('../img/forest-path.svg')}.page-hero.events-hero{background-image:linear-gradient(90deg,rgba(30,41,31,.84),rgba(30,41,31,.25)),url('../img/fireplace.svg')}.page-hero.booking-hero{background-image:linear-gradient(90deg,rgba(30,41,31,.86),rgba(30,41,31,.28)),url('../img/whirlpool.svg')}.page-hero.contact-hero{background-image:linear-gradient(90deg,rgba(30,41,31,.87),rgba(30,41,31,.25)),url('../img/table.svg')}.page-hero h1{color:#fff;font-size:clamp(3.4rem,7vw,6.4rem);max-width:900px;margin-bottom:18px}.page-hero p{max-width:720px;font-size:1.1rem;color:rgba(255,255,255,.86)}.house-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.house-intro-grid>.reveal:first-child{height:690px}.house-intro-grid .image-frame{height:100%}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;margin:26px 0}.feature-list span{display:flex;align-items:center;gap:10px}.feature-list .icon{color:var(--forest)}.special-note{margin-top:32px;border-left:3px solid var(--forest);padding:8px 0 8px 20px}.special-note span,.special-note strong{display:block}.special-note span{font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}.special-note strong{font-family:var(--serif);font-size:1.7rem}.amenity-categories{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.amenity-card{background:var(--white);padding:34px;border-radius:22px}.amenity-card ul{list-style:none;margin:0;padding:0}.amenity-card li{display:flex;gap:10px;border-top:1px solid var(--line);padding:11px 0}.amenity-card li .icon{width:18px;color:var(--forest)}.floorplan{background:var(--white)}.floorplan-placeholder{min-height:450px;border:1px dashed rgba(85,107,77,.45);border-radius:var(--radius);display:grid;place-items:center;align-content:center;text-align:center;padding:40px;background:var(--cream)}.floorplan-placeholder>span{display:grid;place-items:center;width:78px;height:78px;border-radius:50%;background:var(--cream-2);color:var(--forest)}.floorplan-placeholder .icon{width:34px;height:34px}.floorplan-placeholder strong{font-family:var(--serif);font-size:2rem;margin-top:18px}.floorplan-placeholder p{max-width:390px;color:var(--muted)}.editorial-stack{display:grid;gap:105px}.editorial-row{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:center}.editorial-row.reverse> :first-child{order:2}.editorial-row .image-frame{aspect-ratio:5/4}.editorial-copy p{font-size:1.1rem;max-width:520px}.privacy-location,.important-box{display:flex;align-items:flex-start;gap:20px;background:var(--forest);color:#fff;padding:28px;border-radius:20px;margin-bottom:80px}.privacy-location strong,.important-box h2{color:#fff}.privacy-location p,.important-box p{margin:3px 0 0;color:rgba(255,255,255,.8)}.privacy-location>.icon,.important-box>span .icon{width:34px;height:34px}.destination-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.destination-card{display:grid;grid-template-columns:220px 1fr;background:var(--white);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-sm)}.destination-card>img{width:100%;height:100%;object-fit:cover}.destination-card>div{padding:28px}.destination-card h3{font-size:1.6rem}.destination-card dl{display:flex;gap:30px;margin:20px 0}.destination-card dl div{display:grid}.destination-card dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.destination-card dd{margin:0;font-weight:700}.map-section{background:var(--cream-2)}.map-placeholder{min-height:410px;border-radius:var(--radius);background:linear-gradient(135deg,#d8dfd1,#edf0e7);display:grid;place-items:center;align-content:center;text-align:center;color:var(--forest-dark);overflow:hidden;position:relative}.map-placeholder:before,.map-placeholder:after{content:"";position:absolute;border:2px solid rgba(85,107,77,.2);border-radius:45%;width:75%;height:35%;transform:rotate(-12deg)}.map-placeholder:after{transform:rotate(29deg);width:45%;height:75%}.map-placeholder>*{z-index:1}.map-placeholder .icon{width:48px;height:48px}.event-types{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:70px}.event-types span{display:flex;align-items:center;gap:12px;padding:18px;background:var(--white);border-radius:14px;box-shadow:var(--shadow-sm);font-weight:700}.event-types .icon{color:var(--forest)}.important-box{background:var(--wood);align-items:center}.important-box h2{font-size:2.4rem;margin-bottom:8px}.form-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:7vw;align-items:start}.panel-form{background:var(--white);padding:38px;border-radius:var(--radius);box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.panel-form label{margin-bottom:17px}.radio-field{border:0;padding:0;margin:0 0 18px}.radio-field legend{font-size:.77rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700;margin-bottom:8px}.radio-field label{display:inline-flex;align-items:center;margin-right:22px}.radio-field input,.check-row input{width:auto}.check-row{grid-template-columns:auto 1fr!important;align-items:flex-start;gap:10px!important;text-transform:none!important}.check-row>span{font-size:.88rem!important;text-transform:none!important;letter-spacing:0!important;color:var(--ink)!important;font-weight:400}.check-row a{text-decoration:underline}.honeypot{position:absolute!important;left:-99999px!important}.form-message{margin-top:15px;border-radius:12px;font-weight:700}.form-message.success,.form-message.error{padding:12px 14px}.form-message.success{background:#e4efe1;color:#365233}.form-message.error{background:#f6dfdc;color:var(--danger)}.calm-list{padding-left:20px;color:var(--muted)}.price-hero-card{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;background:var(--forest);color:#fff;padding:42px;border-radius:var(--radius);align-items:center}.price-hero-card>div:first-child span,.price-hero-card>div:first-child small{display:block}.price-hero-card>div:first-child strong{display:block;font-family:var(--serif);font-size:4rem;line-height:1;margin:9px 0}.price-facts{display:grid;gap:13px}.price-facts span{display:flex;gap:12px;align-items:center}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:34px;align-items:start}.calendar-shell{background:var(--white);padding:25px;border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:28px}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.calendar-toolbar strong{font-family:var(--serif);font-size:1.5rem}.icon-button{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:transparent;font-size:1.6rem}.calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:30px}.calendar-month h3{text-align:center;font-family:var(--sans);font-size:1rem}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-weekdays span{text-align:center;font-size:.65rem;text-transform:uppercase;color:var(--muted);padding:4px}.calendar-day{position:relative;border:0;background:transparent;border-radius:10px;aspect-ratio:1;display:grid;place-items:center;font-size:.83rem}.calendar-day:not(:disabled):hover{background:var(--cream-2)}.calendar-day.other-month{opacity:.25}.calendar-day.past,.calendar-day:disabled{opacity:.32;cursor:not-allowed}.calendar-day.reserved{background:#eee3c9;color:#755b1f}.calendar-day.booked{background:#d8c5bf;color:#72453d}.calendar-day.blocked{background:#deded8;color:#62645e;text-decoration:line-through}.calendar-day.selected{background:var(--forest)!important;color:#fff}.calendar-day.in-range{background:#dfe7db}.calendar-day.no-arrival:before{content:"A";position:absolute;left:3px;top:2px;font-size:.48rem;font-weight:900;color:#865b22}.calendar-day.no-departure:after{content:"E";position:absolute;right:3px;top:2px;font-size:.48rem;font-weight:900;color:#7a3f38}.calendar-day.today:after{content:"";position:absolute;bottom:4px;width:4px;height:4px;border-radius:50%;background:var(--forest)}.calendar-legend{display:flex;flex-wrap:wrap;gap:12px 18px;border-top:1px solid var(--line);margin-top:18px;padding-top:17px;font-size:.75rem}.calendar-legend span{display:flex;align-items:center;gap:7px}.calendar-legend i{width:12px;height:12px;border-radius:3px;border:1px solid var(--line)}.calendar-legend .available{background:#fff}.calendar-legend .reserved{background:#eee3c9}.calendar-legend .booked{background:#d8c5bf}.calendar-legend .blocked{background:#deded8}.calendar-legend .no-arrival{background:linear-gradient(135deg,#fff 50%,#e6c792 50%)}.calendar-legend .no-departure{background:linear-gradient(135deg,#d8aea8 50%,#fff 50%)}.calendar-legend .selected{background:var(--forest)}.calendar-help{font-size:.85rem;color:var(--muted);margin:15px 0 0}.booking-wizard{background:var(--white);padding:30px;border-radius:var(--radius);box-shadow:var(--shadow-sm)}.wizard-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:35px}.wizard-progress span{display:flex;align-items:center;gap:7px;color:var(--muted);font-weight:800;border-bottom:2px solid var(--line);padding-bottom:11px}.wizard-progress span.active{color:var(--forest);border-color:var(--forest)}.wizard-progress small{font-weight:400}.wizard-step{display:none}.wizard-step.active{display:block}.wizard-step h3{font-size:2rem}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:22px}.selected-dates{padding:14px;border-radius:12px;background:var(--cream-2);margin:18px 0;color:var(--forest-dark);font-weight:700}.extras-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.extra-card{position:relative;border:1px solid var(--line);padding:22px;border-radius:16px;cursor:pointer}.extra-card input{position:absolute;opacity:0}.extra-card strong,.extra-card small{display:block}.extra-card small{color:var(--muted)}.extra-check{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--line);margin-bottom:18px}.extra-check .icon{width:16px}.extra-card:has(input:checked){border-color:var(--forest);background:#edf1ea}.extra-card:has(input:checked) .extra-check{background:var(--forest);color:#fff}.sticky-card{position:sticky;top:100px;background:var(--forest-deep);color:#fff;border-radius:var(--radius);padding:28px}.sticky-card .eyebrow{color:var(--sand)}.empty-quote{text-align:center;padding:35px 0;color:rgba(255,255,255,.7)}.empty-quote .icon{width:36px;height:36px}.quote-row{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(255,255,255,.13);padding:10px 0}.quote-row.total{font-family:var(--serif);font-size:1.5rem;border-bottom:0;padding-top:18px}.quote-note{background:rgba(255,255,255,.09);padding:12px;border-radius:10px;font-size:.8rem;margin-top:12px}.fineprint{font-size:.76rem;color:rgba(255,255,255,.55);margin:20px 0 0}.summary-card{background:var(--cream-2);padding:24px;border-radius:16px;margin-bottom:22px}.summary-card .quote-row{border-color:var(--line)}.summary-card .quote-row.total{color:var(--forest)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.process-grid article{border-top:1px solid var(--line);padding-top:24px}.process-grid article>span{font-family:var(--serif);font-size:2rem;color:var(--sand)}.faq-list{display:grid;gap:12px}.faq-item{background:var(--white);border-radius:16px;overflow:hidden}.faq-item>button{width:100%;border:0;background:transparent;display:flex;justify-content:space-between;gap:20px;text-align:left;padding:22px 24px;font-weight:800}.faq-item>button i{font-style:normal;font-size:1.4rem;color:var(--forest);transition:.2s}.faq-item.open>button i{transform:rotate(45deg)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s}.faq-answer>*{overflow:hidden}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-answer p{padding:0 24px 8px;margin:0;color:var(--muted)}.faq-answer .placeholder-note{margin:4px 24px 22px}.faq-contact{text-align:center;margin-top:70px;padding:50px;background:var(--cream-2);border-radius:var(--radius)}.contact-details{display:grid;gap:15px}.contact-card{display:flex;gap:15px;align-items:flex-start;border-top:1px solid var(--line);padding-top:18px}.contact-card>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--cream-2);color:var(--forest)}.contact-card small,.contact-card strong{display:block}.contact-card small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}.contact-card p{font-size:.8rem;color:var(--muted);margin:4px 0}.legal-warning{display:flex;gap:15px;background:#fff1cf;color:#664e19;padding:20px;border-radius:16px;margin-bottom:35px}.legal-content>p{white-space:normal;margin-bottom:28px}.lightbox{position:fixed;z-index:3000;inset:0;background:rgba(20,26,21,.94);display:grid;grid-template-columns:70px 1fr 70px;align-items:center;padding:40px}.lightbox[hidden]{display:none}.lightbox figure{margin:0;text-align:center}.lightbox img{max-height:82vh;margin:auto;border-radius:18px}.lightbox figcaption{color:#fff;margin-top:12px}.lightbox button{border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:50%;width:48px;height:48px;font-size:2rem}.lightbox-close{position:absolute;right:24px;top:24px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:1050px){.main-nav{gap:14px;font-size:.82rem}.nav-cta{display:none}.highlight-grid,.experience-grid{grid-template-columns:repeat(2,1fr)}.destination-card{grid-template-columns:170px 1fr}.booking-layout{grid-template-columns:1fr}.sticky-card{position:static}.booking-sidebar{order:-1}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}}
@media (max-width:820px){:root{--container:min(100% - 28px,680px)}body{padding-bottom:68px}.section{padding:78px 0}.nav-wrap{height:74px}.menu-toggle{display:block;z-index:2}.main-nav{position:fixed;inset:0;background:var(--cream);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:1.2rem;transform:translateX(100%);transition:.3s}.main-nav.open{transform:none}.main-nav .nav-cta{display:inline-flex}.hero{min-height:760px}.hero-content{padding-top:100px}.hero-scroll{display:none}.booking-strip{margin-top:-28px}.booking-bar{grid-template-columns:1fr 1fr}.booking-bar label:nth-of-type(3){grid-column:1/2}.booking-bar .btn{grid-column:2/3}.highlight-grid,.amenity-categories,.destination-grid,.process-grid{grid-template-columns:1fr 1fr}.split-layout,.house-intro-grid,.editorial-row,.form-layout,.price-hero-card{grid-template-columns:1fr}.split-layout.reverse> :first-child,.editorial-row.reverse> :first-child{order:0}.house-intro-grid>.reveal:first-child{height:480px}.gallery-preview{grid-template-columns:1fr 1fr;grid-template-rows:300px 180px 180px}.gallery-preview .item-1{grid-column:1/3;grid-row:1}.teaser-grid{grid-template-columns:1fr}.teaser-media{margin:0;width:100%;height:460px}.teaser-copy{padding:65px 20px}.experience-grid,.testimonial-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:auto}.page-hero{min-height:520px;padding:150px 0 75px}.editorial-stack{gap:70px}.destination-card{grid-template-columns:1fr}.destination-card>img{height:240px}.event-types{grid-template-columns:1fr 1fr}.calendar-months{grid-template-columns:1fr}.calendar-month:nth-child(2){display:none}.extras-grid{grid-template-columns:1fr}.form-layout{gap:45px}.mobile-booking{position:fixed;z-index:900;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:10px;background:rgba(246,241,232,.96);backdrop-filter:blur(14px);padding:10px max(12px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom));box-shadow:0 -8px 25px rgba(37,51,39,.1);font-size:.78rem;font-weight:800}.lightbox{grid-template-columns:45px 1fr 45px;padding:20px 5px}.lightbox button{width:40px;height:40px}}
@media (max-width:560px){h2{font-size:2.65rem}.hero h1{font-size:4rem}.hero-text{font-size:.95rem}.hero-actions{display:grid}.hero-actions .btn{width:100%}.booking-bar{grid-template-columns:1fr}.booking-bar label,.booking-bar label:nth-of-type(3),.booking-bar .btn{grid-column:1}.highlight-grid,.amenity-categories,.experience-grid,.testimonial-grid,.destination-grid,.process-grid,.event-types{grid-template-columns:1fr}.feature-list{grid-template-columns:1fr}.gallery-grid,.gallery-preview{grid-template-columns:1fr;grid-template-rows:none}.gallery-preview .item-1,.gallery-preview .gallery-item{grid-column:auto;grid-row:auto;aspect-ratio:4/3}.split-heading{display:block}.split-heading>.text-link{margin-top:-20px;margin-bottom:35px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{display:grid;gap:8px}.panel-form,.booking-wizard{padding:22px}.form-grid{grid-template-columns:1fr}.price-hero-card{padding:28px;gap:30px}.price-hero-card>div:first-child strong{font-size:3.1rem}.wizard-progress span{font-size:0}.wizard-progress small{font-size:.7rem}.wizard-actions{display:grid}.wizard-actions .btn{width:100%}.calendar-shell{padding:16px}.faq-contact{padding:35px 20px}.page-hero h1{font-size:3.4rem}.mobile-booking span{max-width:125px}.mobile-booking .btn{font-size:.74rem;padding:9px 12px}.image-collage{padding-left:0}.collage-note{position:relative;margin:-40px 16px 0}.house-intro-grid>.reveal:first-child{height:390px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
