@font-face{font-family:Zen;src:url('/assets/zen-regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Zen;src:url('/assets/zen-bold.woff2') format('woff2');font-weight:700 900;font-display:swap}
:root{--green:#296923;--deep:#32442d;--ink:#2c343b;--paper:#f7f7f1;--line:#d4ddcf;--lime:#d6e8a8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:#fff;color:var(--ink);font-family:Zen,'Hiragino Kaku Gothic ProN',sans-serif;line-height:1.9}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h2{font-size:clamp(32px,3.6vw,56px);line-height:1.55;letter-spacing:-.045em;font-weight:700}h3{font-size:25px;line-height:1.5}p{line-height:2}em{font-style:normal;color:var(--green)}small{font-size:12px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #e3ab48;outline-offset:5px}header{height:90px;padding:0 3.5%;display:flex;align-items:center;gap:28px;background:rgba(255,255,255,.96);position:relative;z-index:20;border-bottom:1px solid var(--line)}.brand{display:flex;gap:10px;align-items:center;font-size:21px;font-weight:700;white-space:nowrap;line-height:1.35}.brand svg{width:39px;fill:none;stroke:var(--green);stroke-width:2.2}.brand small{display:block;font-size:10px;letter-spacing:.12em;margin-bottom:5px;color:var(--green)}nav{display:flex;gap:22px;margin-left:auto;font-size:13px;font-weight:700}nav a{padding:10px 0;border-bottom:2px solid transparent}nav a:hover{border-color:var(--green)}.header-tel{font-size:23px;color:var(--green);font-weight:700;line-height:1.3;white-space:nowrap}.header-tel small{display:block;font-weight:400;font-size:10px;letter-spacing:.1em}.sound{padding:6px 9px;font-size:10px;border:1px solid var(--line);border-radius:30px;background:var(--paper);white-space:nowrap}.hero{position:relative;min-height:720px;height:calc(100svh - 90px);max-height:1000px;color:#fff;overflow:hidden;background:#244c74}.hero-photo{position:absolute;width:100%;height:100%;object-position:center 55%;animation:herozoom 2.2s cubic-bezier(.16,1,.3,1) both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,34,40,.75),rgba(23,42,44,.12) 80%),linear-gradient(0deg,rgba(20,38,35,.8),transparent 40%)}.hero-copy{position:relative;padding:clamp(40px,6vh,85px) 8%;max-width:1100px;z-index:2}.eyebrow{font-size:12px;letter-spacing:.15em;color:var(--green);font-weight:700;margin-bottom:22px;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:22px;height:1px;background:currentColor}.eyebrow.light{color:#fff}.hero h1{font-size:clamp(52px,6.3vw,92px);line-height:1.2;letter-spacing:-.045em}.hero h1 span{display:block;animation:rise 1s cubic-bezier(.16,1,.3,1) both}.hero h1 span:nth-child(2){animation-delay:.12s}.hero h1 span:nth-child(3){animation-delay:.24s}.hero-copy>p{margin:22px 0 26px;font-size:18px;font-weight:700;animation:rise 1s .35s both}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:16px 24px;min-height:59px;background:linear-gradient(135deg,#39832e,#245d21);border:1px solid #43873b;color:white;font-weight:700;font-size:14px;box-shadow:0 5px 0 #183f16,0 9px 22px #1d4d1d18;transition:transform .2s,box-shadow .2s;overflow:hidden;border-radius:4px}.button:after{content:'';position:absolute;width:50%;height:200%;left:-80%;top:-50%;transform:rotate(25deg);background:linear-gradient(90deg,transparent,#ffffff50,transparent);pointer-events:none}.button:hover{transform:translateY(-3px);box-shadow:0 8px 0 #183f16,0 14px 28px #1d4d1d28}.button:hover:after{left:150%;transition:left .8s}.button:active,.button.pressed{transform:translateY(4px) scale(.98);box-shadow:0 1px 0 #183f16}.button.white{background:#fff;color:var(--green);border-color:#fff;box-shadow:0 5px 0 #d6ded2}.button.glass{background:#ffffff13;border-color:#ffffff80;box-shadow:0 5px 0 #102e3b66;backdrop-filter:blur(8px)}.button.outline{background:transparent;border-color:var(--green);color:var(--green);box-shadow:0 4px 0 #d6ded2}.hero-note{font-size:12px;position:absolute;left:105%;bottom:7%;width:200px;border-left:1px solid #ffffff80;padding-left:22px}.hero-side{position:absolute;right:30px;top:80px;writing-mode:vertical-rl;font-size:11px;letter-spacing:.25em}.hero-bottom{position:absolute;bottom:0;left:8%;right:8%;height:78px;border-top:1px solid #ffffff50;display:flex;gap:60px;align-items:center;font-size:13px;z-index:3}.hero-bottom b{color:#ffffff60;margin:0 12px}.hero-bottom strong{font-size:21px;margin-left:12px}.hero-bottom a{margin-left:auto;font-size:10px;letter-spacing:.18em}.section{max-width:1240px;margin:auto;padding:100px 40px}.section-num{font-size:11px;letter-spacing:.12em;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:55px;color:#67765f}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.intro p{font-size:15px;margin-top:26px}.photo-pair{position:relative;padding-top:24px;padding-bottom:125px}.photo-pair>img{width:100%;height:360px;clip-path:polygon(0 0,100% 0,100% 88%,90% 100%,0 100%)}.photo-small{position:absolute;bottom:0;left:-35px;width:60%;border:10px solid #fff;background:white}.photo-small img{height:200px;width:100%}.photo-small span{display:block;text-align:center;font-size:11px;letter-spacing:.1em;padding:10px 0}.check-section{background:var(--paper);border-block:1px solid #e1e5d9;position:relative;overflow:hidden}.check-section:before{content:'';position:absolute;inset:0;opacity:.5;background-image:linear-gradient(#dbe3d555 1px,transparent 1px),linear-gradient(90deg,#dbe3d555 1px,transparent 1px);background-size:48px 48px}.check-inner{position:relative;max-width:1160px;margin:auto;padding:90px 20px;display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.check-heading p{margin-top:22px;font-size:14px}.house-scene{max-width:310px;margin-top:20px}.house-scene svg{width:100%;overflow:visible}.house-wall{fill:#e5ebdd;stroke:#798d6a;stroke-width:2}.roof{fill:none;stroke:var(--green);stroke-width:8;stroke-linejoin:round}.door{fill:#788d5c;stroke:var(--green);stroke-width:2;transition:fill .5s}.window{fill:#b5c2a4;stroke:#fff;stroke-width:3;transition:fill .4s,filter .4s;transform-box:fill-box;transform-origin:center}.window.lit{fill:#f0ce6d;filter:drop-shadow(0 0 8px #e9c56790);animation:windowpop .45s}.house-scene.complete .door{fill:#d4a950}.house-scene.complete{animation:housecelebrate .7s}.ground,.plant{fill:none;stroke:#849c70;stroke-width:3}.house-label{text-align:center;font-size:11px;letter-spacing:.08em;color:#6e7d62}.check-panel{background:#fff;padding:32px;box-shadow:0 15px 50px #32442d10;border:1px solid #dce4d5;border-radius:8px}.check-top{display:flex;justify-content:space-between;gap:15px;font-size:15px;font-weight:700}.check-top b{color:var(--green);font-size:20px}.progress{height:5px;background:#e8eddf;margin:20px 0}.progress>span{height:100%;display:block;background:linear-gradient(90deg,#296923,#a6bd55);width:0;transition:width .4s}.check-options{display:grid;gap:10px}.check-option{width:100%;border:1px solid #d9dfd4;background:linear-gradient(135deg,#fff,#f7f9f3);padding:15px 12px;display:flex;align-items:center;gap:13px;text-align:left;border-radius:4px;font-size:13px;color:var(--ink);font-weight:700;transition:.2s;min-height:64px;box-shadow:0 3px 0 #e4e9df}.check-option:hover{border-color:var(--green);transform:translateY(-2px)}.check-option:active{transform:translateY(2px);box-shadow:none}.check-option[aria-pressed=true]{background:linear-gradient(135deg,#edf4e4,#e3efda);border-color:#6d9c5b;color:var(--green)}.check-box{width:24px;height:24px;border:1px solid #bac8b2;display:grid;place-items:center;flex-shrink:0;color:transparent;background:white;border-radius:3px}.check-option[aria-pressed=true] .check-box{background:var(--green);color:white;animation:windowpop .3s}.check-option small{margin-left:auto;color:#718269}.check-result{padding:24px 0 10px}.result-label{font:10px sans-serif;letter-spacing:.15em;color:#75856b}.check-result h3{font-size:20px;color:var(--green);margin:10px 0}.check-result p{font-size:13px;line-height:1.9}.check-panel .button{width:100%;margin-top:12px}.reset{background:none;border:0;color:#68755f;text-decoration:underline;font-size:12px;padding:8px 0}.check-note{display:block;font-size:10px;text-align:center;margin-top:16px;color:#68755f}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:42px}.section-head p{font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.service-card{position:relative}.service-card>img{height:260px;width:100%;border-radius:3px}.service-text{position:relative;padding:28px 0 10px}.service-number{font-size:42px;color:var(--green);line-height:1;position:absolute;top:-28px;left:16px;background:#fff;padding:8px 18px 0;font-family:Arial,sans-serif;font-weight:700}.service-text h3{margin:15px 0 20px}.service-text p{font-size:13px;min-height:90px}.service-text a{display:flex;justify-content:space-between;border-block:1px solid var(--line);padding:18px 0;font-size:13px;font-weight:700;color:var(--green);margin-top:16px}.service-assurance{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:35px 40px;border:1px solid var(--line);margin-top:45px;background:linear-gradient(120deg,#f5f7ed,#ffffff)}.service-assurance p{font-size:14px}.service-assurance strong{font-size:23px;color:var(--green)}.service-assurance>div{font-size:15px;text-align:right}.service-assurance b{font-size:48px;line-height:1.4;color:var(--green);margin-left:14px}.service-assurance b span{font-size:22px}.service-assurance small{display:block;font-size:10px}.wide-photo{position:relative;height:560px;overflow:hidden;color:#fff}.wide-photo>img{position:absolute;height:100%;width:100%;object-position:center 65%}.wide-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#192c26cc,transparent)}.wide-caption{position:relative;z-index:2;max-width:1080px;margin:auto;padding:95px 30px}.wide-caption>span{font-size:13px;letter-spacing:.14em}.wide-caption h2{margin:22px 0}.wide-caption p{font-size:14px}.voices{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.voices blockquote{margin:0;padding:30px;position:relative;background:#f5f6ef;border-top:3px solid var(--green);border-radius:0 0 5px 5px}.voice-n{font:11px Arial,sans-serif;letter-spacing:.15em;color:var(--green)}.quote{display:block;font:65px Georgia,serif;line-height:1;margin:25px 0 -10px;color:#9ab788}.voices p{font-size:14px}.section-end{margin-top:36px;text-align:right}.about{border-top:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.about-art{position:relative}.about-art>img{width:100%;height:480px}.nameplate{background:var(--deep);color:white;padding:24px 30px;margin:-40px 24px 0 0;position:relative}.nameplate small,.nameplate span{display:block;font-size:11px}.nameplate strong{display:block;font-size:28px;letter-spacing:.12em;margin:5px 0}.about-grid p{font-size:14px;margin-top:22px}.faq-section{padding-top:20px}.faq-list{border-top:1px solid #bbc9b3}.faq-list details{border-bottom:1px solid #cdd7c7}.faq-list summary{list-style:none;display:flex;align-items:center;gap:24px;padding:25px 12px;cursor:pointer;transition:background .2s;min-height:80px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:hover{background:#f7f9f3}.faq-list summary>b{color:var(--green);font-family:Arial,sans-serif;font-size:17px}.faq-list summary>span{flex:1;font-weight:700;font-size:16px}.faq-list summary>i{font-style:normal;border-radius:50%;background:#e9efdf;color:var(--green);width:32px;height:32px;text-align:center;line-height:32px;transition:transform .3s}.faq-list details[open] summary>i{transform:rotate(45deg);background:var(--green);color:white}.answer{padding:0 60px 28px;display:flex;gap:20px;animation:rise .35s}.answer b{color:var(--green)}.answer p{font-size:14px}.contact{background:var(--green);color:#fff;position:relative;overflow:hidden}.contact:after{content:'';position:absolute;width:700px;height:700px;border:1px solid #ffffff20;transform:rotate(45deg);top:100px;right:-250px;pointer-events:none}.contact-inner{max-width:1160px;margin:auto;padding:90px 40px;display:grid;grid-template-columns:1.3fr .7fr;gap:60px;align-items:center;position:relative;z-index:1}.contact h2{font-size:clamp(36px,4vw,60px)}.contact p{font-size:14px;margin-top:20px}.big-tel{display:block;font:700 clamp(30px,4.4vw,62px)/1.5 Arial,sans-serif;border-bottom:1px solid #ffffff70;margin-top:26px;padding-bottom:14px;white-space:nowrap}.big-tel small{font-family:Zen,sans-serif;font-weight:400;display:block;font-size:13px}.big-tel>span{font-size:.5em}.hours{font-size:13px;margin-top:14px}.contact-mascot{text-align:center}.contact-mascot img{width:200px;margin:auto;object-fit:contain;filter:drop-shadow(0 14px 20px #15370c40)}.contact-mascot p{font-size:19px;font-weight:700}.company{display:grid;grid-template-columns:1.15fr .85fr;gap:100px;padding-block:70px}.company h3{font-size:24px}.company dl{display:grid;grid-template-columns:100px 1fr;margin-top:28px;font-size:13px;gap:15px}.company dt{color:#73816b}.company dd{margin:0}.text-link{display:inline-block;font-size:13px;margin-top:20px;color:var(--green);border-bottom:1px solid}.company-image img{height:250px;width:100%;border:1px solid var(--line)}.company-image span{font-size:11px;display:block;margin-top:10px;color:#64705d}footer{background:var(--deep);color:white;padding:30px 7%;display:flex;justify-content:space-between;align-items:center;font-size:14px}footer small{font-size:10px}.mobile-dock{display:none}.skip{position:fixed;top:-100px;z-index:100;background:white;padding:15px}.skip:focus{top:0}.reveal{transition:opacity .8s,transform .8s}.js .reveal:not(.visible){opacity:0;transform:translateY(32px)}.reveal.visible{opacity:1;transform:translateY(0)}.pressed:not(.button){animation:press .3s}.tap-ring{position:fixed;width:36px;height:36px;pointer-events:none;z-index:100;border:2px solid #b7c98d;border-radius:50%;animation:ring .6s forwards}.celebration{position:fixed;inset:0;pointer-events:none;z-index:101;overflow:hidden}.confetti{position:absolute;top:-20px;width:10px;height:18px;background:#b7c98d;animation:confetti 1.6s cubic-bezier(.2,.6,.5,1) forwards}.subpage{background:var(--paper);min-height:100svh}.sub-main{max-width:1100px;margin:auto;padding:65px 30px 90px}.sub-hero{position:relative;overflow:hidden;border-bottom:1px solid #cbd6c4;padding:25px 0 55px;margin-bottom:45px}.sub-hero h1{font-size:clamp(42px,6vw,76px);color:var(--green);letter-spacing:.04em;line-height:1.4}.sub-roof{position:absolute;width:200px;height:200px;border-top:18px solid #dfe7d6;border-left:18px solid #dfe7d6;transform:rotate(45deg);right:60px;top:75px;z-index:-0}.sub-hero h1,.sub-hero .eyebrow{position:relative;z-index:1}.subpage .voices{grid-template-columns:1fr 1fr}.subpage .voices blockquote{background:#fff;padding:35px}.subpage .faq-list{background:#fff;padding:0 25px}.subpage .faq-list summary{padding-block:30px}.subpage .faq-list summary>span{font-size:17px}.subpage .answer{padding:0 12px 30px 62px}.subpage .answer p{font-size:15px}
@keyframes rise{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@keyframes herozoom{from{transform:scale(1.12);filter:brightness(.8)}to{transform:scale(1);filter:brightness(1)}}@keyframes windowpop{50%{transform:scale(1.18)}}@keyframes housecelebrate{40%{transform:translateY(-10px)}70%{transform:translateY(2px)}}@keyframes press{45%{transform:translateY(3px) scale(.98)}}@keyframes ring{to{transform:scale(3);opacity:0}}@keyframes confetti{to{transform:translateY(90vh) rotate(600deg);opacity:0}}
@media(min-width:1450px){.hero-note{left:1050px}.hero-copy{max-width:1250px}}@media(max-width:1150px){nav{display:none}.header-tel{margin-left:auto}.hero-note{display:none}.intro-grid,.about-grid{gap:45px}.check-inner{gap:40px}.service-grid{gap:18px}.section{padding-inline:30px}}
@media(max-width:700px){html{scroll-padding-top:20px}body{padding-bottom:66px}header{height:76px;padding:0 18px;gap:12px}.brand{font-size:17px;gap:8px}.brand svg{width:30px}.brand small{font-size:8px;letter-spacing:.08em}.header-tel{display:none}.sound{margin-left:auto;font-size:9px;min-height:34px}.hero{height:auto;min-height:740px;max-height:none}.hero-photo{object-position:40% center}.hero-shade{background:linear-gradient(90deg,#102f3aba,#102f3a28),linear-gradient(0deg,#162b31d9,transparent 50%)}.hero-copy{padding:44px 25px 108px}.hero .eyebrow{font-size:10px;margin-bottom:25px}.hero h1{font-size:clamp(48px,12.6vw,76px);line-height:1.3}.hero-copy>p{font-size:16px;line-height:1.8;margin:27px 0}.hero-actions{display:grid;gap:14px;max-width:340px}.hero-actions .button{font-size:13px;min-height:55px;padding:13px 18px}.hero-side{right:10px;top:45px;font-size:8px}.hero-bottom{left:25px;right:25px;height:70px;gap:10px;justify-content:space-between;font-size:10px}.hero-bottom b{margin:0 3px}.hero-bottom strong{font-size:16px;margin-left:4px}.hero-bottom a{display:none}.section{padding:60px 24px}h2{font-size:32px;line-height:1.6}.eyebrow{font-size:10px;margin-bottom:18px}.section-num{font-size:10px;margin-bottom:30px;padding-bottom:13px}.intro-grid,.about-grid{grid-template-columns:1fr;gap:28px}.intro p{font-size:14px;margin-top:20px}.photo-pair{padding-top:0;padding-bottom:75px;margin:0 0 15px 20px}.photo-pair>img{height:260px}.photo-small{left:-20px;width:60%;border-width:7px}.photo-small img{height:125px}.photo-small span{font-size:9px;padding:8px 0}.check-inner{padding:54px 20px;grid-template-columns:1fr;gap:25px}.check-heading{position:relative;padding-right:60px}.check-heading h2{font-size:30px}.check-heading p{font-size:12px;margin-top:15px}.house-scene{position:absolute;right:-15px;bottom:0;width:120px;margin:0}.house-label{display:none}.check-panel{padding:22px 17px}.check-top{font-size:13px}.check-top b{font-size:17px}.check-option{padding:14px 10px;font-size:12px;gap:10px;min-height:70px}.check-option small{font-size:10px}.check-box{width:22px;height:22px}.check-result h3{font-size:18px}.check-note{font-size:9px}.section-head{display:block;margin-bottom:30px}.section-head p{margin-top:20px;font-size:13px}.service-grid{grid-template-columns:1fr;gap:32px}.service-card>img{height:240px}.service-text{padding-top:20px}.service-text h3{font-size:24px;margin:14px 0}.service-text p{min-height:0;font-size:13px}.service-text a{margin-top:15px;padding:15px 0}.service-number{font-size:34px;top:-26px}.service-assurance{display:block;padding:24px;margin-top:30px}.service-assurance>div{text-align:left;margin-top:20px;border-top:1px solid var(--line);padding-top:12px}.service-assurance strong{font-size:20px}.service-assurance small{font-size:9px}.wide-photo{height:440px}.wide-caption{padding:70px 26px}.wide-caption h2{font-size:38px}.wide-caption>span{font-size:11px}.wide-caption p{font-size:13px}.voices{grid-template-columns:1fr;gap:18px}.voices blockquote{padding:25px}.voices p{font-size:13px}.quote{font-size:52px;margin-top:20px}.section-end{margin-top:28px;text-align:center}.section-end .button{width:100%}.about-art>img{height:300px}.nameplate{margin-right:20px;padding:20px 25px}.nameplate strong{font-size:25px}.about-grid>div:last-child{margin-top:12px}.about-grid p{font-size:13px;margin-top:20px}.faq-section{padding-top:10px}.faq-section h2{font-size:28px}.faq-list summary{gap:13px;padding:20px 0}.faq-list summary>b{font-size:14px}.faq-list summary>span{font-size:13px}.faq-list summary>i{width:25px;height:25px;line-height:25px;font-size:16px;flex-shrink:0}.answer{padding:0 0 22px;gap:12px}.answer p{font-size:13px}.contact-inner{padding:58px 25px;display:block}.contact h2{font-size:35px}.contact p{font-size:12px}.big-tel{font-size:clamp(28px,8vw,43px)}.contact-mascot{display:flex;align-items:center;gap:20px;margin-top:30px}.contact-mascot img{width:85px;margin:0}.contact-mascot p{text-align:left;font-size:15px;margin:0}.company{grid-template-columns:1fr;gap:30px;padding-block:50px}.company h3{font-size:21px}.company dl{font-size:12px;grid-template-columns:75px 1fr;gap:13px}.company-image img{height:220px}.text-link{font-size:12px}footer{padding:25px 22px;gap:20px;font-size:11px}footer small{font-size:8px}.mobile-dock{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:50;padding:9px 12px calc(9px + env(safe-area-inset-bottom));gap:9px;background:#ffffffed;border-top:1px solid #dce4d6;backdrop-filter:blur(8px)}.mobile-dock a{padding:11px 5px;text-align:center;font-size:11px;font-weight:700;border-radius:4px;background:#ecf1e4;color:var(--green);box-shadow:0 3px 0 #ced8c2}.mobile-dock a:last-child{background:linear-gradient(130deg,#39832e,#245d21);color:#fff;box-shadow:0 3px 0 #173d15}.subpage{padding-bottom:0}.sub-main{padding:32px 22px 50px}.sub-hero{padding:20px 0 35px;margin-bottom:28px}.sub-hero h1{font-size:42px}.sub-roof{width:120px;height:120px;right:12px;top:60px;border-width:10px}.subpage .voices{grid-template-columns:1fr}.subpage .voices blockquote{padding:26px}.subpage .faq-list{padding:0 17px}.subpage .faq-list summary{padding:24px 0;gap:10px}.subpage .faq-list summary>span{font-size:14px}.subpage .answer{padding:0 0 24px}.subpage .answer p{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal:not(.visible){opacity:1;transform:none}.tap-ring,.confetti{display:none}}
@media(min-width:1151px){.hero-note{left:auto;right:-100px;width:220px}}
/* Second revision: photo exploration, service comparison and touch feedback. */
[hidden]{display:none!important}.hero h1{font-size:clamp(48px,5.7vw,82px)}.hero-photo-view,.wide-photo-view{position:absolute;right:7%;bottom:105px;z-index:4;display:flex;align-items:center;gap:16px;color:#fff;background:#18362165;border:1px solid #ffffff75;padding:12px 18px;border-radius:4px;font-size:12px;backdrop-filter:blur(8px);box-shadow:0 4px 0 #19332b80}.hero-photo-view span,.wide-photo-view span{font-size:19px}.wide-photo-view{bottom:30px}.hero-note{bottom:25%}.photo-open{display:block;position:relative;border:0;padding:0;background:#e8e8df;width:100%;overflow:hidden;border-radius:3px;isolation:isolate;text-align:left;cursor:zoom-in;box-shadow:0 2px 0 #32442d10}.photo-open img{width:100%;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .5s}.photo-open:hover img{transform:scale(1.035);filter:brightness(1.03)}.photo-open-hint{position:absolute;right:12px;bottom:12px;background:#fffffff0;color:var(--green);box-shadow:0 3px 0 #adc0a0;padding:6px 10px;font-size:10px;font-weight:700;border-radius:3px}.photo-pair>.photo-open{height:360px;clip-path:polygon(0 0,100% 0,100% 88%,90% 100%,0 100%)}.photo-pair>.photo-open img{height:100%}.photo-small .photo-open img{height:200px}.photo-small .photo-open-hint{font-size:9px;padding:4px 8px;bottom:8px;right:8px}.photo-small>.photo-open>span{display:block;margin:0}.service-card>.photo-open{height:260px}.service-card>.photo-open img{height:100%}.about-art>.photo-open{height:480px}.about-art>.photo-open img{height:100%}.company-image>.photo-open img{height:250px}.contact-mascot>.photo-open{width:200px;margin:auto;background:transparent;overflow:visible}.contact-mascot>.photo-open img{width:100%}.contact-mascot .photo-open-hint{display:none}.contact-mascot>.photo-open:hover img{transform:rotate(-5deg) translateY(-5px)}.service-chooser{margin-bottom:26px}.chooser-label{font-size:13px;margin-bottom:14px;color:#627357}.service-tabs{display:flex;gap:10px}.service-tabs button{flex:1;border:1px solid #bbcbb2;padding:18px 20px;background:linear-gradient(125deg,#f3f7ed,#fff);color:var(--green);font-weight:700;font-size:16px;box-shadow:0 4px 0 #d3dec9;border-radius:4px;transition:background .25s,transform .2s}.service-tabs button span{font:12px Arial,sans-serif;margin-right:14px;opacity:.7}.service-tabs button[aria-selected=true]{background:linear-gradient(130deg,#39832e,#245d21);color:#fff;border-color:#286723;box-shadow:0 4px 0 #183f16}.interactive-services{display:block}.interactive-services .service-card{display:grid;grid-template-columns:1fr 1fr;border:1px solid #d9e2d1;background:linear-gradient(120deg,#f7f8f2,#fff);min-height:420px}.interactive-services .service-card>.photo-open{height:100%;min-height:420px;border-radius:0}.interactive-services .service-card>.photo-open img{position:absolute;inset:0;width:100%;height:100%}.interactive-services .service-text{padding:34px 34px 25px}.interactive-services .service-number{position:static;background:none;padding:0;font-size:34px;display:block;opacity:.55}.interactive-services .service-text h3{margin:10px 0 16px;font-size:30px}.interactive-services .service-text>p{min-height:0}.service-prompt{padding:20px 0 0;display:grid;gap:9px;border-top:1px solid #d7e1cf;margin-top:20px}.service-prompt small{font-size:10px;color:#718465}.service-prompt strong{font-size:16px;color:var(--green);line-height:1.7}.service-prompt>span{font-size:12px;line-height:1.9}.service-active{animation:panel-in .45s cubic-bezier(.16,1,.3,1)}.photo-dialog{position:fixed;inset:0;margin:auto;width:min(1000px,94vw);max-height:92svh;padding:24px;border:1px solid #c9d8be;background:#f6f7f0;color:var(--ink);border-radius:10px;box-shadow:0 30px 100px #0c201280;overflow:auto;overscroll-behavior:contain}.photo-dialog::backdrop{background:#0f2119db;backdrop-filter:blur(9px)}.photo-dialog[open]{animation:dialog-in .35s cubic-bezier(.16,1,.3,1)}.photo-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.photo-toolbar h2{font-size:17px;letter-spacing:.08em}.photo-close,.photo-controls button{border:1px solid #bbcdb0;background:linear-gradient(120deg,#fff,#ecf1e4);color:var(--green);padding:10px 18px;min-height:44px;border-radius:4px;box-shadow:0 3px 0 #d2decb;font-size:12px}.photo-stage{height:min(61svh,650px);display:flex;align-items:center;justify-content:center;background:#e3e9df;overflow:hidden;border-radius:4px}.photo-stage img{height:100%;width:100%;object-fit:contain}.photo-caption{display:flex;justify-content:space-between;gap:20px;margin:14px 0;font-size:12px}.photo-caption p{line-height:1.6}.photo-caption span{white-space:nowrap;color:var(--green);font-family:Arial,sans-serif}.photo-controls{display:flex;justify-content:space-between;gap:12px}.photo-switch{animation:photo-in .4s}.control-entry.control-entered{animation:control-in .55s var(--entry-delay,0ms) both}.control-entry:not(.control-entered){visibility:visible}.control-entry.pressed,.pressed{animation:press .3s!important}.control-entry:active:not(.photo-open),.photo-close:active,.photo-controls button:active,.service-tabs button:active,.hero-photo-view:active,.wide-photo-view:active{transform:translateY(3px) scale(.98);box-shadow:inset 0 2px 5px #19332b35}.photo-open:active img{transform:scale(.97)}.faq-list summary,.sound,.reset,.header-tel,.brand,.big-tel,nav a,.text-link,.mobile-dock a{transition:transform .2s,box-shadow .2s}.faq-list summary:active,.sound:active,.reset:active,.header-tel:active,.brand:active,.big-tel:active,nav a:active,.text-link:active{transform:translateY(2px) scale(.985);box-shadow:inset 0 2px 4px #183f1615}.photo-open-hint:after{content:'';position:absolute;inset:-25%;background:linear-gradient(115deg,transparent 35%,#ffffff95 50%,transparent 65%);transform:translateX(-150%);pointer-events:none}.photo-open:hover .photo-open-hint:after{transform:translateX(150%);transition:transform .7s}
@keyframes panel-in{from{opacity:.2;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes dialog-in{from{opacity:0;transform:translateY(25px) scale(.94)}to{opacity:1;transform:none}}@keyframes photo-in{from{opacity:.4;transform:scale(1.035)}to{opacity:1;transform:none}}@keyframes control-in{from{opacity:0;translate:0 15px}to{opacity:1;translate:0 0}}
@media(max-width:700px){.hero{min-height:690px}.hero-copy{padding-bottom:140px}.hero h1{font-size:clamp(36px,10.8vw,63px);line-height:1.35}.hero-copy>p{font-size:14px;margin:22px 0}.hero-photo-view{right:25px;bottom:88px;padding:6px 12px;min-height:40px;font-size:10px}.hero-photo-view span{font-size:15px}.wide-photo-view{right:24px;bottom:25px;font-size:10px;min-height:40px;padding:7px 12px}.photo-pair>.photo-open{height:250px}.photo-small .photo-open img{height:125px}.photo-small .photo-open-hint{font-size:8px;right:5px;bottom:5px;padding:4px 6px}.about-art>.photo-open{height:300px}.company-image>.photo-open img{height:220px}.contact-mascot>.photo-open{width:85px;flex-shrink:0;margin:0}.service-tabs{gap:7px}.service-tabs button{font-size:11px;line-height:1.6;padding:13px 5px;min-height:70px}.service-tabs button span{display:block;font-size:10px;margin:0 0 5px}.chooser-label{font-size:12px}.interactive-services .service-card{grid-template-columns:1fr;min-height:0}.interactive-services .service-card>.photo-open{height:235px;min-height:0}.interactive-services .service-text{padding:24px 22px}.interactive-services .service-number{font-size:26px}.interactive-services .service-text h3{font-size:25px;margin-top:6px}.service-prompt strong{font-size:14px}.service-prompt>span{font-size:12px}.service-assurance{margin-top:25px}.check-heading{padding-right:0}.check-heading p{padding-right:90px}.house-scene{width:100px;right:-9px;bottom:-5px}.house-label{display:none}.photo-dialog{padding:15px;width:94vw;max-height:92svh}.photo-toolbar h2{font-size:14px}.photo-stage{height:52svh}.photo-caption{font-size:11px}.photo-close,.photo-controls button{font-size:11px;padding:8px 12px}.subpage .sub-hero{padding-bottom:28px}.subpage .voices blockquote{padding:24px}.service-grid{gap:0}}
@media(max-width:360px){.hero-copy{padding-inline:20px}.hero .eyebrow{font-size:9px}.hero h1{font-size:36px}.brand{font-size:15px}.brand small{font-size:7px}header{padding-inline:14px;gap:8px}.section{padding-inline:20px}.check-inner{padding-inline:15px}.check-panel{padding:20px 13px}.check-heading h2{font-size:28px}.check-heading p{font-size:11px;padding-right:80px}.house-scene{width:90px}.service-tabs button{font-size:10px}.photo-small{width:65%}.contact h2{font-size:31px}.company h3{font-size:20px}.hero-bottom{left:20px;right:20px}}
@media(prefers-reduced-motion:reduce){.control-entry.control-entered,.photo-dialog[open],.photo-switch,.service-active{animation:none!important}.control-entry.control-entered{opacity:1;translate:none}.photo-open:hover img,.photo-open:active img{transform:none}}
.hero-shade,.wide-photo:after{pointer-events:none}.hero-photo,.wide-photo>img{cursor:zoom-in}.photo-dialog:focus-visible{outline:2px solid #d8bc70}.photo-open:focus-visible .photo-open-hint{background:#fff;color:var(--green)}

/* Consultation experience: requested improvement pass 1. */
.consult-memo{margin:18px 0 8px;padding:18px;background:linear-gradient(130deg,#f4f6ec,#fff);border:1px solid #d6e0cb;border-left:3px solid var(--green);border-radius:4px}.consult-memo label{display:block;font-size:12px;font-weight:700;color:var(--green);margin-bottom:10px}.consult-memo textarea{display:block;resize:vertical;width:100%;min-height:128px;border:0;background:transparent;font:12px/1.9 Zen,sans-serif;color:var(--ink);padding:0}.consult-memo textarea:focus-visible{outline:2px solid #a1b68f;outline-offset:4px}.memo-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.memo-tools button{background:linear-gradient(130deg,#fff,#e6eedb);border:1px solid #b6c9a8;color:var(--green);border-radius:4px;padding:10px 14px;font-size:11px;font-weight:700;min-height:44px;box-shadow:0 3px 0 #cad7bd}.memo-tools span{font-size:10px;color:var(--green)}.consult-flow{padding-top:24px;padding-bottom:80px}.flow-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:36px;counter-reset:flow}.flow-steps li{position:relative;min-width:0}.flow-steps li+li:before{content:'→';position:absolute;left:-28px;top:65px;font-size:20px;color:#80956b}.flow-art{height:150px;background:radial-gradient(ellipse at 45% 95%,#dfe9d6,transparent 70%),linear-gradient(140deg,#f7f9f1,#edf2e6);border:1px solid #dee6d7;border-radius:70% 35% 8px 8px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.flow-art svg{width:160px;height:110px;overflow:visible}.flow-art>span{position:absolute;bottom:12px;right:16px;font:700 30px Arial,sans-serif;color:#9db58b}.flow-house{fill:none;stroke:var(--green);stroke-width:3;stroke-linejoin:round}.flow-bubble{fill:#fff;stroke:#86a574;stroke-width:2.5;stroke-linejoin:round}.flow-mark{stroke:var(--green);stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round}.visible .flow-bubble{animation:flow-lift .8s .15s both}.visible .flow-mark{stroke-dasharray:110;stroke-dashoffset:110;animation:draw-mark 1s .4s forwards}.flow-steps h3{font-size:20px;line-height:1.6;margin-top:22px;letter-spacing:-.04em}.flow-steps p{font-size:12px;margin-top:12px;line-height:1.9}.flow-reassurance{display:flex;gap:20px;align-items:center;justify-content:center;border-top:1px solid var(--line);padding-top:25px;margin-top:35px;font-size:13px}.flow-reassurance span{color:var(--green);font-weight:700;white-space:nowrap}.flow-reassurance p{font-size:12px}.phone-guide{border-left:2px solid #bad39c;padding:2px 0 2px 18px;margin-top:30px}.phone-guide>span{font-size:11px;color:#e1edce}.phone-guide>p{font-size:16px;margin:5px 0;font-weight:700}.phone-guide small{font-size:11px}.hero-copy{pointer-events:none}.hero-copy a{pointer-events:auto}.photo-open img{height:100%}.company-image>.photo-open img{object-fit:contain;background:white}.contact-mascot>.photo-open img{height:auto}.photo-open-hint{line-height:1.8}.photo-open:focus-visible{outline-offset:3px}.sound{min-height:44px;min-width:44px}.hero-actions .button.glass{background:linear-gradient(125deg,#193f36a6,#32442d40)}.button.white{background:linear-gradient(125deg,#fff,#f0f4e8)}.button.outline{background:linear-gradient(125deg,#fff,#f4f7ee)}
@keyframes flow-lift{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes draw-mark{to{stroke-dashoffset:0}}
@media(max-width:900px) and (min-width:701px){.flow-steps{gap:24px}.flow-steps h3{font-size:17px}.flow-steps li+li:before{left:-20px}.hero-note{display:none}}
@media(max-width:700px){body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.subpage{padding-bottom:0}.hero{min-height:0}.hero-copy{padding-top:38px;padding-bottom:156px}.hero-photo{object-position:48% center}.hero-photo-view{bottom:91px}.check-heading{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:0 12px;align-items:end}.check-heading>.eyebrow,.check-heading>h2{grid-column:1/-1}.check-heading>p{padding-right:0;grid-column:1;font-size:12px}.check-heading .house-scene{position:static;width:100%;margin:0;grid-column:2;grid-row:3;align-self:end}.check-option{min-height:74px}.check-option>span:nth-child(2){min-width:0}.consult-memo{padding:15px}.consult-memo textarea{font-size:12px;min-height:150px}.consult-flow{padding-top:12px;padding-bottom:48px}.flow-steps{grid-template-columns:1fr;gap:24px}.flow-steps li{display:grid;grid-template-columns:100px minmax(0,1fr);column-gap:18px;align-items:center}.flow-art{height:120px;grid-row:1/3;border-radius:35% 35% 5px 5px}.flow-art svg{width:95px;height:88px;margin-bottom:8px}.flow-art>span{font-size:20px;right:9px;bottom:5px}.flow-steps h3{margin:0;font-size:16px;align-self:end}.flow-steps p{font-size:11px;margin-top:7px;align-self:start}.flow-steps p br{display:none}.flow-steps li+li:before{content:'↓';left:44px;top:-27px;font-size:16px}.flow-reassurance{display:block;padding-top:20px;margin-top:25px;text-align:center}.flow-reassurance p{font-size:11px;margin-top:5px}.phone-guide{margin-top:24px;padding-left:12px}.phone-guide>p{font-size:14px}.phone-guide small{display:block;font-size:10px}.contact-mascot{margin-top:25px}.mobile-dock a{min-height:46px;display:flex;align-items:center;justify-content:center}.photo-dialog{max-height:calc(100svh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 24px);padding:15px}.photo-stage{height:48svh}.photo-controls button{min-height:46px}.sound{min-height:44px}.section{overflow-wrap:anywhere}}
@media(max-width:360px){.check-heading{grid-template-columns:minmax(0,1fr) 80px;gap:0 8px}.check-heading p{font-size:11px}.flow-steps li{grid-template-columns:85px minmax(0,1fr);column-gap:13px}.flow-art{height:116px}.flow-steps h3{font-size:15px}.flow-steps li+li:before{left:36px}.hero-copy>p{font-size:13px}.hero .eyebrow{letter-spacing:.08em}}
@media(prefers-reduced-motion:reduce){.visible .flow-mark{stroke-dashoffset:0}.visible .flow-bubble{opacity:1}}

/* Review pass 2: original typography, deliberate photo reveals and completion cue. */
.hero-note{right:0;left:auto;width:190px;bottom:26%;font-size:11px;line-height:1.9}
.photo-entered:not(.contact-mascot>.photo-open)>img{animation:photo-unfold 1s cubic-bezier(.16,1,.3,1) both}
.check-complete{display:grid;grid-template-columns:35px 1fr;gap:3px 10px;padding:17px 15px;margin:0 0 22px;background:linear-gradient(125deg,#296923,#4d7d37);color:white;border:1px solid #608c42;border-radius:5px;box-shadow:0 5px 0 #d6e1c9;animation:completion-rise .55s cubic-bezier(.16,1,.3,1)}
.check-complete>span{grid-row:1/3;align-self:center;width:32px;height:32px;border:1px solid #d3e5ad;border-radius:50%;display:grid;place-items:center;background:#ffffff18}
.check-complete strong{font-size:13px;line-height:1.7}.check-complete small{font-size:10px;line-height:1.8;color:#e7f1d4}
@keyframes photo-unfold{from{clip-path:inset(0 0 100% 0);filter:brightness(.88)}to{clip-path:inset(0);filter:brightness(1)}}
@keyframes completion-rise{from{opacity:0;transform:translateY(15px) scale(.97)}to{opacity:1;transform:none}}
@media(max-width:700px){.check-complete{padding:15px 12px;gap:4px 8px}.check-complete strong{font-size:12px}.check-complete small{font-size:10px}.photo-entered:not(.contact-mascot>.photo-open)>img{animation-duration:.7s}}
@media(prefers-reduced-motion:reduce){.photo-entered>img{clip-path:none!important;filter:none!important}.check-complete{animation:none}}

/* Requested improvement round 2: compact consultation, key feedback and touch gallery. */
.hero-note{font-size:13px;width:210px;right:10px;line-height:2.1;text-shadow:0 1px 8px #16342470}
.button-key{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:#ffffff12}
.button-key svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s}
.button:hover .button-key svg{transform:rotate(-18deg)}.button.pressed .button-key svg{animation:key-turn .4s ease}
.consult-memo{padding:0;overflow:hidden}.consult-memo>summary{display:flex;justify-content:space-between;align-items:center;gap:10px;list-style:none;padding:15px 16px;font-size:12px;font-weight:700;color:var(--green);cursor:pointer;min-height:50px}.consult-memo>summary::-webkit-details-marker{display:none}.consult-memo>summary>span{font-size:19px;line-height:1;transition:transform .2s}.consult-memo[open]>summary>span{transform:rotate(45deg)}.memo-content{padding:0 16px 16px;animation:rise .25s ease}.consult-memo textarea{min-height:124px}.check-result{padding-top:20px}.check-complete{margin-bottom:17px}.check-panel .reset{min-height:44px}.check-panel .check-note{font-size:11px;line-height:1.8}
.house-scene svg{transition:filter .6s}.house-scene.complete svg{filter:drop-shadow(0 0 18px #edce6c55)}.house-scene .door{transform-box:fill-box;transform-origin:left center;transition:transform .7s,fill .5s}.house-scene.complete .door{transform:perspective(100px) rotateY(-45deg)}
.photo-stage{position:relative;touch-action:pan-y pinch-zoom}.photo-load-status{position:absolute;inset:auto 12px 12px;margin:0;background:#f7f9efeb;color:var(--deep);padding:10px 14px;border-radius:4px;font-size:12px;text-align:center;pointer-events:none}.photo-load-status:empty{display:none}.photo-stage[aria-busy=true] .photo-enlarged{opacity:.35}.photo-swipe-hint{display:none;font-size:11px;color:#617456;text-align:center;margin-top:10px}.photo-caption p{overflow-wrap:anywhere}.photo-controls button{flex:0 1 auto}
@keyframes key-turn{0%{transform:rotate(0)}45%{transform:rotate(70deg) scale(1.12)}100%{transform:rotate(0)}}
@media(max-width:900px) and (min-width:701px){.section{padding-block:72px}.consult-flow{padding-top:12px}.about-art>.photo-open{height:360px}.photo-pair>.photo-open{height:310px}.check-inner{padding:65px 25px;gap:30px}.check-panel{padding:25px}.check-heading h2{font-size:34px}.check-option{font-size:12px}.check-heading{min-width:0}.check-panel{min-width:0}.company{gap:40px}}
@media(max-width:700px){.hero-copy{padding-bottom:145px}.hero-actions{max-width:none}.hero-actions .button{min-height:56px}.section{padding-block:48px}.section-num{margin-bottom:25px}.intro p{margin-top:17px}.check-inner{padding-block:44px;gap:22px}.check-panel{padding:20px 16px}.check-option{font-size:13px;line-height:1.8;padding:13px 10px;min-height:70px}.check-option small{display:none}.check-result p{font-size:13px}.check-note{font-size:11px}.memo-content{padding:0 13px 15px}.consult-memo>summary{font-size:12px;padding-inline:13px}.consult-memo textarea{font-size:13px;min-height:148px}.check-complete small{font-size:11px}.photo-swipe-hint{display:block}.photo-stage{height:43svh}.photo-caption{margin-block:10px}.photo-caption p{font-size:12px}.photo-dialog{max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:14px}.consult-flow{padding-top:4px;padding-bottom:42px}.faq-section{padding-top:12px}.service-assurance{padding:20px}.contact-inner{padding-top:48px;padding-bottom:45px}.company{padding-top:42px;padding-bottom:42px}.sub-main{padding-bottom:42px}.photo-pair{margin-bottom:4px}.sound{font-size:11px}.button-key{width:23px;height:23px;flex-basis:23px}.button-key svg{width:22px;height:22px}}
@media(prefers-reduced-motion:reduce){.button-key svg,.button:hover .button-key svg,.house-scene.complete .door{transform:none!important}.button.pressed .button-key svg{animation:none}}

/* Review 3: direct mobile navigation and controllable effects on all routes. */
.section-jumps{display:none}.sub-utility{display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative;z-index:2;margin-bottom:22px}.sub-utility>.eyebrow{margin:0}.sub-utility .sound{font-size:11px;padding:9px 14px;min-height:44px;background:linear-gradient(125deg,#fff,#e8efdf)}
@media(max-width:700px){html{scroll-padding-top:64px}.section-jumps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0;padding:7px 12px;position:sticky;top:0;z-index:35;background:#f9fbf4f5;border-block:1px solid #d7e1cf;box-shadow:0 5px 18px #32442d0c;backdrop-filter:blur(10px)}.section-jumps a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:7px 2px;font-size:11px;line-height:1.5;white-space:nowrap;border:1px solid #d3dec9;border-radius:4px;background:linear-gradient(130deg,#fff,#eff4e5);color:var(--green);box-shadow:0 2px 0 #ccd9c1;font-weight:700;letter-spacing:0}.section-jumps a:hover,.section-jumps a:focus-visible{background:#e3edda;border-color:var(--green)}.section-jumps a:active{transform:translateY(2px);box-shadow:inset 0 2px 3px #32442d15}.section-jumps a:focus-visible{outline-offset:0}.sub-utility{margin-bottom:18px}.sub-utility .sound{margin-left:0}.check-panel>.button{gap:12px;padding:14px 16px;font-size:13px}.section-jumps~.intro{padding-top:42px}}
@media(prefers-reduced-motion:reduce){.pressed,.control-entry.pressed,.button.pressed{animation:none!important}.tap-ring,.confetti{display:none!important}.button.pressed .button-key svg{animation:none!important;transform:none!important}}

/* Requested improvement round 3: local voice, relevant answers and readable touch UI. */
.hero-side{letter-spacing:.2em}.contact{background:radial-gradient(ellipse at 88% 10%,#64854480,transparent 54%),linear-gradient(130deg,#296923 10%,#244d26 100%)}
.voice-topic{display:block;margin-top:20px;font-size:10px;letter-spacing:.08em;color:#64745c}.voice-topic>span{display:block;margin-top:5px;color:var(--green);font-size:18px;line-height:1.65;font-weight:700;letter-spacing:0}.voices .quote{margin:12px 0 -10px;font-size:48px}
.related-question{display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:4px 12px;margin-top:18px;padding:14px 15px;border:1px solid #c8d8bd;border-left:3px solid var(--green);border-radius:4px;background:linear-gradient(125deg,#fff,#eef4e5);box-shadow:0 3px 0 #e0e9d7;color:var(--green)}.related-question>span:first-child{font-size:10px;grid-column:1}.related-question strong{font-size:13px;line-height:1.8;grid-column:1;font-weight:700}.related-question>span:last-child{grid-column:2;grid-row:1/3;align-self:center;font-size:20px}.related-question:active{transform:translateY(2px);box-shadow:inset 0 2px 4px #32442d15}
.faq-list details[id]{scroll-margin-top:20px}.hero-photo-view,.wide-photo-view{min-height:44px}.text-link{min-height:44px;display:inline-flex;align-items:center}.section-jumps a[aria-current=location]{background:linear-gradient(125deg,#39832e,#245d21);color:white;border-color:#296923;box-shadow:0 2px 0 #173d15}
@media(min-width:701px) and (max-width:1150px){html{scroll-padding-top:74px}.section-jumps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;padding:10px 5%;position:sticky;top:0;z-index:35;background:#f9fbf4f5;border-block:1px solid #d7e1cf;box-shadow:0 5px 18px #32442d0c;backdrop-filter:blur(10px)}.section-jumps a{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #d3dec9;border-radius:4px;background:linear-gradient(130deg,#fff,#eff4e5);color:var(--green);font-size:13px}}
@media(max-width:700px){.hero-copy>p{font-size:16px;line-height:1.8}.hero-actions .button{font-size:14px}.section-jumps a{font-size:12px}.service-text p,.service-prompt>span,.voices p,.about-grid p,.answer p,.faq-list summary>span{font-size:14px;line-height:1.9}.voice-topic>span{font-size:18px}.related-question strong{font-size:14px}.hero-copy{padding-bottom:139px}.hero-photo-view{bottom:85px}.service-tabs button{font-size:12px;min-height:74px}.service-tabs button span{font-size:11px}.service-chooser{margin-bottom:20px}.interactive-services .service-text{padding:23px 20px}.service-prompt{padding-top:16px;margin-top:16px}.service-text a{min-height:48px}.subpage .answer p{font-size:14px}.subpage .faq-list{padding-inline:12px}.voice-topic{margin-top:16px}.voices blockquote{padding:24px}.photo-caption{gap:12px}.photo-toolbar{gap:12px}.photo-controls button{min-width:0;flex:1}.photo-close{flex-shrink:0}.check-result{scroll-margin-bottom:90px}footer{flex-wrap:wrap;gap:8px}}
@media(max-width:360px){.section-jumps{gap:4px;padding-inline:8px}.section-jumps a{font-size:11px}.hero-actions .button{font-size:13px}.hero-copy>p{font-size:14px}.service-tabs button{font-size:11px}.sub-main{padding-inline:18px}.subpage .faq-list{padding-inline:6px}}
@media(hover:none){.button:hover{transform:none}.button:hover:after{left:-80%}.photo-open:hover img{transform:none;filter:none}.check-option:hover{transform:none}.button:active,.check-option:active{transform:translateY(2px)}.button.pressed{transform:translateY(3px) scale(.98)}}
