@font-face{font-family:BarlowCondensed;src:url('/assets/fonts/barlow-condensed-700.woff2') format('woff2');font-weight:700;font-display:swap}@font-face{font-family:PublicSans;src:url('/assets/fonts/public-sans-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:PublicSans;src:url('/assets/fonts/public-sans-700.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--green:#106d39;--forest:#0b4a27;--yellow:#f4d71a;--ink:#18231d;--paper:#f7f8f4;--soft:#edf2ec;--white:#fff;--line:#bad0bf;--display:BarlowCondensed,'Arial Narrow',sans-serif;--body:PublicSans,Arial,sans-serif;--radius:14px;--shadow:0 18px 48px rgba(11,74,39,.16);--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--body);font-size:17px;line-height:1.65}img{display:block;max-width:100%;height:auto}a{color:inherit;text-underline-offset:.2em}button,input,textarea,select{font:inherit}::selection{background:var(--yellow);color:var(--forest)}:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--soft)}::-webkit-scrollbar-thumb{background:var(--green);border:3px solid var(--soft);border-radius:999px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;left:16px;top:-80px;z-index:1000;background:var(--yellow);color:var(--forest);padding:.7rem 1rem;border-radius:8px;font-weight:700}.skip-link:focus{top:16px}
.site-header{min-height:84px;padding:0 max(22px,calc((100vw - var(--max))/2));display:flex;align-items:center;gap:28px;background:var(--forest);color:var(--white);border-bottom:1px solid rgba(244,215,26,.42);position:relative;z-index:50}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex:none}.brand strong,.brand small{display:block;font-family:var(--display);line-height:.88;letter-spacing:.045em}.brand strong{font-size:1.85rem;color:var(--yellow)}.brand small{font-size:.72rem;color:var(--white);letter-spacing:.13em;margin-top:6px}.brand-mark{width:28px;height:40px;border:2px solid var(--yellow);display:grid;grid-template-columns:repeat(2,1fr);gap:4px;padding:4px;border-radius:4px}.brand-mark i{display:block;background:var(--yellow);border-radius:1px}.site-nav{margin-left:auto;display:flex;align-items:center;gap:26px}.site-nav>a,.nav-group>a{font-size:.82rem;font-weight:700;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;padding:29px 0 25px;border-bottom:3px solid transparent}.site-nav>a:hover,.site-nav>a:focus-visible,.nav-group:hover>a,.nav-group:focus-within>a{color:var(--yellow);border-bottom-color:var(--yellow)}.nav-group{display:flex;align-items:center;position:relative}.submenu-toggle{background:none;border:0;color:inherit;width:44px;height:44px;padding:10px;cursor:pointer}.submenu-toggle svg{fill:none;stroke:currentColor;stroke-width:2}.submenu{display:none;position:absolute;top:70px;left:-16px;min-width:260px;background:var(--white);color:var(--forest);border:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow);padding:10px}.submenu a{display:block;padding:10px 12px;text-decoration:none;border-radius:8px;font-weight:700}.submenu a:hover,.submenu a:focus-visible{background:var(--yellow)}.nav-group:hover .submenu,.nav-group:focus-within .submenu,.nav-group.is-open .submenu{display:block}.header-call{background:var(--yellow);color:var(--forest);text-decoration:none;font-family:var(--display);font-size:1.1rem;line-height:1;padding:12px 18px;border-radius:10px;letter-spacing:.04em;box-shadow:0 8px 24px rgba(0,0,0,.16)}.header-call span{display:block;font-family:var(--body);font-size:.55rem;letter-spacing:.12em;margin-bottom:6px}.menu-toggle{display:none;background:none;border:0;color:var(--white);width:44px;height:44px;padding:9px}.menu-toggle span:not(.sr-only){display:block;height:2px;background:currentColor;margin:6px 0}
h1,h2,h3{font-family:var(--display);line-height:.98;text-wrap:balance;margin:0;color:var(--forest);font-weight:700}h1{font-size:clamp(3.3rem,6.6vw,5.9rem);letter-spacing:-.025em}h2{font-size:clamp(2.5rem,5vw,4.6rem);letter-spacing:-.015em}h3{font-size:clamp(1.6rem,2.5vw,2.25rem)}p{max-width:70ch}.section{padding:clamp(72px,9vw,122px) max(22px,calc((100vw - var(--max))/2))}.section--tight{padding-top:54px;padding-bottom:54px}.section--green{background:var(--green);color:var(--white)}.section--green h2,.section--green h3{color:var(--white)}.section--yellow{background:var(--yellow);color:var(--forest)}.section--soft{background:var(--soft)}.section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.62fr);gap:48px;align-items:end;margin-bottom:50px}.section-heading p{margin:0 0 .35rem;font-size:1.06rem}.measure{max-width:72ch}.lede{font-size:clamp(1.05rem,1.4vw,1.28rem);line-height:1.65}.button-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 20px;border-radius:10px;background:var(--yellow);color:var(--forest);font-weight:700;text-decoration:none;border:1px solid var(--yellow);transition:transform .18s ease-out,box-shadow .18s ease-out,background .18s ease-out}.button:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(11,74,39,.2)}.button--dark{background:var(--forest);color:var(--white);border-color:var(--forest)}.button--ghost{background:transparent;color:inherit;border-color:currentColor}.text-link{font-weight:700;color:inherit;text-decoration-thickness:2px}
.hero{background:var(--forest);color:var(--white);padding:clamp(58px,7vw,96px) max(22px,calc((100vw - var(--max))/2)) 0;overflow:hidden;position:relative}.hero-grid{display:grid;grid-template-columns:minmax(330px,.72fr) minmax(520px,1.28fr);gap:56px;align-items:center}.hero-copy{padding-bottom:70px}.hero h1{color:var(--white);max-width:10ch}.hero h1 em{font-style:normal;color:var(--yellow)}.hero .lede{color:#deede3;margin-top:26px}.scope-badge{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.09);border:1px solid rgba(244,215,26,.45);padding:8px 12px;border-radius:999px;font-size:.78rem;font-weight:700;margin-bottom:24px}.scope-badge:before{content:"";width:8px;height:8px;background:var(--yellow);border-radius:50%}.hero-media{position:relative;align-self:end}.film-strip{position:relative;background:#071e13;border:1px solid rgba(244,215,26,.7);padding:34px 22px 22px;border-radius:var(--radius) var(--radius) 0 0;box-shadow:0 26px 60px rgba(0,0,0,.24)}.film-strip:before,.film-strip:after,.footer-rail:before,.footer-rail:after{content:"";position:absolute;left:14px;right:14px;height:12px;background:repeating-linear-gradient(90deg,var(--yellow) 0 10px,transparent 10px 24px)}.film-strip:before{top:9px}.film-strip:after{bottom:9px}.film-strip img{width:100%;height:clamp(360px,39vw,560px);object-fit:cover;border-radius:8px;filter:saturate(.88) contrast(1.04)}.frame-flag{position:absolute;right:9%;top:-18px;width:82px;height:92px;background:var(--yellow);color:var(--forest);display:grid;place-items:center;font-family:var(--display);font-size:1.7rem;clip-path:polygon(0 0,100% 0,100% 70%,50% 100%,0 70%);box-shadow:0 10px 22px rgba(0,0,0,.2)}.frame-note{position:absolute;left:-22px;bottom:48px;background:var(--yellow);color:var(--forest);padding:14px 18px;border-radius:10px;max-width:240px;font-weight:700;box-shadow:var(--shadow)}.process-rail{max-width:var(--max);margin:0 auto;background:var(--yellow);color:var(--forest);display:grid;grid-template-columns:repeat(4,1fr);border-radius:var(--radius) var(--radius) 0 0}.process-step{padding:22px;position:relative;border-right:1px solid rgba(11,74,39,.32)}.process-step:last-child{border-right:0}.process-step b{font-family:var(--display);font-size:1.5rem;display:block}.process-step span{font-size:.86rem}.process-step:before{content:"";position:absolute;top:-9px;left:20px;width:12px;height:18px;background:var(--forest);border-radius:999px}
.service-track{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.service-card{position:relative;min-height:270px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px;text-decoration:none;overflow:hidden;box-shadow:0 12px 34px rgba(11,74,39,.08);transition:transform .2s ease-out,box-shadow .2s ease-out}.service-card:nth-child(1),.service-card:nth-child(4){grid-column:span 7}.service-card:nth-child(2),.service-card:nth-child(3){grid-column:span 5}.service-card:nth-child(5),.service-card:nth-child(6){grid-column:span 6}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-card h3{margin-bottom:14px}.service-card p{margin:0 0 28px}.service-card .card-link{position:absolute;left:26px;bottom:24px;font-weight:700;color:var(--green)}.service-card:after{content:"";position:absolute;right:20px;bottom:22px;width:52px;height:34px;border:2px solid var(--green);border-radius:5px;background:repeating-linear-gradient(90deg,var(--green) 0 5px,transparent 5px 12px)}
.photo-pair{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:end}.photo-card{background:var(--forest);padding:14px;border-radius:var(--radius);position:relative}.photo-card img{width:100%;height:420px;object-fit:cover;border-radius:9px}.photo-card:nth-child(2){transform:translateY(46px)}.photo-label{position:absolute;left:28px;bottom:28px;background:var(--yellow);color:var(--forest);padding:9px 13px;border-radius:999px;font-weight:700;font-size:.78rem}.scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.scope-panel{background:var(--white);border-radius:var(--radius);padding:28px;box-shadow:0 12px 34px rgba(11,74,39,.09)}.scope-panel h3{margin-bottom:18px}.check-list,.plain-list{list-style:none;padding:0;margin:0}.check-list li,.plain-list li{position:relative;padding:10px 0 10px 27px;border-bottom:1px solid var(--line)}.check-list li:last-child,.plain-list li:last-child{border-bottom:0}.check-list li:before{content:"";position:absolute;left:0;top:17px;width:12px;height:8px;border-left:3px solid var(--green);border-bottom:3px solid var(--green);transform:rotate(-45deg)}.plain-list li:before{content:"";position:absolute;left:4px;top:19px;width:8px;height:8px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 2px var(--green)}
.cta-band{display:grid;grid-template-columns:1fr auto;gap:34px;align-items:center;background:var(--yellow);color:var(--forest);padding:38px;border-radius:var(--radius);box-shadow:var(--shadow)}.cta-band h2{font-size:clamp(2.3rem,4.4vw,4.2rem)}.cta-band p{margin:.8rem 0 0}.cta-band .button{background:var(--forest);color:var(--white);border-color:var(--forest)}
.page-hero{padding:clamp(72px,9vw,128px) max(22px,calc((100vw - var(--max))/2));background:var(--forest);color:var(--white);position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;right:-6vw;bottom:-180px;width:44vw;height:310px;border:34px solid rgba(244,215,26,.18);border-radius:50%}.page-hero h1{color:var(--white);max-width:12ch}.page-hero .lede{color:#dcebe0;max-width:62ch;margin:24px 0 0}.page-hero .scope-badge{margin-bottom:26px}.service-hero{display:grid;grid-template-columns:.78fr 1.22fr;gap:55px;align-items:center}.service-hero .page-hero-copy{padding:34px 0}.service-hero-media{position:relative}.service-hero-media img{width:100%;height:520px;object-fit:cover;border-radius:var(--radius);border:12px solid rgba(255,255,255,.08)}
.area-grid,.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.area-card,.guide-card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:25px;text-decoration:none;min-height:235px;box-shadow:0 9px 28px rgba(11,74,39,.07)}.area-card:hover,.guide-card:hover{border-color:var(--green)}.area-card h3,.guide-card h3{margin-bottom:14px}.distance{display:inline-flex;align-self:flex-start;background:var(--yellow);color:var(--forest);padding:5px 10px;border-radius:999px;font-size:.74rem;font-weight:700;margin-top:auto}.guide-card img{width:calc(100% + 50px);max-width:none;margin:-25px -25px 24px;height:210px;object-fit:cover;border-radius:var(--radius) var(--radius) 0 0}.guide-card p{margin:.6rem 0 1.3rem}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:62px;align-items:start}.article-body{max-width:780px}.article-body h2{font-size:2.8rem;margin:64px 0 20px}.article-body h3{font-size:1.8rem;margin:38px 0 14px}.article-body li{margin:10px 0}.article-body table{width:100%;border-collapse:collapse;margin:28px 0}.article-body th,.article-body td{text-align:left;vertical-align:top;padding:14px;border-bottom:1px solid var(--line)}.article-body th{background:var(--forest);color:var(--white)}.article-meta{font-size:.9rem;color:#46604f}.article-side{position:sticky;top:24px;background:var(--yellow);color:var(--forest);padding:24px;border-radius:var(--radius)}.article-side h2{font-size:2rem}.article-side a{font-weight:700}.source-note{font-size:.86rem;background:var(--soft);padding:18px;border-radius:10px}
.faq-list{max-width:920px;margin:0 auto}.faq-list details{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);margin:12px 0;padding:0 22px}.faq-list summary{cursor:pointer;list-style:none;font-family:var(--display);font-size:1.55rem;color:var(--forest);padding:21px 38px 21px 0;position:relative}.faq-list summary:after{content:"+";position:absolute;right:0;color:var(--green)}.faq-list details[open] summary:after{content:"−"}.faq-list details p{margin:0 0 24px}.policy{max-width:850px}.policy h2{font-size:2.5rem;margin:54px 0 16px}.policy h3{margin:32px 0 12px}.contact-panel{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-card{background:var(--white);border-radius:var(--radius);padding:34px;box-shadow:var(--shadow)}.contact-card--primary{background:var(--yellow)}.phone-display{font-family:var(--display);font-size:clamp(2.4rem,5vw,5rem);line-height:1;color:var(--forest);text-decoration:none;display:block;margin:22px 0}.notice{border:1px solid var(--line);background:var(--soft);padding:20px;border-radius:var(--radius)}
.site-footer{background:var(--forest);color:#dcebe0;padding:0 max(22px,calc((100vw - var(--max))/2))}.footer-rail{height:45px;position:relative;border-bottom:1px solid rgba(244,215,26,.3)}.footer-rail:before{top:16px}.footer-rail:after{display:none}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:38px;padding:66px 0}.footer-grid h2{font-size:1.5rem;color:var(--yellow);margin-bottom:18px}.footer-grid a:not(.brand){display:block;margin:8px 0;text-decoration:none}.footer-grid a:hover{color:var(--yellow)}.brand--footer{margin-bottom:22px}.availability{font-size:.8rem;color:#a9c6b1}.footer-bottom{display:flex;justify-content:space-between;padding:20px 0;border-top:1px solid rgba(255,255,255,.14);font-size:.8rem}
@media (prefers-reduced-motion:no-preference){.hero .film-strip{animation:rail-in .7s cubic-bezier(.16,1,.3,1) both}.frame-flag{animation:flag-set .9s .25s cubic-bezier(.16,1,.3,1) both}@keyframes rail-in{from{clip-path:inset(0 100% 0 0);filter:blur(6px)}to{clip-path:inset(0);filter:blur(0)}}@keyframes flag-set{from{transform:translateY(-26px);filter:blur(3px)}to{transform:translateY(0);filter:blur(0)}}}
@media (max-width:1080px){.site-header{gap:18px}.site-nav{gap:16px}.site-nav>a,.nav-group>a{font-size:.72rem}.header-call{display:none}.hero-grid,.service-hero{grid-template-columns:1fr 1.25fr;gap:34px}.footer-grid{grid-template-columns:2fr repeat(2,1fr)}.footer-grid>div:nth-child(4),.footer-grid>div:nth-child(5){margin-top:16px}.area-grid,.guide-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:820px){.site-header{min-height:72px;flex-wrap:wrap;padding:14px 22px}.menu-toggle{display:block;margin-left:auto}.site-nav{display:none;order:3;width:100%;margin:8px 0 0;align-items:stretch;flex-direction:column;gap:0;border-top:1px solid rgba(255,255,255,.15);padding:10px 0 14px}.site-header.is-open .site-nav{display:flex}.site-nav>a,.nav-group>a{padding:12px 0;border:0}.nav-group{display:grid;grid-template-columns:1fr auto}.submenu-toggle{align-self:center}.submenu{position:static;grid-column:1/-1;background:#07391e;color:var(--white);box-shadow:none;border:0;border-radius:8px}.submenu a:hover,.submenu a:focus-visible{color:var(--forest)}.hero{padding-top:48px}.hero-grid,.service-hero{grid-template-columns:1fr}.hero-copy{padding-bottom:18px}.hero h1,.page-hero h1{max-width:12ch}.hero-media{width:calc(100% + 44px);margin-left:-22px}.film-strip{border-radius:0}.frame-note{left:22px}.process-rail{grid-template-columns:repeat(2,1fr);border-radius:0}.process-step:nth-child(2){border-right:0}.process-step:nth-child(-n+2){border-bottom:1px solid rgba(11,74,39,.3)}.section-heading{grid-template-columns:1fr;gap:20px}.service-card:nth-child(n){grid-column:span 6}.scope-grid{grid-template-columns:1fr}.photo-pair{grid-template-columns:1fr}.photo-card:nth-child(2){transform:none}.contact-panel,.article-layout{grid-template-columns:1fr}.article-side{position:static}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.cta-band{grid-template-columns:1fr}.service-hero-media img{height:390px}}
@media (max-width:560px){body{font-size:16px}.brand strong{font-size:1.55rem}.brand small{font-size:.61rem}.brand-mark{width:25px;height:36px}.hero h1,h1{font-size:3.25rem}.service-track{grid-template-columns:1fr}.service-card:nth-child(n){grid-column:1;margin:0;min-height:250px}.process-rail{display:block}.process-step{border-right:0;border-bottom:1px solid rgba(11,74,39,.3)}.process-step:last-child{border-bottom:0}.area-grid,.guide-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block}.section{padding-left:20px;padding-right:20px}.page-hero{padding-left:20px;padding-right:20px}.photo-card img{height:310px}.service-hero-media img{height:320px}.frame-flag{width:66px;height:76px}.frame-note{position:static;margin-top:12px;max-width:none}.article-body h2{font-size:2.25rem}.cta-band{padding:26px}}
.section--green .service-card h3{color:var(--forest)}.section--green .service-card p{color:var(--ink)}
