:root{--pine:#184f52;--pine-deep:#103a3d;--mint:#9fc7b3;--mint-soft:#dcebe1;--paper:#f6f4ee;--surface:#fff;--ink:#173032;--muted:#657577;--line:rgba(23,48,50,.14);--coral:#e88568;--shadow:0 24px 70px rgba(23,48,50,.12);--max:1200px;color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;min-width:320px;background:var(--paper);color:var(--ink);line-height:1.65;transition:background .25s,color .25s}img{display:block;width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}.skip-link{position:fixed;top:-5rem;left:1rem;z-index:100;background:var(--surface);padding:.7rem 1rem}.skip-link:focus{top:1rem}.progress{position:fixed;top:0;left:0;z-index:100;width:100%;height:3px;background:var(--coral);transform:scaleX(0);transform-origin:left}.showcase-ribbon{background:var(--pine-deep);color:#d9eee2;text-align:center;padding:.38rem 1rem;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase}
.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.header-inner,.section-inner,.footer-inner{width:min(calc(100% - 2rem),var(--max));margin-inline:auto}.header-inner{min-height:82px;display:flex;align-items:center;gap:1rem}.brand{display:inline-flex;align-items:center;gap:.75rem;text-decoration:none;margin-right:auto}.brand-mark{width:44px;height:44px;border-radius:50% 50% 46% 54%;display:grid;place-items:center;background:var(--pine);color:#fff;font:800 .8rem Georgia,serif}.brand-copy strong,.brand-copy small{display:block}.brand-copy strong{font:700 1rem Georgia,serif;letter-spacing:.01em}.brand-copy small{font-size:.64rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.site-nav{display:flex;align-items:center;gap:.2rem}.site-nav a{padding:.65rem .75rem;text-decoration:none;font-size:.85rem;font-weight:700;border-radius:30px}.site-nav a:hover,.site-nav a[aria-current=page]{background:var(--mint-soft);color:var(--pine-deep)}.theme-toggle,.menu-toggle{border:1px solid var(--line);background:var(--surface);color:var(--ink);min-height:42px;border-radius:24px;padding:.55rem .8rem;font-weight:750;cursor:pointer}.theme-toggle{display:flex;align-items:center;gap:.4rem}.theme-toggle i{font-style:normal;color:var(--coral)}.menu-toggle{display:none}
.hero{min-height:760px;position:relative;display:grid;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;z-index:-2}.hero-image img{height:100%;object-fit:cover;object-position:center}.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(246,244,238,.97) 0%,rgba(246,244,238,.9) 35%,rgba(246,244,238,.12) 68%)}.hero-inner{width:min(calc(100% - 2rem),var(--max));margin:auto}.hero-copy{max-width:650px;padding:6rem 0}.kicker{display:flex;align-items:center;gap:.65rem;color:var(--pine);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.kicker::before{content:"";width:28px;height:2px;background:var(--coral)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08}h1{font:500 clamp(3.4rem,7.5vw,7.2rem)/.96 Georgia,serif;letter-spacing:-.055em;margin:1.2rem 0 1.5rem}.hero h1 em{font-style:italic;color:var(--pine)}.lead{font-size:clamp(1.05rem,1.6vw,1.3rem);color:#526366;max-width:580px}.actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:50px;padding:.75rem 1.1rem;border:1px solid var(--pine);background:var(--pine);color:#fff;text-decoration:none;border-radius:40px;font-weight:800;cursor:pointer;transition:.2s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(16,58,61,.18)}.button.light{background:var(--surface);color:var(--pine)}.button.coral{background:var(--coral);border-color:var(--coral);color:#231713}.hero-badges{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:3rem}.hero-badges span{background:rgba(255,255,255,.72);border:1px solid rgba(23,48,50,.15);border-radius:50px;padding:.55rem .75rem;font-size:.72rem;font-weight:700}
.quickbar{background:var(--pine);color:#fff}.quickbar-inner{width:min(100%,var(--max));margin:auto;display:grid;grid-template-columns:repeat(3,1fr)}.quickbar-inner>a,.quickbar-inner>div{padding:1.4rem 2rem;border-right:1px solid rgba(255,255,255,.14);text-decoration:none}.quickbar small,.quickbar strong{display:block}.quickbar small{color:#afd0be;font-size:.67rem;letter-spacing:.12em;text-transform:uppercase}.quickbar strong{margin-top:.25rem}.quickbar-link{display:block;text-decoration:none}.quickbar-cta{grid-template-columns:1fr auto}
.section{padding:clamp(5rem,9vw,9rem) 0}.section.alt{background:var(--mint-soft)}.section.dark{background:var(--pine-deep);color:#fff}.section-head{display:grid;grid-template-columns:.9fr 1.1fr;align-items:end;gap:5vw;margin-bottom:4rem}.section h2,.page-hero h1{font:500 clamp(2.6rem,5.4vw,5.3rem)/1 Georgia,serif;letter-spacing:-.045em;margin:1rem 0}.section-head>p{color:var(--muted);font-size:1.05rem;max-width:620px}.dark .section-head>p{color:#b8d0c5}
.care-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.care-card{background:var(--surface);padding:2rem;min-height:330px;display:flex;flex-direction:column;transition:.25s}.care-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);z-index:1}.care-card .icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--mint-soft);color:var(--pine);font-size:1.3rem}.care-card h3{font:600 1.45rem Georgia,serif;margin:3rem 0 .8rem}.care-card p{color:var(--muted);font-size:.9rem}.text-link{margin-top:auto;color:var(--pine);font-weight:800;text-underline-offset:.25rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,7vw,7rem);align-items:center}.image-card{position:relative}.image-card img{aspect-ratio:1.18;object-fit:cover;border-radius:45% 45% 8px 8px;box-shadow:var(--shadow)}.image-note{position:absolute;right:-1rem;bottom:2rem;background:var(--surface);padding:1rem 1.2rem;border-radius:14px;box-shadow:var(--shadow);font-size:.78rem;font-weight:800}.split-copy h2{font-size:clamp(2.7rem,5vw,5rem)}.split-copy>p{color:var(--muted);font-size:1.08rem}.checklist{list-style:none;padding:0;margin:2rem 0}.checklist li{padding:.75rem 0;border-bottom:1px solid var(--line)}.checklist li::before{content:"✓";color:var(--coral);font-weight:900;margin-right:.8rem}
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.process article{padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.22)}.process span{color:var(--mint);font-weight:800}.process h3{font:600 1.35rem Georgia;margin:2.5rem 0 .8rem}.process p{color:#b8d0c5;font-size:.9rem}.light-process{color:var(--ink)}.light-process article{border-color:var(--line)}.light-process p{color:var(--muted)}
.testimonial{padding:clamp(3rem,7vw,6rem);background:var(--surface);text-align:center;border-radius:30px}.testimonial blockquote{font:italic 500 clamp(1.8rem,4vw,3.8rem)/1.2 Georgia;margin:0 auto 2rem;max-width:900px}.testimonial cite{color:var(--muted);font-style:normal;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em}
.page-hero{padding:clamp(5rem,9vw,8rem) 0;background:linear-gradient(135deg,var(--mint-soft),var(--paper));border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(3.4rem,7vw,7rem);max-width:12ch}.page-hero p{max-width:680px;color:var(--muted);font-size:1.15rem}.crumbs{font-size:.75rem;color:var(--muted);margin-bottom:3rem}.crumbs a{text-underline-offset:.2rem}
.service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}.service-detail{background:var(--surface);border:1px solid var(--line);padding:clamp(1.5rem,4vw,3rem);border-radius:18px}.service-detail span{color:var(--coral);font-size:.7rem;font-weight:800;letter-spacing:.12em}.service-detail h2{font-size:clamp(2rem,4vw,3.5rem)}.service-detail p{color:var(--muted)}.service-detail ul{padding-left:1.1rem}
.picker{display:grid;grid-template-columns:.7fr 1.3fr;gap:4rem}.picker-controls{display:flex;flex-direction:column;gap:.5rem}.picker-controls button{padding:1rem;border:1px solid rgba(255,255,255,.2);background:transparent;color:#c6dad0;text-align:left;cursor:pointer}.picker-controls button[aria-pressed=true]{background:var(--mint);color:var(--pine-deep);font-weight:800}.picker-output{padding:clamp(2rem,5vw,4rem);border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05)}.picker-output h2{font-size:clamp(2.4rem,5vw,4.4rem)}.picker-output p{color:#bdd1c7}.picker-time{display:inline-block;margin-top:1.5rem;border:1px solid rgba(255,255,255,.2);padding:.5rem .7rem;font-size:.75rem}
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}.value-card{background:var(--surface);padding:2rem;border-radius:18px}.value-card strong{font:500 4rem Georgia;color:var(--mint)}.value-card h3{font:600 1.4rem Georgia}.value-card p{color:var(--muted)}
.timeline{border-left:1px solid var(--line);margin-left:.8rem}.timeline article{position:relative;padding:0 0 3rem 2rem}.timeline article::before{content:"";position:absolute;left:-7px;top:5px;width:13px;height:13px;border-radius:50%;background:var(--coral)}.timeline h3{font:600 1.4rem Georgia;margin-bottom:.5rem}.timeline p{color:var(--muted)}
.faq{max-width:900px;margin:auto}.faq article{border-top:1px solid var(--line)}.faq article:last-child{border-bottom:1px solid var(--line)}.faq h3{margin:0}.faq button{width:100%;display:flex;justify-content:space-between;gap:1rem;border:0;background:transparent;color:inherit;padding:1.4rem 0;text-align:left;font-weight:800;cursor:pointer}.faq button i{font-style:normal;font-size:1.4rem;transition:.2s}.faq button[aria-expanded=true] i{transform:rotate(45deg)}.faq .answer{display:grid;grid-template-rows:0fr;transition:.3s}.faq .answer p{overflow:hidden;color:var(--muted);margin:0}.faq button[aria-expanded=true]+.answer{grid-template-rows:1fr}.faq button[aria-expanded=true]+.answer p{padding-bottom:1.5rem}
.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(2rem,7vw,7rem);align-items:start}.contact-info{position:sticky;top:125px}.contact-info h2{font-size:clamp(2.7rem,5vw,4.8rem)}.contact-info p{color:var(--muted)}.hours{margin-top:2rem;border-top:1px solid var(--line)}.hours div{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--line)}.contact-form{background:var(--surface);border:1px solid var(--line);padding:clamp(1.3rem,4vw,3rem);border-radius:20px}.form-section{border:0;border-top:1px solid var(--line);padding:1.5rem 0 0;margin:1.5rem 0 0}.form-section legend{padding-right:.8rem;color:var(--pine);font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}label{display:block;margin-top:1rem}label>span{display:block;margin-bottom:.4rem;font-size:.75rem;font-weight:800}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:.85rem;background:var(--paper);color:var(--ink)}textarea{resize:vertical}.counter{display:block;text-align:right;color:var(--muted)}.consent{display:flex;gap:.6rem}.consent input{width:auto;margin-top:.35rem}.consent span{font-weight:400;color:var(--muted)}.form-status{margin-top:1rem;padding:1rem;border:1px solid #6fb38a;background:#e1f5e7;color:#235b36;border-radius:10px;opacity:0;transform:translateY(6px);transition:.2s}.form-status.visible{opacity:1;transform:none}.form-status[hidden]{display:none}
.map-wrap{display:grid;grid-template-columns:.65fr 1.35fr;background:var(--pine);color:#fff}.map-copy{padding:clamp(2rem,6vw,5rem)}.map-copy h2{font-size:clamp(2.5rem,5vw,4.8rem)}.map-copy p{color:#bdd1c7}.map{min-height:520px;border:0;width:100%;filter:saturate(.75)}
.legal-layout{display:grid;grid-template-columns:.45fr 1.55fr;gap:4rem}.legal-note{position:sticky;top:125px;align-self:start;background:var(--coral);padding:1.3rem;border-radius:14px;color:#291813}.legal-content{background:var(--surface);padding:clamp(1.5rem,5vw,4rem);border-radius:20px}.legal-content section{padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--line)}.legal-content h2{font-size:1.45rem}.legal-content p,.legal-content address{color:var(--muted);font-style:normal}
.site-footer{background:#0d3032;color:#d9e8df;padding:4rem 0 1.5rem}.footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;gap:3rem}.footer-main h3{font:600 1.1rem Georgia}.footer-main p,.footer-main a{color:#aac4b7;font-size:.85rem}.footer-main nav{display:grid;gap:.5rem}.footer-bottom{margin-top:3rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.14);display:flex;justify-content:space-between;gap:1rem;color:#85a99a;font-size:.72rem}.footer-bottom nav{display:flex;gap:1rem}.footer-bottom a{text-decoration:none}.demo-badge{color:#f4c6b8}
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .65s,transform .65s}[data-reveal].visible{opacity:1;transform:none}
html[data-theme=dark]{--paper:#102526;--surface:#173638;--ink:#edf4ee;--muted:#a6bbb3;--line:rgba(237,244,238,.14);--mint-soft:#244844;color-scheme:dark}html[data-theme=dark] .hero::after{background:linear-gradient(90deg,rgba(16,37,38,.97),rgba(16,37,38,.9) 37%,rgba(16,37,38,.16) 72%)}html[data-theme=dark] .lead{color:#b7c9c1}html[data-theme=dark] .hero-badges span{background:rgba(16,37,38,.78);border-color:rgba(255,255,255,.16)}html[data-theme=dark] .page-hero{background:linear-gradient(135deg,#1a3c3b,var(--paper))}html[data-theme=dark] .form-status{background:#173d28;color:#c9edd4}html[data-theme=dark] .image-note{background:var(--surface)}
@media(max-width:980px){.site-nav{position:absolute;top:100%;left:1rem;right:1rem;display:none;flex-direction:column;align-items:stretch;background:var(--surface);padding:.7rem;border:1px solid var(--line);box-shadow:var(--shadow)}.site-nav[data-open=true]{display:flex}.menu-toggle{display:inline-flex}.theme-toggle{margin-left:auto}.care-grid{grid-template-columns:1fr 1fr}.split,.section-head,.picker,.contact-grid,.map-wrap,.legal-layout{grid-template-columns:1fr}.contact-info,.legal-note{position:static}.process{grid-template-columns:1fr 1fr}.map{min-height:420px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>div:first-child{grid-column:1/-1}}
@media(max-width:640px){.header-inner{min-height:70px;gap:.5rem}.brand-copy small{display:none}.brand-copy strong{font-size:.84rem}.brand-mark{width:38px;height:38px}.theme-toggle span{position:absolute;width:1px;height:1px;overflow:hidden}.quickbar-inner,.care-grid,.service-list,.values,.process,.field-grid,.footer-main{grid-template-columns:1fr}.quickbar-cta{grid-template-columns:1fr auto}.quickbar-inner>a,.quickbar-inner>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.hero{min-height:700px}.hero::after{background:linear-gradient(90deg,rgba(246,244,238,.96),rgba(246,244,238,.72)),linear-gradient(0deg,rgba(246,244,238,.9),transparent)}html[data-theme=dark] .hero::after{background:linear-gradient(90deg,rgba(16,37,38,.96),rgba(16,37,38,.72)),linear-gradient(0deg,rgba(16,37,38,.9),transparent)}.hero h1{font-size:clamp(3.3rem,17vw,5rem)}.actions{flex-direction:column;align-items:stretch}.image-note{right:.5rem}.footer-main>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column}.map{min-height:360px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}[data-reveal]{opacity:1;transform:none}}
