@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,500;600;700;800&family=Inter:wght@400;500;600;700&display=swap');
:root{--teal:#0d9488;--teal-dark:#0b6e65;--teal-deep:#083f3a;--lime:#c8f542;--lime-soft:#e9fbb0;--paper:#fafaf6;--ink:#0e1b1a;--ink-soft:#425251;--white:#fff;--dark:#0c1a19;--radius:28px;--shadow:0 20px 55px rgba(8,63,58,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Inter,system-ui,sans-serif;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.wrap{width:min(1200px,calc(100% - 48px));margin:auto}h1,h2,h3{font-family:'Bricolage Grotesque',Inter,sans-serif;line-height:1.08;letter-spacing:-.025em;margin:0}p{margin:0 0 1em}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.topbar{background:var(--lime);font-weight:700;font-size:13px}.topbar .wrap{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar a{white-space:nowrap}.header{position:sticky;top:0;z-index:20;background:rgba(250,250,246,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(14,27,26,.1)}.nav{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:76px}.brand{display:flex;gap:10px;align-items:center;font:800 21px 'Bricolage Grotesque',sans-serif;white-space:nowrap}.brand-mark{width:40px;height:40px;border-radius:14px;background:var(--teal);display:grid;place-items:center;color:var(--lime);font-size:22px}.nav-groups{display:flex;gap:8px;align-items:center}.nav-group{position:relative}.nav-group summary{cursor:pointer;list-style:none;font-weight:650;padding:12px 14px;border-radius:999px}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary:after{content:'⌄';margin-left:8px}.nav-group[open] summary,.nav-group summary:hover{background:#edf3dc}.menu{position:absolute;top:calc(100% + 8px);left:0;width:min(330px,90vw);max-height:70vh;overflow:auto;background:#fff;border:1px solid rgba(14,27,26,.1);border-radius:20px;padding:10px;box-shadow:var(--shadow);display:grid;gap:3px}.menu a{padding:10px 12px;border-radius:12px;font-weight:600;font-size:14px}.menu a:hover{background:var(--lime-soft)}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:13px 22px;min-height:46px;font-weight:750;cursor:pointer;background:var(--lime);color:var(--ink);transition:transform .2s,box-shadow .2s}.btn:hover,.nav-cta:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(200,245,66,.3)}.btn-dark{background:var(--dark);color:#fff}.btn-outline{background:transparent;border:1.5px solid rgba(255,255,255,.7);color:#fff}.burger{display:none;border:0;background:none;width:46px;height:46px;border-radius:12px;font-size:24px;color:var(--ink)}.hero{padding:70px 0 76px;background:linear-gradient(135deg,#083f3a,#0b6e65 62%,#0d9488);color:#fff;position:relative;overflow:hidden}.hero:after{content:'';position:absolute;width:420px;height:420px;border-radius:50%;right:-180px;top:-180px;background:radial-gradient(circle,rgba(200,245,66,.38),transparent 70%);pointer-events:none}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:52px}.eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--lime);color:var(--ink);padding:7px 14px;border-radius:999px;font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.1em;margin-bottom:20px}.hero h1{font-size:clamp(38px,5.1vw,66px);max-width:14ch}.hero-copy{font-size:18px;color:rgba(255,255,255,.87);max-width:60ch;margin:20px 0 26px}.actions{display:flex;flex-wrap:wrap;gap:12px}.hero-photo{min-width:0;position:relative;border-radius:30px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.28);transform:rotate(1.2deg)}.hero-photo img{width:100%;height:440px;object-fit:cover}.photo-note{position:absolute;left:18px;bottom:18px;background:rgba(12,26,25,.82);backdrop-filter:blur(8px);color:#fff;border-radius:14px;padding:12px 16px;font-weight:650;font-size:13px}.section{padding:84px 0}.section-head{max-width:740px;margin:0 0 34px}.section-head.center{text-align:center;margin-left:auto;margin-right:auto}.kicker{display:inline-block;color:var(--teal-dark);background:var(--lime-soft);border-radius:999px;padding:6px 13px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px}.section h2,.section-head h2{font-size:clamp(30px,4vw,48px);margin-bottom:14px}.section-head p,.prose p{font-size:17px;color:var(--ink-soft)}.feature-grid,.service-grid,.area-grid,.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.page-card,.feature-card{background:#fff;border:1px solid rgba(14,27,26,.1);border-radius:22px;padding:25px;display:flex;flex-direction:column;min-height:245px;transition:transform .2s,box-shadow .2s}.page-card:hover,.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-tag{font-size:12px;font-weight:800;text-transform:uppercase;color:var(--teal-dark);letter-spacing:.08em}.page-card h3,.feature-card h3{font-size:22px;margin:12px 0}.page-card p,.feature-card p{font-size:15px;color:var(--ink-soft);flex:1}.card-link{font-weight:800;color:var(--teal-dark);margin-top:12px}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}.content-photo{border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}.content-photo img{width:100%;height:390px;object-fit:cover}.checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0 0;padding:0;list-style:none}.checklist li{background:#fff;border:1px solid rgba(14,27,26,.1);border-radius:16px;padding:14px 16px;font-weight:650}.checklist li:before{content:'✓';color:var(--teal-dark);font-weight:900;margin-right:10px}.dark-band{background:var(--dark);color:#fff;border-radius:34px;padding:52px;margin:0 10px}.dark-band h2{font-size:clamp(30px,4vw,48px);margin-bottom:12px}.dark-band p{color:rgba(255,255,255,.76);max-width:70ch}.area-chip-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.area-chip-list a{border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:8px 15px;background:rgba(255,255,255,.08);font-weight:650}.area-chip-list a:hover{background:var(--lime);color:var(--ink)}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.gallery-grid figure{margin:0;overflow:hidden;border-radius:18px;background:#e4e8de}.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .35s}.gallery-grid figure:hover img{transform:scale(1.04)}.faq-list{max-width:850px;margin:auto;display:grid;gap:12px}.faq-list details{border:1px solid rgba(14,27,26,.12);background:#fff;border-radius:18px;padding:0 20px}.faq-list summary{list-style:none;cursor:pointer;padding:18px 0;font-weight:750;font-size:17px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';float:right;color:var(--teal-dark);font-size:23px}.faq-list details[open] summary:after{content:'−'}.faq-list details p{color:var(--ink-soft);padding:0 0 16px}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:26px;align-items:start}.contact-card{background:#fff;border:1px solid rgba(14,27,26,.1);border-radius:22px;padding:26px}.contact-card h3{font-size:21px;margin-bottom:8px}.contact-card p{color:var(--ink-soft);margin-bottom:14px}.contact-card a{color:var(--teal-dark);font-weight:650;text-decoration:underline;text-underline-offset:3px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .full{grid-column:1/-1}.form-grid label{display:grid;gap:5px;font-weight:650;font-size:14px}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #cbd4ce;border-radius:12px;padding:12px;background:var(--paper);color:var(--ink)}.form-grid textarea{min-height:120px;resize:vertical}.form-note{font-size:13px;color:var(--ink-soft);margin-top:12px}.cta-band{background:linear-gradient(135deg,var(--teal),var(--teal-deep));border-radius:30px;padding:42px;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:24px}.cta-band h2{font-size:clamp(28px,3.7vw,42px);margin-bottom:8px}.cta-band p{color:rgba(255,255,255,.8);margin:0}.footer{margin-top:70px;padding:54px 0 26px;background:var(--dark);color:#fff}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px;padding-bottom:36px}.footer h3,.footer h4{font-size:15px;color:var(--lime);margin-bottom:14px}.footer p,.footer li{font-size:14px;color:rgba(255,255,255,.72)}.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:7px}.footer a:hover{color:var(--lime)}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding-top:18px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:rgba(255,255,255,.56)}.mobile-cta{display:none}.skip-link{position:absolute;left:-9999px;top:8px;background:#fff;padding:10px;z-index:99}.skip-link:focus{left:8px}
@media(max-width:950px){.wrap{width:min(100% - 36px,760px)}.nav{min-height:68px}.nav-groups{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100vh - 110px);overflow:auto;background:var(--paper);padding:16px 22px 28px;border-bottom:1px solid #dce3da;box-shadow:var(--shadow);align-items:stretch}.nav-groups.open{display:grid;gap:6px}.nav-group summary{border-radius:12px;background:#fff}.nav-group .menu{position:static;width:auto;max-height:none;border:0;box-shadow:none;padding:4px 0 10px;background:transparent}.nav-group .menu a{background:#fff}.burger{display:grid;place-items:center}.hero-grid{grid-template-columns:1fr 1fr;gap:25px}.hero-photo img{height:360px}.feature-grid,.service-grid,.area-grid,.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:19;background:#fff;border-top:1px solid rgba(14,27,26,.12);padding:9px 12px calc(9px + env(safe-area-inset-bottom));gap:10px}.mobile-cta a{flex:1;text-align:center;border-radius:12px;padding:10px 6px;background:var(--lime);font-weight:800}.mobile-cta a:first-child{background:#edf0e7}.footer{padding-bottom:80px}}
@media(max-width:640px){.wrap{width:calc(100% - 32px)}.topbar .wrap{min-height:0;padding:8px 0;align-items:flex-start;flex-direction:column;gap:3px}.hero{padding:46px 0 52px}.hero-grid{grid-template-columns:1fr;gap:26px}.hero h1{font-size:clamp(35px,10.5vw,52px)}.hero-copy{font-size:16px}.hero-photo{transform:none}.hero-photo img{height:260px}.section{padding:60px 0}.content-grid,.contact-grid{grid-template-columns:1fr;gap:26px}.content-photo img{height:270px}.feature-grid,.service-grid,.area-grid,.team-grid{grid-template-columns:1fr}.checklist{grid-template-columns:1fr}.dark-band{padding:32px 22px;border-radius:24px;margin:0 6px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cta-band{padding:28px 22px;display:grid}.cta-band .actions{display:grid;grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:24px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.page-card,.feature-card{min-height:0;padding:21px}.nav-cta{display:none}.footer-bottom{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.brand-symbol{width:44px;height:44px;flex:none;border-radius:14px;box-shadow:0 7px 15px rgba(8,63,58,.18)}
.topbar{color:#0e1b1a}
.brand-name{display:grid;line-height:1.02;letter-spacing:-.045em}.brand-name small{font:700 10px/1.3 Inter,sans-serif;letter-spacing:.23em;text-transform:uppercase;margin-top:4px}
.nav-actions{display:flex;align-items:center;gap:10px}.theme-toggle{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:8px 13px;border:1px solid rgba(14,27,26,.18);border-radius:999px;background:transparent;color:var(--ink);font-size:13px;font-weight:750;cursor:pointer;transition:background .2s,transform .2s}.theme-toggle:hover{background:var(--lime-soft);transform:translateY(-2px)}.theme-icon{font-size:20px;line-height:1}.header .brand{transition:transform .24s}.header .brand:hover{transform:translateY(-2px)}
:root[data-theme="dark"]{--paper:#0c1818;--ink:#f2f8f6;--ink-soft:#b5c8c2;--teal-dark:#8be3d1;--lime-soft:#214239;--white:#152726;--dark:#071111;--shadow:0 20px 55px rgba(0,0,0,.32)}
:root[data-theme="dark"] .header{background:rgba(12,24,24,.96);border-color:#31504a}:root[data-theme="dark"] .menu,:root[data-theme="dark"] .page-card,:root[data-theme="dark"] .feature-card,:root[data-theme="dark"] .checklist li,:root[data-theme="dark"] .faq-list details,:root[data-theme="dark"] .contact-card{background:#162726;border-color:#34514a}:root[data-theme="dark"] .nav-group[open] summary,:root[data-theme="dark"] .nav-group summary:hover,:root[data-theme="dark"] .menu a:hover{background:#214239}:root[data-theme="dark"] .nav-groups{background:var(--paper);border-color:#31504a}:root[data-theme="dark"] .nav-group summary,:root[data-theme="dark"] .nav-group .menu a{background:#162726}:root[data-theme="dark"] .theme-toggle{border-color:#48685f}:root[data-theme="dark"] .form-grid input,:root[data-theme="dark"] .form-grid select,:root[data-theme="dark"] .form-grid textarea{border-color:#48685f}:root[data-theme="dark"] .mobile-cta{background:#10201f;border-color:#31504a}:root[data-theme="dark"] .mobile-cta a:first-child{background:#25423a;color:#f2f8f6}
:root[data-theme="dark"] .btn:not(.btn-dark):not(.btn-outline),:root[data-theme="dark"] .nav-cta,:root[data-theme="dark"] .eyebrow,:root[data-theme="dark"] .mobile-cta a:last-child{color:#0e1b1a}:root[data-theme="dark"] .area-chip-list a:hover{color:#0e1b1a}
.hero h1,.hero-copy,.hero .actions{animation:rise-in .7s both}.hero-copy{animation-delay:.1s}.hero .actions{animation-delay:.18s}.hero-photo{animation:photo-in .9s .15s both}.hero-photo img{transition:transform .8s ease}.hero-photo:hover img{transform:scale(1.035)}
@keyframes rise-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes photo-in{from{opacity:0;transform:translateY(18px) rotate(-2deg) scale(.98)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}
body.motion-ready .section{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}body.motion-ready .section.in-view{opacity:1;transform:translateY(0)}
@media(max-width:950px){.nav-actions{margin-left:auto}.theme-label{display:none}.theme-toggle{width:44px;justify-content:center;padding:0}.nav-group summary{background:var(--white)}}
@media(max-width:640px){.brand{font-size:19px}.brand-symbol{width:40px;height:40px}.nav{gap:8px}.theme-toggle{width:40px;min-height:40px}.burger{width:40px}}
@media(prefers-reduced-motion:reduce){.hero h1,.hero-copy,.hero .actions,.hero-photo{animation:none!important}body.motion-ready .section{opacity:1;transform:none}.hero-photo img{transition:none}}

/* A photographic, editorial system shared by every route. */
:root{--paper:#f7f8f2;--ink:#102c28;--ink-soft:#4d615a;--teal:#115d51;--teal-dark:#115d51;--dark:#092d29;--lime:#d4f46c;--lime-soft:#eaf2d0;--shadow:0 18px 50px rgba(10,45,41,.09)}
body{line-height:1.6}.wrap{width:min(1280px,calc(100% - 80px))}h1,h2,h3{letter-spacing:-.05em}.topbar{background:var(--dark);color:#ecf7ef;font-size:12px;letter-spacing:.015em}.topbar .wrap{min-height:34px}.header{background:rgba(247,248,242,.97)}.nav{min-height:82px}.nav-group summary{border-radius:8px}.nav-cta,.btn{border-radius:8px;padding:13px 20px;box-shadow:none}.nav-cta{background:var(--dark);color:#fff}.btn:hover,.nav-cta:hover{box-shadow:none}.nav-cta:hover{background:#145b4f}.theme-toggle{border-radius:8px}.brand-symbol{border-radius:12px}.hero{background:var(--paper);color:var(--ink);padding:78px 0 72px;overflow:visible}.hero:after{display:none}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:clamp(40px,6vw,90px)}.hero .eyebrow{background:transparent;padding:0;border-radius:0;color:var(--teal-dark);font-size:12px;letter-spacing:.16em;margin-bottom:28px}.hero .eyebrow:before{content:'';width:24px;height:2px;background:currentColor}.hero h1{font-size:clamp(55px,7.6vw,112px);max-width:10ch;line-height:.96;letter-spacing:-.07em}.hero-copy{color:var(--ink-soft);font-size:18px;line-height:1.65;max-width:47ch;margin:30px 0 30px}.hero .btn:not(.btn-outline){background:var(--dark);color:#fff}.hero .btn-outline{border-color:var(--dark);color:var(--ink)}.hero-photo{margin:0;border-radius:50% 50% 8px 8px / 36% 36% 8px 8px;transform:none;box-shadow:none;overflow:visible;isolation:isolate}.hero-photo:before{content:'';position:absolute;z-index:-1;inset:20px -18px -18px 18px;border:2px solid var(--teal);border-radius:inherit}.hero-photo img{height:560px;object-fit:cover;border-radius:inherit;filter:saturate(.85)}.photo-note{left:auto;right:-16px;bottom:28px;background:var(--lime);color:#102c28;border-radius:5px;font-size:11px;letter-spacing:.04em;text-transform:uppercase;padding:10px 12px}.hero-home{padding-top:74px}.hero-home .hero-grid{grid-template-columns:1.02fr .98fr}.hero-home h1{font-size:clamp(64px,8.1vw,120px);max-width:9ch}.hero-home .hero-photo img{height:615px}.hero-home .hero-photo:after{content:'CARE / LANCE';position:absolute;top:30px;left:-35px;display:grid;place-items:center;width:114px;height:114px;border-radius:50%;background:var(--lime);color:#102c28;font-size:13px;font-weight:800;letter-spacing:.08em;transform:rotate(-14deg);box-shadow:0 10px 30px rgba(0,0,0,.08)}.hero-inner{padding:55px 0}.hero-inner h1{font-size:clamp(46px,5.2vw,80px);max-width:13ch}.hero-inner .hero-photo img{height:420px}.hero-inner .hero-photo:before{inset:16px -15px -15px 15px}
.section{padding:96px 0}.kicker{padding:0;background:none;border-radius:0;font-size:12px;letter-spacing:.16em}.section h2,.section-head h2{font-size:clamp(40px,5vw,70px);line-height:1.01;letter-spacing:-.06em}.section-head{max-width:850px}.section-head p,.prose p{line-height:1.75}.page-card,.feature-card{border-radius:8px;min-height:220px;box-shadow:none}.page-card{border-top:3px solid var(--dark)}.page-card h3{line-height:1.2}.feature-card{background:transparent;border-width:0 0 1px;border-radius:0;padding:20px 12px 30px}.content-grid{gap:clamp(36px,6vw,90px)}.content-photo{margin:0;border-radius:6px;box-shadow:none}.content-photo img{height:460px}.checklist{gap:0;margin-top:26px}.checklist li{border:0;border-bottom:1px solid rgba(16,44,40,.18);border-radius:0;padding:15px 6px;background:transparent}.checklist li:before{content:'↗';margin-right:12px}.dark-band{margin:0;background:var(--dark);border-radius:8px;padding:70px}.dark-band .checklist li{color:#fff;border-color:rgba(255,255,255,.2)}.cta-band{background:var(--lime);color:var(--dark);border-radius:8px;padding:44px 52px}.cta-band p{color:#345147}.cta-band .btn{background:var(--dark);color:#fff}.cta-band .btn-outline{border-color:var(--dark);color:var(--dark);background:transparent}.footer{margin-top:60px}.contact-card,.faq-list details{border-radius:8px}.gallery-grid figure{border-radius:7px}.gallery-grid img{aspect-ratio:4/5}.text-link{display:inline-flex;gap:14px;align-items:center;margin-top:22px;padding-bottom:6px;border-bottom:2px solid var(--ink);font-weight:800;color:var(--ink)}.text-link span{font-size:22px;line-height:1}.intro-layout{display:grid;grid-template-columns:1fr .72fr;gap:100px;align-items:end;margin-bottom:42px}.intro-layout h2{max-width:11ch}.intro-layout p{font-size:18px;max-width:48ch;color:var(--ink-soft)}.visual-tiles{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.visual-tile{height:430px;overflow:hidden;position:relative;background:var(--dark);border-radius:5px;color:#fff}.visual-tile:nth-child(2){margin-top:42px}.visual-tile:nth-child(3){margin-top:84px}.visual-tile img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease;filter:saturate(.8)}.visual-tile:hover img{transform:scale(1.06)}.tile-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(4,28,25,.82) 100%)}.tile-text{position:absolute;inset:auto 28px 28px;display:grid;gap:13px}.tile-text small{text-transform:uppercase;letter-spacing:.15em;font-weight:800}.tile-text strong{font:700 clamp(25px,2.3vw,35px)/1.06 'Bricolage Grotesque',sans-serif;letter-spacing:-.04em}.tile-text>span{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff80;padding-top:12px;font-weight:750}.tile-text b{font-size:23px}.home-services{background:#eaf0e7}.split-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:32px}.split-heading p{max-width:370px;color:var(--ink-soft)}.service-rows{border-top:1px solid rgba(16,44,40,.25);margin-bottom:18px;display:grid;grid-template-columns:1fr 1fr;column-gap:50px}.service-row{display:grid;grid-template-columns:46px 1fr auto;gap:16px;align-items:center;border-bottom:1px solid rgba(16,44,40,.25);padding:19px 5px;transition:padding .2s,background .2s}.service-row:hover{padding-left:15px;background:rgba(255,255,255,.55)}.service-row .row-number{font-size:12px;color:var(--teal-dark);font-weight:800}.service-row strong{font:700 24px/1.12 'Bricolage Grotesque',sans-serif;letter-spacing:-.04em}.service-row>span:nth-of-type(2){display:none}.service-row b{font-size:24px;font-weight:400}.home-story{background:var(--dark);color:#fff}.story-grid{display:grid;grid-template-columns:.88fr 1fr;gap:clamp(45px,8vw,120px);align-items:center}.story-grid figure{margin:0;position:relative}.story-grid img{width:100%;height:570px;object-fit:cover;border-radius:48% 48% 4px 4px / 30% 30% 4px 4px;filter:saturate(.8)}.story-grid figcaption{margin-top:10px;text-transform:uppercase;font-size:11px;letter-spacing:.1em;color:#bbd2c8}.story-grid h2{color:#fff}.story-grid p{font-size:18px;color:#c8d9d2;line-height:1.75;margin:25px 0}.story-grid .kicker{color:var(--lime)}.story-grid .btn-dark{background:var(--lime);color:var(--dark)}.story-points{display:grid;margin:28px 0 30px;border-top:1px solid #ffffff55}.story-points span{display:flex;gap:25px;padding:13px 0;border-bottom:1px solid #ffffff55;color:var(--lime);font-size:13px}.story-points b{color:#fff;font-size:16px}.areas-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,9vw,140px);align-items:center}.areas-layout p{max-width:48ch;color:var(--ink-soft);font-size:18px}.place-panel{background:#e6efdd;padding:30px 38px;border-top:6px solid var(--dark);display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.place-caption{grid-column:1/-1;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800;padding-bottom:28px}.place-panel a{border-top:1px solid rgba(16,44,40,.23);padding:16px 0;font-size:19px;font-weight:750;display:flex;justify-content:space-between;gap:8px}.place-panel a span{font-size:13px}.place-panel .place-main{grid-column:1/-1;font:700 38px 'Bricolage Grotesque',sans-serif;letter-spacing:-.04em}.place-panel .place-main span{align-self:center;font:750 13px Inter,sans-serif;letter-spacing:0}.place-panel a:hover{color:var(--teal)}
:root[data-theme="dark"]{--paper:#101d1b;--ink:#f1f7f2;--ink-soft:#b8cfc5;--teal-dark:#b3e7c8;--lime-soft:#253d31;--dark:#061412}:root[data-theme="dark"] .topbar{color:#e9f5ec}:root[data-theme="dark"] .header{background:rgba(16,29,27,.97)}:root[data-theme="dark"] .nav-cta{background:var(--lime);color:#102c28}:root[data-theme="dark"] .hero{background:#101d1b}:root[data-theme="dark"] .hero .btn:not(.btn-outline){background:var(--lime);color:#102c28}:root[data-theme="dark"] .hero .btn-outline{border-color:#b8cfc5;color:#f1f7f2}:root[data-theme="dark"] .home-services{background:#182925}:root[data-theme="dark"] .place-panel{background:#20372f}:root[data-theme="dark"] .service-row:hover{background:#284238}:root[data-theme="dark"] .cta-band{color:#102c28}:root[data-theme="dark"] .cta-band h2,:root[data-theme="dark"] .cta-band p{color:#102c28}:root[data-theme="dark"] .cta-band .btn:not(.btn-outline){background:#102c28;color:#fff}:root[data-theme="dark"] .cta-band .btn-outline{color:#102c28;border-color:#102c28}:root[data-theme="dark"] .text-link{border-color:var(--ink)}:root[data-theme="dark"] .checklist li{background:transparent;border-color:#37534a}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.hero h1{font-size:clamp(50px,7vw,80px)}.hero-home h1{font-size:clamp(55px,8vw,92px)}.hero-photo img{height:490px}.hero-home .hero-photo img{height:540px}.intro-layout{gap:50px}.visual-tile{height:370px}.tile-text{inset:auto 20px 20px}}
@media(max-width:750px){.wrap{width:calc(100% - 36px)}.topbar .wrap{min-height:34px}.hero,.hero-inner{padding:48px 0 54px}.hero-grid,.hero-home .hero-grid{grid-template-columns:1fr;gap:34px}.hero h1,.hero-home h1{font-size:clamp(52px,11vw,82px);max-width:12ch}.hero-photo{width:min(100%,600px);margin-left:auto;margin-right:12px}.hero-photo img,.hero-home .hero-photo img,.hero-inner .hero-photo img{height:400px}.hero-home .hero-photo:after{left:-10px;width:90px;height:90px;font-size:10px}.section{padding:70px 0}.intro-layout,.story-grid,.areas-layout{grid-template-columns:1fr;gap:30px}.intro-layout{margin-bottom:32px}.visual-tiles{grid-template-columns:1fr 1fr;gap:12px}.visual-tile{height:320px}.visual-tile:nth-child(2),.visual-tile:nth-child(3){margin-top:0}.visual-tile:nth-child(3){grid-column:1/-1;height:270px}.split-heading{display:block}.service-rows{grid-template-columns:1fr}.story-grid img{height:400px}.place-panel{padding:25px}.dark-band{padding:40px}.content-photo img{height:350px}}
@media(max-width:500px){.wrap{width:calc(100% - 32px)}.topbar .wrap{flex-direction:row;align-items:center;padding:7px 0;gap:10px}.topbar span{font-size:10px;line-height:1.2}.topbar a{font-size:11px}.nav{min-height:68px}.hero{padding-top:43px}.hero .eyebrow{margin-bottom:20px}.hero h1,.hero-home h1{font-size:clamp(48px,13vw,67px)}.hero-copy{font-size:16px;margin:22px 0}.hero .actions{gap:8px}.hero .btn{padding:11px 13px;font-size:13px}.hero-photo img,.hero-home .hero-photo img,.hero-inner .hero-photo img{height:330px}.hero-photo:before{inset:12px -8px -8px 8px}.photo-note{right:-8px;font-size:9px}.section h2,.section-head h2{font-size:clamp(35px,10vw,50px)}.visual-tiles{grid-template-columns:1fr}.visual-tile,.visual-tile:nth-child(3){grid-column:auto;height:300px}.tile-text strong{font-size:29px}.service-row strong{font-size:21px}.story-grid img{height:340px}.place-panel{grid-template-columns:1fr}.place-caption,.place-panel .place-main{grid-column:auto}.place-panel .place-main{font-size:31px}.cta-band{padding:28px 22px}.dark-band{padding:32px 22px}.footer{margin-top:30px}}
@media(prefers-reduced-motion:reduce){.visual-tile img{transition:none}}
.breadcrumbs{display:flex;gap:10px;align-items:center;padding-top:19px;font-size:12px;font-weight:700;color:var(--ink-soft)}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.breadcrumbs span[aria-current]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-contact .hero-inner{background:#eaf0e7}:root[data-theme="dark"] .page-contact .hero-inner{background:#182925}
.seo-detail{background:#f0f3e9}.detail-label{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid rgba(16,44,40,.22);padding-bottom:16px;margin-bottom:35px;font-size:13px;font-weight:700;color:var(--ink-soft)}.detail-label .kicker{margin:0}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,4vw,56px)}.detail-grid article{padding-top:13px;border-top:3px solid var(--dark)}.detail-index{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:var(--teal-dark);font-weight:800}.detail-grid h2{font-size:clamp(27px,2.7vw,39px);line-height:1.12;margin:18px 0 16px}.detail-grid p{color:var(--ink-soft);font-size:16px;line-height:1.75}.detail-answer{display:grid;grid-template-columns:.8fr 1fr;gap:50px;align-items:start;margin-top:54px;padding:34px 40px;background:var(--lime);color:#102c28;border-radius:5px}.detail-answer h2{font-size:clamp(25px,3vw,39px);line-height:1.12;margin:0}.detail-answer .kicker{color:#245648}.detail-answer p{font-size:17px;line-height:1.65;margin:0;color:#27483e}
:root[data-theme="dark"] .seo-detail{background:#172925}:root[data-theme="dark"] .detail-grid article{border-color:var(--lime)}:root[data-theme="dark"] .detail-answer h2,:root[data-theme="dark"] .detail-answer p{color:#102c28}:root[data-theme="dark"] .detail-answer .kicker{color:#245648}
@media(max-width:900px){.detail-grid{grid-template-columns:1fr 1fr}.detail-answer{gap:30px}}
@media(max-width:600px){.detail-grid,.detail-answer{grid-template-columns:1fr}.detail-grid{gap:24px}.detail-grid article{padding-top:9px}.detail-grid h2{font-size:31px}.detail-answer{margin-top:35px;padding:25px;gap:12px}.detail-label{align-items:flex-start}.detail-label>span:last-child{text-align:right}}

/* Carelance visual system: dark pine, chalk, vivid citron, and documentary photography. */
:root{--paper:#f7f7f2;--ink:#102a26;--ink-soft:#50645d;--dark:#0b2924;--lime:#d9f973;--lime-soft:#edf8d4;--teal:#176354;--teal-dark:#176354;--shadow:0 22px 65px rgba(8,40,33,.1)}
.wrap{width:min(1300px,calc(100% - 72px))}.header{background:rgba(247,247,242,.96);border-bottom:1px solid rgba(16,42,38,.1)}.nav{min-height:78px}.brand-name{font-size:23px}.topbar{font-size:12px;background:var(--dark);color:#f3f5ee}.topbar .wrap{min-height:32px}.nav-group summary{font-size:14px}.nav-group[open] summary{background:var(--lime-soft)}.nav-cta{background:var(--lime);color:var(--dark);font-weight:800}.nav-cta:hover{background:#c9f04d;color:var(--dark)}.btn{font-size:14px;min-height:50px;border-radius:5px;padding:13px 22px}.theme-toggle{min-height:42px}.section{padding:clamp(70px,7vw,112px) 0}.section h2{letter-spacing:-.065em}.kicker{font-weight:850}.text-link{transition:gap .25s,color .25s}.text-link:hover{gap:24px;color:var(--teal)}
.hero-home-v4{background:#0b2924;color:#fff;overflow:hidden;padding:0;min-height:710px}.hero-home-v4:after{display:none}.hero-v4-grid{display:grid;grid-template-columns:1fr .92fr;gap:clamp(40px,5vw,80px);align-items:center;min-height:665px}.hero-v4-copy{padding:70px 0 45px;position:relative;z-index:2}.hero-home-v4 .eyebrow{background:transparent;color:var(--lime);padding:0;font-size:12px;letter-spacing:.19em;border-radius:0}.hero-home-v4 .eyebrow:before{background:var(--lime)}.hero-home-v4 h1{font-size:clamp(72px,7.8vw,116px);line-height:.89;max-width:none;color:#fff;letter-spacing:-.075em}.hero-home-v4 h1 em{font-style:normal;color:var(--lime)}.hero-home-v4 .hero-copy{max-width:38ch;font-size:19px;line-height:1.63;color:#d0e4d9;margin:35px 0 29px}.hero-home-v4 .btn{background:var(--lime);color:var(--dark)}.hero-home-v4 .actions{gap:24px;align-items:center}.hero-scroll{display:inline-flex;align-items:center;gap:12px;color:#f3f5ee;font-weight:750;border-bottom:1px solid rgba(255,255,255,.6);padding-bottom:8px}.hero-scroll span{font-size:20px;transition:transform .25s}.hero-scroll:hover span{transform:translateY(5px)}.hero-v4-meta{display:flex;gap:11px;flex-wrap:wrap;margin-top:65px}.hero-v4-meta span{border:1px solid rgba(255,255,255,.3);border-radius:50px;padding:6px 14px;color:#d0e4d9;font-size:12px;font-weight:750;letter-spacing:.035em}.hero-v4-art{min-width:0;position:relative;min-height:665px;display:flex;align-items:stretch}.hero-v4-art:after{content:'';position:absolute;inset:0 -200px 0 48%;background:#123c33;z-index:0}.hero-v4-main{position:relative;z-index:1;margin:55px -35px 60px 5px;flex:1;overflow:hidden;border-radius:120px 7px 7px 7px;box-shadow:0 20px 80px rgba(0,0,0,.24)}.hero-v4-main img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:saturate(.9);transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}.hero-v4-main:hover img{transform:scale(1.045)}.hero-v4-small{position:absolute;z-index:2;bottom:4px;left:-60px;width:180px;height:220px;margin:0;transform:rotate(-6deg);border:7px solid #f4f5ef;box-shadow:0 18px 45px rgba(0,0,0,.25)}.hero-v4-small img{width:100%;height:100%;object-fit:cover}.hero-v4-stamp{position:absolute;z-index:3;right:-26px;top:35px;width:112px;height:112px;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:2px;background:var(--lime);color:var(--dark);font:800 54px 'Bricolage Grotesque',sans-serif;transform:rotate(13deg)}.hero-v4-stamp span{font-size:18px;align-self:flex-start;margin-top:24px}.hero-v4-photo-note{position:absolute;z-index:3;right:0;bottom:40px;background:#0b2924;padding:8px 10px;font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#e5eee7}.hero-v4-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.2);padding:17px 0 20px;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:750;color:#bdcfc4}
.home-editorial{background:#f7f7f2}.editorial-intro{display:grid;grid-template-columns:1.25fr .55fr;gap:60px;align-items:end}.editorial-intro h2{max-width:13ch;font-size:clamp(48px,6vw,88px);line-height:.99}.editorial-intro h2 em,.home-areas-v3 h2 em{color:var(--teal);font-style:normal}.editorial-intro p{font-size:18px;line-height:1.7;color:var(--ink-soft);max-width:36ch}.home-explore{background:#e8f0e9}.explore-heading{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}.explore-heading .kicker{grid-column:1/-1}.explore-heading h2{font-size:clamp(43px,5vw,70px);margin:0}.explore-heading p{color:var(--ink-soft);margin:0 0 6px}.service-tabs{display:flex;gap:8px;margin:34px 0 30px;padding:6px;background:#dce8dd;width:max-content;max-width:100%;border-radius:8px}.service-tab{border:0;background:transparent;color:#35594d;cursor:pointer;padding:13px 22px;border-radius:5px;font-weight:800;display:flex;gap:11px;align-items:center;transition:background .25s,transform .25s,color .25s}.service-tab span{font-size:11px;opacity:.7}.service-tab:hover{transform:translateY(-2px)}.service-tab[aria-selected="true"]{background:var(--dark);color:#fff;box-shadow:0 5px 18px rgba(9,41,36,.13)}.service-panel[hidden]{display:none}.service-panel:not([hidden]){animation:panel-in .4s both}.panel-subtitle{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);font-weight:800;margin:0 0 20px}.showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.showcase-card{display:block;min-width:0;background:#f9faf5;overflow:hidden;border-radius:5px;transition:transform .3s,box-shadow .3s}.showcase-card:hover{transform:translateY(-6px);box-shadow:0 18px 45px rgba(8,40,33,.12)}.showcase-image{height:300px;position:relative;overflow:hidden}.showcase-image img{height:100%;width:100%;object-fit:cover;transition:transform .65s}.showcase-card:hover img{transform:scale(1.055)}.showcase-arrow{position:absolute;bottom:14px;right:14px;border-radius:50%;width:44px;height:44px;background:var(--lime);display:grid;place-items:center;font-size:23px;color:var(--dark);transition:transform .25s}.showcase-card:hover .showcase-arrow{transform:rotate(45deg)}.showcase-caption{padding:24px 24px 28px}.showcase-caption>span{color:var(--teal);font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:850}.showcase-caption h3{font-size:28px;line-height:1.05;margin:14px 0 10px}.showcase-caption p{font-size:14px;color:var(--ink-soft);line-height:1.65;margin:0}.home-explore .text-link{margin-top:32px}
.home-approach{background:#0b2924;color:#fff}.approach-layout{display:grid;grid-template-columns:.8fr 1fr;gap:clamp(50px,7vw,110px);align-items:center}.approach-image{position:relative;min-height:620px}.approach-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:220px 6px 6px 6px}.approach-image span{position:absolute;bottom:20px;left:20px;background:var(--lime);padding:11px 15px;color:var(--dark);font-size:11px;font-weight:850;letter-spacing:.1em}.approach-copy .kicker{color:var(--lime)}.approach-copy h2{color:#fff;font-size:clamp(48px,5.6vw,79px);max-width:10ch}.approach-copy>p{font-size:18px;color:#c9ded2;line-height:1.7;margin:22px 0 30px}.approach-steps{border-top:1px solid rgba(255,255,255,.23);margin-bottom:30px}.approach-steps div{display:grid;grid-template-columns:44px 1fr;gap:0 16px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.23)}.approach-steps b{grid-row:span 2;color:var(--lime);font-size:12px}.approach-steps strong{font:700 21px 'Bricolage Grotesque',sans-serif}.approach-steps p{color:#bbd2c5;font-size:14px;margin:4px 0 0}.approach-copy .btn-dark{background:var(--lime);color:var(--dark)}.home-areas-v3{background:#f7f7f2}.area-layout-v3{display:grid;grid-template-columns:.95fr 1fr;gap:clamp(60px,8vw,130px);align-items:center}.area-layout-v3 h2{font-size:clamp(48px,5.8vw,80px);line-height:1}.area-layout-v3 p{font-size:17px;color:var(--ink-soft);line-height:1.7;max-width:44ch;margin:23px 0}.area-index{background:#e7efe3;padding:24px 32px;border-radius:6px;display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.area-index-title{grid-column:1/-1;font-size:12px;text-transform:uppercase;letter-spacing:.15em;font-weight:850;padding-bottom:22px}.area-index>a{border-top:1px solid #9fb4a5;display:flex;gap:8px;justify-content:space-between;padding:15px 0;font-weight:750;transition:padding .25s,color .25s}.area-index>a:hover{padding-left:7px;color:var(--teal)}.area-index>a b{font-size:19px;font-weight:400}.area-index .area-home{grid-column:1/-1;font:700 31px 'Bricolage Grotesque',sans-serif;align-items:center}.area-index .area-home small{font:700 12px Inter,sans-serif;margin-left:auto}
.hero-v4-inner{background:#e8f0e9;overflow:hidden;padding:50px 0 70px}.hero-v4-inner h1{font-size:clamp(46px,5.4vw,76px);line-height:.99;max-width:13ch}.hero-v4-inner .hero-grid{gap:clamp(45px,7vw,105px)}.hero-v4-inner .hero-photo{transform:none;border-radius:8px;box-shadow:22px 22px 0 #cdded0;margin:0;overflow:hidden}.hero-v4-inner .hero-photo:before{display:none}.hero-v4-inner .hero-photo img{height:470px;border-radius:8px;filter:saturate(.9)}.hero-v4-inner .photo-note{right:0;bottom:0;border-radius:0;background:var(--lime);font-size:10px}.hero-v4-inner .eyebrow{color:var(--teal)}.hero-v4-inner .hero-copy{color:#48615a}.hero-v4-inner .btn:not(.btn-outline){background:var(--dark);color:#fff}.hero-v4-inner .btn-outline{border-color:var(--dark);color:var(--dark)}.page-contact .hero-v4-inner{background:#e8f0e9}
.seo-detail{background:#f1f5ed}.detail-grid article{border-color:var(--teal)}.cta-band{background:var(--lime)}.page-card,.feature-card{transition:transform .3s,box-shadow .3s}.page-card:hover,.feature-card:hover{transform:translateY(-5px)}.checklist li{transition:background .25s,padding .25s}.checklist li:hover{background:rgba(217,249,115,.18);padding-left:12px}.content-photo img{transition:transform .65s}.content-photo:hover img{transform:scale(1.035)}.faq-list details{transition:border-color .25s,box-shadow .25s}.faq-list details[open]{border-color:var(--teal);box-shadow:0 10px 28px rgba(8,40,33,.08)}
:root[data-theme="dark"]{--paper:#0d1c19;--ink:#f0f6ef;--ink-soft:#bdd0c4;--dark:#071712;--lime-soft:#2b4834;--teal-dark:#9ae4ba}:root[data-theme="dark"] .topbar{background:#071712}:root[data-theme="dark"] .header{background:rgba(13,28,25,.96)}:root[data-theme="dark"] .nav-cta{background:var(--lime);color:#102a26}:root[data-theme="dark"] .home-editorial,:root[data-theme="dark"] .home-areas-v3{background:#0d1c19}:root[data-theme="dark"] .home-explore,:root[data-theme="dark"] .hero-v4-inner{background:#162e26}:root[data-theme="dark"] .service-tabs{background:#254335}:root[data-theme="dark"] .service-tab{color:#e0eadf}:root[data-theme="dark"] .service-tab[aria-selected="true"]{background:var(--lime);color:#102a26}:root[data-theme="dark"] .showcase-card{background:#1a322a}:root[data-theme="dark"] .area-index{background:#1a342a}:root[data-theme="dark"] .area-index>a{border-color:#4e6e59}:root[data-theme="dark"] .hero-v4-inner .hero-copy{color:#bdd0c4}:root[data-theme="dark"] .hero-v4-inner .btn:not(.btn-outline){background:var(--lime);color:#102a26}:root[data-theme="dark"] .hero-v4-inner .btn-outline{border-color:#bdd0c4;color:#f0f6ef}:root[data-theme="dark"] .hero-v4-inner .hero-photo{box-shadow:22px 22px 0 #2d4d3e}:root[data-theme="dark"] .seo-detail{background:#142920}:root[data-theme="dark"] .editorial-intro h2 em,:root[data-theme="dark"] .home-areas-v3 h2 em{color:var(--lime)}:root[data-theme="dark"] .page-contact .hero-v4-inner{background:#162e26}
@keyframes panel-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-reveal{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0)}}.hero-v4-main{animation:hero-reveal .9s .18s both}.hero-v4-copy h1,.hero-v4-copy .hero-copy,.hero-v4-copy .actions{animation:rise-in .65s both}.hero-v4-copy .hero-copy{animation-delay:.12s}.hero-v4-copy .actions{animation-delay:.22s}
@media(max-width:1050px){.wrap{width:calc(100% - 44px)}.hero-v4-grid{gap:25px}.hero-home-v4 h1{font-size:clamp(62px,8vw,91px)}.hero-v4-small{left:-30px}.hero-v4-stamp{right:-4px}.showcase-image{height:240px}.showcase-caption{padding:20px}.showcase-caption h3{font-size:25px}.approach-image{min-height:530px}}
@media(max-width:800px){.hero-v4-grid,.editorial-intro,.approach-layout,.area-layout-v3{grid-template-columns:1fr}.hero-v4-grid{gap:0}.hero-v4-copy{padding:58px 0 15px}.hero-home-v4 h1{font-size:clamp(66px,10vw,92px)}.hero-v4-meta{margin-top:30px}.hero-v4-art{min-height:460px;margin-left:20px}.hero-v4-main{margin:25px 0 40px 0}.hero-v4-small{bottom:0;left:-20px;width:145px;height:180px}.hero-v4-bottom{font-size:10px}.editorial-intro{gap:20px}.editorial-intro h2{max-width:16ch}.showcase-grid{gap:12px}.showcase-image{height:220px}.approach-image{min-height:500px;max-width:580px}.approach-copy h2{max-width:12ch}.area-layout-v3{gap:40px}.hero-v4-inner .hero-grid{grid-template-columns:1fr 1fr;gap:25px}.hero-v4-inner .hero-photo img{height:400px}}
@media(max-width:620px){.wrap{width:calc(100% - 32px)}.hero-home-v4{min-height:0}.hero-v4-copy{padding:50px 0 10px}.hero-home-v4 h1{font-size:clamp(53px,13vw,76px);line-height:.92}.hero-home-v4 .hero-copy{font-size:16px;margin:24px 0}.hero-home-v4 .actions{gap:16px}.hero-v4-meta{gap:6px;margin-top:28px}.hero-v4-meta span{font-size:10px;padding:5px 9px}.hero-v4-art{min-height:380px;margin:0 8px 0 10px}.hero-v4-main{margin:18px 0 35px}.hero-v4-small{left:-8px;width:115px;height:145px;border-width:5px}.hero-v4-stamp{width:78px;height:78px;font-size:41px;right:-8px;top:10px}.hero-v4-stamp span{font-size:13px;margin-top:17px}.hero-v4-photo-note{font-size:8px;bottom:25px}.hero-v4-bottom{padding:14px 0;line-height:1.3}.editorial-intro h2{font-size:clamp(43px,11vw,60px)}.editorial-intro p{font-size:16px}.explore-heading{display:block}.explore-heading h2{font-size:46px}.service-tabs{width:100%;gap:3px;padding:4px}.service-tab{flex:1;justify-content:center;padding:12px 6px;font-size:13px;gap:4px}.service-tab span{font-size:9px}.showcase-grid{grid-template-columns:1fr;gap:15px}.showcase-image{height:260px}.showcase-caption h3{font-size:26px}.approach-image{min-height:390px}.approach-copy h2{font-size:48px}.area-index{padding:20px}.hero-v4-inner{padding:34px 0 55px}.hero-v4-inner .hero-grid{grid-template-columns:1fr;gap:25px}.hero-v4-inner h1{font-size:clamp(43px,10vw,62px)}.hero-v4-inner .hero-photo{margin:0 20px 20px 0}.hero-v4-inner .hero-photo img{height:320px}.hero-v4-inner .hero-copy{font-size:16px}.hero-v4-inner .actions{gap:9px}.hero-v4-inner .btn{padding:11px 13px;font-size:13px}.nav-cta{display:none}}
@media(prefers-reduced-motion:reduce){.hero-v4-main,.hero-v4-copy h1,.hero-v4-copy .hero-copy,.hero-v4-copy .actions,.service-panel:not([hidden]){animation:none!important}.showcase-card img,.hero-v4-main img,.showcase-arrow,.service-tab,.hero-scroll span{transition:none!important}}
.quote-preview{margin-top:22px;padding:20px 22px;background:#e8f0e9;border-left:4px solid var(--teal);border-radius:4px}.quote-preview p{margin:9px 0 14px;line-height:1.55}.copy-request{border:0;background:none;padding:0 0 3px;border-bottom:2px solid currentColor;color:var(--teal);font-weight:800;cursor:pointer}.copy-request:hover{color:var(--ink)}.quote-preview .form-note{margin-bottom:0}:root[data-theme="dark"] .quote-preview{background:#20392f;border-color:var(--lime)}:root[data-theme="dark"] .copy-request{color:var(--lime)}

.reviews-section{background:var(--dark);color:#fff}.review-heading{display:grid;grid-template-columns:1.3fr .7fr;gap:30px;align-items:end;margin-bottom:34px}.review-heading h2{max-width:13ch}.review-heading p{font-size:17px;line-height:1.7;color:var(--ink-soft)}.reviews-section .review-heading p{color:#c3d9cf}.reviews-section .kicker{color:var(--lime)}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.review-card{margin:0;background:#24443a;border:1px solid #59766b;padding:clamp(26px,4vw,50px);min-height:325px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .3s,border-color .3s}.review-card:hover{transform:translateY(-5px);border-color:var(--lime)}.review-card:before{content:'“';font:800 83px/0.8 'Bricolage Grotesque',sans-serif;color:var(--lime)}.review-card blockquote{font:600 clamp(24px,2.4vw,34px)/1.25 'Bricolage Grotesque',sans-serif;letter-spacing:-.035em;margin:16px 0 28px}.review-card figcaption{border-top:1px solid #789389;padding-top:18px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:13px;color:#d4e8da}.review-card figcaption a{font-weight:800;color:var(--lime);text-decoration:underline;text-underline-offset:4px}.review-footer{display:flex;gap:30px;flex-wrap:wrap}.reviews-section .text-link{color:#fff;border-color:var(--lime)}.faq-preview-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,7vw,100px);align-items:start}.faq-preview-layout h2{max-width:12ch}.faq-preview-layout>div:first-child>p{max-width:42ch;color:var(--ink-soft)}.faq-preview .faq-list{width:100%}.gallery-teaser{background:#e7efe3}.gallery-teaser-images{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:12px;align-items:center}.gallery-teaser-images img{height:330px;width:100%;object-fit:cover;transition:transform .3s}.gallery-teaser-images img:nth-child(2){height:400px}.gallery-teaser-images img:hover{transform:translateY(-7px)}.faq-tools{background:var(--dark);color:#fff;padding:clamp(22px,4vw,36px);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;margin-bottom:65px}.faq-tools label{font-weight:800}.faq-tools input{width:100%;min-width:0;padding:13px 18px;border:1px solid #789389;border-radius:3px;background:#fff;color:#102c28}.faq-tools #faq-count{font-size:13px;color:var(--lime);white-space:nowrap}.faq-columns{display:grid;grid-template-columns:230px 1fr;gap:clamp(28px,6vw,85px)}.faq-sidebar{position:sticky;top:110px;align-self:start;display:grid;gap:13px}.faq-sidebar a{padding:6px 0;border-bottom:1px solid #9daea4;font-weight:750}.faq-sidebar a:hover{color:var(--teal)}.faq-groups{display:grid;gap:62px}.faq-group{scroll-margin-top:105px}.faq-group h2{font-size:clamp(29px,3.5vw,44px);margin-bottom:22px}.faq-page .faq-list{max-width:none}.faq-item[hidden],.faq-group[hidden],.gallery-tile[hidden],.faq-empty[hidden]{display:none!important}.faq-empty{padding:30px;border-left:4px solid var(--teal);background:#e5f0e5}.faq-empty a{text-decoration:underline}.gallery-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:35px;align-items:end;margin-bottom:36px}.gallery-intro h2{max-width:14ch}.gallery-intro p{font-size:18px;color:var(--ink-soft)}.gallery-controls{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid #95a79d;padding-top:22px}.gallery-filter{background:transparent;color:var(--ink);border:1px solid #9bac9e;padding:9px 17px;font-size:13px;font-weight:800;cursor:pointer;transition:background .2s,transform .2s}.gallery-filter:hover{transform:translateY(-2px)}.gallery-filter[aria-pressed="true"]{background:var(--dark);color:#fff;border-color:var(--dark)}.gallery-count{margin:20px 0;color:var(--ink-soft);font-size:13px}.gallery-collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gallery-tile{border:0;padding:0;background:var(--dark);position:relative;overflow:hidden;cursor:pointer;min-width:0;text-align:left;color:#fff}.gallery-tile:nth-child(5n+1){grid-row:span 2}.gallery-tile img{width:100%;height:100%;min-height:260px;max-height:570px;object-fit:cover;transition:transform .6s,filter .6s}.gallery-tile:hover img,.gallery-tile:focus-visible img{transform:scale(1.05);filter:brightness(.84)}.gallery-tile-caption{position:absolute;bottom:0;left:0;right:0;display:grid;gap:5px;padding:45px 20px 19px;background:linear-gradient(transparent,rgba(6,28,25,.9));pointer-events:none}.gallery-tile-caption small{text-transform:uppercase;letter-spacing:.15em;font-size:10px}.gallery-tile-caption strong{font:700 23px 'Bricolage Grotesque',sans-serif}.gallery-tile-caption>span{position:absolute;right:20px;bottom:22px;font-size:24px}.gallery-disclosure{margin-top:25px}.gallery-disclosure a{text-decoration:underline}.gallery-dialog{padding:0;border:0;max-width:min(1000px,calc(100vw - 30px));max-height:calc(100vh - 30px);background:var(--dark);color:#fff;box-shadow:0 30px 80px #0008}.gallery-dialog::backdrop{background:#071b19e8;backdrop-filter:blur(6px)}.gallery-dialog-inner{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto}.gallery-dialog img{width:100%;height:min(70vh,700px);object-fit:contain}.gallery-close{position:absolute;top:10px;right:10px;z-index:2;width:45px;height:45px;border:0;background:#fff;color:#102c28;font-size:31px;cursor:pointer}.gallery-dialog-bottom{padding:17px 25px;display:flex;justify-content:space-between;align-items:center;gap:20px}.gallery-dialog-bottom small{text-transform:uppercase;letter-spacing:.15em;color:var(--lime)}.gallery-dialog-bottom h3{font-size:24px;margin:6px 0}.gallery-dialog-bottom p{margin:0;font-size:12px;color:#b1c8bf}.gallery-arrows{display:flex;gap:8px}.gallery-arrows button{background:transparent;color:#fff;border:1px solid #9db8ae;width:45px;height:45px;font-size:20px;cursor:pointer}.gallery-arrows button:hover{background:var(--lime);color:var(--dark)}
:root[data-theme="dark"] .gallery-teaser{background:#1b3028}:root[data-theme="dark"] .review-heading p{color:#c3d9cf}:root[data-theme="dark"] .faq-empty{background:#20392f}:root[data-theme="dark"] .gallery-filter[aria-pressed="true"]{background:var(--lime);color:var(--dark)}
@media(max-width:800px){.review-heading,.faq-preview-layout,.gallery-intro{grid-template-columns:1fr}.faq-columns{grid-template-columns:1fr}.faq-sidebar{position:static;display:flex;gap:15px;flex-wrap:wrap}.faq-sidebar .card-tag{flex-basis:100%}.faq-tools{grid-template-columns:1fr;gap:7px}.gallery-collection{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-tile:nth-child(5n+1){grid-row:auto}.gallery-tile img{height:330px}.review-grid{grid-template-columns:1fr}}
@media(max-width:560px){.gallery-collection{gap:8px}.gallery-tile img{height:225px;min-height:0}.gallery-tile-caption{padding:35px 10px 10px}.gallery-tile-caption strong{font-size:16px}.gallery-tile-caption>span{right:9px;bottom:12px;font-size:17px}.gallery-teaser-images{gap:5px}.gallery-teaser-images img,.gallery-teaser-images img:nth-child(2){height:180px}.review-card{min-height:280px}.review-card blockquote{font-size:25px}.gallery-dialog-bottom{padding:15px;align-items:end}.gallery-dialog-bottom h3{font-size:18px}.gallery-arrows button{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.review-card,.gallery-tile img,.gallery-filter,.gallery-teaser-images img{transition:none!important}}

.gallery-teaser-images figure{position:relative;margin:0;min-width:0;overflow:hidden;background:var(--dark)}
.gallery-teaser-images figure img{display:block;width:100%;height:330px;object-fit:cover}
.gallery-teaser-images figure:nth-child(2) img{height:400px}
.gallery-teaser-images figcaption{position:absolute;inset:auto 0 0;padding:35px 16px 13px;background:linear-gradient(transparent,#092822d9);color:#fff;font:700 16px 'Bricolage Grotesque',sans-serif}
.gallery-teaser .form-note a{text-decoration:underline;text-underline-offset:3px}
.reviews-compact .review-grid{grid-template-columns:minmax(0,720px)}
.reviews-compact .review-card{min-height:260px}
.reviews-compact .review-heading h2{max-width:18ch}
.gallery-preview-tile{position:relative;min-width:0;overflow:hidden;padding:0;border:0;background:var(--dark);color:#fff;cursor:pointer;text-align:left}
.gallery-preview-tile img{display:block;width:100%;height:330px;object-fit:cover}
.gallery-preview-tile:nth-child(2) img{height:400px}
.gallery-preview-caption{position:absolute;inset:auto 0 0;padding:36px 16px 14px;display:flex;justify-content:space-between;align-items:end;gap:10px;background:linear-gradient(transparent,#092822ed);font:700 18px 'Bricolage Grotesque',sans-serif;pointer-events:none}
.gallery-preview-caption span{font-size:23px;line-height:1}
.gallery-preview-tile:focus-visible{outline:4px solid var(--lime);outline-offset:-4px}
@media(max-width:560px){.gallery-teaser-images figure img,.gallery-teaser-images figure:nth-child(2) img{height:180px}.gallery-teaser-images figcaption{padding:25px 8px 9px;font-size:12px}}
@media(max-width:560px){.gallery-preview-tile img,.gallery-preview-tile:nth-child(2) img{height:180px}.gallery-preview-caption{padding:25px 7px 9px;font-size:12px}.gallery-preview-caption span{font-size:17px}}
/* Applied from the client's approved Bold & Fresh visual concept. */
:root{--teal:#0d9488;--teal-dark:#0b6e65;--teal-deep:#083f3a;--lime:#c8f542;--lime-soft:#e9fbb0;--paper:#fafaf6;--ink:#0e1b1a;--ink-soft:#3d4d4c;--dark:#0c1a19;--shadow:0 24px 48px rgba(14,27,26,.12)}
body{background:var(--paper);color:var(--ink);font:16px/1.65 Inter,system-ui,sans-serif}
h1,h2,h3,.brand,.tile-stat strong{font-family:'Bricolage Grotesque',Inter,sans-serif;letter-spacing:-.035em}
.wrap{width:min(1200px,calc(100% - 48px))}
.section{padding:clamp(68px,8vw,100px) 0}
.section h2,.section-head h2{font-size:clamp(36px,5vw,60px);line-height:1.05;letter-spacing:-.04em}
.section-head{max-width:770px;margin-bottom:48px}
.section-head.center{text-align:center;margin-left:auto;margin-right:auto}
.kicker{background:var(--lime-soft);color:var(--teal-dark);padding:8px 16px;border-radius:999px;letter-spacing:.13em;font-size:12px;font-weight:800}
.topbar{background:var(--lime);color:var(--ink);font-size:13px}.topbar .wrap{min-height:38px}
.header{background:rgba(250,250,246,.93);backdrop-filter:blur(14px);border-color:#0e1b1a14}
.nav{min-height:78px}.brand{font-weight:800}.brand-name{font-size:23px}.brand-name small{letter-spacing:.08em}
.nav-plain{font-size:14px;font-weight:700;padding:11px 8px}.nav-plain:hover{color:var(--teal-dark)}
.brand-symbol{border-radius:13px}.nav-group summary{border-radius:12px}.menu{border-radius:20px}.menu a{border-radius:11px}
.nav-cta,.btn{background:var(--lime);color:var(--ink);border-radius:999px;min-height:48px;padding:13px 24px;font-size:14px;font-weight:800;box-shadow:none}
.nav-cta:hover,.btn:hover{transform:translateY(-3px);box-shadow:0 12px 26px #c8f5425c}
.btn-dark{background:var(--teal);color:#fff}.btn-dark:hover{box-shadow:0 12px 26px #0d948846}
.btn-outline{background:transparent;border:2px solid currentColor;color:var(--ink)}
.breadcrumbs{padding-top:20px}
/* Approved centered hero and highlighted headline. */
.hero-home-v4{position:relative;min-height:0;padding:76px 0 58px;background:var(--paper);color:var(--ink)}
.hero-home-v4:after{display:none}.hero-blob{position:absolute;border-radius:50%;filter:blur(85px);pointer-events:none;opacity:.5}.hero-blob-one{width:490px;height:490px;background:#bdf3e4;top:-140px;right:-110px}.hero-blob-two{width:370px;height:370px;background:var(--lime-soft);bottom:-140px;left:-130px}
.hero-approved{position:relative;z-index:1;text-align:center}
.hero-home-v4 .eyebrow,.hero-v4-inner .eyebrow{display:inline-flex;gap:9px;align-items:center;background:#fff;color:var(--ink);border:1px solid #0e1b1a1f;border-radius:999px;padding:8px 17px;font-size:13px;letter-spacing:0;text-transform:none;box-shadow:0 4px 14px #0e1b1a0d;margin-bottom:26px}
.hero-home-v4 .eyebrow:before{display:none}.pin{display:inline-block;flex:none;width:8px;height:8px;border-radius:50%;background:var(--teal)}
.hero-home-v4 h1{font-size:clamp(60px,8.3vw,116px);font-weight:800;line-height:1.02;letter-spacing:-.055em;max-width:none;color:var(--ink);margin:0 auto 24px}
.highlight{display:inline;box-decoration-break:clone;-webkit-box-decoration-break:clone;background:linear-gradient(transparent 18%,var(--lime) 18%,var(--lime) 94%,transparent 94%);padding:0 .11em;border-radius:6px;color:var(--ink)}
.hero-accent{color:var(--teal-dark);text-decoration:underline;text-decoration-color:var(--lime);text-decoration-thickness:8px;text-underline-offset:11px}
.hero-home-v4 .hero-copy{margin:0 auto 29px;max-width:620px;font-size:clamp(17px,2vw,20px);line-height:1.6;color:var(--ink-soft)}.hero-home-v4 .hero-copy strong{color:var(--ink)}
.hero-home-v4 .actions{justify-content:center;gap:14px}.hero-home-v4 .btn-dark{background:var(--teal);color:#fff}.hero-home-v4 .btn-outline{border-color:var(--ink);color:var(--ink)}
.trust-chips{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:34px}.trust-chips span{background:#fff;border:1px solid #0e1b1a1a;border-radius:999px;padding:9px 15px;color:var(--ink-soft);font-size:13px;font-weight:700}
/* Approved bento arrangement with no unverified numbers or guarantees. */
.bento-sec{padding:14px 0 58px}.bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:145px;gap:15px}
.tile{position:relative;overflow:hidden;border-radius:26px;margin:0;transition:transform .3s,box-shadow .3s}.tile:hover{transform:translateY(-5px);box-shadow:0 20px 42px #0e1b1a24}.tile img{width:100%;height:100%;object-fit:cover}
.tile-hero{grid-column:span 2;grid-row:span 3}.tile-photo{grid-row:span 2}.tile-label{position:absolute;left:15px;bottom:15px;background:#0c1a19c9;color:#fff;backdrop-filter:blur(7px);border-radius:99px;padding:8px 15px;font-size:13px;font-weight:750}
.tile-stat{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:7px;padding:22px}.tile-stat strong{font-size:clamp(24px,2.9vw,39px);line-height:1}.tile-stat span{font-size:13px;font-weight:700;line-height:1.35}.tile-teal{background:var(--teal);color:#fff}.tile-lime{background:var(--lime);color:var(--ink)}.tile-dark{background:var(--dark);color:#fff}.photo-disclosure{font-size:12px;color:var(--ink-soft);margin:17px 4px 0}
@media(min-width:721px){.bento .tile-hero{grid-column:1/3;grid-row:1/4}.bento .tile-teal{grid-column:3;grid-row:1}.bento .tile-photo:nth-child(3){grid-column:4;grid-row:1/3}.bento .tile-lime{grid-column:3;grid-row:2}.bento .tile-photo:nth-child(5){grid-column:3;grid-row:3/5}.bento .tile-dark{grid-column:1/3;grid-row:4}.bento .tile-photo:nth-child(7){grid-column:4;grid-row:3/5}}
.marquee-zone{background:var(--teal);overflow:hidden;padding:13px 0;transform:rotate(-1.1deg) scale(1.02);margin:28px 0 38px}.marquee-track{width:max-content;display:flex;animation:approved-marquee 34s linear infinite}.marquee-track span{white-space:nowrap;color:#fff;padding:0 24px;font:800 20px 'Bricolage Grotesque',sans-serif}.marquee-track b{color:var(--lime);margin-left:28px}.marquee-zone:hover .marquee-track{animation-play-state:paused}@keyframes approved-marquee{to{transform:translateX(-50%)}}
/* Rounded service cards and three-step process. */
.approved-services .section-head h2{max-width:750px;margin-left:auto;margin-right:auto}.approved-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:30px}
.approved-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #0e1b1a17;border-radius:27px;background:#fff;transition:transform .3s,box-shadow .3s}.approved-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.approved-card-image{height:205px;overflow:hidden}.approved-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.approved-card:hover img{transform:scale(1.055)}.approved-card-copy{display:flex;flex:1;flex-direction:column;padding:24px}.approved-card h3{font-size:23px;line-height:1.13;margin:11px 0}.approved-card p{font-size:14px;line-height:1.65;color:var(--ink-soft);flex:1}.approved-card .card-link{font-size:14px}
.approved-trust{background:var(--dark);color:#fff;border-radius:38px;margin:0 16px}.approved-trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,6vw,72px);align-items:center}.approved-trust figure{margin:0}.approved-trust figure img{width:100%;height:560px;object-fit:cover;border-radius:25px;transform:rotate(-1.5deg)}.approved-trust figcaption{font-size:12px;color:#bacfca;margin-top:20px}.approved-trust h2{color:#fff;max-width:12ch}.approved-trust>div>div>p{color:#bed3cf;font-size:17px}.approved-trust .highlight{background:var(--lime);color:var(--dark)}.approved-trust .btn{margin-top:24px}.approved-trust .kicker{background:var(--lime-soft);color:var(--dark)}
.approved-benefits{list-style:none;padding:0;margin:27px 0 0;display:grid;gap:11px}.approved-benefits li{display:flex;gap:14px;padding:15px;background:#ffffff13;border:1px solid #ffffff24;border-radius:16px}.approved-benefits li>span{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--lime);color:var(--dark);font-size:15px;font-weight:900}.approved-benefits strong{display:block;color:#fff;font-size:15px}.approved-benefits small{color:#bed3cf;font-size:13px}
.approved-process .section-head{margin-left:auto;margin-right:auto}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.process-grid article{background:#fff;border:1px solid #0e1b1a17;border-radius:27px;padding:32px;transition:transform .3s,box-shadow .3s}.process-grid article:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.process-grid article>span{display:block;color:var(--teal-dark);font:800 72px/1 'Bricolage Grotesque',sans-serif;letter-spacing:-.07em;margin-bottom:27px}.process-grid h3{font-size:23px;margin-bottom:10px}.process-grid p{color:var(--ink-soft);font-size:15px}
/* Reviews stay sourced and linked, in the approved light card treatment. */
.reviews-section{background:#fff;color:var(--ink);border-block:1px solid #0e1b1a12}.reviews-section .kicker{background:var(--lime-soft);color:var(--teal-dark)}.reviews-section .review-heading h2{max-width:18ch}.reviews-section .review-heading p{color:var(--ink-soft)}
.review-card{min-height:300px;background:var(--paper);border:1px solid #0e1b1a18;border-radius:27px;color:var(--ink);padding:35px}.review-card:hover{border-color:var(--teal);box-shadow:var(--shadow)}.review-card:before{color:var(--teal);font-size:70px}.review-card blockquote{font-size:clamp(23px,2.3vw,30px)}.review-card figcaption{border-color:#0e1b1a25;color:var(--ink-soft)}.review-card figcaption a{color:var(--teal-dark)}.reviews-section .text-link{color:var(--teal-dark);border-color:var(--teal-dark)}
.approved-local{position:relative;text-align:center;overflow:hidden;color:#fff;min-height:465px;display:grid;place-items:center}.approved-local>img,.approved-local-shade{position:absolute;inset:0;width:100%;height:100%}.approved-local>img{object-fit:cover}.approved-local-shade{background:linear-gradient(#071c19d9,#071c19bd)}.approved-local .wrap{position:relative;z-index:1}.approved-local h2{max-width:780px;margin:0 auto 17px;color:#fff}.approved-local h2 span{color:var(--lime)}.approved-local p{max-width:630px;margin:0 auto 26px;color:#e5efeb}.approved-local .kicker{background:var(--lime);color:var(--dark)}.approved-local small{display:block;margin-top:18px;color:#c2d3ce}.area-pills{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}.area-pills a{padding:10px 18px;border:1px solid #ffffff85;border-radius:999px;color:#fff;font-weight:700;font-size:14px;background:#ffffff20;backdrop-filter:blur(6px);transition:transform .2s,background .2s}.area-pills a:first-child,.area-pills a:hover{color:var(--dark);background:var(--lime);border-color:var(--lime);transform:translateY(-2px)}
/* Carry the visual system through service, location, company, FAQ and gallery pages. */
.hero-v4-inner{position:relative;overflow:hidden;padding:78px 0 85px;background:var(--paper);color:var(--ink)}.hero-v4-inner:after{display:none}.hero-v4-inner .hero-grid{position:relative;z-index:1;gap:clamp(30px,5vw,70px)}.hero-v4-inner h1{font-size:clamp(46px,5.8vw,82px);letter-spacing:-.055em;line-height:1.02;color:var(--ink);max-width:14ch}.hero-v4-inner .hero-copy{color:var(--ink-soft);font-size:18px}.hero-v4-inner .eyebrow{color:var(--ink)}.hero-v4-inner .btn-dark{background:var(--teal);color:#fff}.hero-v4-inner .btn-outline{color:var(--ink);border-color:var(--ink)}
.hero-v4-inner .hero-photo{margin:0;transform:none;box-shadow:none;border-radius:28px}.hero-v4-inner .hero-photo img{height:460px;border-radius:28px;filter:none}.hero-v4-inner .photo-note{background:#0c1a19d9;color:#fff;right:auto;left:15px;bottom:15px;border-radius:99px;font-size:11px;padding:8px 14px}
.content-photo,.content-photo img{border-radius:26px}.page-card,.feature-card,.contact-card,.faq-list details{border-radius:22px}.page-card{background:#fff;border:1px solid #0e1b1a17}.feature-card{background:#fff;border:1px solid #0e1b1a17;border-radius:23px;padding:26px}.checklist li{background:#fff;border:1px solid #0e1b1a17;border-radius:14px}.dark-band{border-radius:28px;background:var(--teal-deep)}
.dark-band .checklist li,:root[data-theme="dark"] .dark-band .checklist li{display:flex;align-items:center;min-height:64px;padding:15px 20px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:14px;color:#fff;font-weight:650}.dark-band .checklist li:before{color:var(--lime);flex:none}
.faq-preview{background:var(--paper)}.faq-list details{background:#fff;border-color:#0e1b1a1c}.faq-list details[open]{border-color:var(--teal)}.faq-list summary{padding:20px 0}.gallery-teaser{background:#eaf6f3}.gallery-preview-tile,.gallery-tile{border-radius:20px}.gallery-preview-caption,.gallery-tile-caption{font-family:'Bricolage Grotesque',sans-serif}.gallery-filter{border-radius:999px}.gallery-filter[aria-pressed="true"]{background:var(--teal);border-color:var(--teal);color:#fff}
.seo-detail{background:#f1f7f4}.detail-label{border-color:#0e1b1a29}.detail-grid{gap:20px}.detail-grid article{background:#fff;border:1px solid #0e1b1a17;border-radius:23px;padding:28px;min-width:0}.detail-grid h2{font-size:clamp(24px,2.4vw,33px);margin:14px 0}.detail-grid p{font-size:15px;line-height:1.7}.detail-answer{display:block;margin-top:27px;padding:0 25px;background:#fff;border:1px solid #0e1b1a20;border-radius:18px;color:var(--ink)}.detail-answer summary{cursor:pointer;padding:20px 0;font:700 19px 'Bricolage Grotesque',sans-serif;list-style:none}.detail-answer summary::after{content:'+';float:right;color:var(--teal)}.detail-answer[open] summary::after{content:'−'}.detail-answer p{color:var(--ink-soft);font-size:15px;padding-bottom:18px}
.seo-detail .wrap{max-width:1060px}.detail-grid{display:block;margin:auto;max-width:960px}.detail-grid .detail-chapter{display:grid;grid-template-columns:140px minmax(0,1fr);gap:24px;background:transparent;border:0;border-top:1px solid #0e1b1a2b;border-radius:0;padding:30px 8px 34px}.detail-grid .detail-chapter:last-child{border-bottom:1px solid #0e1b1a2b}.detail-chapter .detail-index{padding-top:9px;color:var(--teal-dark);line-height:1.5}.detail-grid .detail-chapter h2{font-size:clamp(27px,3vw,39px);margin:0 0 14px;max-width:22ch}.detail-grid .detail-chapter p{font-size:17px;line-height:1.78;max-width:68ch;color:var(--ink-soft);margin:0}.detail-answer{max-width:960px;margin:25px auto 0}.detail-answer p{max-width:75ch}
/* A practical mailto form replaces the supplied concept's demo-only success state. */
.approved-cta{background:var(--paper)}.approved-cta .cta-band{background:linear-gradient(125deg,var(--teal),var(--teal-deep));border-radius:34px;color:#fff;padding:clamp(28px,5vw,64px);align-items:stretch;display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,65px)}
.cta-message{align-self:center}.cta-message .kicker{background:#ffffff26;color:var(--lime)}.cta-message h2{font-size:clamp(36px,4vw,57px);line-height:1.04;color:#fff}.cta-message p{max-width:470px;color:#e1f1eb;font-size:17px}.cta-message .highlight{background:var(--lime);color:var(--dark)}.cta-contact-links{display:grid;gap:10px;margin-top:30px}.cta-contact-links a{background:#ffffff18;border:1px solid #ffffff3c;color:#fff;border-radius:13px;padding:12px 16px;font-weight:700;word-break:break-word}.cta-contact-links a:hover{background:#ffffff30}
.quick-quote{background:#fff;color:var(--ink);border-radius:23px;padding:clamp(20px,3vw,35px)}.quick-quote h3{font-size:27px}.quick-quote>p{color:var(--ink-soft);font-size:14px}.quick-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:19px 0}.quick-form-grid label{display:grid;gap:5px;font-size:13px;font-weight:700}.quick-form-grid label.full{grid-column:1/-1}.quick-form-grid input,.quick-form-grid select,.quick-form-grid textarea{width:100%;min-width:0;padding:11px 13px;background:#fafaf6;border:1px solid #b8c9c1;border-radius:10px;color:#0e1b1a}.quick-form-grid textarea{min-height:86px;resize:vertical}.quick-quote .btn{width:100%;justify-content:center;background:var(--lime);color:var(--ink)}.quick-quote .form-note{color:var(--ink-soft)}.cta-contact-options{align-self:center;display:flex;flex-direction:column;gap:14px;align-items:start}.cta-contact-options .btn{background:var(--lime);color:var(--ink)}.cta-contact-options>a:last-child{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer{background:var(--dark);margin-top:0}.footer-grid{gap:40px}.footer h4{color:var(--lime)}.mobile-cta a:last-child{background:var(--lime)}
/* Theme remains available without changing the approved light-mode layout. */
:root[data-theme="dark"]{--paper:#12231f;--ink:#f1f7f3;--ink-soft:#c3d4cd;--dark:#071a16;--lime-soft:#2a4f40;--teal-dark:#9ce3cb}
:root[data-theme="dark"] .header{background:#12231ff2}:root[data-theme="dark"] .topbar{color:#0e1b1a}:root[data-theme="dark"] .hero-home-v4,:root[data-theme="dark"] .hero-v4-inner,:root[data-theme="dark"] .faq-preview,:root[data-theme="dark"] .approved-cta{background:#12231f}
:root[data-theme="dark"] .hero-home-v4 .eyebrow,:root[data-theme="dark"] .hero-v4-inner .eyebrow,:root[data-theme="dark"] .trust-chips span,:root[data-theme="dark"] .approved-card,:root[data-theme="dark"] .process-grid article,:root[data-theme="dark"] .detail-grid article,:root[data-theme="dark"] .detail-answer,:root[data-theme="dark"] .faq-list details,:root[data-theme="dark"] .page-card,:root[data-theme="dark"] .feature-card,:root[data-theme="dark"] .contact-card{background:#19342c;color:#f1f7f3;border-color:#ffffff30}
:root[data-theme="dark"] .hero-home-v4 h1,:root[data-theme="dark"] .hero-v4-inner h1{color:#f1f7f3}:root[data-theme="dark"] .hero-home-v4 .hero-copy strong{color:#f1f7f3}:root[data-theme="dark"] .hero-home-v4 .btn-outline,:root[data-theme="dark"] .hero-v4-inner .btn-outline{color:#f1f7f3;border-color:#f1f7f3}
:root[data-theme="dark"] .highlight{color:#0e1b1a}:root[data-theme="dark"] .reviews-section{background:#142b23;color:#f1f7f3}:root[data-theme="dark"] .review-card{background:#1c392f;color:#f1f7f3;border-color:#ffffff30}:root[data-theme="dark"] .review-card figcaption{color:#c3d4cd}:root[data-theme="dark"] .seo-detail,:root[data-theme="dark"] .gallery-teaser{background:#17372d}:root[data-theme="dark"] .approved-trust{background:#071a16}
:root[data-theme="dark"] .detail-grid .detail-chapter{background:transparent;border-color:#ffffff30}:root[data-theme="dark"] .detail-chapter .detail-index{color:#c3d4cd}
/* Keep foregrounds paired with their actual surfaces after all legacy theme layers. */
:root[data-theme="dark"]{color-scheme:dark}
:root[data-theme="dark"] .tile-lime{color:#102c28}
:root[data-theme="dark"] .approved-trust .kicker{background:var(--lime);color:#102c28}
:root[data-theme="dark"] .detail-answer summary{color:#f1f7f3}
:root[data-theme="dark"] .detail-answer p{color:#c3d4cd}
:root[data-theme="dark"] .detail-answer summary::after{color:var(--lime)}
:root[data-theme="dark"] .approved-cta .cta-band{background:linear-gradient(125deg,#0a6159,#083f3a);color:#fff}
:root[data-theme="dark"] .approved-cta .cta-message h2{color:#fff}
:root[data-theme="dark"] .approved-cta .cta-message p{color:#e1f1eb}
:root[data-theme="dark"] .approved-cta .cta-message .kicker{color:var(--lime)}
:root[data-theme="dark"] .approved-cta .cta-contact-options .btn{background:var(--lime);color:#102c28}
:root[data-theme="dark"] .quick-quote{background:#fff;color:#102c28;color-scheme:light}
:root[data-theme="dark"] .quick-quote h3,:root[data-theme="dark"] .quick-form-grid label{color:#102c28}
:root[data-theme="dark"] .quick-quote>p,:root[data-theme="dark"] .quick-quote .form-note{color:#486259}
:root[data-theme="dark"] .approved-cta .quick-quote .btn{background:var(--lime);color:#102c28}
:root[data-theme="dark"] .quick-form-grid input::placeholder,:root[data-theme="dark"] .quick-form-grid textarea::placeholder{color:#5e746a}
:root[data-theme="dark"] .faq-sidebar a:hover{color:var(--lime)}
@media(max-width:950px){.approved-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.approved-trust-grid{grid-template-columns:1fr}.approved-trust figure img{height:380px}.approved-cta .cta-band{grid-template-columns:1fr}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.hero-home-v4{padding:57px 0 39px}.hero-home-v4 h1{font-size:clamp(48px,10vw,75px)}.hero-v4-inner{padding:42px 0 60px}.hero-v4-inner .hero-grid{grid-template-columns:1fr}.hero-v4-inner .hero-photo img{height:320px}.bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:120px;gap:9px}.tile{border-radius:17px}.tile-hero{grid-column:span 2;grid-row:span 2}.tile-photo{grid-row:span 2}.tile-dark{display:none}.tile-stat{padding:14px}.tile-stat strong{font-size:25px}.tile-stat span{font-size:11px}.tile-label{font-size:11px;left:8px;bottom:8px;padding:6px 10px}.approved-service-grid{grid-template-columns:1fr 1fr;gap:12px}.approved-card-image{height:170px}.approved-card-copy{padding:18px}.approved-card h3{font-size:21px}.process-grid{grid-template-columns:1fr}.approved-trust{margin:0 8px;border-radius:26px}.approved-trust-grid{gap:30px}.detail-grid{grid-template-columns:1fr}.review-grid{grid-template-columns:1fr}.approved-local{min-height:430px}.quick-form-grid{grid-template-columns:1fr}.quick-form-grid label.full{grid-column:auto}}
@media(max-width:560px){.wrap{width:calc(100% - 32px)}.hero-home-v4 h1{font-size:clamp(44px,11vw,62px);letter-spacing:-.055em}.hero-accent{text-decoration-thickness:5px;text-underline-offset:5px}.hero-home-v4 .hero-copy{font-size:16px}.hero-home-v4 .actions{display:grid;grid-template-columns:1fr}.hero-home-v4 .actions .btn{width:100%}.trust-chips{gap:6px}.trust-chips span{font-size:11px;padding:6px 10px}.approved-service-grid{grid-template-columns:1fr}.approved-card-image{height:220px}.approved-trust figure img{height:285px}.approved-trust h2{font-size:42px}.marquee-track span{font-size:16px}.marquee-zone{margin:20px 0}.approved-cta .cta-band{padding:25px 20px}.cta-message h2{font-size:38px}.hero-v4-inner h1{font-size:clamp(39px,10vw,58px)}.hero-v4-inner .actions{gap:8px}.hero-v4-inner .btn{padding:11px 14px;font-size:13px}.gallery-preview-tile img,.gallery-preview-tile:nth-child(2) img{height:170px}.gallery-preview-caption strong{font-size:11px}.gallery-preview-caption span{display:none}.review-heading h2{font-size:40px}}
@media(max-width:660px){.detail-grid .detail-chapter{grid-template-columns:1fr;gap:7px;padding:25px 0}.detail-chapter .detail-index{padding:0}.detail-grid .detail-chapter h2{font-size:29px}.detail-grid .detail-chapter p{font-size:16px;line-height:1.7}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}.tile,.approved-card,.approved-card img,.process-grid article,.area-pills a{transition:none!important}}

/* Shared, calmer type scale and a balanced quote panel across all pages. */
.hero-home-v4 h1{font-size:clamp(50px,6.3vw,88px);line-height:1.04}
.hero-v4-inner h1{font-size:clamp(40px,4.35vw,62px);line-height:1.06;letter-spacing:-.045em;max-width:16ch}
.hero-v4-inner .hero-copy{font-size:17px;line-height:1.65;margin:24px 0 26px}
.section h2,.section-head h2{font-size:clamp(32px,3.5vw,48px);line-height:1.12;letter-spacing:-.035em}
.detail-grid .detail-chapter h2{font-size:clamp(25px,2.4vw,33px)}
.review-heading h2,.approved-trust h2,.approved-local h2{font-size:clamp(32px,3.4vw,47px)}
.approved-cta .cta-band{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:clamp(28px,4vw,56px);padding:clamp(30px,4vw,48px);align-items:center}
.approved-cta .cta-message h2{font-size:clamp(34px,3.4vw,47px);line-height:1.1;letter-spacing:-.035em;max-width:16ch;margin:14px 0}
.approved-cta .cta-message p{font-size:16px;line-height:1.65;max-width:48ch;margin-bottom:0}
.approved-cta .cta-contact-options{display:flex;flex-direction:column;gap:12px;align-items:stretch;align-self:stretch;justify-content:center;background:#ffffff14;border:1px solid #ffffff35;border-radius:22px;padding:clamp(24px,3vw,35px);min-width:0}
.approved-cta .cta-contact-options .cta-step{color:var(--lime);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.approved-cta .cta-contact-options h3{color:#fff;font-size:clamp(24px,2.4vw,30px);line-height:1.18;letter-spacing:-.025em;margin:0}
.approved-cta .cta-contact-options p{color:#dceee8;font-size:15px;line-height:1.6;margin:0 0 8px}
.approved-cta .cta-contact-options .btn{width:100%;justify-content:space-between;min-height:52px;background:var(--lime);color:#102c28;border-radius:12px;padding:14px 18px}
.approved-cta .cta-contact-options .cta-call-link{display:inline-block;align-self:flex-start;color:#fff;font-size:14px;font-weight:650;text-decoration:underline;text-underline-offset:4px;margin-top:2px}
.page-home .approved-cta .cta-band{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
:root[data-theme="dark"] .approved-cta .cta-contact-options{background:#ffffff12;border-color:#ffffff38}
:root[data-theme="dark"] .approved-cta .cta-contact-options h3,:root[data-theme="dark"] .approved-cta .cta-contact-options .cta-call-link{color:#fff}
:root[data-theme="dark"] .approved-cta .cta-contact-options p{color:#dceee8}
@media(max-width:950px){.approved-cta .cta-band,.page-home .approved-cta .cta-band{grid-template-columns:1fr}.approved-cta .cta-message h2{max-width:20ch}.approved-cta .cta-contact-options{max-width:600px}}
@media(max-width:720px){.hero-home-v4 h1{font-size:clamp(44px,8.5vw,65px)}.hero-v4-inner h1{font-size:clamp(38px,7vw,52px)}.hero-v4-inner .hero-copy{font-size:16px}.section h2,.section-head h2{font-size:clamp(30px,6.5vw,40px)}.approved-cta .cta-band{border-radius:24px}}
@media(max-width:560px){.hero-home-v4 h1{font-size:clamp(40px,10vw,54px)}.hero-v4-inner h1{font-size:clamp(36px,9vw,45px)}.approved-cta .cta-band{padding:25px 20px;gap:22px}.approved-cta .cta-message h2{font-size:clamp(31px,7.5vw,39px)}.approved-cta .cta-contact-options{padding:22px}.approved-cta .cta-contact-options h3{font-size:25px}}
