/* Explicit navigation hierarchy and a service-first home page. */
[hidden]{display:none!important}
html{scroll-padding-top:165px}
.structured-header .header-main{min-height:86px;gap:28px}
.header-purpose{font-size:12px;line-height:1.6;color:var(--muted);border-left:1px solid var(--line);padding-left:25px}
.header-find{margin-left:auto;display:flex;align-items:center;border:1px solid var(--line);border-radius:10px;background:#f8faf9;max-width:330px;flex:1}
.header-find input{background:none;border:0;min-width:0;width:100%;padding:12px 15px;font-size:13px;outline-offset:0}
.header-find button{border:0;background:none;color:var(--green);font-size:28px;line-height:1;padding:8px 13px}
.header-about{font-size:12px;font-weight:650;white-space:nowrap}
.structured-header nav.site-navigation{display:block;position:static;margin:0;padding:0;border-top:1px solid var(--line);font-size:13px;background:white}
.nav-directions{display:flex;position:relative;justify-content:space-between;gap:3px}
.nav-direction>summary{list-style:none;cursor:pointer;padding:17px 8px;white-space:nowrap;font-weight:650;border-bottom:3px solid transparent;line-height:1.3}
summary::-webkit-details-marker{display:none}
.nav-direction>summary>span{font-size:12px;color:#97a69b;margin-left:4px}
.nav-direction[open]>summary,.nav-direction[data-active]>summary{color:var(--green);border-bottom-color:var(--green);background:#f3f8f2}
.mega-panel{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #dce5de;border-top:0;border-radius:0 0 18px 18px;box-shadow:0 24px 50px #152a2026;max-height:calc(100dvh - 160px);overflow:auto;padding:25px 28px 18px;overscroll-behavior:contain}
.mega-intro{display:flex;align-items:center;gap:17px;background:#f0f5ef;padding:18px 20px;border-radius:12px;margin-bottom:22px}
.mega-intro>div{flex:1}.mega-intro strong{font-size:21px;letter-spacing:-.02em}.mega-intro p{font-weight:400;font-size:12px;max-width:650px;margin:5px 0 0;color:#6b786d;line-height:1.6}
.mega-intro .category-icon{flex-shrink:0;width:46px;height:46px}
.structured-header nav .button{padding:12px 16px;border:0;font-size:12px;flex-shrink:0}
.mega-columns{columns:4 210px;column-gap:28px}
.mega-column{break-inside:avoid;margin-bottom:23px}.mega-column h3{font-size:12px;letter-spacing:.025em;margin:0 0 10px;color:#79897c;line-height:1.5;text-transform:uppercase}
.structured-header nav .mega-column>a{display:block;padding:6px 0;border:0;font-size:13px;line-height:1.45;font-weight:500}
.structured-header nav a[aria-current=page]{color:var(--green);font-weight:750}
.structured-header nav .mega-overview{display:flex;justify-content:space-between;border:0;border-top:1px solid var(--line);padding:14px 0 0;color:var(--green);font-size:12px}
.intro-hero{background:linear-gradient(110deg,#edf4e8,#f7f8f1 65%,#edf1e7);border-bottom:1px solid var(--line)}
.intro-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(340px,1fr);gap:65px;padding-top:48px;padding-bottom:38px;align-items:center}
.intro-copy h1{font-size:clamp(36px,3.7vw,53px);line-height:1.12;letter-spacing:-.045em;margin-bottom:23px}
.intro-copy h1 em{font-style:normal;color:var(--green)}
.intro-copy p{font-size:16px;line-height:1.8;color:#637163;max-width:680px}.intro-copy p strong{font-weight:600;color:#384e3d}
.intro-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.intro-actions .button{padding:14px 18px;font-size:13px}
.intro-note{margin-top:23px;color:#7e8c7b;font-size:11px;display:flex;gap:8px;align-items:center}.intro-note>span{font-size:21px;color:var(--green)}
.intro-guide{background:#173c30;border-radius:20px;padding:28px 30px;color:#f0f6e9;box-shadow:0 15px 32px #294d2d12}
.guide-label{font-size:9px;letter-spacing:.14em;color:#a2bc9b;font-weight:700}
.intro-guide h2{font-size:26px;line-height:1.25;margin:12px 0 23px;letter-spacing:-.02em}
.intro-guide ol{padding:0;list-style:none;margin:0}.intro-guide li{display:flex;gap:15px;margin-bottom:17px}.intro-guide li>span{font-size:11px;color:#b5f07d;line-height:26px;font-weight:700}.intro-guide strong{font-size:13px}.intro-guide li p{font-size:12px;line-height:1.6;color:#a9bfae;margin:4px 0 0}
.intro-guide>a{border-top:1px solid #ffffff21;padding-top:16px;display:flex;justify-content:space-between;font-size:12px;color:#d2efb9}
.intro-stats{display:grid;grid-template-columns:repeat(4,1fr);padding:24px 0;border-top:1px solid #d6e1d0;gap:25px}.intro-stats>div{display:flex;gap:13px;align-items:center}.intro-stats strong{font-size:27px;letter-spacing:-.03em;white-space:nowrap}.intro-stats span{font-size:11px;max-width:105px;color:#6c7c69;line-height:1.5}
.home-picks{padding-top:32px}.home-picks .picks{border-color:#d4dfcc;box-shadow:0 8px 30px #293e2310}
.direction-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.direction-card{background:white;border:1px solid var(--line);border-radius:17px;padding:24px;display:flex;flex-direction:column}.direction-card-title{display:flex;gap:13px;align-items:center;margin-bottom:15px}.direction-card-title h3{font-size:22px;margin:0;flex:1}.direction-card-title>span:last-child{color:#8d9f8e;font-size:20px}.direction-card p{font-size:13px;line-height:1.7;color:#748172;margin-bottom:18px}.direction-shortcuts{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;margin-bottom:19px}.direction-shortcuts a{font-size:10px;color:#48664f;background:#f0f5ee;padding:5px 8px;border-radius:5px;line-height:1.5}.direction-shortcuts a:hover{background:#dcebd6}.direction-all{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:13px;font-size:12px;color:var(--green);font-weight:650}.knowledge-card{background:#eae8f3;border-color:#e0daec}.knowledge-card h3{font-size:29px}.knowledge-card p{color:#746d85}.knowledge-card .button{align-self:flex-start;margin-top:auto}
.service-explainer{display:grid;grid-template-columns:1fr 1fr;gap:70px}.service-explainer h2{font-size:30px}.service-explainer p{font-size:15px;line-height:1.8;color:#6b786d}.service-explainer .text-link{font-size:13px}.home-faq details{border-bottom:1px solid var(--line);padding:16px 0}.home-faq summary{font-size:15px;font-weight:650;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px}.home-faq summary:after{content:'+';color:var(--green)}.home-faq details[open] summary:after{content:'−'}.home-faq p{font-size:13px;margin:12px 0 0}.home-faq p a{text-decoration:underline}
.directory-page{padding-top:25px}.directory-page h1{font-size:46px;max-width:900px}.directory-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px;margin-top:35px}.directory-aside{align-self:start;position:sticky;top:160px;border:1px solid var(--line);background:white;border-radius:15px;padding:20px 13px}.directory-aside>strong{font-size:11px;color:#829080;text-transform:uppercase;letter-spacing:.1em;display:block;margin:0 10px 14px}.directory-aside>a{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:9px 11px;border-radius:8px}.directory-aside>a.selected{background:#eaf4e4;color:var(--green);font-weight:700}.directory-aside>a:hover{background:#f3f7f0}.directory-aside small{font-size:10px;color:#929d8d}.directory-aside .directory-all{margin-top:12px;border-top:1px solid var(--line);border-radius:0;font-size:11px;color:var(--green)}
.directory-main{min-width:0}.directory-search{background:#edf3e9;border-radius:14px;padding:19px 23px;margin-bottom:22px}.directory-search label{display:block;font-size:12px;font-weight:650;margin-bottom:9px}.directory-search .category-search{margin:0;width:100%;max-width:none;padding:12px 15px;background:white;font-size:13px}.directory-search #category-results{display:block;font-size:11px;margin-top:5px;color:var(--green)}
.directory-group{background:white;border:1px solid var(--line);border-radius:17px;padding:26px;margin-bottom:23px;scroll-margin-top:165px}.directory-group-head{display:flex;gap:13px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px}.directory-group-head h2{font-size:26px;margin:0 0 5px}.directory-group-head small{font-size:11px;color:#8b9688}.directory-group-head .text-link{margin-left:auto;font-size:12px}.directory-columns{columns:3 190px;column-gap:24px}.directory-subgroup{break-inside:avoid;margin-bottom:25px}.directory-subgroup h3{font-size:13px;letter-spacing:0;color:#73846f;margin-bottom:12px}.directory-subgroup ul{padding:0;list-style:none;margin:0}.directory-subgroup li{margin:0 0 3px}.directory-subgroup a{display:flex;justify-content:space-between;gap:8px;font-size:13px;line-height:1.5;padding:6px 0}.directory-subgroup a>span{color:#a6b39f;font-size:11px;opacity:0}.directory-subgroup a:hover>span{opacity:1}
.category-context{display:flex;gap:24px;align-items:center;background:#edf3e9;border:1px solid #dee7d8;border-radius:13px;padding:17px 20px;margin:26px 0 20px;position:relative;z-index:4}.context-title{display:flex;align-items:center;gap:12px;flex-shrink:0}.context-title small{display:block;font-size:10px;color:#81907d}.context-title a{font-size:15px;font-weight:700}.context-title a>span{color:#819a77}.context-sections{display:flex;gap:8px;flex-wrap:wrap}.context-sections details{position:relative}.context-sections summary{list-style:none;cursor:pointer;font-size:12px;padding:8px 12px;border:1px solid #dae4d3;background:#fff;border-radius:7px;display:flex;gap:12px;align-items:center}.context-sections details[open] summary{border-color:var(--green);color:var(--green)}.context-sections details>div{position:absolute;top:calc(100% + 5px);left:0;width:260px;background:white;border:1px solid var(--line);box-shadow:0 12px 26px #173b2020;padding:13px;border-radius:9px}.context-sections a{display:block;font-size:12px;padding:7px;line-height:1.5}.context-sections a[aria-current]{font-weight:750;background:#edf5e7;color:var(--green);border-radius:5px}
@media(max-width:1150px){.header-purpose{display:none}.nav-direction>summary{font-size:12px;padding:16px 5px}.intro-grid{gap:35px}.intro-copy h1{font-size:43px}.intro-copy p{font-size:14px}.intro-guide{padding:25px}.intro-stats strong{font-size:25px}.intro-stats span{font-size:10px}.direction-card{padding:20px}.direction-card-title h3{font-size:20px}.directory-layout{grid-template-columns:210px minmax(0,1fr);gap:22px}.directory-columns{columns:2}.category-context{align-items:flex-start}.context-sections{gap:6px}.context-sections summary{font-size:11px}}
@media(max-width:1000px){html{scroll-padding-top:105px}.structured-header .header-main{min-height:78px;gap:20px}.header-about{display:none}.structured-header .menu-toggle{display:flex;align-items:center;gap:9px;font-size:22px;border:1px solid var(--line);padding:7px 12px;border-radius:8px}.menu-toggle>span{font-size:12px;font-weight:650}.structured-header nav.site-navigation{display:none}.structured-header.menu-open nav.site-navigation{display:block;position:absolute;top:100%;left:0;right:0;padding:12px 20px;max-height:calc(100dvh - 90px);overflow:auto;box-shadow:0 18px 30px #16331f20}.nav-directions{width:100%;display:block}.nav-direction>summary{font-size:15px;padding:14px 8px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.mega-panel{position:static;max-height:none;overflow:visible;padding:15px 8px 20px;border:0;border-radius:0;box-shadow:none}.mega-intro{padding:15px;flex-wrap:wrap}.mega-intro p{font-size:12px}.mega-intro .category-icon{display:none}.structured-header nav .mega-intro .button{font-size:11px;margin-top:5px}.mega-columns{columns:2}.mega-column{margin-bottom:20px}.structured-header.menu-open nav .mega-column>a{font-size:13px;padding:8px 0;border:0}.structured-header.menu-open nav .mega-overview{font-size:12px;padding:13px 0;border-bottom:0}.intro-grid{grid-template-columns:1.3fr 1fr;gap:25px;padding-top:35px}.intro-copy h1{font-size:37px}.intro-copy .eyebrow{font-size:9px}.intro-guide h2{font-size:23px}.intro-actions .button{font-size:12px}.intro-stats>div{display:block}.intro-stats span{display:block;max-width:none;margin-top:5px}.direction-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.service-explainer{gap:35px}.directory-aside{top:100px}.directory-group{scroll-margin-top:100px}}
@media(max-width:700px){.structured-header .header-main{min-height:74px;gap:10px;flex-wrap:wrap;padding-top:14px;padding-bottom:13px}.structured-header .logo>span{font-size:23px}.structured-header .logo img{width:34px;height:34px}.structured-header .logo small{font-size:7px}.structured-header .menu-toggle{margin-left:auto;padding:7px 10px}.structured-header .menu-toggle>span{display:none}.header-find{flex-basis:100%;order:3;max-width:none;margin-top:7px}.header-find input{font-size:12px;padding:9px 12px}.header-find button{font-size:24px;padding:6px 13px}.structured-header.menu-open nav.site-navigation{padding:8px 16px;max-height:calc(100dvh - 140px)}.mega-intro{display:block}.mega-intro strong{font-size:19px}.mega-intro p{font-size:11px}.mega-columns{columns:1}.mega-column h3{font-size:11px;padding-top:9px}.intro-grid{display:block;padding:29px 0 22px}.intro-copy h1{font-size:35px;line-height:1.15;margin-bottom:20px}.intro-copy p{font-size:14px;line-height:1.75}.intro-actions{gap:9px;margin-top:21px}.intro-actions .button{font-size:11px;padding:12px 15px;flex:1}.intro-actions .button>span{display:none}.intro-note{font-size:10px;line-height:1.6;margin-top:17px}.intro-guide{margin-top:25px;padding:23px}.intro-guide h2{font-size:24px}.intro-guide h2 br{display:none}.intro-guide li{margin-bottom:14px}.intro-guide li p{font-size:12px}.intro-guide>a{font-size:11px}.intro-stats{grid-template-columns:repeat(2,1fr);gap:20px;padding:22px 0}.intro-stats>div{display:flex;gap:12px}.intro-stats strong{font-size:24px}.intro-stats span{font-size:10px;max-width:95px;margin:0}.home-picks{padding-top:24px}.direction-cards{gap:12px}.direction-card{padding:18px 15px}.direction-card-title{flex-wrap:wrap;gap:9px;margin-bottom:12px}.direction-card-title h3{font-size:19px;width:100%;flex-basis:100%;order:2}.direction-card-title>span:last-child{margin-left:auto;font-size:17px}.direction-card p{font-size:11px;line-height:1.7;margin-bottom:15px}.direction-shortcuts{gap:6px}.direction-shortcuts a{font-size:9px;padding:4px 6px}.direction-all{font-size:10px}.knowledge-card h3{font-size:25px}.knowledge-card .button{font-size:10px;padding:12px}.knowledge-card .eyebrow{font-size:8px}.service-explainer{display:block}.service-explainer h2{font-size:27px}.service-explainer p{font-size:14px}.home-faq{margin-top:30px}.home-faq summary{font-size:14px}.home-faq p{font-size:12px}.directory-page h1{font-size:35px}.directory-layout{display:block;margin-top:24px}.directory-aside{position:static;display:flex;flex-wrap:wrap;padding:12px;gap:6px;margin-bottom:20px}.directory-aside>strong{width:100%;margin:4px 5px 7px}.directory-aside>a{font-size:11px;border:1px solid var(--line);padding:7px 9px;gap:10px}.directory-aside .directory-all{border:0;margin:0}.directory-search{padding:16px}.directory-group{padding:20px 18px}.directory-group-head h2{font-size:25px}.directory-group-head .text-link{font-size:10px;max-width:85px;text-align:right}.directory-columns{columns:1}.directory-subgroup{margin-bottom:22px}.directory-subgroup h3{font-size:12px;text-transform:uppercase;margin-bottom:7px}.directory-subgroup a{font-size:14px;padding:9px 0;border-bottom:1px solid #f0f3ee}.directory-subgroup a>span{opacity:1}.category-context{display:block;padding:16px}.context-title{margin-bottom:13px}.context-sections{display:block}.context-sections details{margin-bottom:6px}.context-sections summary{font-size:12px;justify-content:space-between}.context-sections details>div{position:static;width:100%;box-shadow:none;margin-top:4px}.context-sections a{font-size:12px}.directory-aside{top:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

summary:focus-visible{outline:3px solid #a58ade;outline-offset:2px}
@media(max-width:700px){.intro-guide,.intro-note{display:none}.intro-copy h1{font-size:33px}.intro-grid{padding-bottom:25px}.intro-stats{padding:18px 0;gap:16px}.intro-stats strong{font-size:23px}}
