/* Dream Tiny Houses: centered masthead, restrained copy and visual topic shelves. */
:root{--forest:#183d32;--deep:#102a23;--cream:#f4f6f0;--light-green:#cce0d2}
.announcement-bar{background:var(--deep);color:var(--cream);padding:11px 20px;text-align:center}
.announcement-bar p{margin:0;font-size:1rem;line-height:1.6;font-weight:700}
.announcement-bar span{font-weight:400;margin-left:8px}
.masthead{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:21px 0 12px;position:relative}
.masthead .brand{grid-column:2;justify-self:center;display:block;margin:0}
.masthead .brand img{display:block;width:145px;height:123px;object-fit:contain}
.masthead-actions{grid-column:3;justify-self:end;display:flex;align-items:center;gap:10px}
.masthead .menu{display:none}
.portal-nav nav{justify-content:center;text-align:center;padding:0 0 7px}
.portal-nav{border-bottom:1px solid #d9e1db}
.portal-nav nav>a,.nav-group>a{font-weight:700}
.resource-hero{background:var(--forest)}
.resource-hero>.wrap{grid-template-columns:.85fr 1.15fr;gap:48px;min-height:365px;padding:28px 0}
.hero-heading{padding:25px 0}
.hero-heading h1{font-size:clamp(2rem,3vw,2.85rem);line-height:1.15;margin:15px 0 22px}
.resource-hero .hero-heading p:not(.eyebrow){margin-bottom:26px;max-width:34ch}
.hero-photo{height:340px;border-radius:8px;overflow:hidden;box-shadow:0 12px 30px #071a1545}
.hero-photo img{object-position:center}
.button,.outline{border-radius:5px;min-height:48px}
.section{padding-top:54px;padding-bottom:54px}
.section-head{margin-bottom:28px;align-items:center}
.section-head h2{margin:4px 0 0;font-size:clamp(1.6rem,2.5vw,2rem)}
.section-head .eyebrow{margin:0}
.featured-video{grid-template-columns:1.65fr 1fr;gap:36px;align-items:center}
.featured-video .player{border-radius:8px;overflow:hidden}
.featured-video h3{font-size:1.55rem;line-height:1.4}
.featured-video .eyebrow{color:var(--forest)}
.finder{border:1px solid #d7e0d8;border-radius:8px;background:#f3f6f1;margin-top:0;margin-bottom:42px;padding:25px}
.finder .eyebrow{font-size:.875rem!important}
.dark-section{background:var(--deep);color:var(--cream)}
.dark-section h2,.dark-section h3,.dark-section a{color:var(--cream)}
.dark-section .eyebrow{color:var(--light-green)}
.dark-section .text-link{color:var(--light-green);border-color:#9dbbaa}
.visual-topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.visual-topic{margin:0;min-width:0;background:#214638;border-radius:7px;overflow:hidden}
.topic-photo{display:block;overflow:hidden}
.topic-photo .guide-photo{width:100%;margin:0;aspect-ratio:4/3;object-fit:cover;transition:transform .25s ease}
.topic-photo:hover .guide-photo{transform:scale(1.025)}
.topic-caption{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px;font-size:1.0625rem;font-weight:700;line-height:1.4}
.topic-caption span{color:var(--light-green)}
.editorial-section{background:#fff;padding:0}
.magazine-layout{padding-top:54px;padding-bottom:54px;grid-template-columns:minmax(0,1fr) 250px;gap:40px}
.editorial-card{margin:0;border:0;background:white}
.editorial-image-link{overflow:hidden;border-radius:7px}
.editorial-image-link .guide-photo{width:100%;margin:0;aspect-ratio:3/2;object-fit:cover}
.editorial-card .eyebrow{margin-top:16px;margin-bottom:7px}
.editorial-card h3{font-size:1.25rem;line-height:1.4;margin:0}
.editorial-grid{gap:30px 24px}
.welcome-box,.tool-box,.quick-box{border-radius:7px;padding:23px;margin-bottom:22px}
.welcome-box{background:#f3f6f1;border:1px solid #d9e1db}
.welcome-box h3{font-size:1.5rem}
.welcome-box .eyebrow{letter-spacing:.035em}
.tool-box{background:var(--forest)}
.quick-box{background:#f3f6f1}
.tools-showcase{background:var(--forest)}
.tool-shortcuts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.tool-shortcuts>a{display:flex;flex-direction:column;align-items:center;gap:15px;text-align:center;font-size:1.0625rem;font-weight:700;padding:22px 12px;border:1px solid #91aa9c55;border-radius:7px;background:#ffffff08}
.tool-shortcuts>a:hover{background:#ffffff12}
.tool-shortcut-icon{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:#ffffff12;color:var(--light-green)}
.tool-shortcut-icon svg{width:34px;height:34px}
.blueprint-showcase .product{border-radius:7px;overflow:hidden;border:1px solid #d9e1db;box-shadow:none}
.blueprint-showcase .product img{height:290px;object-fit:cover;width:100%}
.blueprint-showcase .product>div{padding:20px}
.blueprint-showcase .product h3{font-size:1.4rem}
footer{background:var(--deep);color:var(--cream);padding:54px 32px 24px}
.footer-grid{grid-template-columns:1.2fr 1fr 1fr 1fr;gap:38px}
.footer-grid b{color:var(--light-green);font-size:.95rem}
.footer-grid>div>a,.footer-grid p{color:#e0e9e2;font-size:1rem;line-height:1.7}
.footer-grid a:hover,.footer-bottom a:hover{color:white;text-decoration:underline}
.footer-grid>div:first-child>a.footer-brand{display:inline-block;background:var(--cream);padding:15px;border-radius:10px;margin:0 0 25px}
.footer-brand img{width:135px;height:115px}
footer .social-icons{gap:12px}
footer .social-icons a{width:46px;height:46px;border:1px solid #819f8d;border-radius:50%;color:var(--cream);background:transparent}
footer .social-icons a:hover{background:#ffffff15;color:white}
footer .social-icons svg{width:22px;height:22px}
footer .social-icons a:focus-visible{outline:3px solid #fff;outline-offset:4px}
.footer-bottom{max-width:1120px;color:#ceddd2;font-size:.9375rem;margin-top:35px;padding-top:22px;border-color:#6b887844;flex-direction:row;align-items:center;justify-content:space-between}
.legal-links{display:flex;gap:24px;flex-wrap:wrap}
.legal-links a{color:#e0e9e2;font-size:.9375rem}
.back-top{background:#2f5d50;border:1px solid #a6c0af66;border-radius:50%}
@media(max-width:1050px){.portal-nav nav>a,.nav-group>a{font-size:.9375rem!important}.visual-topic-grid{gap:15px}.topic-caption{padding:15px;font-size:1rem}.resource-hero>.wrap{gap:30px}.footer-grid{gap:25px}}
@media(max-width:800px){.announcement-bar{padding:10px 16px}.announcement-bar p{font-size:.9375rem}.announcement-bar span{display:block;margin-left:0}.masthead{padding:18px 0 12px;grid-template-columns:1fr auto 1fr}.masthead .brand img{width:110px;height:94px}.masthead-actions{gap:3px}.masthead-actions .icon-button{width:38px;height:44px}.masthead .menu{display:block;position:static;min-width:60px;min-height:44px;padding:8px;font-size:.875rem;margin:0}.portal-nav nav{padding:8px 0;text-align:left;align-items:stretch}.portal-nav nav>a,.nav-group>a{font-size:1rem!important}.resource-hero>.wrap{width:calc(100% - 36px);grid-template-columns:1fr;padding:26px 0;gap:24px}.hero-heading{padding:0}.hero-heading h1{font-size:2.35rem}.hero-photo{height:285px}.featured-video{grid-template-columns:1fr;gap:22px}.featured-video h3{font-size:1.4rem}.section{padding-top:38px;padding-bottom:38px}.finder{margin-bottom:32px}.visual-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.magazine-layout{grid-template-columns:1fr;padding-top:38px;padding-bottom:38px;gap:28px}.editorial-aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.editorial-aside .welcome-box,.editorial-aside .tool-box{margin:0}.tool-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.tool-shortcuts>a{padding:18px 12px}.blueprint-showcase .product img{height:260px}.footer-grid{grid-template-columns:1fr 1fr;padding:0;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}.footer-brand img{width:125px;height:106px}footer{padding:40px 24px 24px}}
@media(max-width:550px){.hero-heading h1{font-size:2.1rem}.hero-photo{height:250px}.visual-topic-grid{gap:14px}.topic-caption{font-size:1rem;min-height:72px;padding:14px}.topic-photo .guide-photo{aspect-ratio:1/1}.editorial-aside{grid-template-columns:1fr}.tool-shortcuts{grid-template-columns:1fr 1fr}.tool-shortcuts>a{font-size:1rem}.tool-shortcut-icon{width:60px;height:60px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-grid>div:last-child{grid-column:1/-1}.legal-links{gap:18px}.blueprint-showcase .product img{height:auto;max-height:380px;object-fit:cover}.section-head{align-items:flex-start}.section-head .text-link{font-size:1rem}.finder{padding:22px}.masthead-actions{gap:0}.masthead .menu{min-width:55px}.masthead-actions .icon-button{width:36px}}
@media(prefers-reduced-motion:reduce){.topic-photo .guide-photo{transition:none}}

/* Footer labels stay prominent; destinations use normal sentence case. */
.footer-grid>div:not(:first-child)>a{font-weight:400;text-transform:none;letter-spacing:0;color:#e0e9e2}.footer-grid b{font-weight:700;text-transform:uppercase}footer .social-icons a{border:0;border-radius:50%;background:#fff;color:#111;width:44px;height:44px;flex:none}footer .social-icons a:hover{background:#fff;color:#111;opacity:1;box-shadow:0 0 0 3px #ffffff33}footer .social-icons svg{width:24px;height:24px}.article-contents ul{list-style:none;padding:0;margin:15px 0 0}.article-contents li{padding:7px 0;border-bottom:1px solid #d2ded6}.step,.card-num{display:none}

/* Deep guides use generous reading space and clear, accessible comparisons. */
.visual-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tool-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr))}.research-article{min-width:0}.research-article section{scroll-margin-top:25px}.research-article ul{padding-left:25px;margin:20px 0 28px}.research-article li{font-size:1.125rem;line-height:1.8;margin:10px 0}.research-article .byline{font-size:1rem;margin-bottom:8px;padding-bottom:10px}.review-date{font-size:1rem!important;color:#52665a!important;margin-bottom:28px}.article-photo{margin:25px 0}.article-photo .guide-photo{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:7px}.article-photo figcaption{font-size:1rem;line-height:1.6;margin-top:10px;color:#52665a}.article-contents{display:block;background:#eef3ef;border-radius:7px;padding:25px;margin:30px 0}.article-contents a{font-size:1.0625rem;line-height:1.55}.research-article .source-note{border:0;border-radius:7px;background:#eef3ef;padding:25px}.research-article .source-note h2{font-size:1.4rem;margin:0 0 15px}.research-article .source-note p,.research-article .source-note li{font-size:1rem;line-height:1.7}.research-article .source-note p{margin-bottom:16px}.related-guides{padding-top:30px}.article-sidebar a:not(.button){line-height:1.7;text-decoration:underline;text-underline-offset:3px}.table-scroll{width:100%;overflow-x:auto;margin:25px 0 32px;border:1px solid #c4d2c9;border-radius:6px;background:white}.table-scroll:focus-visible{outline:3px solid #ad7024;outline-offset:3px}table{border-collapse:collapse;width:100%;font-size:1rem;line-height:1.65;text-align:left}th,td{padding:15px 18px;border-bottom:1px solid #d4dfd7;vertical-align:top;min-width:130px}thead{background:#224d3e;color:white}th{font-weight:700}tbody th{color:#183d32;background:#f1f5ef}tr:last-child th,tr:last-child td{border-bottom:0}.research-article table a{overflow-wrap:anywhere}.collection-feature{border-radius:7px;background:#eef3ef;padding:30px;margin:0 0 36px}.collection-feature h2{font-size:1.6rem}.collection-feature p{max-width:65ch}.month-links,.region-links{display:flex;flex-wrap:wrap;gap:12px;margin:23px 0}.month-links a,.region-links a{display:block;padding:12px 16px;border:1px solid #bdcec3;border-radius:5px;font-size:1rem;line-height:1.5;background:white;color:#224d3e}.month-links a:hover,.region-links a:hover{background:#e1ebdf}.builder-card{border:1px solid #cbd8ce;border-radius:7px;background:white;padding:26px;display:flex;flex-direction:column;min-width:0}.builder-card h3{font-size:1.35rem;line-height:1.4;margin-bottom:15px}.builder-card p{font-size:1rem;line-height:1.7;margin-bottom:18px}.builder-location{color:#52665a}.builder-type{font-weight:700;color:#224d3e}.builder-card .text-link{align-self:start;margin-top:auto}.builder-card .smallprint{margin:20px 0 0}.builder-card .smallprint a{color:#224d3e;text-decoration:underline}.directory-scope{background:#eef3ef;padding:25px;border-radius:7px;margin:32px 0}.directory-scope h2{font-size:1.45rem}.directory-scope p{font-size:1rem;line-height:1.7;max-width:85ch}.directory-scope p:last-child{margin-bottom:0}.builder-filter{display:grid;grid-template-columns:2fr 1fr;gap:12px 25px;background:#eef3ef;padding:25px;border-radius:7px}.builder-filter label{font-size:1.0625rem;font-weight:700}.builder-filter input{grid-column:1;grid-row:2}.builder-filter select{grid-column:2;grid-row:2}.builder-filter input,.builder-filter select{min-width:0;width:100%;font:inherit;padding:13px;border:1px solid #6b8373;background:white;border-radius:4px}.builder-filter label[for=builder-region]{grid-column:2;grid-row:1}.frost-tool,.flock-tool,.acreage-tool{padding:28px;background:#eef3ef;border:1px solid #c4d2c9;border-radius:7px;margin:25px 0}.frost-tool .button,.flock-tool .button,.acreage-tool .button,.acreage-tool .outline{margin-top:24px}.tool-page{max-width:1000px}.tool-page>.prose{max-width:760px;margin-top:35px}.tool-page>.prose p,.tool-page>.prose li{font-size:1.125rem;line-height:1.8}.allocation-diagram{padding:28px;background:#edf3ec;border-radius:7px;margin:28px 0}.allocation-diagram figcaption{display:flex;flex-direction:column;gap:8px;margin-bottom:24px;font-size:1rem}.allocation-diagram figcaption strong{font-size:1.3rem}.allocation-row{margin:0 0 20px}.allocation-row:last-child{margin-bottom:0}.allocation-label{display:flex;justify-content:space-between;gap:20px;margin-bottom:8px;font-size:1rem;line-height:1.5}.allocation-label span:last-child{white-space:nowrap}.allocation-track{height:17px;border-radius:3px;overflow:hidden;background:#d8e1d4}.allocation-track>span{display:block;height:100%}.guide-card{border-radius:7px}.guide-card h3{line-height:1.45}.guide-card p{color:#52665a}.guide-card .eyebrow{color:#2f5d50}.smallprint{font-size:1rem;line-height:1.7}.article-sidebar .smallprint{font-size:1rem}.prose a{overflow-wrap:anywhere}select:focus-visible{outline:3px solid #ad7024;outline-offset:3px}.allocation-diagram *{box-sizing:border-box}
@media(max-width:900px){.portal-nav nav>a,.nav-group>a{padding-left:6px!important;padding-right:6px!important}.tool-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr))}.article-sidebar{position:static}.article-layout{grid-template-columns:1fr}.visual-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.visual-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-filter{grid-template-columns:1fr}.builder-filter input,.builder-filter select,.builder-filter label[for=builder-region]{grid-column:auto;grid-row:auto}.collection-feature{padding:24px}.article-contents{padding:24px!important}.frost-tool,.flock-tool,.acreage-tool{padding:22px}.allocation-label{flex-direction:column;gap:3px}.allocation-diagram{padding:22px}.table-scroll th,.table-scroll td{padding:12px 14px}.source-note{overflow-wrap:anywhere}}
@media print{.site-header,.announcement-bar,footer,.back-top,.aside,.finder,.search-trigger{display:none!important}.wrap{width:100%;max-width:none}.article-layout{display:block}.prose p{max-width:none}.table-scroll{overflow:visible}.table-scroll table{font-size:10pt}.allocation-diagram,.collection-feature{break-inside:avoid}.article-contents{display:none}.tool-inputs{grid-template-columns:1fr 1fr}.tool-result{color:#000}.tool-error{display:none}}

/* Hidden filter results must stay hidden despite card display rules. */
[hidden]{display:none!important}
.editorial-aside .tool-box{padding:22px}
.editorial-aside .tool-box .eyebrow{margin:0 0 14px}
.editorial-aside .tool-box h3{font-size:1.25rem;line-height:1.45;margin:0 0 12px}
.editorial-aside .tool-box>p:not(.eyebrow){line-height:1.6;margin:0 0 18px}
.editorial-aside .tool-box>.button{display:flex;min-height:48px;padding:12px;font-size:1rem;line-height:1.45;margin:0}
.editorial-aside .quick-box{display:block}
.editorial-aside .quick-box h3{margin:0 0 18px}
.commit-links{display:grid;gap:12px}
.commit-links>a{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;padding:12px 10px;background:#fff;border:1px solid #d8e1d9;border-radius:5px;font-size:1rem;line-height:1.5}
.commit-links>a:hover{border-color:var(--forest);background:#f8fbf8}
.commit-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--forest);background:#e0ece4}
.commit-icon svg{width:24px;height:24px}
.research-article .article-contents ul{list-style:none;padding:0}
.research-article .article-contents li{margin:0;padding:9px 0}
.footer-grid>div:not(:first-child)>a{font-weight:400!important}
.footer-grid b{font-weight:700;letter-spacing:.06em}
.guide-library{align-items:start}.guide-library .guide-entry{min-width:0}
.result-card{min-width:0}.result-card h2{overflow-wrap:anywhere}
@media(min-width:801px){.portal-nav nav{flex-wrap:wrap;justify-content:center}}
@media(max-width:550px){.tool-inputs{grid-template-columns:1fr}.page-intro h1{overflow-wrap:anywhere}.library-filter input{min-width:0;width:100%}}

/* Menus follow their accessible expanded state for hover, touch and keyboard. */
.nav-group:not(.is-open) .mega-menu{display:none}.nav-group.is-open .mega-menu{display:grid}

/* Center the logo and menu independently, with search at the right edge. */
.site-header{display:block;width:100%;max-width:none;min-height:0;margin:0;padding:0;border:0}
.site-header>.portal-nav{width:100%}
.site-header .masthead{padding:12px 0 4px}
.site-header .masthead .brand img{width:110px;height:94px}
.navigation-row{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;position:relative}
.navigation-row>.menu{display:none}
.navigation-row>.search-trigger{grid-column:3;grid-row:1;justify-self:end}
.navigation-row>#nav{grid-column:2;grid-row:1;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 12px;width:100%;min-width:0;margin:0;padding:0}
.navigation-row>#nav>.nav-group{flex:0 0 auto;justify-content:center;align-items:center;min-width:0;gap:0}
.navigation-row>#nav>a,.navigation-row>#nav>.nav-group>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:1rem!important;line-height:1.35;padding:10px 16px!important;border-radius:10px;white-space:nowrap;text-align:center;text-transform:uppercase!important}
.navigation-row>#nav>a{flex:none;display:flex;align-items:center;justify-content:center}
.navigation-row>#nav>.nav-group>a{flex:0 1 auto;min-width:0}
.navigation-row>#nav>a:is(:hover,:focus-visible),.navigation-row>#nav>.nav-group>a:is(:hover,:focus-visible),.navigation-row>#nav>.nav-group.is-open>a{color:#fff;background:var(--forest)}
.navigation-row>#nav>.nav-group>.subtoggle{flex:none;min-width:24px;width:24px;min-height:44px;border-radius:8px}
@media(min-width:801px) and (max-width:1050px){
 .navigation-row>#nav>a,.navigation-row>#nav>.nav-group>a{font-size:.9375rem!important;padding:10px 12px!important}
}
@media(max-width:800px){
 .site-header .masthead{padding:12px 0 4px}
 .site-header .masthead .brand img{width:90px;height:77px}
 .navigation-row{padding-bottom:8px}
 .navigation-row>.menu{grid-column:2;grid-row:1;justify-self:center;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:68px;margin:0;padding:8px 12px;font-size:1rem;cursor:pointer}
 .navigation-row>#nav{grid-column:1/-1;grid-row:2;display:none;padding:8px 0 0;text-align:left}
 .navigation-row>#nav.open{display:flex;flex-direction:column}
 .navigation-row>#nav>.nav-group{justify-content:space-between}
 .navigation-row>#nav>a,.navigation-row>#nav>.nav-group>a{font-size:1rem!important;padding:10px 16px!important;white-space:normal;text-align:left;justify-content:flex-start}
 .navigation-row>#nav>a{justify-content:flex-start}
 .navigation-row>#nav>.nav-group>a{flex:1}
 .navigation-row>#nav>.nav-group>.subtoggle{min-width:48px;width:48px}
}
/* Four Tiny Houses paths share an image-led, keyboard-accessible menu. */
.tiny-tabs{align-content:start}.tiny-tabs .tiny-tab{display:block;padding:15px 18px!important;font-size:1rem!important;line-height:1.45;font-weight:400;border-left:4px solid transparent}
.tiny-tabs .tiny-tab[aria-selected=true]{background:var(--forest);color:white;border-color:#ae7b31}
.tiny-panel[hidden],.community-card[hidden]{display:none!important}.tiny-panel{min-width:0}.tiny-panel .mega-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.tiny-panel .mega-tile{min-width:0}.tiny-panel .mega-tile span{font-size:.9375rem!important;line-height:1.4}.tiny-panel .mega-tile .guide-photo{aspect-ratio:2/1}
@media(min-width:801px){#tiny-panel-essentials .mega-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.mega-intro{font-size:.9375rem;margin:0 0 20px}.state-menu{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px 16px}.state-menu a{font-size:.9375rem!important;line-height:1.4;padding:5px 0!important;font-weight:400}
.tiny-path-links{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}.tiny-path-links a{padding:12px 18px;background:#edf3ee;border-radius:4px}
.housing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.housing-card{border:1px solid #c3d2c7;border-radius:6px;overflow:hidden;min-width:0}.housing-card>a{display:block}.housing-card .guide-photo{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover}.housing-card>div{padding:24px}.housing-card h2{font-size:1.5rem;margin:0 0 12px}.housing-card p{margin:0 0 20px}
.community-overview{display:grid;grid-template-columns:1.6fr 1fr;gap:35px;margin-bottom:35px}.community-choice{padding:28px;background:#edf3ee;border-radius:6px}.community-filter{display:grid;grid-template-columns:2fr 1.2fr 1fr 1.4fr;gap:12px;margin:28px 0}.community-filter label{display:flex;flex-direction:column;gap:8px;font-weight:600;min-width:0}.community-filter button{grid-column:1/-1;justify-self:start}.community-filter input,.community-filter select{min-width:0;width:100%;font:inherit;padding:12px;border:1px solid #789181;background:white;border-radius:4px}.community-card{padding:26px;border:1px solid #b8cbbf;border-radius:6px;min-width:0}.community-card h3{margin:6px 0 12px}.community-location{font-weight:600}.availability-note{background:#f2f4ee;padding:14px;margin:22px 0}.availability-note p{font-size:.9375rem;margin:8px 0 0}.state-picker{padding:20px;border:1px solid #b8cbbf}.state-picker summary{cursor:pointer;font-weight:600}.state-picker .state-menu{margin-top:22px}.image-credit img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover}.image-credit p{font-size:.9375rem}
.guide-visual{background:#edf3ee;padding:25px;margin:24px 0 32px;border-radius:6px}.guide-visual>p{margin:0 0 14px!important;font-size:.875rem!important;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.visual-cells{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.visual-cells>div{background:white;border-top:4px solid #42745f;padding:16px;min-width:0}.visual-cells b{display:block;font-size:1.125rem;line-height:1.4}.visual-cells span{display:block;font-size:.9375rem;line-height:1.5;margin-top:9px}.visual-cells small{display:block;margin-top:10px;color:#456253;font-size:.875rem}.worked-example{padding:22px;background:#f8f1e4;border-left:4px solid #a57427;margin:24px 0}.worked-example p:last-child{margin-bottom:0}.question-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.question-cards>div{padding:18px;border:1px solid #b8cbbf}.name-groups{display:grid;grid-template-columns:1fr 1fr;gap:20px}.name-groups p{font-size:1rem}.plan-sketch{width:100%;height:auto;background:#fbfaf5;border:1px solid #b8cbbf;border-radius:6px}
@media(max-width:1050px){.tiny-panel .mega-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.state-menu{grid-template-columns:repeat(4,minmax(0,1fr))}.community-filter{grid-template-columns:1fr 1fr}.housing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.tiny-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px}.tiny-tabs .tiny-tab{padding:12px!important}.tiny-panel .mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.state-menu{grid-template-columns:repeat(3,minmax(0,1fr))}.community-overview{grid-template-columns:1fr;gap:20px}.visual-cells{grid-template-columns:1fr}.guide-visual{padding:18px}.question-cards{grid-template-columns:1fr}}
@media(max-width:550px){.housing-grid{grid-template-columns:1fr}.housing-card>div{padding:20px}.state-menu{grid-template-columns:repeat(2,minmax(0,1fr))}.tiny-tabs{grid-template-columns:1fr 1fr}.tiny-tabs .tiny-tab{font-size:.875rem!important}.community-filter{grid-template-columns:1fr;gap:16px}.name-groups{grid-template-columns:1fr}}

/* Clean link states and contrasting mega-menu actions. */
a:hover{ text-decoration:none!important }
.portal-nav nav a{ text-decoration:none }
.dropdown.mega-menu,.mega-menu .mega-sidebar{ border:0 }
.mega-menu a{ border:0!important;text-decoration:none!important }
.mega-menu .mega-sidebar a{ padding-left:14px!important;padding-right:14px!important;border-radius:4px }
.mega-menu .mega-sidebar a:is(:hover,:focus-visible),.tiny-tabs .tiny-tab:is(:hover,:focus-visible){ background:var(--deep);color:#fff }
.mega-menu a.mega-all{ background:var(--forest);color:#fff;padding:12px 18px!important;border-radius:5px;font-weight:700 }
.mega-menu a.mega-all:is(:hover,:focus-visible){ background:var(--deep);color:#fff }

/* Use the same word capitalization throughout navigation and interface titles. */
a,button,h1,h2,h3,h4,h5,h6,summary,legend,option,label[for],.budget-fields label{ text-transform:capitalize!important }
/* Descriptions inside linked cards remain readable sentences. */
a p:not(.eyebrow),a .lead{ text-transform:none }

/* Minimalism follows the same five paths as its topic collections. */
.minimalism-panel .mega-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.minimalism-panel .minimalism-lifestyle-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px 12px}
.minimalism-panel .minimalism-lifestyle-grid .mega-tile span{font-size:.875rem!important}
.minimalism-panel .minimalism-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:column;grid-template-rows:repeat(6,auto);gap:10px 24px}
.minimalism-panel .minimalism-list .mega-tile{display:flex;flex-direction:row;align-items:center;gap:14px;padding:7px!important;text-align:left;border-radius:4px}
.minimalism-panel .minimalism-list .guide-photo{width:72px;height:52px;flex:0 0 72px;aspect-ratio:auto;border-radius:3px;margin:0}
.minimalism-panel .minimalism-list .mega-tile span{margin:0;font-size:.9375rem!important}
.minimalism-panel .mega-tile:is(:hover,:focus-visible){background:#edf3ee}
.minimalism-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.minimalism-path{display:block;overflow:hidden;border:1px solid #b8cbbf;border-radius:6px;background:white}
.minimalism-path .guide-photo{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover}
.minimalism-path>div{padding:24px}.minimalism-path h2{font-size:1.5rem;margin:0 0 12px}.minimalism-path p{margin:0 0 20px;color:var(--ink)}
.tiny-path-links a[aria-current=page]{background:var(--forest);color:white}
@media(max-width:1100px){.minimalism-panel .minimalism-lifestyle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){
 .minimalism-panel .mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .minimalism-panel .minimalism-list{grid-template-columns:1fr;grid-template-rows:none;grid-auto-flow:row;gap:8px}
 .minimalism-tabs .tiny-tab:last-child{grid-column:1/-1}
 .minimalism-paths{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
}
@media(max-width:550px){.minimalism-paths{grid-template-columns:1fr}.minimalism-path>div{padding:20px}}

/* Three editorial topic pages: photographic banners and grouped learning paths. */
.topic-landing{background:#fff}
.path-shell{padding-top:32px;padding-bottom:56px;max-width:1120px}
.path-shell p{font-size:1rem;line-height:1.7;text-transform:none}
.path-hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);background:var(--forest);color:white;border-radius:9px;overflow:hidden}
.path-hero-image{position:relative;min-height:365px;isolation:isolate}
.path-hero-image>.guide-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;margin:0}
.path-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#102a2310 0%,#102a2333 25%,#102a23e8 100%);z-index:0}
.path-hero-copy{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;min-height:365px;padding:35px 38px}
.path-hero-copy h1{color:white;font-size:clamp(2.3rem,4.8vw,3.65rem);line-height:1.1;letter-spacing:-.02em;margin:9px 0 16px}
.path-hero-copy p{color:white;max-width:46ch;margin:0}
.path-hero-copy .eyebrow{color:#e1ede4;font-size:.875rem}
.path-hero-links{display:flex;flex-direction:column;justify-content:center;gap:10px;padding:26px}
.path-hero-links>.eyebrow{margin:0 0 5px;color:#e1ede4;font-size:.875rem}
.path-hero-links>a{display:block;padding:12px 16px;background:#fff;color:var(--forest);border-radius:4px;font-size:1rem;line-height:1.4;font-weight:600}
.path-hero-links>a:is(:hover,:focus-visible){background:#d3e5d9;color:var(--deep)}
.path-jump{display:flex;flex-wrap:wrap;justify-content:center;gap:9px 24px;padding:20px 12px;margin-bottom:12px}
.path-jump a{font-size:.9375rem;line-height:1.5;color:var(--forest);padding:5px 0;font-weight:600}
.path-jump a:is(:hover,:focus-visible){color:#86521d}
.path-section{margin:28px 0 40px;scroll-margin-top:24px;border-radius:7px;overflow:hidden;background:#f1f5f1}
.path-section-heading{padding:26px 30px;background:var(--forest);color:white}
.path-section-heading h2{margin:0 0 8px;color:white;font-size:clamp(1.6rem,3vw,2.15rem);line-height:1.25}
.path-section-heading p{color:#e0ece3;margin:0;max-width:75ch}
.path-section-banner{position:relative;isolation:isolate;min-height:155px;display:flex;align-items:center;overflow:hidden;background:var(--deep)}
.path-section-banner>.guide-photo{position:absolute;inset:0;object-fit:cover;object-position:center 45%;width:100%;height:100%;margin:0;z-index:-2}
.path-section-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#102a23ee,#102a23b0 56%,#102a2320);z-index:-1}
.path-section-banner>div{padding:26px 30px;max-width:78ch}
.path-section-banner h2{margin:4px 0 8px;color:white;font-size:clamp(1.75rem,3.3vw,2.35rem);line-height:1.25}
.path-section-banner p{color:#fff;margin:0;max-width:58ch}
.path-section-banner .eyebrow{color:#e1ede4;font-size:.875rem}
.path-link-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 22px;padding:22px 28px}
.path-link-index>a{display:flex;align-items:center;min-height:46px;font-size:1rem;font-weight:500;line-height:1.45;padding:9px 12px;border-radius:4px;color:var(--forest);background:#ffffffa8}
.path-link-index>a:is(:hover,:focus-visible){background:var(--forest);color:white}
.path-link-small>a{font-size:.9375rem;min-height:42px}
.path-picture-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px;padding:28px}
.path-picture-index>a{display:block;min-width:0;color:var(--forest);text-align:center;font-weight:600;font-size:1rem;line-height:1.45;border-radius:5px;padding:0 0 7px}
.path-picture-index .guide-photo{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;margin:0 0 13px;border-radius:5px}
.path-picture-index>a span{display:block;padding:0 5px}
.path-picture-index>a:is(:hover,:focus-visible){color:#fff;background:var(--forest)}
.path-round{grid-template-columns:repeat(6,minmax(0,1fr));gap:26px 20px;background:#f1f5f1}
.path-round .guide-photo{aspect-ratio:1;width:112px;max-width:100%;margin:0 auto 14px;border-radius:50%;border:3px solid white}
.path-round>a{border-radius:7px;padding:10px 5px}
.path-section-action{display:block;text-align:center;background:#e1eae2;color:var(--forest);padding:16px 24px;font-size:1rem;line-height:1.5;font-weight:600}
.path-section-action:is(:hover,:focus-visible){color:#fff;background:var(--forest)}
.path-selector{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2.1fr);gap:30px;padding:28px;background:var(--forest);color:#fff;border-radius:7px}
.path-selector h2{color:#fff;font-size:1.65rem;line-height:1.25;margin:7px 0 12px}
.path-selector p{color:#e2ede5;margin:0 0 15px}
.path-selector .eyebrow{color:#dfede3;font-size:.875rem}
.path-selector>div:first-child>a{display:inline-block;color:#fff;font-size:1rem;font-weight:600;padding:6px 0}
.path-selector-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;align-content:center}
.path-selector-options>a{display:flex;align-items:center;justify-content:center;padding:10px 9px;font-size:.9375rem;line-height:1.4;text-align:center;border-radius:4px;color:var(--forest);background:white;font-weight:600}
.path-selector-options>a:is(:hover,:focus-visible){background:#d1e4d7;color:var(--deep)}
.path-states{grid-template-columns:repeat(9,minmax(0,1fr));gap:7px}
.path-states>a{min-height:39px;padding:7px;font-size:.9375rem}
.path-states .path-state-international{grid-column:1/-1}
.path-learning-strip{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,2.3fr);background:var(--deep);color:white}
.path-learning-strip>h2,.path-learning-strip>h3{display:flex;align-items:center;color:#fff;font-size:1.5rem;line-height:1.3;margin:0;padding:28px}
.path-learning-strip .path-link-index{gap:8px 14px;padding:22px}
.path-learning-strip .path-link-index>a{background:#ffffff10;color:#fff;font-weight:400}
.path-learning-strip .path-link-index>a:is(:hover,:focus-visible){background:#fff;color:var(--forest)}
.path-inline-tools{display:flex;gap:12px;flex-wrap:wrap;padding:0 22px 22px}
.path-inline-tools>a{font-size:.9375rem;line-height:1.5;padding:10px 14px;border-radius:4px;background:#fff;color:var(--forest);font-weight:600}
.path-calendar{display:grid;grid-template-columns:minmax(180px,.85fr) minmax(0,2.15fr);gap:25px;background:#e0e9df;padding:28px}
.path-calendar h3{font-size:1.5rem;line-height:1.3;margin:0 0 10px}
.path-calendar p{margin:0}
.path-calendar-links,.path-calendar-seasons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.path-calendar-links>a,.path-calendar-seasons>a{padding:9px 13px;background:#fff;color:var(--forest);border-radius:4px;font-size:.9375rem;line-height:1.5;font-weight:500}
.path-calendar a:is(:hover,:focus-visible){background:var(--forest);color:#fff}
.path-calendar .button{font-size:1rem}
.path-feature-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:28px;background:#f1f5f1}
.path-feature-pair>a{display:grid;grid-template-columns:1fr 1.1fr;background:var(--forest);color:#fff;border-radius:6px;overflow:hidden;min-width:0}
.path-feature-pair>a>.guide-photo{display:block;height:100%;width:100%;object-fit:cover;aspect-ratio:1;min-height:190px;margin:0}
.path-feature-pair>a>div{padding:22px;align-self:center}
.path-feature-pair h2,.path-feature-pair h3{color:#fff;font-size:1.4rem;line-height:1.35;margin:0 0 10px}
.path-feature-pair p{color:#eef4ef;font-size:.9375rem;margin:0 0 16px}
.path-feature-pair span{display:inline-block;background:white;color:var(--forest);padding:8px 10px;border-radius:4px;font-size:.875rem;font-weight:600;line-height:1.4}
.path-feature-pair>a:is(:hover,:focus-visible){background:var(--deep)}
.path-feature-index{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,2.1fr);gap:0;padding:28px}
.path-feature-photo{position:relative;display:block;border-radius:6px;overflow:hidden;min-height:235px}
.path-feature-photo>.guide-photo{display:block;object-fit:cover;aspect-ratio:1;width:100%;height:100%;margin:0}
.path-feature-photo>span{position:absolute;bottom:0;left:0;right:0;padding:16px;background:#102a23dc;color:white;font-size:1.1rem;font-weight:600}
.path-feature-index>.path-link-index{grid-template-columns:1fr 1fr;padding:0 0 0 24px;gap:8px 12px}
.path-note{display:flex;align-items:center;justify-content:space-between;gap:28px;background:#e0e9df;padding:26px 30px;border-radius:7px;margin:20px 0}
.path-note h2,.path-note h3{font-size:1.55rem;line-height:1.3;margin:0 0 10px}
.path-note p{margin:0;max-width:65ch}
.path-note>.button{flex:0 0 auto}
.path-section>.path-note{margin:0;border-radius:0}
.path-shop-band{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--forest);color:#fff;overflow:hidden;border-radius:8px;margin-top:40px}
.path-shop-band>img{width:100%;height:100%;min-height:265px;object-fit:cover;display:block}
.path-shop-band>div{padding:35px;align-self:center}
.path-shop-band h2{color:#fff;font-size:2rem;line-height:1.2;margin:8px 0 16px}
.path-shop-band p{color:#e3ede5;margin:0 0 20px}
.path-shop-band .eyebrow{font-size:.875rem;color:#dce9df}
.homestead-panel .homestead-start-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.homestead-panel .homestead-animal-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.homestead-panel .homestead-animal-grid .guide-photo{aspect-ratio:1;border-radius:50%}
.homestead-panel .homestead-four-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.homestead-panel .homestead-mini-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 16px;margin-top:24px}
.homestead-panel .homestead-mini-grid .mega-tile{display:flex;flex-direction:row;align-items:center;text-align:left;gap:12px;padding:6px!important}
.homestead-panel .homestead-mini-grid .guide-photo{width:62px;height:46px;aspect-ratio:auto;flex:0 0 62px;margin:0;border-radius:3px}
.homestead-panel .homestead-mini-grid .mega-tile span{margin:0;font-size:.875rem!important}
.homestead-panel .homestead-feature-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}
.homestead-panel .homestead-feature-grid .mega-tile{display:flex;flex-direction:row;align-items:center;text-align:left;background:var(--forest);color:#fff;border-radius:4px;gap:16px;padding:12px!important}
.homestead-panel .homestead-feature-grid .guide-photo{flex:0 0 45%;width:45%;aspect-ratio:3/2;margin:0;border-radius:3px}
#tiny-panel-design .mega-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.navigation-row>#nav>a.active{background:var(--forest);color:white}
@media(min-width:801px){.dropdown.mega-menu{max-height:min(650px,calc(100dvh - 230px));overflow-y:auto;overscroll-behavior:contain}}
@media(max-width:1050px){
 .path-hero{grid-template-columns:minmax(0,1.3fr) minmax(270px,1fr)}
 .path-hero-copy{padding:28px}.path-hero-links{padding:22px}
 .path-round{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
 .path-selector{grid-template-columns:minmax(200px,1fr) minmax(0,2fr);gap:22px}
 .path-selector-options{grid-template-columns:repeat(4,minmax(0,1fr))}
 .path-states{grid-template-columns:repeat(7,minmax(0,1fr))}
 .path-feature-pair>a{grid-template-columns:1fr}.path-feature-pair>a>.guide-photo{aspect-ratio:2/1;max-height:180px;min-height:0}
 .homestead-panel .homestead-animal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .homestead-panel .homestead-four-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:800px){
 .path-shell{padding-top:24px;padding-bottom:36px}
 .path-hero{grid-template-columns:1fr}.path-hero-image,.path-hero-copy{min-height:300px}
 .path-hero-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:22px}
 .path-hero-links>.eyebrow{grid-column:1/-1}.path-hero-links>a{font-size:.9375rem}
 .path-jump{justify-content:flex-start;gap:8px 20px;padding:16px 0}
 .path-section{margin:22px 0 28px}.path-picture-index{grid-template-columns:repeat(2,minmax(0,1fr));padding:22px;gap:20px 16px}
 .path-round{grid-template-columns:repeat(3,minmax(0,1fr))}
 .path-link-index{grid-template-columns:1fr 1fr;padding:22px;gap:9px 14px}
 .path-selector,.path-calendar{grid-template-columns:1fr;gap:22px;padding:24px}
 .path-selector-options{grid-template-columns:repeat(4,minmax(0,1fr))}.path-states{grid-template-columns:repeat(7,minmax(0,1fr))}
 .path-learning-strip{grid-template-columns:1fr}.path-learning-strip>h2,.path-learning-strip>h3{padding:23px 23px 0}
 .path-feature-index{grid-template-columns:1fr;padding:22px;gap:22px}
 .path-feature-photo{min-height:200px;max-height:240px}.path-feature-photo>.guide-photo{aspect-ratio:2/1}
 .path-feature-index>.path-link-index{padding:0}.path-feature-pair{padding:22px;gap:18px}
 .path-note{align-items:flex-start;flex-direction:column;padding:24px;gap:20px}
 .path-shop-band{grid-template-columns:1fr}.path-shop-band>img{min-height:0;max-height:260px}
 .homestead-panel .homestead-four-grid,.homestead-panel .homestead-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .homestead-tabs .eyebrow{grid-column:1/-1}.homestead-tabs .tiny-tab:last-child{grid-column:1/-1}
 #tiny-panel-design .mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:550px){
 .path-hero-copy{padding:26px}.path-hero-links{grid-template-columns:1fr;padding:20px}
 .path-hero-image,.path-hero-copy{min-height:280px}.path-hero-copy h1{font-size:2.35rem}
 .path-section-banner>div,.path-section-heading{padding:24px 22px}
 .path-link-index{grid-template-columns:1fr;padding:20px;gap:8px}.path-link-index>a{min-height:44px}
 .path-picture-index{gap:19px 13px;padding:20px}.path-picture-index>a{font-size:.9375rem}
 .path-round{grid-template-columns:repeat(2,minmax(0,1fr))}.path-round .guide-photo{width:105px}
 .path-selector-options{grid-template-columns:repeat(3,minmax(0,1fr))}.path-states{grid-template-columns:repeat(5,minmax(0,1fr))}
 .path-calendar-links>a{padding:9px 10px}.path-feature-pair{grid-template-columns:1fr;padding:20px;gap:18px}
 .path-feature-pair>a{grid-template-columns:1fr 1.15fr}.path-feature-pair>a>.guide-photo{aspect-ratio:1;height:100%;max-height:none}
 .path-feature-pair>a>div{padding:20px}.path-feature-index>.path-link-index{grid-template-columns:1fr}
 .path-shop-band>div{padding:27px}.homestead-panel .homestead-mini-grid{grid-template-columns:1fr}
 .homestead-panel .homestead-feature-grid{grid-template-columns:1fr}
}

/* Practical worksheets, organized into three clear paths. */
.planning-directory{background:#f4f6f0}
.tool-directory-shell{max-width:1120px;padding-top:32px;padding-bottom:56px}
.tool-directory-header{display:block;width:100%;min-height:0;margin:0;padding:0;border:0}
.tool-directory-header .eyebrow{color:var(--forest);font-size:.875rem;margin-bottom:12px}
.tool-directory-header h1{font-size:clamp(2rem,3.5vw,3rem);line-height:1.15;margin:0 0 16px}
.tool-directory-header>p:last-child{font-size:1.0625rem;line-height:1.7;max-width:66ch;color:#40584b;margin:0}
nav.tool-directory-jump{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 32px}
nav.tool-directory-jump>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;background:#e0e9df;color:var(--forest);border-radius:5px;font-size:.9375rem;line-height:1.4;font-weight:600}
nav.tool-directory-jump>a:is(:hover,:focus-visible){background:var(--forest);color:white}
.tool-directory-section{margin:0 0 36px;scroll-margin-top:24px}
.tool-directory-section:last-child{margin-bottom:0}
.tool-directory-heading{margin-bottom:20px}
.tool-directory-heading h2{font-size:1.75rem;line-height:1.25;margin:0 0 8px;color:var(--forest)}
.tool-directory-heading>p{font-size:1rem;line-height:1.65;margin:0;color:#40584b}
.tool-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tool-directory-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:310px;padding:26px;background:var(--forest);color:white;border-radius:10px;border:1px solid #315947;box-shadow:0 6px 16px #183d3210;transition:background .18s,transform .18s}
.tool-directory-icon{display:grid;place-items:center;flex:0 0 auto;width:64px;height:64px;background:var(--light-green);color:var(--forest);border-radius:16px;margin-bottom:22px}
.tool-directory-icon svg{display:block;width:40px;height:40px;max-width:none;overflow:visible}
.tool-directory-card h3{font-size:1.4rem;font-weight:600;line-height:1.35;letter-spacing:0;color:white;margin:0 0 12px}
.tool-directory-card>p{font-size:1rem;line-height:1.7;color:#e0ece3;margin:0 0 24px;text-transform:none}
.tool-directory-action{display:block;margin-top:auto;padding:8px 0 0;color:#d2e7d8;font-size:.9375rem;line-height:1.5;font-weight:600}
.tool-directory-card:is(:hover,:focus-visible){background:var(--deep);color:white;transform:translateY(-2px)}
.tool-directory-card:is(:hover,:focus-visible) .tool-directory-action{color:white}
.tool-directory-card:focus-visible{outline:3px solid #a57427;outline-offset:4px}
@media(max-width:900px){.tool-directory-grid{gap:18px}.tool-directory-card{padding:22px}.tool-directory-icon{width:58px;height:58px}}
@media(max-width:800px){.tool-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-directory-card{min-height:290px}.tool-directory-shell{padding-top:28px;padding-bottom:38px}}
@media(max-width:550px){.tool-directory-grid{grid-template-columns:1fr}.tool-directory-card{min-height:0;padding:25px}.tool-directory-action{margin-top:0}.tool-directory-header>p:last-child{font-size:1rem}nav.tool-directory-jump{gap:8px;margin-bottom:28px}nav.tool-directory-jump>a{font-size:.875rem;padding:10px 12px}.tool-directory-heading h2{font-size:1.6rem}.tool-directory-section{margin-bottom:30px}}
@media(prefers-reduced-motion:reduce){.tool-directory-card{transition:none}.tool-directory-card:is(:hover,:focus-visible){transform:none}}
/* Connected homepage paths, with one dedicated photograph per placement. */
.home-pathways-heading{max-width:760px;margin-bottom:36px}
.home-pathways-heading h2{margin:8px 0 16px;font-size:clamp(1.7rem,2.8vw,2.2rem);line-height:1.25}
.home-pathways-heading>p:last-child{font-size:1.125rem;line-height:1.75;margin:0;color:#43574b}
.home-pathway-list{display:grid;gap:28px}
.home-pathway{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);background:#f0f5f1;border-radius:10px;overflow:hidden;min-width:0}
.home-path-photo{display:block;min-height:360px;position:relative;overflow:hidden}
.home-path-photo .guide-photo{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;margin:0;border-radius:0}
.home-path-photo:focus-visible{outline:3px solid #ad7024;outline-offset:-5px}
.home-path-copy{padding:34px;min-width:0}
.home-path-copy .eyebrow{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;margin:0 0 14px;color:var(--forest)}
.home-path-copy .eyebrow span{font-weight:400;letter-spacing:0;color:#4b6255}
.home-path-copy h3{font-size:clamp(1.45rem,2.3vw,1.85rem);line-height:1.3;margin:0 0 14px}
.home-path-copy>p:not(.eyebrow){font-size:1.125rem;line-height:1.75;color:#43574b;margin:0 0 22px;max-width:55ch}
.home-path-links{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:12px;width:auto;padding:0;margin-bottom:26px}
nav.home-path-links>a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;max-width:100%;font-size:1rem;line-height:1.5;font-weight:500;color:var(--forest);background:#fff;border:1px solid #bfd0c4;border-radius:5px;padding:12px 20px;text-align:center;text-decoration:none;white-space:normal}
nav.home-path-links>a:hover,nav.home-path-links>a:focus-visible{background:var(--forest);color:#fff;border-color:var(--forest)}
.home-path-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 20px}
.home-path-actions .button{font-size:1rem;line-height:1.5;max-width:100%;text-align:center;white-space:normal}
.home-path-tool{font-size:1rem;line-height:1.5;color:var(--forest);font-weight:600;text-decoration:none;padding:10px 0}
.home-path-tool:hover{color:#102a23}
.home-pathway:nth-child(even){grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);background:#e4eee7}
.home-pathway:nth-child(even) .home-path-photo{grid-column:2;grid-row:1}
.home-pathway:nth-child(even) .home-path-copy{grid-column:1;grid-row:1}
.home-path-library{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:30px;padding-top:8px}
.home-path-library p{margin:0;font-size:1.125rem;font-weight:600;color:var(--forest)}
.home-path-library .outline{font-size:1rem;background:#fff;max-width:100%;text-align:center;white-space:normal}
.home-path-library .outline:hover{background:var(--forest);color:#fff}
@media(max-width:800px){.home-pathway,.home-pathway:nth-child(even){grid-template-columns:minmax(0,1fr)}.home-path-photo,.home-pathway:nth-child(even) .home-path-photo{grid-column:1;grid-row:1;min-height:0;aspect-ratio:16/10}.home-path-copy,.home-pathway:nth-child(even) .home-path-copy{grid-column:1;grid-row:2;padding:28px}.home-pathways-heading{margin-bottom:28px}.home-pathway-list{gap:24px}}
@media(max-width:450px){.home-path-copy,.home-pathway:nth-child(even) .home-path-copy{padding:24px 20px}.home-path-actions{align-items:flex-start;flex-direction:column;gap:8px}nav.home-path-links>a{padding:12px 16px}.home-pathways-heading h2{font-size:1.7rem}}
/* Mobile masthead: logo, hamburger, search on one row. */
@media(max-width:800px){
 .site-header{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;align-items:center;column-gap:6px;padding:12px 18px 0}
 .site-header .masthead{grid-column:1;grid-row:1;display:flex;justify-content:flex-start;align-items:center;width:auto;max-width:none;margin:0;padding:0}
 .site-header .masthead .brand{display:block;grid-column:auto;justify-self:start;margin:0}
 .site-header .masthead .brand img{width:90px;height:77px;object-fit:contain}
 .site-header>.portal-nav,.site-header .navigation-row{display:contents}
 .site-header .navigation-row>.menu,.site-header .navigation-row>.search-trigger{grid-row:1;display:inline-flex;justify-content:center;align-items:center;justify-self:center;width:44px;min-width:44px;height:44px;min-height:44px;margin:0;padding:10px;border:0;background:transparent;color:var(--forest);position:static;inset:auto;transform:none;border-radius:5px;cursor:pointer}
 .site-header .navigation-row>.menu{grid-column:2}
 .site-header .navigation-row>.search-trigger{grid-column:3}
 .site-header .navigation-row>.menu:hover,.site-header .navigation-row>.search-trigger:hover{background:#e4eee7}
 .site-header .navigation-row>.menu:focus-visible,.site-header .navigation-row>.search-trigger:focus-visible{outline:3px solid #ad7024;outline-offset:2px}
 .site-header #nav{grid-column:1/-1;grid-row:2;display:none;width:100%;min-width:0;margin:12px 0 0;padding:8px 0 12px;text-align:left;position:static}
 .site-header #nav.open{display:flex;flex-direction:column;align-items:stretch}
}
