:root{--green-950:#0b2822;--green-900:#12362d;--green-800:#1c4b3e;--green-100:#dfe9e2;--ivory:#fbfaf6;--paper:#fffdf8;--charcoal:#252b29;--muted:#5d6864;--terracotta:#a45f43;--terracotta-dark:#7d432f;--terracotta-light:#e6a183;--line:#12362d2e;--shadow:0 20px 60px #0b28221f;--radius:2px;--shell:min(1240px, calc(100% - 48px));color-scheme:light;background:var(--ivory);color:var(--charcoal);font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ivory);color:var(--charcoal);margin:0;line-height:1.62;overflow-x:clip}img{max-width:100%;height:auto}a{color:var(--green-800);text-underline-offset:.18em}a:hover{color:var(--terracotta-dark)}button,input,select,textarea{font:inherit}button,.button{touch-action:manipulation}h1,h2,h3{color:var(--green-950);text-wrap:balance;font-family:Arial,Helvetica,ui-sans-serif,system-ui,sans-serif;font-weight:750;line-height:.98}h1{margin:0;font-size:clamp(2.8rem,7vw,6rem)}h2{margin:0 0 .7em;font-size:clamp(2.15rem,4.6vw,4.25rem)}h3{margin:0 0 .45em;font-size:clamp(1.35rem,2.2vw,2rem)}p{margin:0 0 1em}ul,ol{padding-left:1.25rem}:focus-visible{outline-offset:4px;outline:3px solid #e09572}.shell{width:var(--shell);margin-inline:auto}.skip-link{z-index:100;background:var(--paper);color:var(--green-950);border-radius:8px;padding:.75rem 1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.skip-link:focus{transform:none}.eyebrow{color:var(--terracotta-dark);letter-spacing:.18em;text-transform:uppercase;margin:0 0 1rem;font-size:.72rem;font-weight:850}.lede{color:#42504b;max-width:720px;font-size:clamp(1.08rem,2vw,1.35rem)}.muted{color:var(--muted)}.site-header{z-index:30;background:var(--green-950);border-bottom:1px solid #ffffff29;position:relative}.header-inner{grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;min-height:84px;display:grid}.brand{display:flex}.brand img{width:170px}.desktop-nav{justify-self:center;align-items:center;gap:clamp(1rem,2vw,2rem);display:flex}.desktop-nav a{color:#f5f1e8;font-size:.86rem;font-weight:750;text-decoration:none}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--terracotta-light)}.button{border:1px solid var(--green-900);border-radius:var(--radius);background:var(--green-900);color:#fff;cursor:pointer;justify-content:center;align-items:center;gap:.65rem;min-height:50px;padding:.82rem 1.3rem;font-weight:800;text-decoration:none;display:inline-flex}.button:hover{background:var(--terracotta-dark);border-color:var(--terracotta-dark);color:#fff}.button-small{min-height:42px;padding:.6rem 1rem;font-size:.88rem}.button-light{border-color:var(--paper);background:var(--paper);color:var(--green-950)}.button-secondary{color:var(--green-950);background:0 0}.button-outline-light{color:var(--paper);background:0 0;border-color:#ffffff9e}.button-outline-light:hover{border-color:var(--paper);background:var(--paper);color:var(--green-950)}.header-cta:hover{background:var(--terracotta-light);border-color:var(--terracotta-light);color:var(--green-950)}.button:disabled{cursor:wait;opacity:.65}.mobile-nav{display:none;position:relative}.mobile-nav summary{min-width:48px;min-height:48px;color:var(--paper);cursor:pointer;place-items:center;font-weight:800;list-style:none;display:grid}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{border:1px solid var(--line);background:var(--paper);width:min(300px,100vw - 32px);box-shadow:var(--shadow);border-radius:14px;padding:.6rem;position:absolute;top:calc(100% + .5rem);right:0}.mobile-nav nav a{color:var(--green-950);padding:.72rem .8rem;font-weight:750;text-decoration:none;display:block}.breadcrumbs{padding-top:1.1rem}.breadcrumbs ol{color:var(--muted);flex-wrap:wrap;gap:.45rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.breadcrumbs li:not(:last-child):after{content:"/";color:#87908c;margin-left:.45rem}.breadcrumbs a{color:var(--muted)}.hero-actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.section{padding:clamp(5.5rem,10vw,9.5rem) 0}.section-paper{background:var(--paper)}.section-green{background:var(--green-950);color:#e8eee9}.section-green h2,.section-green h3{color:#fff}.section-link{margin-top:2rem}.work-types{border-top:1px solid #ffffff47;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.work-types article{border-right:1px solid #fff3;padding:2rem 2rem 0 0}.work-types article+article{padding-left:2rem}.work-types article:last-child{border-right:0}.work-types p{color:#c8d6ce}.checklist{margin:1rem 0 0;padding:0;list-style:none}.checklist li{border-top:1px solid var(--line);padding:.62rem 0 .62rem 1.8rem;position:relative}.checklist li:before{content:"✓";color:var(--terracotta-dark);font-weight:900;position:absolute;left:.1rem}.detail-hero{min-height:clamp(520px,68svh,720px);padding:clamp(4.5rem,8vw,8rem) 0 clamp(6rem,12vw,10rem)}.detail-hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:end;gap:clamp(2rem,7vw,6rem);display:grid}.detail-hero-single{grid-template-columns:minmax(0,980px)}.detail-hero h1{font-size:clamp(2.5rem,6vw,4.8rem)}.content-grid{grid-template-columns:minmax(0,1fr) minmax(250px,330px);gap:clamp(2.5rem,7vw,6rem);display:grid}.content-grid-single{grid-template-columns:minmax(0,820px)}.prose{max-width:760px}.prose>*+*{margin-top:1.1rem}.prose h2{margin-top:2.5rem;font-size:clamp(1.75rem,3vw,2.6rem)}.prose h3{margin-top:1.8rem}.prose li+li{margin-top:.55rem}.side-note{border-block:1px solid var(--line);background:0 0;border-radius:0;align-self:start;padding:1.5rem 0}.side-note h2{font-size:1.45rem}.source-list{margin:0;padding:0;list-style:none}.source-list li{border-top:1px solid var(--line);padding:1rem 0}.source-list a{font-weight:800}.source-list small{color:var(--muted);margin-top:.3rem;display:block}.faq-list details{border-top:1px solid var(--line);padding:1.2rem 0}.faq-list summary{cursor:pointer;color:var(--green-950);font-weight:800}.faq-list details p{margin:.8rem 0 0}.related-links{flex-wrap:wrap;gap:.65rem;display:flex}.related-links a{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:.6rem .85rem;text-decoration:none}.related-heading{margin-top:2rem}.cta-band{background:var(--green-800);color:#e9f0eb;padding:clamp(4.5rem,8vw,7rem) 0}.cta-inner{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;display:grid}.cta-inner h2{color:#fff}.cta-inner p:not(.eyebrow){max-width:760px}.cta-band .button-light:hover{border-color:var(--green-950);background:var(--green-950);color:#fff}.index-hero{background:var(--green-950);color:#e2ebe5;min-height:clamp(520px,68svh,720px);padding:0 0 clamp(6rem,10vw,9rem)}.index-hero-copy{padding-top:clamp(4rem,8vw,7rem)}.index-hero h1{max-width:1050px;color:var(--paper);font-size:clamp(3.2rem,7.6vw,7.2rem)}.index-hero .lede{color:#d1ddd6;max-width:780px;margin-top:2rem}.index-hero .eyebrow{color:var(--terracotta-light)}.index-hero .breadcrumbs{padding-top:1.2rem}.index-hero .breadcrumbs,.index-hero .breadcrumbs a{color:#d1ddd6}.index-hero .breadcrumbs li:not(:last-child):after{color:#ffffff80}.guide-meta{color:var(--terracotta-dark);letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;font-weight:800}.founder-panel{grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);align-items:center;gap:clamp(2rem,6vw,6rem);display:grid}.founder-portrait{border:1px solid var(--line);width:100%;max-width:520px;box-shadow:none;background:#ece4d8;border-radius:0;margin:0;overflow:hidden}.founder-portrait img{aspect-ratio:4/5;object-fit:cover;width:100%;display:block}.founder-portrait figcaption{gap:.1rem;padding:1rem 1.15rem 1.1rem;display:grid}.founder-portrait figcaption strong{color:var(--green-950)}.founder-portrait figcaption span{color:var(--muted);font-size:.82rem}.legal-shell{max-width:800px;padding-bottom:6rem}.legal-shell h1{margin:4rem 0 2rem;font-size:clamp(2.5rem,6vw,4.5rem)}.legal-shell h2{margin-top:2.7rem;font-size:2rem}.contact-section{background:var(--ivory);min-height:75svh;padding-top:clamp(3rem,7vw,6rem)}.contact-form-shell{max-width:820px}.contact-heading{max-width:760px;margin-bottom:clamp(2rem,5vw,3.5rem)}.contact-heading h1{font-size:clamp(3.2rem,8vw,6.5rem)}.contact-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:none;padding:clamp(1.4rem,4vw,3rem)}.form-required-note{color:var(--muted);margin:0 0 .5rem;font-size:.82rem}.form-required-note span{color:var(--terracotta-dark);font-weight:900}.visually-hidden{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.form-step{border:0;margin:0;padding:0}.form-grid{grid-template-columns:1fr 1fr;gap:1.1rem;display:grid}.field{margin-top:1.15rem}.field-full{grid-column:1/-1}.contact-phone-field{max-width:calc(50% - .55rem)}.field label{color:var(--green-950);margin-bottom:.38rem;font-weight:800;display:block}.field small{color:var(--muted);margin-top:.35rem;display:block}.field input,.field select,.field textarea{width:100%;min-height:50px;color:var(--charcoal);background:#fff;border:1px solid #8d9793;border-radius:8px;padding:.75rem .85rem}.field textarea{resize:vertical;min-height:120px}.field input[aria-invalid=true],.field select[aria-invalid=true],.field textarea[aria-invalid=true]{border:2px solid #a12f2f}.field-error{color:#8d2424;margin:.35rem 0 0;font-weight:750}.form-optional{border-block:1px solid var(--line);margin-top:1.5rem}.form-optional summary{cursor:pointer;color:var(--green-950);padding:1rem 0;font-weight:800}.form-optional summary span{color:var(--muted);font-weight:500}.form-optional[open]{padding-bottom:1.25rem}.form-actions{flex-wrap:wrap;gap:.7rem;margin-top:1.8rem;display:flex}.form-submit{min-width:220px}.form-assurance{color:var(--muted);margin:.85rem 0 0;font-size:.82rem}.form-status{border-radius:10px;margin:0 0 1.5rem;padding:1rem 1.2rem}.form-status-error{background:#fff0ed;border:2px solid #9e3030}.form-status-success{border:2px solid var(--green-800);background:#e5f1e9}.form-status h3{font-family:inherit;font-size:1.1rem;font-weight:850}.form-status[hidden],.form-step[hidden]{display:none}.privacy-check{grid-template-columns:auto 1fr;align-items:start;gap:.7rem;display:grid}.privacy-check input{width:22px;min-height:22px;margin-top:.2rem}.site-footer{background:var(--green-950);color:#cbd8d2;padding:clamp(5rem,9vw,8rem) 0 2rem}.site-footer a{color:#f4f0e8}.footer-grid{grid-template-columns:1fr 1fr;gap:3rem;display:grid}.footer-grid img{margin-bottom:1rem}.footer-heading{color:#fff;font-weight:850}.footer-base{border-top:1px solid #ffffff24;justify-content:space-between;gap:2rem;margin-top:3rem;padding-top:1.5rem;font-size:.76rem;display:flex}.footer-base p{max-width:560px}.home-hero{background:var(--green-950);color:#d9e3dc;flex-direction:column;min-height:clamp(600px,100svh - 84px,820px);display:flex}.home-hero-inner{flex:1;align-content:space-between;padding-top:clamp(3.5rem,7vw,7rem);padding-bottom:clamp(3rem,6vw,5rem);display:grid}.home-hero h1{max-width:980px;color:var(--paper);margin-block:clamp(1.5rem,3vw,3rem) clamp(3rem,6vw,5rem);font-size:clamp(3.7rem,8vw,7.8rem);line-height:.91}.home-hero-bottom{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:clamp(2rem,7vw,7rem);display:grid}.home-hero .lede{color:#d9e3dc;max-width:740px;margin:0}.hero-routes{flex-wrap:wrap;gap:.75rem;display:flex}.section-heading-wide{max-width:940px;margin-bottom:clamp(3rem,7vw,6rem)}.section-heading-wide h2{margin-bottom:.45em}.section-heading-wide .lede{max-width:780px}.home-projects{background:var(--ivory)}.project-list{border-top:1px solid var(--green-900);grid-template-columns:1fr 1fr;display:grid}.project-list a{border-bottom:1px solid var(--line);min-height:150px;color:var(--green-950);align-items:center;padding:1.6rem;text-decoration:none;display:grid}.project-list a:nth-child(odd){border-right:1px solid var(--line)}.project-list a:hover{background:var(--green-100);color:var(--green-950)}.project-list strong{font-size:clamp(1.3rem,2.3vw,2rem);line-height:1.05;display:block}.project-list small{color:var(--muted);margin-top:.55rem;font-size:.9rem;display:block}.current-searches{background:var(--green-800);color:#d8e3dc}.current-searches-heading{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:end;gap:clamp(2rem,7vw,7rem);margin-bottom:clamp(3rem,6vw,5rem);display:grid}.current-searches-heading h2{max-width:850px;color:var(--paper);margin:0}.current-searches-heading p{color:#d8e3dc;max-width:620px;margin:0;font-size:1.05rem}.current-search-list{border-top:1px solid #ffffff6b}.current-search{border-bottom:1px solid #ffffff47;grid-template-columns:minmax(220px,.85fr) minmax(360px,1.15fr) auto;align-items:center;gap:clamp(1.25rem,3vw,3rem);padding:clamp(2rem,4vw,3.25rem) 0;display:grid}.current-search h3{color:var(--paper);font-size:clamp(1.8rem,3.2vw,3rem)}.current-search-updated{color:#b9cbc1;margin:1.2rem 0 0;font-size:.78rem}.current-search-details{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.current-search-details div{border-left:1px solid #ffffff3d;min-height:110px;padding:.2rem 1.25rem}.current-search-details dt{color:#b9cbc1;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.55rem;font-size:.7rem;font-weight:800}.current-search-details dd{color:var(--paper);margin:0;font-size:.94rem;font-weight:750;line-height:1.35}.current-search .button{white-space:nowrap}.search-approach{background:var(--ivory)}.search-approach-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.78fr);align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.search-approach-grid>div:first-child{position:sticky;top:2rem}.search-checks{border-top:1px solid var(--green-900)}.search-checks article{border-bottom:1px solid var(--line);padding:1.45rem 0}.search-checks h3{margin-bottom:.35rem;font-size:1.3rem}.search-checks p{color:var(--muted);margin:0}.owner-route-inner{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:clamp(2rem,7vw,7rem);display:grid}.owner-route-inner>div{max-width:820px}.owner-route-inner p{color:#c8d6ce;max-width:720px;margin:0;font-size:1.1rem}.directory-layout{grid-template-columns:minmax(240px,.42fr) minmax(0,1fr);align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.directory-intro{position:sticky;top:2rem}.directory-intro h2{font-size:clamp(2.2rem,4vw,4rem)}.directory-section+.directory-section{border-top:1px solid var(--line)}.index-list{border-top:1px solid var(--green-900)}.index-row{border-bottom:1px solid var(--line);color:var(--green-950);align-items:center;padding:1.8rem 0;text-decoration:none;display:grid}.index-row:hover{color:var(--green-950)}.index-row h3{margin-bottom:.6rem;font-size:clamp(1.5rem,2.6vw,2.3rem)}.index-row p{max-width:740px;color:var(--muted);margin:0}.guide-index-list{border-top:1px solid var(--green-900)}.guide-index-item{border-bottom:1px solid var(--line);color:var(--green-950);align-items:start;padding:2.5rem 0;text-decoration:none;display:grid}.guide-index-item:hover{color:var(--green-950)}.guide-index-item h2{max-width:850px;margin-bottom:.45em;font-size:clamp(1.9rem,3.8vw,3.5rem)}.guide-index-item p:not(.guide-meta){max-width:760px;color:var(--muted)}.guide-index-item .text-link{margin-top:1.2rem;display:inline-block}.guide-hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(340px,.72fr);align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.guide-hero h1{max-width:780px}.guide-format{color:var(--muted);margin-top:1.5rem;font-weight:800}.guide-preview{border-top:4px solid var(--terracotta);background:var(--green-100);padding:clamp(1.5rem,3vw,2.5rem)}.guide-preview .checklist{margin-bottom:0}.guide-access-grid{grid-template-columns:minmax(0,.85fr) minmax(360px,.7fr);align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.guide-form-column>h2{margin-bottom:1.5rem}.guide-access-card{padding:clamp(1.35rem,3vw,2rem)}@media (width<=960px){.desktop-nav,.header-cta{display:none}.header-inner{grid-template-columns:1fr auto}.mobile-nav{display:block}.detail-hero-grid,.content-grid,.founder-panel,.work-types{grid-template-columns:1fr}.work-types article,.work-types article+article{border-bottom:1px solid #fff3;border-right:0;padding:1.5rem 0}.work-types article:last-child{border-bottom:0}.home-hero-bottom,.directory-layout,.search-approach-grid,.owner-route-inner,.current-searches-heading,.current-search,.guide-hero-grid,.guide-access-grid{grid-template-columns:1fr}.current-search{align-items:start}.current-search .button{justify-self:start}.search-approach-grid>div:first-child{position:static}.directory-intro{max-width:680px;position:static}.founder-portrait{width:min(100%,520px)}}@media (width<=640px){:root{--shell:min(100% - 28px, 1180px)}html{scroll-behavior:auto}.site-header{position:relative}.header-inner{min-height:72px}.brand img{width:145px}.footer-grid,.form-grid,.project-list,.cta-inner{grid-template-columns:1fr}.cta-inner .button{justify-self:start}.footer-base{display:block}.home-hero{min-height:clamp(580px,100svh - 72px,760px)}.home-hero-inner{padding-top:3.25rem;padding-bottom:2.5rem}.home-hero h1{margin-block:1rem 3rem;font-size:clamp(3rem,14vw,4.15rem);line-height:.94}.hero-routes{display:grid}.hero-routes .button{width:100%}.project-list a:nth-child(odd){border-right:0}.project-list a{min-height:118px;padding-inline:0}.current-search-details{grid-template-columns:1fr}.current-search-details div{border-top:1px solid #ffffff2e;border-left:0;min-height:0;padding:1rem 0}.current-search .button{width:100%}.index-hero{min-height:560px}.index-hero-copy{padding-top:3.5rem}.index-hero h1{font-size:clamp(3.25rem,16vw,4.6rem)}.guide-index-item{padding:1.8rem 0}.guide-index-item h2{font-size:1.75rem}.contact-section{padding-top:2.75rem}.contact-heading{margin-bottom:1.75rem}.contact-heading h1{font-size:clamp(3rem,14vw,4rem)}.contact-card{padding:1.25rem}.contact-phone-field{max-width:none}.form-submit{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){*,:before,:after{box-shadow:none!important}.button,.side-note,.founder-portrait,.contact-card,.form-status{border:1px solid buttontext}.button{color:buttontext;background:buttonface}:focus-visible{outline:3px solid highlight}}
