/* Gartenservice Grotz — a quiet, regional visual identity. No external fonts or motion dependencies. */
:root{--forest:#183d2e;--deep:#102b21;--cream:#f5f4ee;--paper:#fdfcf7;--sage:#9cae8b;--ink:#20392d;--muted:#6c786d;--line:#d9ddd2;--ease:cubic-bezier(.22,1,.36,1)}
html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;overflow-x:clip;-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit}a,button{-webkit-tap-highlight-color:transparent}button{font-size:13px;line-height:1.35;min-height:46px;transition:background .35s,transform .55s var(--ease),box-shadow .55s var(--ease);background:var(--forest);font-weight:600;padding:16px 25px;letter-spacing:.01em}button:not(:disabled):hover{background:#2c5940;transform:translateY(-2px);box-shadow:0 9px 24px #183d2e18}button:active{transform:scale(.98)}button:disabled{cursor:not-allowed;opacity:.5}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #90ad68;outline-offset:5px}input:focus,select:focus,textarea:focus{outline:2px solid #71916b;outline-offset:3px}::selection{background:#d2dfa7;color:#183d2e}.arrow{display:inline-block;margin-left:20px;font-size:20px;line-height:1;transition:transform .5s var(--ease)}button:hover .arrow,a:hover .arrow{transform:translate(3px,-3px)}.skip-link{position:fixed;top:8px;left:20px;z-index:100;background:var(--paper);padding:12px;transform:translateY(-150%)}.skip-link:focus{transform:none}.eyebrow{display:block;font-size:10px;letter-spacing:.16em;font-weight:700;color:var(--forest);line-height:1.7}h2{font-size:clamp(44px,5.8vw,84px);line-height:1.04;letter-spacing:-.055em;font-weight:500;margin:22px 0 28px}.muted{color:#82917e}p{line-height:1.7}.home section{padding:112px 6vw;scroll-margin-top:0}.site-header{height:88px;padding:0 4vw;gap:25px;background:var(--cream);position:sticky;z-index:50;top:0;display:flex;transition:height .5s var(--ease),background .4s,box-shadow .4s}.site-header.scrolled{height:72px;background:rgba(245,244,238,.94);backdrop-filter:blur(18px);box-shadow:0 1px #183d2e12}.brand-link{display:inline-flex;flex-shrink:0;align-items:center}.brand-link img{width:172px;height:61px;object-fit:contain;mix-blend-mode:multiply}.desktop-nav{display:flex;gap:25px;align-items:center;margin-left:auto}.desktop-nav a{font-size:12px;position:relative;padding:8px 0}.desktop-nav a:after,.text-link:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}.desktop-nav a:hover:after,.desktop-nav a.active:after,.text-link:hover:after{transform:scaleX(1)}.header-actions{display:flex;gap:12px;align-items:center}.site-header .account-btn{padding:12px 0;background:transparent!important;border:0!important;margin:0 10px 0 0;color:var(--forest)!important;font-size:12px;box-shadow:none}.book-btn{white-space:nowrap;padding:13px 19px}.book-btn .arrow{margin-left:12px;font-size:17px}.menu-toggle{display:none}.scroll-progress{position:absolute;bottom:0;left:0;height:2px;width:100%;background:#8fa576;transform:scaleX(var(--page-progress,0));transform-origin:left;pointer-events:none}.mobile-menu{display:none}
.home .hero{margin:0 20px;min-height:740px;height:calc(100svh - 108px);max-height:1100px;padding:clamp(60px,8vh,100px) calc(6vw - 20px) 105px;position:relative;isolation:isolate;overflow:hidden;border-radius:5px 5px 0 0;color:var(--paper);display:flex;align-items:center;background:var(--deep)}.hero-media,.hero-shade{position:absolute;inset:0;z-index:-2}.hero-media{transform:translate3d(0,var(--hero-y,0px),0) scale(var(--hero-scale,1.025));will-change:transform}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 58%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(8,25,15,.6),rgba(8,25,15,.16) 80%),linear-gradient(0deg,#0a241bcc,transparent 30%)}.hero-copy{position:relative;z-index:3;max-width:1040px;transform:translateY(var(--copy-y,0px))}.hero-eyebrow{font-size:10px;letter-spacing:.19em;font-weight:600;display:flex;align-items:center;gap:12px;text-transform:uppercase}.live-dot{width:6px;height:6px;background:#c5d79a;border-radius:50%;box-shadow:0 0 0 5px #c5d79a17}.hero h1{font-size:clamp(67px,7.9vw,122px);line-height:.98;letter-spacing:-.065em;font-weight:500;margin:32px 0 25px}.title-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}.title-line>span{display:block;animation:title-enter 1.25s var(--ease) both}.title-line:nth-child(2)>span{animation-delay:.13s}.title-line:nth-child(3)>span{animation-delay:.26s}.title-line.accent{color:#dce5c3}.hero-copy>p{font-size:15px;line-height:1.7;color:#eeeee4;margin-top:25px;animation:soft-enter 1s .4s both}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:30px;animation:soft-enter 1s .55s both}.hero .hero-actions button{margin:0;padding:18px 23px}.button-light{background:var(--cream);color:var(--forest)}.button-light:not(:disabled):hover{background:#e1e8ce}.hero-discover{font-size:12px;color:white;display:flex;align-items:center;gap:14px;padding:15px 0}.hero-discover span{transition:transform .5s var(--ease)}.hero-discover:hover span{transform:translateY(4px)}.hero-bottom{position:absolute;bottom:32px;left:calc(6vw - 20px);right:calc(6vw - 20px);display:flex;justify-content:space-between;align-items:end;font-size:9px;line-height:1.6;letter-spacing:.12em;z-index:4}.hero-bottom>span:last-child{text-align:right}.scroll-cue{display:flex;align-items:center;gap:14px}.scroll-cue>span{display:block;width:22px;height:34px;border:1px solid #ffffff60;border-radius:30px;position:relative}.scroll-cue>span:after{content:'';position:absolute;top:7px;left:9px;width:2px;height:7px;background:#dce5c3;animation:scroll-dot 2.3s ease-in-out infinite}.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);margin:0 20px;padding:27px 4vw;background:#e9ecdf;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.025em}.trust-strip>span{text-align:center}.trust-strip>span+span{border-left:1px solid #bdc6b6}.trust-strip i{font-style:normal;color:#71806a;margin-right:15px;font-size:10px}
.hero-leaves{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}.hero-leaf{position:absolute;top:-12%;left:var(--left);width:var(--size);height:calc(var(--size)*.5);border-radius:95% 0 95% 0;background:linear-gradient(140deg,#cad594,#819953 45%,#3f6639);opacity:0;filter:drop-shadow(0 4px 6px #071c1740);animation:leaf-wind var(--duration) var(--delay) infinite cubic-bezier(.37,0,.57,1);transform-origin:80% 30%}.hero-leaf:after{content:'';position:absolute;left:12%;top:50%;width:90%;height:1px;background:#e1e1ad70;transform:rotate(-23deg)}.hero-leaf:nth-child(1){--left:2%;--size:23px;--duration:19s;--delay:-5s}.hero-leaf:nth-child(2){--left:88%;--size:40px;--duration:23s;--delay:-15s;filter:blur(.7px)}.hero-leaf:nth-child(3){--left:65%;--size:15px;--duration:26s;--delay:-8s}.hero-leaf:nth-child(4){--left:96%;--size:27px;--duration:17s;--delay:-4s}.hero-leaf:nth-child(5){--left:42%;--size:18px;--duration:28s;--delay:-21s}.hero-leaf:nth-child(6){--left:78%;--size:21px;--duration:21s;--delay:-12s}.hero-leaf:nth-child(7){--left:12%;--size:12px;--duration:31s;--delay:-24s}.hero-leaf:nth-child(8){--left:93%;--size:35px;--duration:25s;--delay:-18s}.hero:not(.motion-visible) .hero-leaf{animation-play-state:paused}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:58px}.section-head h2{margin-bottom:0}.section-head>p{max-width:340px;font-size:14px;color:var(--muted);margin-bottom:5px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:90px 5vw;align-items:start}.cards .service-card{border:0;border-radius:0;padding:0;overflow:visible;background:transparent}.service-card:nth-child(2){margin-top:155px}.service-card:nth-child(3){margin-top:-120px}.service-image{position:relative;display:block;width:100%;padding:0;min-height:0;aspect-ratio:3/2;overflow:hidden;border-radius:4px;background:#d8dfcc;isolation:isolate;box-shadow:none!important;transform:none!important;cursor:pointer}.image-scene{display:block;position:absolute;inset:0;transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0) scale(1.018);transition:transform 1.35s var(--ease);will-change:auto}.service-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.image-background{transition:filter 1.3s var(--ease)}.image-subject{mask-image:var(--subject-mask);mask-mode:luminance;mask-repeat:no-repeat;mask-size:100% 100%;-webkit-mask-image:var(--subject-mask);-webkit-mask-repeat:no-repeat;-webkit-mask-size:100% 100%}.service-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#102b2155,transparent 36%);pointer-events:none}.service-image:is(:hover,:focus-visible,.is-focused) .image-scene{transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0) scale(1.055)}.service-image:is(:hover,:focus-visible,.is-focused) .image-background{filter:blur(4px) saturate(.93)}.image-number{position:absolute;top:20px;left:22px;color:white;z-index:2;font-size:11px;letter-spacing:.08em;text-shadow:0 1px 6px #000}.image-action{position:absolute;right:18px;bottom:18px;width:42px;height:42px;border-radius:50%;background:#f5f4eee8;color:var(--forest);display:grid;place-items:center;font-size:23px;z-index:2;transition:transform .7s var(--ease),background .7s}.service-image:hover .image-action{transform:rotate(45deg);background:white}.image-tag{position:absolute;left:22px;bottom:30px;color:white;z-index:2;font-size:9px;font-weight:500;letter-spacing:.13em}.cards .service-caption h3{font-size:clamp(27px,3vw,43px);font-weight:500;letter-spacing:-.045em;margin:24px 0 12px}.cards .service-caption p{margin:0;color:var(--muted);font-size:14px;max-width:360px}.cards .service-caption button{margin:22px 0 0;background:transparent;color:var(--forest);border-top:1px solid var(--line);border-radius:0;display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;padding:17px 0 0;box-shadow:none;transform:none}.service-link span{font-size:21px;transition:transform .45s var(--ease)}.service-link:hover span{transform:translate(4px,-4px)}.service-aside{padding:10px 6vw 0;align-self:center}.leaf-mark{font-size:67px;color:#92a27e}.service-aside p{font-size:clamp(28px,3.2vw,45px);line-height:1.2;letter-spacing:-.045em;margin:15px 0 30px}.service-aside p>span{color:#8b9882}.text-link{position:relative;display:inline-block;padding-bottom:8px;font-size:12px;border-bottom:1px solid var(--line)}.text-link span{margin-left:30px}
.home .area-section{background:var(--deep);color:var(--cream);position:relative;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding-top:130px;padding-bottom:130px;isolation:isolate}.area-section:before{content:'';position:absolute;left:6vw;right:6vw;top:0;height:1px;background:#ffffff30}.area-photo{position:absolute;inset:0;z-index:-2;opacity:.1;transform:translateY(var(--area-y,0px)) scale(1.15)}.area-photo img{width:100%;height:100%;object-fit:cover}.area-section:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#102b21,transparent 90%)}.area-content .eyebrow{color:#b3c79d}.area-content h2{font-size:clamp(43px,4.5vw,68px);line-height:1.06;letter-spacing:-.055em}.area-content h2 span{color:#aabf94}.area-content p{font-size:15px;max-width:480px;color:#d4ddd1}.area-content .area-secondary{font-size:13px;color:#acb9aa;margin:20px 0 30px}.area-art{position:relative;align-self:center;aspect-ratio:1;display:grid;place-items:center;max-width:550px;width:100%;justify-self:center}.orbit{position:absolute;border:1px solid #c2d5a623;border-radius:50%;inset:0;transform:scale(var(--orbit-scale,1))}.orbit-two{inset:12%}.orbit-three{inset:25%}.orbit-one:after{content:'';position:absolute;top:19%;right:9%;width:6px;height:6px;border-radius:50%;background:#b5cb93;box-shadow:0 0 0 6px #b5cb9310}.radius-badge{text-align:center;display:block;position:relative;transform:translateY(-6%)}.radius-badge strong{display:block;font-size:clamp(100px,13vw,190px);font-weight:400;letter-spacing:-.09em;line-height:1.05;font-variant-numeric:tabular-nums}.radius-badge>span{display:block;font-size:8px;line-height:1.7;letter-spacing:.15em;color:#aebe9e}.town{position:absolute;font-size:11px;display:flex;align-items:center;gap:8px;background:#18352ade;padding:8px;border-radius:30px}.town i{width:4px;height:4px;background:#d3dfb0;border-radius:50%}.town-one{left:0;top:43%}.town-two{right:-3%;top:36%}.town-center{bottom:18%;left:37%}.region-label{position:absolute;bottom:-20px;font-size:8px;letter-spacing:.2em;color:#aebe9e}
.home .steps-section{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding-top:140px;padding-bottom:140px}.steps-intro{align-self:start;position:sticky;top:120px}.steps-intro>p{font-size:14px;color:var(--muted);margin-bottom:27px}.step{display:flex;gap:24px;border-top:1px solid var(--line);padding:40px 0 65px;position:relative}.step:before{content:'';position:absolute;top:-1px;left:0;height:1px;background:var(--forest);width:100%;transform:scaleX(0);transform-origin:left;transition:transform 1.5s var(--ease)}.step.in-view:before{transform:scaleX(1)}.step-number{font-size:11px;padding-top:8px;color:#8b9980}.step h3{font-weight:500;font-size:28px;letter-spacing:-.04em;margin:0 0 15px}.step p{font-size:14px;color:var(--muted);margin:0;max-width:280px}.step-arrow{margin-left:auto;color:#879a7d;font-size:24px}.step:last-child{padding-bottom:30px}.home .faq-section{max-width:none;margin:0 6vw;padding:80px 0 110px;display:grid;grid-template-columns:1fr 1.4fr;gap:8vw;border-top:1px solid var(--line)}.faq-list{gap:0;margin:0}.faq-list details{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:24px 0;background:transparent}.faq-list summary{list-style:none;font-size:15px;font-weight:500;cursor:pointer;position:relative;padding-right:38px;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:3px;top:0;font-size:24px;line-height:1;transition:transform .45s var(--ease);color:#728366}.faq-list details[open] summary:after{transform:rotate(45deg)}.faq-list details p{font-size:13px;line-height:1.8;margin:18px 40px 0 0;color:var(--muted);animation:soft-enter .45s var(--ease)}.home .contact-section{margin:0 20px;max-width:none;background:#e3e8d7;text-align:left;padding:58px calc(6vw - 20px) 62px;position:relative;isolation:isolate;overflow:hidden}.contact-top{display:flex;align-items:center;justify-content:space-between}.contact-top>span{font-size:9px;letter-spacing:.15em;color:#7a8a6d}.contact-section h2{font-size:clamp(58px,8.5vw,125px);margin:55px 0;max-width:80%;position:relative;z-index:1}.contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #bdc8b1;padding-top:30px}.contact-bottom p{font-size:13px;margin:0;color:#62745b}.contact-link{font-size:clamp(14px,2vw,25px);font-weight:400;letter-spacing:-.02em;margin:0;color:var(--forest);overflow-wrap:anywhere}.contact-link>span{display:inline-block;margin-left:28px;transition:transform .5s var(--ease)}.contact-link:hover>span{transform:translate(5px,-5px)}.contact-leaf{position:absolute;right:2%;top:20%;width:240px;height:380px;border:1px solid #9cac8350;border-radius:100% 0 100% 0;transform:rotate(25deg);z-index:-1}.contact-leaf:after{content:'';position:absolute;width:1px;height:110%;background:#9cac8350;left:50%;top:-5%;transform:rotate(28deg)}
.site-footer{display:block;background:var(--cream);color:var(--forest);padding:55px 6vw 25px}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-bottom:50px}.site-footer img{background:transparent;border-radius:0}.site-footer p{font-size:12px;color:var(--muted)}.back-to-top{font-size:11px}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:9px;color:#78816e}.site-footer .legal-nav{display:flex;margin:0;gap:22px}.legal-nav a{font-weight:400;text-decoration:none;font-size:10px}.legal-nav a:hover{text-decoration:underline}
/* Dialogs stay usable without animation and without JS enhancement. */
#modal{display:flex;opacity:0;visibility:hidden;pointer-events:none;z-index:80;background:#102b217d;backdrop-filter:blur(12px);transition:opacity .35s,visibility .35s;padding:4vh 20px}#modal.on{opacity:1;visibility:visible;pointer-events:auto}.box,.account-modal .account-flow{border-radius:18px;background:var(--paper);padding:45px;max-height:92dvh;border:1px solid #ffffff70;box-shadow:0 35px 110px #081c2140}.box{width:min(760px,100%);transform:translateY(24px) scale(.985);transition:transform .5s var(--ease)}#modal.on .box{transform:none}.box h2{font-weight:500;letter-spacing:-.045em;font-size:38px;line-height:1.1}.x{width:44px;height:44px;min-height:44px;padding:0;color:var(--forest);z-index:1;background:transparent;border-radius:50%}.x:hover{background:#e9eede!important}.prog{color:#7c8972;font-size:10px;padding-bottom:20px;margin:10px 30px 30px 0;line-height:1.8}.field label{font-size:12px;font-weight:600;color:#52624c}.field input,.field select{background:#fff;border-color:#d4dacd;padding:15px;border-radius:7px;color:var(--ink);transition:border-color .3s}.choices{gap:9px}.choices button{border-radius:8px;font-size:12px;min-height:49px;padding:12px;background:#eef0e7}.choices button.sel{background:#e0e8d7;border-color:var(--forest)}.price{background:#e9efdf;border-radius:9px;padding:20px;gap:20px;position:sticky;bottom:0;box-shadow:0 -8px 30px #fdfcf7dc;z-index:2}.price>div{font-size:10px;letter-spacing:.08em}.price strong{font-size:28px;letter-spacing:-.04em;line-height:1.3;display:block}.account-modal{z-index:90;background:#102b217d;backdrop-filter:blur(12px)}.account-modal.on .account-flow{animation:dialog-enter .45s var(--ease)}.account-modal #accountBody h2{font-weight:500;font-size:40px;line-height:1.1}.account-flow a:not(.button){text-decoration:underline;text-underline-offset:3px}.box p,.account-flow p{font-size:14px}.box .hint{font-size:12px;color:var(--muted)}.box .hint a{text-decoration:underline}.account-flow .account-section{padding:0}.legal-checks label{font-size:12px}.back{background:#e8ecdf;color:var(--forest)}.calendar button{border-radius:7px}.day.selected{outline:2px solid var(--forest);outline-offset:1px}.times{grid-template-columns:repeat(3,minmax(0,1fr))}.times button{min-width:0;padding:12px 5px}.booking-legal-summary{padding:20px;background:#edf0e4;border-radius:10px}.body-locked{overflow:hidden}.legal-header{position:relative;background:var(--cream);height:95px;padding:12px 6vw;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.legal-page{max-width:980px;padding:75px 40px 120px;line-height:1.85;overflow-wrap:anywhere}.legal-back{font-size:12px;text-decoration:none!important;color:#708464;margin-bottom:20px}.legal-page h1{font-weight:500;font-size:clamp(35px,5.5vw,72px);letter-spacing:-.05em;line-height:1.08;margin:30px 0 60px;hyphens:auto}.legal-page h2{font-size:25px;font-weight:500;letter-spacing:-.025em;margin:45px 0 15px;padding-top:25px;border-top:1px solid var(--line)}.legal-page p,.legal-page li{font-size:14px}.legal-page small{font-size:10px}.legal-body .site-footer{background:#e8ecdf}.reset-page main{background:linear-gradient(100deg,#183d2ed9,#183d2e80),url('assets/hero-premium.webp') center/cover!important}.reset-page main>section{background:var(--paper)!important;padding:45px!important;box-shadow:0 25px 100px #071a2950!important}.reset-page h1{font-size:36px;letter-spacing:-.05em;font-weight:500}.reset-page p{font-size:14px}
/* Progressive enhancement: content is visible if scripting is unavailable. */
.motion-ready .reveal{opacity:0;transform:translateY(35px);transition:opacity 1s var(--ease),transform 1.15s var(--ease)}.motion-ready .reveal.in-view{opacity:1;transform:none}.motion-ready .title-reveal{clip-path:inset(0 0 100% 0);transform:translateY(18px);transition:clip-path 1.25s var(--ease),opacity .7s,transform 1.25s var(--ease)}.motion-ready .title-reveal.in-view{clip-path:inset(-5% -3% -5% -3%);transform:none}.motion-ready .service-card .service-image{clip-path:inset(0 0 18% 0);transition:clip-path 1.4s var(--ease)}.motion-ready .service-card.in-view .service-image{clip-path:inset(0)}
@keyframes title-enter{from{transform:translateY(112%)}to{transform:none}}@keyframes soft-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes dialog-enter{from{opacity:0;transform:translateY(20px) scale(.985)}to{opacity:1;transform:none}}@keyframes scroll-dot{0%,100%{transform:translateY(0);opacity:.3}50%{transform:translateY(10px);opacity:1}}@keyframes leaf-wind{0%{transform:translate3d(0,-50px,0) rotate(5deg) rotateY(0);opacity:0}12%{opacity:.65}30%{transform:translate3d(-70px,26vh,0) rotate(100deg) rotateY(45deg)}55%{transform:translate3d(25px,53vh,0) rotate(195deg) rotateY(-30deg)}78%{transform:translate3d(-45px,80vh,0) rotate(290deg) rotateY(50deg);opacity:.55}100%{transform:translate3d(50px,115vh,0) rotate(400deg) rotateY(0);opacity:0}}
@media(min-width:1700px){.home section{padding-left:max(6vw,calc((100vw - 1480px)/2));padding-right:max(6vw,calc((100vw - 1480px)/2))}.hero-bottom{left:max(6vw,calc((100vw - 1480px)/2));right:max(6vw,calc((100vw - 1480px)/2))}}
@media(max-width:1150px){.desktop-nav{gap:15px}.desktop-nav a{font-size:11px}.brand-link img{width:145px}.site-header{gap:20px;padding:0 3vw}.header-actions{gap:5px}.book-btn{padding:12px 15px}.hero h1{font-size:9vw}.home .hero{min-height:650px}.service-aside{padding:0 3vw}}
@media(max-width:950px){.desktop-nav{display:none}.header-actions{margin-left:auto;gap:15px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;min-height:42px;padding:0;background:transparent;color:var(--forest);box-shadow:none!important}.menu-toggle:hover{background:transparent!important}.menu-toggle span{height:1px;width:22px;background:currentColor;transition:transform .4s var(--ease)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.mobile-menu{display:flex;position:fixed;inset:72px 0 0;margin:0;background:var(--cream);z-index:45;padding:55px 7vw;flex-direction:column;justify-content:center;gap:24px;visibility:hidden;opacity:0;transform:translateY(-15px);transition:opacity .4s,transform .6s var(--ease),visibility .4s}.mobile-menu.open{visibility:visible;opacity:1;transform:none}.mobile-menu a{font-size:clamp(25px,6vw,44px);letter-spacing:-.035em}.menu-note{font-size:9px;letter-spacing:.12em;color:var(--muted);margin-top:25px;text-transform:uppercase}.site-header,.site-header.scrolled{height:72px}.home .hero{height:calc(100svh - 92px);min-height:650px}.hero h1{font-size:10.1vw}.home .area-section{gap:3vw}.home .steps-section{gap:5vw}.step{gap:15px}.step h3{font-size:24px}.contact-bottom{align-items:flex-start;flex-direction:column;gap:20px}.footer-bottom{align-items:flex-start;flex-direction:column}.site-footer .legal-nav{gap:15px;flex-wrap:wrap}}
@media(max-width:700px){html{scroll-padding-top:72px}.home section{padding:76px 22px}.site-header{padding:0 18px;gap:10px}.brand-link img{width:135px;height:54px}.site-header .account-btn{font-size:11px;padding:9px 0!important;min-height:40px;margin:0}.header-actions{gap:12px}.site-header .book-btn{display:none}.home .hero{margin:0 10px;padding:58px 18px 110px;min-height:690px;height:calc(100svh - 82px);max-height:850px;border-radius:3px 3px 0 0;align-items:center}.hero-media img{object-position:63% center}.hero-shade{background:linear-gradient(90deg,#0b251b9e,#0b251b30),linear-gradient(0deg,#0b251bbb,transparent 60%)}.hero-eyebrow{font-size:8px;letter-spacing:.14em}.hero h1{font-size:clamp(41px,10.8vw,76px);line-height:1.06;letter-spacing:-.062em;margin:28px 0 25px}.hero-copy>p{font-size:14px;line-height:1.65;max-width:300px}.desktop-break{display:none}.hero-actions{align-items:flex-start;flex-direction:column;gap:7px;margin-top:27px}.hero .hero-actions button{padding:17px 19px;font-size:11px}.hero-actions .arrow{margin-left:12px;font-size:18px}.hero-discover{font-size:11px}.hero-bottom{left:18px;right:18px;bottom:27px;font-size:7px;letter-spacing:.08em}.hero-bottom .scroll-cue{display:none}.hero-leaf:nth-child(even){display:none}.trust-strip{margin:0 10px;padding:21px 8px;font-size:9px;line-height:1.5;gap:4px}.trust-strip i{display:block;margin:0 0 5px;font-size:8px}.section-head{display:block;margin-bottom:34px}.section-head>p{font-size:13px;margin-top:25px;max-width:320px}h2{font-size:49px;letter-spacing:-.055em}.eyebrow{font-size:8px}.cards{grid-template-columns:1fr;gap:44px}.service-card:nth-child(2),.service-card:nth-child(3){margin:0}.cards .service-caption h3{font-size:31px;margin:21px 0 9px}.cards .service-caption p{font-size:13px}.cards .service-caption button{font-size:12px;margin-top:15px}.service-image{aspect-ratio:3/2}.service-aside{padding:15px 0 0;display:grid;grid-template-columns:45px 1fr;gap:0 18px}.leaf-mark{font-size:45px;grid-row:1/3}.service-aside p{font-size:30px;margin:0 0 20px}.service-aside p br{display:none}.service-aside p span:before{content:' '}.service-aside .text-link{justify-self:start}.image-tag{font-size:7px;left:17px;bottom:25px}.image-number{top:15px;left:17px}.image-action{width:35px;height:35px;right:14px;bottom:14px;font-size:20px}.home .area-section{grid-template-columns:1fr;gap:30px;padding:75px 24px 85px}.area-content h2{font-size:44px}.area-content p{font-size:14px}.area-content .area-secondary{font-size:12px}.area-art{max-width:360px;width:90%}.radius-badge strong{font-size:125px}.town{font-size:9px;padding:7px}.town-two{right:-7%}.town-one{left:-9%}.region-label{font-size:7px}.home .steps-section{display:block;padding:76px 22px}.steps-intro{position:static}.steps-intro>p{font-size:13px}.steps-intro>button{margin-bottom:42px}.step{padding:26px 0 40px;gap:17px}.step h3{font-size:25px}.step p{font-size:13px;max-width:260px}.step:last-child{padding-bottom:0}.home .faq-section{display:block;margin:0 22px;padding:60px 0 70px}.faq-heading h2{margin:20px 0 30px}.faq-heading h2 br{display:none}.faq-heading h2 .muted:before{content:' '}.faq-list details{padding:22px 0}.faq-list summary{font-size:14px}.faq-list details p{font-size:12px;margin-right:20px}.home .contact-section{margin:0 10px;padding:35px 18px 38px}.contact-top>span{display:none}.contact-section h2{font-size:clamp(44px,11.5vw,70px);margin:38px 0;max-width:100%}.contact-link{font-size:clamp(13px,3.7vw,23px)}.contact-link>span{margin-left:8px}.contact-bottom{gap:15px;padding-top:23px}.contact-bottom p{font-size:11px}.contact-leaf{width:120px;height:200px;opacity:.5}.site-footer{padding:35px 22px 25px}.footer-main{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding-bottom:30px}.footer-main .brand-link{grid-column:1/-1}.footer-main p{font-size:10px}.back-to-top{font-size:10px;text-align:right}.footer-bottom{gap:20px;line-height:1.5;font-size:9px}.site-footer .legal-nav{display:flex;gap:15px 20px}.legal-nav a{font-size:9px}.box,.account-modal .account-flow{padding:32px 21px 24px;max-height:94dvh;border-radius:14px}.box h2,.account-modal #accountBody h2{font-size:31px}#modal{padding:3dvh 10px}.prog{font-size:9px;margin-right:25px;padding-top:10px;white-space:normal}.choices{grid-template-columns:repeat(2,minmax(0,1fr))}.price{padding:14px;gap:10px}.price strong{font-size:22px}.price button{font-size:11px;padding:12px 15px}.legal-header{padding:10px 22px;height:76px}.legal-page{padding:42px 22px 70px}.legal-page h1{font-size:37px;margin-bottom:40px}.legal-page h2{font-size:24px;line-height:1.2}.legal-page p,.legal-page li{font-size:13px}.legal-header .text-link{font-size:10px}.reset-page main{padding:16px!important}.reset-page main>section{padding:30px 22px!important}.reset-page h1{font-size:31px}.account-grid{grid-template-columns:1fr}.account-section .section-title{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal,.motion-ready .reveal{opacity:1!important;transform:none!important;clip-path:none!important}.hero-media,.hero-copy,.area-photo,.image-scene,.orbit{transform:none!important}.image-background{filter:none!important}.hero-leaves,.scroll-progress{display:none}.motion-ready .service-card .service-image{clip-path:none}.steps-intro{position:static}}
@media print{.site-header,.hero-leaves,.mobile-menu,.skip-link,.scroll-progress,#modal,.account-modal{display:none!important}.reveal{opacity:1!important;transform:none!important;clip-path:none!important}.legal-page{padding:0;max-width:none}.site-footer{background:white}}
/* Image buttons are full-bleed; reset inherited booking-button margins. */
.cards article .service-image{margin:0}
@media(max-width:380px){.hero h1{font-size:10.8vw}.hero .hero-actions button{font-size:10px;padding:16px 15px}.hero-actions .arrow{margin-left:8px}.hero-eyebrow{font-size:7px}.hero-copy>p{font-size:13px}.header-actions{gap:8px}}
