/* Reusable layout. Brand values are injected as CSS variables by gen.py. */
@font-face{font-family:"Client Display";src:url("/assets/client/fonts/display-regular.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Client Display";src:url("/assets/client/fonts/display-bold.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:"Client Body";src:url("/assets/client/fonts/body-regular.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Client Body";src:url("/assets/client/fonts/body-bold.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
:root{--font-display:"Client Display",sans-serif;--font-body:"Client Body",sans-serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 var(--font-body)}img{display:block;max-width:100%;height:auto}a{color:var(--accent)}h1,h2,h3{color:var(--primary);line-height:1.15;text-wrap:balance}h1,h2{font-family:var(--font-display)}h1{font-size:clamp(2.2rem,5vw,4rem)}h2{font-size:clamp(1.5rem,3vw,2.3rem)}.wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}.section{padding:64px 0}.surface{background:var(--surface)}.center{text-align:center}.topbar{background:var(--primary-deep);color:#fff}.topbar .wrap{min-height:38px;display:flex;justify-content:space-between;align-items:center}.topbar a{color:#fff}.nav{position:sticky;top:0;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}.nav .wrap{min-height:78px;display:flex;align-items:center;gap:24px}.nav__logo{margin-right:auto}.nav__logo img{max-height:62px;width:auto}.nav__links{display:flex;align-items:center;gap:20px;list-style:none;margin:0;padding:0}.nav__links a{text-decoration:none}.nav__toggle{display:none;border:0;background:none;font-size:1.5rem}.btn{display:inline-block;border:0;border-radius:8px;background:var(--accent);color:#fff!important;padding:13px 22px;font:700 1rem var(--font-body);text-decoration:none;cursor:pointer}.phero{padding:42px 0;background:var(--primary);color:#fff}.phero h1{margin:0;color:#fff}.hero{position:relative;min-height:520px;background:var(--primary-deep);color:#fff;display:grid;align-items:center;overflow:hidden}.hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(115deg,var(--primary-deep) 0%,var(--primary) 54%,var(--accent) 100%);mix-blend-mode:multiply;opacity:.82;pointer-events:none}.hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72}.hero__content{position:relative;z-index:2;padding-block:70px}.hero__content h1{max-width:18ch;color:#fff;font-size:clamp(2rem,5vw,4rem);text-shadow:0 2px 10px rgba(0,0,0,.65)}.hero__content p{max-width:55ch}.grid{display:grid;gap:24px}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}article,.card,.pricecard{border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:22px}.card{padding:0;overflow:hidden}.card__img{width:100%;aspect-ratio:3/2;object-fit:cover}.card__body{padding:22px}.feature{width:min(850px,100%);max-height:560px;object-fit:cover;border-radius:12px;margin:28px 0}.faq details{border-bottom:1px solid var(--line);padding:14px}.faq summary{cursor:pointer;font-weight:700;color:var(--primary)}.crumbs{font-size:.9rem;color:var(--ink-soft)}.cta{background:var(--primary);color:#fff}.cta h2{color:#fff}blockquote{border-left:4px solid var(--accent);margin:24px 0;padding:10px 20px;color:var(--ink-soft)}form{display:grid;gap:10px;max-width:720px}input,select,textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:6px;font:inherit}textarea{min-height:130px}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}footer{padding:50px 0 24px;background:var(--primary-deep);color:#fff}footer h2,footer a{color:#fff}footer ul{list-style:none;padding:0}.footer-logo{max-height:70px;width:auto}.footbottom{padding-top:25px}.skip{position:absolute;left:-9999px}.skip:focus{left:8px;top:8px;z-index:20;background:#fff;padding:8px}@media(max-width:900px){.grid--3,.grid--4,.footgrid{grid-template-columns:repeat(2,1fr)}.nav__toggle{display:block}.nav__links{display:none;position:absolute;left:0;right:0;top:100%;padding:20px;background:var(--paper);flex-direction:column}.nav__links.open{display:flex}}@media(max-width:600px){.grid--3,.grid--4,.footgrid{grid-template-columns:1fr}.section{padding:45px 0}.topbar span{display:none}}

/* Clear Path review refinement: richer hierarchy and whole-card interactions. */
.hero__eyebrow{display:inline-flex;align-items:center;max-width:none!important;margin:0 0 18px;padding:10px 14px;border-left:5px solid var(--accent);background:rgba(5,5,5,.68);font:700 clamp(1.05rem,2vw,1.35rem)/1.2 var(--font-display);letter-spacing:.025em;text-transform:uppercase}.hero__sub{font-size:1.08rem}.hero__checks{display:grid;grid-template-columns:repeat(2,minmax(0,240px));gap:10px 18px;list-style:none;padding:0;margin:24px 0 0}.hero__checks li{display:flex;align-items:center;font-weight:700}.hero__checks li::before{content:"✓";display:grid;place-items:center;flex:0 0 26px;height:26px;margin-right:10px;border-radius:50%;background:var(--accent);color:#fff;font-size:.88rem}
.home-steps-section{background:var(--paper)}.home-steps{counter-reset:steps;display:grid;grid-template-columns:repeat(4,1fr);gap:0;list-style:none;margin:0;padding:0}.home-steps li{position:relative;display:grid;grid-template-columns:56px 1fr;gap:14px;padding:10px 22px}.home-steps li:not(:last-child)::after{content:"";position:absolute;top:37px;right:-11px;width:22px;border-top:2px solid var(--accent)}.step-number{display:grid;place-items:center;width:52px;height:52px;border:4px solid #d9c38a;border-radius:50%;background:var(--accent);color:#fff;font:700 1.45rem var(--font-display);box-shadow:0 0 0 5px #f4ead4}.home-steps h2{margin:6px 0 8px;font-size:1.35rem}.home-steps p{margin:0;color:var(--ink-soft)}
.card--link{position:relative;display:flex;flex-direction:column;color:var(--ink);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.card--link:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(22,19,13,.16);border-color:var(--accent)}.card--link:focus-visible{outline:4px solid var(--accent);outline-offset:4px}.card--link h2,.card--link h3{color:var(--primary)}.card--link .card__body{display:flex;flex:1;flex-direction:column}.card--link .card__body p{margin-bottom:18px}.card__arrow{display:grid;place-items:center;width:38px;height:38px;margin-top:auto;border-radius:50%;background:var(--primary);color:#fff;font-size:1.35rem;transition:transform .2s ease}.card--link:hover .card__arrow{transform:translateX(5px)}
.home-services{background:linear-gradient(135deg,#e8dfcf 0%,#d8c9aa 100%)}.home-services>div>p{max-width:72ch}.home-card-grid .card{border:1px solid rgba(34,32,15,.35);box-shadow:0 10px 22px rgba(34,32,15,.09)}.home-card-grid .card:nth-child(1){background:#e3d5bb}.home-card-grid .card:nth-child(2){background:#d8d6c3}.home-card-grid .card:nth-child(3){background:#eadfcb}.home-card-grid .card__img{border-bottom:5px solid var(--accent)}
.home-feature{background:var(--primary)}.feature-callout{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:42px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:linear-gradient(110deg,rgba(255,255,255,.07),rgba(128,106,57,.22));box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}.feature-callout h2,.feature-callout p{color:#fff}.feature-callout h2{margin:.25rem 0}.feature-callout>div{max-width:780px}.kicker{margin:0;color:var(--accent);font:700 .82rem var(--font-body);letter-spacing:.13em;text-transform:uppercase}.home-feature .kicker,.process-section .kicker{color:#dec98d}
.why-section{background:#f8f2e7}.boxed-panel{padding:44px;border:2px solid #b99d60;border-radius:20px;background:#efe3cf;box-shadow:10px 10px 0 #d3bf91}.boxed-panel>p{max-width:76ch}.icon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}.icon-grid article{border-color:#c7ad73;background:var(--paper)}.feature-icon{display:grid;place-items:center;width:54px;height:54px;margin-bottom:18px;border-radius:50%;background:var(--accent);color:#fff;box-shadow:0 0 0 6px #ead9b7}.feature-icon svg{width:28px;height:28px}.icon-grid h3{margin:0 0 8px;font-size:1.05rem}
.process-section{background:var(--primary-deep);color:#fff}.process-layout{display:grid;grid-template-columns:.78fr 1.5fr;gap:70px;align-items:start}.process-layout h2{color:#fff;position:sticky;top:130px}.timeline{position:relative;list-style:none;margin:0;padding:0}.timeline::before{content:"";position:absolute;left:28px;top:32px;bottom:32px;width:2px;background:#b99d60}.timeline li{position:relative;display:grid;grid-template-columns:58px 1fr;gap:22px;padding:0 0 28px}.timeline li:last-child{padding-bottom:0}.timeline__number{z-index:1;display:grid;place-items:center;width:58px;height:58px;border:4px solid #dac58c;border-radius:50%;background:var(--accent);color:#fff;font:700 1.35rem var(--font-display)}.timeline li>div{padding:22px 24px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.08)}.timeline h3{margin:0 0 6px;color:#fff}.timeline p{margin:0;color:#f3ede2}
.pricing-band{background:#d7c59e}.pricing-callout{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:38px 42px;border:2px solid var(--primary);border-radius:18px;background:#f7f0e4;box-shadow:8px 8px 0 var(--primary)}.pricing-callout h2{margin:.25rem 0}.pricing-callout>div{max-width:780px}
.towns-showcase{background:linear-gradient(135deg,#d8c8a5,#bda771)}.towns-showcase>div>p{max-width:76ch}.town-card-grid .card{min-height:100%;border:1px solid rgba(34,32,15,.42);background:#efe4cf}.town-card-grid .card:nth-child(3n+2){background:#d9d7c4}.town-card-grid .card:nth-child(3n){background:#e3d0a8}.town-card-grid .card__img{border-bottom:5px solid var(--primary)}.faq-band{border-top:8px solid var(--accent);background:#f7f1e6}.faq-band .faq{max-width:900px}
@media(max-width:900px){.home-steps{grid-template-columns:repeat(2,1fr);gap:24px}.home-steps li::after{display:none}.icon-grid{grid-template-columns:repeat(2,1fr)}.process-layout{grid-template-columns:1fr;gap:30px}.process-layout h2{position:static}.feature-callout,.pricing-callout{align-items:flex-start;flex-direction:column}.home-card-grid .card:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 12px);justify-self:center}}
@media(max-width:600px){.hero__eyebrow{font-size:1rem}.hero__checks{grid-template-columns:1fr}.home-steps{grid-template-columns:1fr}.home-steps li{padding-inline:0}.icon-grid{grid-template-columns:1fr}.boxed-panel{padding:26px;box-shadow:6px 6px 0 #d3bf91}.feature-callout,.pricing-callout{padding:28px 24px}.home-card-grid .card:last-child:nth-child(odd){grid-column:auto;width:100%}.town-card-grid .card__body{min-height:auto}}

/* Refined long-form service and location pages. */
.phero--detail{position:relative;padding:58px 0 64px;background:linear-gradient(125deg,var(--primary-deep) 0%,var(--primary) 72%,#443a1d 100%);border-bottom:8px solid var(--accent);overflow:hidden}.phero--detail::after{content:"";position:absolute;right:-120px;bottom:-170px;width:420px;height:420px;border:1px solid rgba(222,201,141,.22);border-radius:50%;box-shadow:0 0 0 46px rgba(222,201,141,.06),0 0 0 92px rgba(222,201,141,.04)}.phero--detail h1{position:relative;z-index:1;max-width:19ch;font-size:clamp(2.4rem,5vw,4.4rem);text-shadow:0 3px 14px rgba(0,0,0,.42)}
.detail-section{background:linear-gradient(180deg,#f4ecdf 0%,var(--paper) 62%)}.detail-page{font-family:var(--font-body);font-size:1.1rem;line-height:1.8}.detail-page .crumbs{margin-bottom:26px;font-size:.92rem;font-weight:600;letter-spacing:.01em}.detail-top{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:28px;align-items:stretch}.detail-image-box{padding:14px;border:2px solid var(--accent);border-radius:18px;background:#f8f1e5;box-shadow:9px 9px 0 #c7b37f}.detail-image-box .feature{width:100%;height:100%;min-height:430px;max-height:560px;margin:0;border-radius:10px;object-fit:cover}.detail-lead-box{display:flex;flex-direction:column;justify-content:center;padding:38px;border:1px solid #66552c;border-radius:18px;background:linear-gradient(145deg,var(--primary) 0%,var(--primary-deep) 100%);box-shadow:9px 9px 0 #c7b37f;color:#fff}.detail-lead-box .kicker{color:#dec98d}.detail-lead-box .lead{margin:12px 0 26px;color:#fff;font-size:clamp(1.18rem,2vw,1.42rem);font-weight:600;line-height:1.55}.detail-lead-box .btn{align-self:flex-start}.detail-copy{width:min(930px,100%);margin:42px auto 0;padding:52px 58px;border:1px solid #bca66d;border-radius:20px;background:#fffdf8;box-shadow:0 18px 44px rgba(34,32,15,.13)}.detail-copy p{max-width:72ch;margin:0 0 1.35em;color:#332e25}.detail-copy__section{padding:0;border:0;background:transparent}.detail-copy__section+ .detail-copy__section{margin-top:38px;padding-top:38px;border-top:1px solid #d8c9a8}.detail-copy h2{position:relative;margin:0 0 20px;padding-left:18px;font-size:clamp(1.65rem,3vw,2.35rem)}.detail-copy h2::before{content:"";position:absolute;left:0;top:.08em;bottom:.08em;width:6px;border-radius:999px;background:var(--accent)}.detail-copy--town p:first-child{font-size:1.18rem;font-weight:600;color:var(--primary)}.detail-faq .faq{margin-top:8px}.detail-faq .faq details{padding-inline:0}.detail-related,.related-services{border-top:1px solid #c8b47f;background:linear-gradient(135deg,#e9dfce,#d7c59e)}.detail-related>.wrap>h2,.related-services>.wrap>h2{margin-top:0}.detail-related .card,.related-services .card{background:#fffaf0;border-color:#bca66d}.detail-related .card__body,.related-services .card__body{min-height:210px}
@media(max-width:900px){.detail-top{grid-template-columns:1fr}.detail-image-box .feature{min-height:360px}.detail-lead-box{padding:34px}.detail-copy{padding:44px}.detail-related .card:last-child:nth-child(odd),.related-services .card:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 12px);justify-self:center}}
@media(max-width:600px){.phero--detail{padding:42px 0 46px}.phero--detail h1{font-size:clamp(2.05rem,11vw,3rem)}.detail-section{padding-top:34px}.detail-page{font-size:1.02rem;line-height:1.75}.detail-top{gap:22px}.detail-image-box{padding:8px;border-radius:14px;box-shadow:6px 6px 0 #c7b37f}.detail-image-box .feature{min-height:0;aspect-ratio:3/2}.detail-lead-box{padding:28px 24px;box-shadow:6px 6px 0 #c7b37f}.detail-lead-box .lead{font-size:1.18rem}.detail-copy{margin-top:32px;padding:32px 22px;border-radius:14px}.detail-copy__section+ .detail-copy__section{margin-top:30px;padding-top:30px}.detail-copy h2{font-size:1.62rem}.detail-copy--town p:first-child{font-size:1.08rem}.detail-related .card:last-child:nth-child(odd),.related-services .card:last-child:nth-child(odd){grid-column:auto;width:100%}}

/* About page uses the same framed detail-page system. */
.detail-copy--about blockquote{position:relative;margin:32px 0 0;padding:28px 32px 28px 42px;border:0;border-left:7px solid var(--accent);border-radius:0 14px 14px 0;background:linear-gradient(135deg,#e7ddca,#f5ecdc);color:var(--primary-deep);font-family:var(--font-display);font-size:clamp(1.2rem,2.4vw,1.55rem);font-weight:700;line-height:1.5}.detail-copy--about blockquote::before{content:"“";position:absolute;left:14px;top:2px;color:var(--accent);font-size:3.2rem;line-height:1}.about-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.about-values article{padding:26px 24px;border:1px solid #bca66d;border-radius:14px;background:linear-gradient(145deg,#f2eadb,#e2d2ae);box-shadow:5px 5px 0 #c7b37f}.about-values h3{margin:0 0 12px;color:var(--primary);font-size:1.22rem}.about-values p{margin:0;color:#3d372d;font-size:1rem;line-height:1.65}
@media(max-width:900px){.about-values{grid-template-columns:1fr}.about-values article{padding:24px}}
@media(max-width:600px){.detail-copy--about blockquote{padding:24px 22px 24px 34px;font-size:1.14rem}.detail-copy--about blockquote::before{left:10px;font-size:2.7rem}.about-values{gap:15px}}

/* Estimate form and confirmation experience. */
.estimate-section{background:linear-gradient(180deg,#f4ecdf 0%,var(--paper) 68%)}.estimate-page{font-family:var(--font-body)}.estimate-page .crumbs{margin-bottom:26px;font-size:.92rem;font-weight:600}.estimate-layout{display:grid;grid-template-columns:minmax(310px,.78fr) minmax(0,1.22fr);gap:30px;align-items:start}.estimate-info{padding:42px 38px;border:1px solid #66552c;border-radius:18px;background:linear-gradient(145deg,var(--primary),var(--primary-deep));box-shadow:9px 9px 0 #c7b37f;color:#fff}.estimate-info .kicker{color:#dec98d}.estimate-info h2{margin:.35rem 0 16px;color:#fff}.estimate-info__lead{margin:0 0 28px;color:#f7f2e8;font-size:1.08rem}.estimate-steps{display:grid;gap:18px;list-style:none;margin:0;padding:0}.estimate-steps li{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start}.estimate-steps span{display:grid;place-items:center;width:40px;height:40px;border:3px solid #dec98d;border-radius:50%;color:#fff;font-family:var(--font-display);font-weight:700}.estimate-steps p{margin:5px 0 0;color:#fff;line-height:1.5}.estimate-form-panel{padding:44px 46px;border:1px solid #bca66d;border-radius:18px;background:#fffdf8;box-shadow:0 18px 44px rgba(34,32,15,.13)}.estimate-form-panel h2{margin:.35rem 0 28px}.estimate-form{max-width:none;gap:22px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.form-field{display:grid;gap:7px}.form-field--wide{grid-column:1/-1}.form-field label{color:var(--primary-deep);font-weight:700}.estimate-form input,.estimate-form select,.estimate-form textarea{padding:14px 15px;border:1px solid #a99975;border-radius:9px;background:#fff;color:var(--ink)}.estimate-form textarea{min-height:150px;resize:vertical}.estimate-form input:focus-visible,.estimate-form select:focus-visible,.estimate-form textarea:focus-visible{outline:3px solid rgba(167,137,65,.42);outline-offset:2px;border-color:var(--accent)}.form-consent{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid #d2c39f;border-radius:10px;background:#f4ecdc;color:#3d372d;line-height:1.5}.form-consent input{flex:0 0 auto;width:20px;height:20px;margin:2px 0 0;padding:0;accent-color:var(--primary)}.form-consent a{color:var(--primary-deep);font-weight:700}.estimate-form>.btn{justify-self:start}.form-preview-note{margin:0;padding-top:2px;color:var(--ink-soft);font-size:.92rem}.thanks-section{min-height:560px;display:grid;align-items:center;background:radial-gradient(circle at 50% 20%,#f4ead6 0%,#e0d0aa 48%,#c2ae79 100%)}.thanks-page{display:grid;place-items:center}.thanks-card{width:min(760px,100%);padding:58px 54px;border:2px solid var(--accent);border-radius:22px;background:#fffdf8;box-shadow:12px 12px 0 #a88d4f;text-align:center}.thanks-icon{display:grid;place-items:center;width:82px;height:82px;margin:0 auto 22px;border:6px solid #dec98d;border-radius:50%;background:var(--primary);color:#fff;font-family:var(--font-display);font-size:2.5rem;font-weight:700}.thanks-card .kicker{justify-content:center}.thanks-card h2{margin:.4rem auto 18px;max-width:18ch;font-size:clamp(2rem,4vw,3.2rem)}.thanks-lead{max-width:620px;margin:0 auto 18px;font-size:1.16rem}.thanks-preview-note{display:inline-block;margin:0 auto 28px;padding:10px 14px;border-radius:8px;background:#eee3ce;color:#514936;font-size:.95rem}.thanks-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.thanks-actions .btn--secondary{border:2px solid var(--primary);background:transparent;color:var(--primary)!important}
@media(max-width:900px){.estimate-layout{grid-template-columns:1fr}.estimate-info,.estimate-form-panel{padding:38px}.thanks-section{min-height:500px}}
@media(max-width:600px){.estimate-section{padding-top:34px}.estimate-layout{gap:22px}.estimate-info{padding:30px 24px;box-shadow:6px 6px 0 #c7b37f}.estimate-form-panel{padding:30px 22px}.form-grid{grid-template-columns:1fr}.form-field--wide{grid-column:auto}.form-consent{padding:14px}.thanks-section{min-height:460px;padding:48px 0}.thanks-card{padding:42px 22px;border-radius:16px;box-shadow:7px 7px 0 #a88d4f}.thanks-icon{width:68px;height:68px;font-size:2rem}.thanks-card h2{font-size:2rem}.thanks-actions{flex-direction:column}.thanks-actions .btn{width:100%}}

/* Privacy-safe static service-area map in every footer. */
.footer-service-map{margin-top:48px;padding:46px 0 42px;border-top:1px solid rgba(255,255,255,.2)}.footer-service-map__heading{display:flex;align-items:end;justify-content:space-between;gap:34px;margin-bottom:26px}.footer-service-map__heading h2{margin:.3rem 0 0;color:#fff}.footer-service-map__heading>p{max-width:520px;margin:0;color:#e6dfd0}.footer-service-map .kicker{color:#dec98d}.footer-service-map__layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.5fr);gap:26px;align-items:stretch}.footer-service-map__graphic{overflow:hidden;border:2px solid #bca66d;border-radius:18px;background:#f3ecdf;box-shadow:8px 8px 0 rgba(188,166,109,.5)}.footer-service-map__svg{display:block;width:100%;height:auto}.map-bg{fill:#f3ecdf}.map-counties path{fill:#d7ceb7;stroke:#8b7d5d;stroke-width:1}.map-counties path:nth-child(3n+2){fill:#e4dac4}.map-counties path:nth-child(3n){fill:#cdc2a7}.map-region-label{fill:#6b5c3b;font:700 14px var(--font-display);letter-spacing:2px}.map-pin__halo{fill:rgba(255,255,255,.82)}.map-pin__drop{fill:var(--primary);stroke:#dec98d;stroke-width:2}.map-pin text{fill:#fff;font:700 10px var(--font-display);pointer-events:none}.footer-service-map__towns{display:grid;align-content:start;gap:9px;list-style:none;margin:0;padding:0}.footer-service-map__towns li{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center;padding:8px 10px;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:rgba(255,255,255,.07)}.footer-service-map__towns span{display:grid;place-items:center;width:30px;height:30px;border:2px solid #dec98d;border-radius:50%;background:var(--primary);color:#fff;font-family:var(--font-display);font-weight:700}.footer-service-map__towns a{font-weight:700;text-decoration-thickness:1px;text-underline-offset:3px}.footer-service-map__credit{margin:22px 0 0;color:#cfc7b7;font-size:.78rem}.footer-service-map__credit a{color:#e9d69e}
@media(max-width:900px){.footer-service-map__heading{align-items:start;flex-direction:column}.footer-service-map__layout{grid-template-columns:1fr}.footer-service-map__towns{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.footer-service-map{margin-top:38px;padding:38px 0 32px}.footer-service-map__heading{gap:14px}.footer-service-map__layout{gap:20px}.footer-service-map__graphic{border-radius:12px;box-shadow:5px 5px 0 rgba(188,166,109,.5)}.footer-service-map__towns{grid-template-columns:1fr}.footer-service-map__towns li{padding:7px 9px}.footer-service-map__credit{font-size:.74rem;line-height:1.5}}

/* Legal pages and privacy choices */
.footer-link{margin:0;padding:0;border:0;background:none;color:#fff;font:inherit;text-align:left;text-decoration:underline;cursor:pointer}
.footer-link:hover,.footer-link:focus-visible{color:var(--accent)}
.page-legal .phero+.legal-section{padding-block:56px;background:var(--surface)}
.page-legal .legal-section>.wrap{max-width:900px;padding:42px 46px;background:var(--paper);border:1px solid var(--line);border-top:6px solid var(--accent);box-shadow:10px 10px 0 color-mix(in srgb,var(--primary) 20%,transparent);font-size:1.06rem;line-height:1.8}
.page-legal .legal-section h2{margin-top:2.8rem;padding-top:1.2rem;border-top:1px solid var(--line);color:var(--primary-deep);font-size:1.7rem}
.page-legal .legal-section h2:first-child{margin-top:0;padding-top:0;border-top:0}
.page-legal .legal-section p{max-width:74ch}
.consent[hidden]{display:none}
.consent,.consent h2,.consent__actions .btn{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.consent{position:fixed;z-index:1000;right:20px;bottom:20px;left:20px;padding:0;background:transparent}
.consent__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;width:min(1040px,100%);max-height:calc(100vh - 40px);margin-inline:auto;padding:24px 26px;overflow:auto;background:var(--primary-deep);color:#fff;border:1px solid rgba(255,255,255,.28);border-radius:16px;box-shadow:0 18px 48px rgba(0,0,0,.42)}
.consent h2{margin:0 0 8px;color:#fff;font-size:1.45rem}
.consent p{max-width:72ch;margin:0;line-height:1.55}
.consent a{color:#fff;font-weight:700}
.consent__gpc{margin-top:8px!important;color:#f4d77d;font-weight:700}
.consent__actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.consent__actions .btn{min-width:150px;margin:0;padding:13px 18px;background:#fff;color:var(--primary-deep)!important;border:2px solid #fff;box-shadow:none;text-align:center}
.consent__actions .btn--secondary{background:#fff;color:var(--primary-deep)!important;border-color:#fff}
.consent__actions .btn:hover,.consent__actions .btn:focus-visible{transform:none;filter:brightness(1.08);outline:3px solid var(--accent);outline-offset:2px}
@media(max-width:700px){.page-legal .phero+.legal-section{padding-block:36px}.page-legal .legal-section>.wrap{padding:28px 22px;font-size:1rem;line-height:1.75;box-shadow:6px 6px 0 color-mix(in srgb,var(--primary) 20%,transparent)}.page-legal .legal-section h2{margin-top:2.25rem;font-size:1.4rem}.consent{right:10px;bottom:10px;left:10px}.consent__inner{grid-template-columns:1fr;gap:18px;max-height:calc(100vh - 20px);padding:20px;border-radius:14px}.consent__actions{display:grid;grid-template-columns:1fr 1fr;justify-content:stretch}.consent__actions .btn{min-width:0;width:100%}}
@media(max-width:430px){.consent__actions{grid-template-columns:1fr}}

/* Header refinement: call action in navigation, no utility strip. */
.nav__call{background:var(--primary);white-space:nowrap}
.nav__call:hover,.nav__call:focus-visible{background:var(--primary-deep)}
@media(max-width:1100px){.nav__toggle{display:block}.nav__links{display:none;position:absolute;left:0;right:0;top:100%;padding:20px;background:var(--paper);flex-direction:column;align-items:stretch;box-shadow:0 14px 24px rgba(0,0,0,.14)}.nav__links.open{display:flex}.nav__links li{width:100%}.nav__links .btn{width:100%;text-align:center}}
