/* Careful Hands 0.13.0 — shared editorial system. Loaded after every family. */
:root{--ch-system-shell:var(--chp-max);--ch-system-gutter:var(--chp-gutter);--ch-system-h1:clamp(2.5rem,5.2vw,4.625rem);--ch-system-h2:clamp(2rem,3.8vw,3.25rem);--ch-system-h3:clamp(1.25rem,2vw,1.5rem);--ch-system-section:clamp(3.5rem,6.5vw,6rem);--ch-system-rail:180px;--ch-system-gap:60px;--ch-system-ink:#263b37;--ch-system-muted:#536b63;--ch-system-rule:#dbe3df;--ch-system-soft:#f4f8f6;--ch-system-accent:#16a85c;
--ff-deep:var(--chp-deep);--sp-deep:var(--chp-deep);--rt-deep:var(--chp-deep);--ff-green:var(--chp-green);--sp-green:var(--chp-green);--rt-green:var(--chp-green);--ff-ink:var(--ch-system-ink);--sp-ink:var(--ch-system-ink);--rt-ink:var(--ch-system-ink);--ff-muted:var(--ch-system-muted);--sp-muted:var(--ch-system-muted);--rt-muted:var(--ch-system-muted);--ff-rule:var(--ch-system-rule);--sp-line:var(--ch-system-rule);--rt-rule:var(--ch-system-rule);--ff-soft:var(--ch-system-soft);--sp-soft:var(--ch-system-soft);--rt-soft:var(--ch-system-soft);--ff-lime:#dce9e2;--sp-lime:var(--ch-system-accent);--rt-shell:var(--ch-system-shell);--sp-shell:var(--ch-system-shell)}
.ch-site :is(.ch-shell,.chp-shell,.sp-shell,.rt-shell,.ff-shell,.v3-image-wrap,.s3-media,.rt-hub-visual){width:calc(100% - 2 * var(--ch-system-gutter));max-width:var(--ch-system-shell);margin-inline:auto}
.ch-site :is(.sp-title,.rt-title,.ff-title,.ch-editorial h1){font:600 var(--ch-system-h1)/1.03 var(--chp-sans);letter-spacing:-.048em;color:var(--chp-deep);max-width:20ch;margin:14px 0 0;text-wrap:balance}
.ch-site :is(.sp-title,.rt-title,.ff-title) em{color:var(--ch-system-accent);font-style:normal}
.ch-site :is(.sp-lead,.rt-intro,.ff-lead,.ch-editorial-hero p){font:400 17px/1.7 var(--chp-sans);color:var(--ch-system-muted);max-width:72ch;margin:22px 0 0}
.ch-site :is(.s3-head,.v3-top-grid,.rt-hub-top-grid,.ff-hero-grid,.ch-editorial-heading){display:grid;grid-template-columns:var(--ch-system-rail) minmax(0,1fr);gap:var(--ch-system-gap);align-items:start}
.ch-site :is(.s3-hero,.v3-top,.rt-hub-top,.ff-hero,.ch-editorial-hero){padding:52px 0 42px}
.ch-site :is(.sp-crumb,.rt-breadcrumb,.ff-crumb){padding:28px 0 0;min-height:0;gap:12px;font:400 12px/1.5 var(--chp-sans);flex-wrap:wrap;white-space:normal;color:var(--ch-system-muted)}
.ch-site :is(.ff-side-label,.s3-head-side,.v3-top-label){padding-top:13px}.ff-side-label strong{font-size:15px}.ff-kicker{font-size:11px;letter-spacing:.1em}
.ch-site :is(.ff-section-head h2,.ff-principle h2,.ch-editorial h2){font:600 var(--ch-system-h2)/1.12 var(--chp-sans);letter-spacing:-.038em;color:var(--chp-deep);margin:0 0 22px;text-wrap:balance}
.ff-principle h2{color:#fff!important}.ff-principle .ff-section-head h2{color:#fff}
.ch-site :is(.ff-btn,.sp-btn,.rt-btn,.ch-button,.ch-system-button){font-family:var(--chp-sans);font-size:14px;font-weight:500;min-height:48px;height:auto;border-radius:4px;padding:13px 20px;line-height:1.35;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none}
.ch-site :is(.ff-btn--primary,.ch-system-button){background:var(--chp-deep);color:#fff;border:0;cursor:pointer}.ch-system-button.alt{background:var(--ch-system-soft);color:var(--chp-deep)}
.ch-site :is(.ff-form-section,.ff-steps,.ff-human,.v3-content,.s3-body,.ch-editorial-section){padding-block:var(--ch-system-section)}
.ch-site :is(.ff-form-layout,.ff-section-head){grid-template-columns:var(--ch-system-rail) minmax(0,1fr);gap:var(--ch-system-gap)}
.ch-site .ff-screen h2{font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.15;font-weight:600;letter-spacing:-.035em}
.ch-site .ff-form{box-shadow:0 15px 40px rgba(0,70,56,.055);border-radius:4px}.ff-main{overflow:visible}.ff-title,.ff-lead{overflow-wrap:break-word}
.ch-system-wizard .ch-section{padding-block:var(--ch-system-section)}
.ch-system-wizard :is(.ch-benefit-app,.ch-funding-app){background:transparent;border:0;border-radius:0;box-shadow:none;padding:0}
.ch-system-wizard :is(.ch-benefit-layout,.ch-funding-layout){display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:40px;align-items:start}
.ch-system-wizard :is(.ch-benefit-main,.ch-funding-main){background:#fff;padding:clamp(22px,3vw,42px);border:1px solid var(--ch-system-rule);border-radius:4px;min-width:0}
.ch-system-wizard :is(.ch-benefit-aside,.ch-funding-help){background:var(--chp-deep);color:#fff;border:0;border-radius:0;padding:30px}
.ch-system-wizard :is(.ch-benefit-aside,.ch-funding-help) :is(h2,h3,a){color:#fff}.ch-system-wizard :is(.ch-benefit-aside,.ch-funding-help) :is(p,li){color:#dce8e3}
.ch-system-wizard :is(.ch-benefit-option__body,.ch-guidance-option,.ch-funding-option){border-radius:4px;background:#fff;box-shadow:none;min-height:60px;font-family:var(--chp-sans)}
.ch-system-wizard :is(.ch-benefit-intro h2,.ch-benefit-step h2 h2,.ch-funding-screen h2){font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.15;letter-spacing:-.035em}
.ch-system-wizard :is(.ch-funding-fact-grid){gap:32px}.ch-system-wizard :is(.ch-funding-fact-card article){box-shadow:none;border:0;border-top:1px solid var(--ch-system-rule);border-radius:0;background:transparent;padding:28px 0}
.ch-editorial{color:var(--ch-system-ink);font-family:var(--chp-sans)}.ch-editorial .ch-breadcrumbs{margin:28px 0 0;padding:0}.ch-editorial .ch-breadcrumbs ol{flex-wrap:wrap}
.ch-editorial-rail{padding-top:16px;font-size:12px;color:var(--chp-green);font-weight:500}.ch-editorial-rail strong{display:block;margin-top:12px;color:var(--chp-deep);font-size:16px;line-height:1.5}
.ch-editorial :is(.ch-principle-grid,.ch-case-grid,.ch-contact-grid){display:block}.ch-editorial :is(.ch-principle-grid article,.ch-case-card){border:0;border-top:1px solid var(--ch-system-rule);border-radius:0;box-shadow:none;background:transparent;padding:28px 0;display:grid;grid-template-columns:60px minmax(180px,.8fr) minmax(0,1.2fr);gap:28px}
.ch-editorial .ch-principle-grid h2{font-size:24px;letter-spacing:-.025em}.ch-editorial .ch-principle-grid :is(h2,h3,p){margin:0}.ch-editorial .ch-case-card .ch-text-link{grid-column:2/-1}
.ch-editorial :is(.ch-trust-grid,.ch-person-feature,.ch-profile-hero__grid){border:0;border-radius:0;box-shadow:none;background:transparent;gap:var(--ch-system-gap)}
.ch-editorial :is(.ch-trust-copy,.ch-person-feature__copy){padding:20px 0}.ch-editorial img{border-radius:0}
.ch-editorial .ch-process--full{display:block;border:0}.ch-editorial .ch-process--full li{display:grid;grid-template-columns:60px 1fr 1fr;gap:28px;padding:26px 0;border:0;border-top:1px solid var(--ch-system-rule);background:transparent}.ch-editorial .ch-process--full li :is(strong,p){margin:0}.ch-editorial .ch-process--full li:before{display:none}
.ch-editorial .ch-section{padding-block:var(--ch-system-section)}.ch-editorial .ch-section-head{max-width:900px}.ch-editorial .ch-section-head p{max-width:70ch}
.ch-editorial .ch-profile-hero{background:#fff;padding-block:42px}.ch-editorial .ch-profile-hero__copy h1{max-width:12ch}.ch-editorial .ch-profile-contact h2{color:#fff}
.ch-contact-stage{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);min-height:440px;margin-top:20px}.ch-contact-stage__copy{background:var(--chp-deep);color:#fff;padding:48px;display:flex;flex-direction:column;justify-content:center}.ch-contact-stage__copy h2{color:#fff;font-size:34px}.ch-contact-stage__copy p{color:#dce8e3}.ch-contact-stage__copy a{color:#fff;text-decoration:none}.ch-contact-stage__copy .ch-contact-phone{font-size:clamp(22px,3vw,36px);font-weight:500;letter-spacing:-.03em}.ch-contact-stage img{width:100%;height:100%;object-fit:cover;min-height:360px}.ch-contact-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:42px}.ch-contact-paths article{padding-top:24px;border-top:1px solid var(--ch-system-rule)}.ch-contact-paths h3{font-size:22px;letter-spacing:-.02em}.ch-contact-paths a{overflow-wrap:anywhere;color:var(--chp-green)}.ch-contact-paths address{font-style:normal}
.ch-contact-form-layout,.ch-system-split{display:grid;grid-template-columns:var(--ch-system-rail) minmax(0,1fr);gap:var(--ch-system-gap)}.ch-contact-form{background:var(--ch-system-soft);padding:clamp(24px,4vw,48px);border-radius:4px}.ch-contact-form h2{font-size:clamp(28px,3vw,40px)}.ch-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ch-field{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:500;min-width:0}.ch-field.wide{grid-column:1/-1}.ch-contact-form :is(input,select,textarea){font:400 16px/1.5 var(--chp-sans);width:100%;min-width:0;min-height:52px;background:#fff;color:var(--chp-deep);border:1px solid #9cafa6;border-radius:4px;padding:13px 14px}.ch-contact-form select{appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%23004638' stroke-width='2'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat}.ch-contact-form textarea{min-height:130px;resize:vertical}.ch-contact-form fieldset{border:0;padding:0;margin:32px 0}.ch-contact-form legend{font-size:20px;font-weight:500;margin-bottom:20px}.ch-contact-form small,.ch-form-note{font-size:13px;color:var(--ch-system-muted);line-height:1.7}.ch-form-grid--spaced{margin-top:var(--ch-space-6,32px)}.ch-form-consent{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.6;margin:24px 0}.ch-contact-form input[type=checkbox]{width:22px;height:22px;min-height:22px;flex:0 0 22px;margin:2px 0;accent-color:var(--chp-green)}.ch-form-message{border-left:3px solid var(--chp-green);padding:18px 22px;background:var(--ch-system-soft);margin-bottom:24px}.ch-form-message.is-error{border-color:#a14235}.ch-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.ch-system-links{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.ch-system-links a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 0;border-top:1px solid var(--ch-system-rule);font-size:16px;color:var(--chp-deep);text-decoration:none;min-height:60px}.ch-system-links a:hover{color:var(--chp-green)}.ch-system-links a span{font-size:22px}.ch-system-list{list-style:none;padding:0;margin:0}.ch-system-list li{padding:15px 0;border-bottom:1px solid var(--ch-system-rule);line-height:1.7}
.ch-system-faq details{border-top:1px solid var(--ch-system-rule);padding:0}.ch-system-faq summary{font-size:18px;font-weight:500;cursor:pointer;padding:22px 30px 22px 0;min-height:56px;color:var(--chp-deep)}.ch-system-faq details p{max-width:75ch;margin:0 0 24px;line-height:1.75;color:var(--ch-system-muted)}
.ch-system-related{padding-block:var(--ch-system-section);background:var(--ch-system-soft)}.ch-system-related h2{font-size:var(--ch-system-h2);color:var(--chp-deep);letter-spacing:-.035em;margin:0 0 32px;line-height:1.12}.ch-system-related .ch-system-links a{background:transparent}.ch-system-source{font-size:13px;color:var(--ch-system-muted);line-height:1.7}.ch-system-source a{text-decoration:underline;color:var(--chp-green)}.ch-system-source li{padding-block:9px}
.ch-system-legal{padding-block:var(--ch-system-section);max-width:900px}.ch-system-legal h1{margin-bottom:36px}.ch-system-legal :is(p,li){line-height:1.8}.ch-system-legal h2{font-size:30px;margin-top:40px}.ch-system-legal a{color:var(--chp-green);text-decoration:underline}
.ch-region-inline{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.ch-region-inline a{color:var(--chp-green);font-size:14px;padding:8px 0}.chp-region-panel__head p{line-height:1.7}.chp-region-panel__foot{flex-wrap:wrap}.chp-region-profile{flex-basis:100%;color:var(--chp-green);font-size:13px;padding-block:10px}.ch-region-context{padding:18px 24px;background:var(--ch-system-soft);font-size:14px;color:var(--chp-deep)}
.ch-site :focus-visible{outline:3px solid var(--chp-green);outline-offset:4px}.ch-site [hidden]{display:none!important}.ch-site main{scroll-margin-top:24px}.ch-site :is(section[id],div[id]){scroll-margin-top:30px}
@media(max-width:1050px){:root{--ch-system-gap:32px;--ch-system-rail:150px}.ch-system-wizard :is(.ch-benefit-layout,.ch-funding-layout){grid-template-columns:minmax(0,1fr)}.ch-system-wizard :is(.ch-benefit-aside,.ch-funding-help){position:static}.ch-contact-stage__copy{padding:32px}.ch-contact-paths{grid-template-columns:1fr 1fr}}
@media(max-width:760px){:root{--ch-system-h1:clamp(2rem,8.7vw,2.5rem);--ch-system-h2:clamp(1.75rem,7vw,2.125rem);--ch-system-gap:24px;--ch-system-section:52px}.ch-site :is(.s3-head,.v3-top-grid,.rt-hub-top-grid,.ff-hero-grid,.ch-editorial-heading,.ff-form-layout,.ff-section-head,.ch-contact-form-layout,.ch-system-split){grid-template-columns:1fr;gap:20px}.ch-site :is(.s3-hero,.v3-top,.rt-hub-top,.ff-hero,.ch-editorial-hero){padding:32px 0}.ch-site :is(.sp-lead,.rt-intro,.ff-lead,.ch-editorial-hero p){font-size:16px}.ch-editorial-rail strong{display:none}.ch-editorial :is(.ch-principle-grid article,.ch-case-card,.ch-process--full li){grid-template-columns:38px minmax(0,1fr);gap:14px}.ch-editorial :is(.ch-principle-grid article,.ch-case-card,.ch-process--full li)>p{grid-column:2}.ch-contact-stage{grid-template-columns:1fr}.ch-contact-stage img{min-height:0;max-height:320px;aspect-ratio:4/3}.ch-contact-stage__copy{padding:32px 24px}.ch-contact-stage__copy h2{font-size:30px}.ch-contact-paths,.ch-form-grid,.ch-system-links{grid-template-columns:1fr}.ch-editorial .ch-trust-grid{gap:28px}.ff-side-label{display:block}.ff-side-label strong{display:none}.ch-site .ff-screen{padding:28px 22px}.ch-site .ff-form-top{padding:24px 22px}.ch-site .ff-rail{display:block}.ch-site .ff-rail p{margin-top:12px}.ch-contact-form{padding:24px 20px}.ch-contact-form button[type=submit]{width:100%}.ch-system-wizard .ch-benefit-topline{flex-wrap:wrap}.ch-system-wizard :is(.ch-benefit-main,.ch-funding-main){padding:24px 18px}.ch-system-wizard .ch-funding-fact-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.ch-site *, .ch-site *:before,.ch-site *:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.chp-top,.chp-header,.f2-hero-slider,.f2-features,.f2,.ch-contact-form,.ch-mobile-dock{display:none!important}.ch-site :is(.ch-shell,.ff-shell){width:100%}}
/* Explicit inverse roles and old-tool typography share the same hierarchy. */
.ch-site .ch-editorial h1 em{font-style:normal;color:var(--ch-system-accent)}
.ch-site .ch-contact-stage__copy h2,.ch-site .ch-editorial .ch-profile-contact h2{color:#fff;font-size:clamp(28px,3vw,36px)}
.ch-site .ch-system-wizard :is(h2,h3,h4){font-family:var(--chp-sans);font-weight:600;letter-spacing:-.025em}
.ch-site .ch-system-wizard .ch-section-head h2{font-size:var(--ch-system-h2);line-height:1.12;color:var(--chp-deep)}
.ch-site .ch-system-wizard .ch-funding-fact-card{border:0;border-top:1px solid var(--ch-system-rule);box-shadow:none;padding:28px 0;background:transparent}
.ch-site .ch-system-wizard .ch-funding-fact-card>strong{font-size:clamp(30px,3vw,42px);line-height:1.2;letter-spacing:-.03em;white-space:normal}
.ch-site .ch-system-wizard .ch-funding-fact-card h3{font-size:22px;line-height:1.35}
.ch-site .ch-system-wizard .ch-funding-fact-card p{font-size:15px;line-height:1.75}
.ch-site .ch-system-wizard .ch-funding-fact-card__index{margin-bottom:20px}
.ch-site .ch-system-wizard .ch-funding-fact-card__type{font-size:11px;display:block;margin-bottom:12px}
.ch-site .ch-system-wizard :is(.ch-benefit-topline h2,.ch-funding-topline h2){font-size:clamp(24px,2.8vw,36px);line-height:1.2}
.ch-site .ch-system-wizard :is(.ch-benefit-aside,.ch-funding-help) h2{font-size:24px;line-height:1.3;color:white}
.ch-site .ch-system-wizard .ch-section--tight{padding-block:48px}
.ch-site .ch-system-wizard :is(.ch-benefit-reset,.ch-funding-reset){font-size:13px;min-height:44px}

/* The quiet funding band uses dark text on its pale background. */
.ch-site .ch-system-wizard .ch-section--green{background:var(--chp-soft);color:var(--chp-ink)}
.ch-site .ch-system-wizard .ch-section--green h2{color:var(--chp-ink)}
.ch-site .ch-system-wizard .ch-section--green p{color:var(--chp-muted)}
.ch-site .ch-system-wizard .ch-section--green .ch-eyebrow{color:var(--chp-green)}
.ch-site .ch-system-wizard > .ff-shell > .ch-breadcrumbs{padding-top:28px}
.ch-site .ch-system-wizard :is(.ch-benefit-aside,.ch-funding-help) .ch-eyebrow{color:#c9e7d7}
/* 0.14.0: orientation, local pages and consistent navigation. */
.ch-site .ch-unified-crumb{display:block}.ch-site .ch-unified-crumb .ch-breadcrumbs{margin:0;padding:0;font:inherit}.ch-site .ch-breadcrumbs li{min-width:0}.ch-site .ch-breadcrumbs [aria-current]{overflow-wrap:anywhere}
.ch-site :is(h2,h3,legend,[role=status],.ch-guidance-screen,.ch-benefit-screen)[tabindex="-1"]:focus{outline:none}
.ch-site :is(a,button,summary,input,select,textarea):focus-visible{outline:3px solid var(--chp-green);outline-offset:4px}
/* G0.7 — Links inside prose must remain identifiable without relying on colour alone. */
.ch-site #main :where(p,blockquote,figcaption,dd,dt,label) a:not([class]){color:var(--chp-green);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
.ch-site #main :where(p,blockquote,figcaption,dd,dt,label) a:not([class]):hover{text-decoration-thickness:2px}
/* Form hints/placeholders are instructional text and keep normal-text contrast. */
.ch-site .ch-contact-form :is(input,textarea)::placeholder{color:var(--ch-system-muted);opacity:1}

.ch-site .ch-region-page h1{max-width:23ch}.ch-local-note{font-size:13px!important;line-height:1.7!important;color:var(--ch-system-muted)!important}.ch-local-band{display:flex;flex-wrap:wrap;align-items:center;gap:12px 30px;padding-block:24px;border-block:1px solid var(--ch-system-rule);font-size:13px;color:var(--ch-system-muted)}.ch-local-band a{color:var(--chp-green);text-underline-offset:4px}
.ch-path-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}.ch-path-card{display:flex;flex-direction:column;align-items:flex-start;text-decoration:none;background:var(--ch-system-soft);padding:30px;border-radius:4px;transition:background .2s}.ch-path-card:hover{background:#e8f2ed}.ch-path-card small{font-size:12px;color:var(--chp-green);margin-bottom:20px}.ch-site .ch-path-card h3{font:600 var(--ch-system-h3)/1.3 var(--chp-sans);letter-spacing:-.025em;margin:0 0 12px;color:var(--chp-deep)}.ch-path-card p{font-size:15px;line-height:1.75;color:var(--ch-system-muted);margin:0 0 24px}.ch-path-card>span{margin-top:auto;font-size:14px;font-weight:500;color:var(--chp-green)}
.ch-region-page .ch-system-split>div>p{max-width:74ch;font-size:16px;line-height:1.8}.ch-local-services{margin-top:30px}.ch-local-services>a{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(0,1.2fr) 24px;gap:24px;padding:24px 0;border-top:1px solid var(--ch-system-rule);text-decoration:none;align-items:start}.ch-local-services strong{font-size:18px;font-weight:500;color:var(--chp-deep)}.ch-local-services p{margin:0;font-size:15px;line-height:1.7;color:var(--ch-system-muted)}.ch-local-services span{color:var(--chp-green)}.ch-local-services a:hover strong{color:var(--chp-green)}.ch-local-source{display:inline-flex;padding:16px 0;min-height:48px;color:var(--chp-green);text-underline-offset:5px;line-height:1.7}.ch-local-close{background:var(--ch-system-soft);padding:clamp(24px,5vw,60px);border-radius:4px;display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:40px;align-items:center}.ch-local-close h2{margin-top:20px}.ch-local-close .ch-actions{display:grid;gap:12px}.ch-local-close p{max-width:65ch;line-height:1.8}
.ch-site .ch-contact-form .ch-form-note{margin:12px 0 24px}.ch-contact-optional{margin:24px 0}.ch-contact-optional>summary{cursor:pointer;min-height:48px;display:flex;align-items:center;gap:14px;font-size:15px;color:var(--chp-deep);padding:16px 0}.ch-contact-optional>summary:after{content:'+';margin-left:auto}.ch-contact-optional[open]>summary:after{content:'−'}.ch-contact-optional>div{padding-bottom:24px}.ch-contact-fallback{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:20px}.ch-contact-fallback a{color:var(--chp-green);padding:12px 0;min-height:44px}
.chp-region-option{text-decoration:none}.chp-region-panel{max-height:calc(100dvh - 150px);overflow-y:auto}.chp-region-panel__head p{font-size:13px}.chp-region-list{overscroll-behavior:contain}.chp-region-option:focus-visible{outline:2px solid var(--chp-green);outline-offset:-2px}.ch-menu-lines{display:block;position:relative;width:22px;height:14px;border-top:2px solid currentColor;border-bottom:2px solid currentColor}.ch-menu-lines:before{content:'';position:absolute;top:4px;left:0;width:100%;border-top:2px solid currentColor}.ch-menu-label{font:500 10px/1 var(--chp-sans)}.chp-menubtn[aria-expanded=true] .ch-menu-lines{border:0}.chp-menubtn[aria-expanded=true] .ch-menu-lines:before,.chp-menubtn[aria-expanded=true] .ch-menu-lines:after{content:'';position:absolute;top:6px;left:0;width:100%;border-top:2px solid currentColor;transform:rotate(45deg)}.chp-menubtn[aria-expanded=true] .ch-menu-lines:after{transform:rotate(-45deg)}
.ch-mobile-intro{padding:12px 0 24px;display:grid;gap:16px}.ch-mobile-group>summary{list-style:none;cursor:pointer;min-height:58px;padding:18px 0;display:flex;align-items:center;gap:16px;font-size:17px;font-weight:500;color:var(--chp-deep)}.ch-mobile-group>summary::-webkit-details-marker{display:none}.ch-mobile-group>summary:after{content:'+';margin-left:auto;color:var(--chp-green)}.ch-mobile-group[open]>summary:after{content:'−'}.ch-mobile-group{border-bottom:1px solid var(--ch-system-rule)}.ch-mobile-group>div{padding:0 16px 16px;background:var(--ch-system-soft)}.chp-mobile-nav .ch-mobile-group a{font-size:14px;border:0;min-height:48px;padding:10px 0;line-height:1.6}.chp-mobile-nav nav>a{font-size:17px;min-height:58px;padding:16px 0;line-height:1.5}.chp-mobile-nav a[aria-current=page]{color:var(--chp-green);font-weight:600}.chp-mobile-nav__help{padding:24px 0 max(24px,env(safe-area-inset-bottom))}.chp-mobile-nav__help small{font-size:12px}.chp-mobile-nav__help a{min-height:44px;display:flex;align-items:center}
@media(max-width:1023px){.chp-header{position:sticky;top:0}.admin-bar .chp-header{top:32px}.chp-menubtn{width:48px;height:48px;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.chp-mobile-nav{position:absolute;top:100%;max-height:calc(100dvh - var(--ch-header-height) - 10px);overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:18px var(--chp-gutter) 24px;box-shadow:0 18px 32px #173c3026}.chp-mobile-region{display:block;padding:0;border:0}.chp-mobile-region>button{width:100%;display:flex;gap:14px;align-items:center;text-align:left;background:var(--ch-system-soft);border:0;padding:16px;color:var(--chp-deep);min-height:68px}.chp-mobile-region>button strong{display:block;font-size:14px}.chp-mobile-region>button small{display:block;font-size:12px;margin-top:3px}.chp-mobile-region__panel{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 0}.chp-mobile-region__panel>a{display:flex;align-items:center;min-height:48px;padding:12px;background:var(--ch-system-soft);font-size:13px;color:var(--chp-deep);text-decoration:none;overflow-wrap:anywhere}.menu-open{position:fixed;left:0;right:0;width:100%;overflow:hidden}.menu-open .chp-header{position:fixed;top:0;left:0;right:0}.menu-open .chp-top{visibility:hidden}.menu-open .chp-navrow,.menu-open .chp-searchstrip{display:none}.menu-open .chp-mobile-nav{position:fixed;top:var(--chp-header-row);bottom:0;max-height:none}.chp-main .chp-shell{gap:12px}.chp-navrow{display:none}}
@media(max-width:760px){.chp-reference-logo{width:min(218px,56vw)}.chp-region-wrap{display:none}.chp-actions{gap:12px}.chp-main .chp-shell{gap:12px}.chp-mobile-nav{padding:18px 20px 24px}.ch-path-grid{grid-template-columns:1fr;gap:16px}.ch-path-card{padding:26px}.ch-local-services>a{grid-template-columns:minmax(0,1fr) 22px;gap:8px 16px}.ch-local-services p{grid-column:1;grid-row:2}.ch-local-services span{grid-column:2;grid-row:1}.ch-local-close{grid-template-columns:1fr;gap:20px}.ch-local-band{gap:12px}.ch-site :is(section[id],div[id]){scroll-margin-top:110px}.ch-site .ch-breadcrumbs{font-size:12px}.ch-site .ch-breadcrumbs a{min-height:36px}.chp-mobile-nav .chp-region-profile{display:block;min-height:44px;padding:12px 0}.admin-bar .chp-header{top:46px}}
@media print{.ch-local-close{display:block}.chp-mobile-nav{display:none!important}}

.ch-nojs-nav{display:flex;flex-wrap:wrap;gap:20px;padding-block:20px}.ch-nojs-nav a{min-height:44px;display:flex;align-items:center;color:var(--chp-green)}

.ch-site :is(.ch-guidance-question__title,.ch-guidance-legend,.ch-caregrade-screen,.ch-funding-screen,[data-aid-screen],[data-application-screen],[data-benefit-screen],[data-guidance-screen])[tabindex="-1"]:focus{outline:none}


.menu-open .chp-region-wrap{visibility:hidden}

/* 0.28.1 — Desktop-Standortwahl als echter Header-Drawer.
   Kein Popup, keine innere Scrollbar, keine zusätzliche grüne Trennlinie.
   Die Bewegung wird in ch-region.js per Web Animations API gesteuert. */
@media (min-width:761px){
  .chp-region-panel{
    position:relative;
    inset:auto;
    top:auto;
    left:auto;
    right:auto;
    width:100%;
    max-height:none;
    overflow:visible;
    z-index:55;
    background:#fff;
    border:0;
    border-radius:0;
    box-shadow:0 18px 34px rgba(25,49,38,.065);
    transform:none;
    transform-origin:top center;
    will-change:height,opacity;
  }
  .chp-region-panel:before{display:none!important}
  .chp-region-drawer{
    display:grid;
    grid-template-columns:250px minmax(0,1fr);
    grid-template-areas:
      "head list"
      "head empty";
    gap:0 48px;
    align-items:start;
    padding:28px 0 24px;
  }
  .chp-region-panel__head{
    grid-area:head;
    padding:5px 0 0;
    border:0;
  }
  .chp-region-panel__eyebrow{display:none!important}
  .chp-region-panel__head>strong{
    display:block;
    max-width:14ch;
    margin:0;
    color:var(--chp-deep);
    font:600 24px/1.12 var(--chp-sans);
    letter-spacing:-.035em;
    text-wrap:balance;
  }
  .chp-region-panel__head p{
    max-width:27ch;
    margin:13px 0 0;
    color:var(--chp-muted);
    font:400 12.5px/1.65 var(--chp-sans);
  }
  .chp-region-profile{
    display:inline-flex;
    width:max-content;
    margin-top:16px;
    padding:0 0 3px;
    color:var(--chp-green);
    border-bottom:1px solid rgba(0,122,80,.24);
    font:500 11.5px/1.5 var(--chp-sans);
    text-decoration:none;
  }
  .chp-region-profile:hover{color:var(--chp-deep);border-color:var(--chp-deep)}
  .chp-region-list{
    grid-area:list;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0 18px;
    padding:0;
    max-height:none;
    overflow:visible;
    overscroll-behavior:auto;
  }
  .chp-region-option{
    position:relative;
    width:100%;
    min-height:58px;
    display:grid;
    grid-template-columns:10px minmax(0,1fr) 18px;
    align-items:center;
    gap:12px;
    padding:10px 10px 10px 8px;
    border:0;
    border-bottom:1px solid var(--chp-rule);
    border-radius:0;
    background:transparent;
    color:var(--chp-ink);
    font-family:var(--chp-sans);
    text-align:left;
    text-decoration:none;
    cursor:pointer;
    transition:background .18s ease,color .18s ease,padding-left .24s cubic-bezier(.16,1,.3,1);
  }
  .chp-region-option:hover,
  .chp-region-option:focus-visible{
    background:#eef6f2;
    color:var(--chp-deep);
    padding-left:14px;
    outline:0;
  }
  .chp-region-option:active{transform:none}
  .chp-region-option__mark{
    width:6px;
    height:6px;
    border-radius:50%;
    background:#d5e5de;
    box-shadow:none;
    transition:background .18s ease,box-shadow .18s ease,transform .24s cubic-bezier(.16,1,.3,1);
  }
  .chp-region-option:hover .chp-region-option__mark,
  .chp-region-option:focus-visible .chp-region-option__mark{
    background:#9ccbb8;
    transform:scale(1.15);
  }
  .chp-region-option__copy{min-width:0}
  .chp-region-option strong{
    display:block;
    margin:0;
    color:inherit;
    font-size:13.5px;
    line-height:1.35;
    font-weight:500;
    white-space:normal;
  }
  .chp-region-option small{
    display:block;
    margin-top:2px;
    color:#7b8984;
    font-size:9.5px;
    line-height:1.3;
    font-weight:400;
  }
  .chp-region-option>.chp-icon{
    width:15px;
    height:15px;
    color:var(--chp-green);
    opacity:.18;
    transform:translateX(-5px);
    transition:opacity .2s ease,transform .3s cubic-bezier(.16,1,.3,1);
  }
  .chp-region-option:hover>.chp-icon,
  .chp-region-option:focus-visible>.chp-icon,
  .chp-region-option.is-selected>.chp-icon{
    opacity:1;
    transform:none;
    color:var(--chp-green);
  }
  .chp-region-option.is-selected{
    background:#e8f4ee;
    color:var(--chp-deep);
    box-shadow:inset 3px 0 0 var(--chp-green);
  }
  .chp-region-option.is-selected .chp-region-option__mark{
    background:var(--chp-green);
    box-shadow:0 0 0 4px #dff0e8;
  }
  .chp-region-panel__empty{
    grid-area:empty;
    display:flex;
    align-items:center;
    gap:8px;
    min-height:48px;
    margin:16px 0 0;
    padding:0 14px;
    background:var(--chp-soft);
    border:0;
    border-radius:0;
    color:var(--chp-muted);
    font:400 11.5px/1.5 var(--chp-sans);
  }
  .chp-region-panel__empty span{color:var(--chp-ink);font-weight:500}
  .chp-region-panel__empty a{color:var(--chp-green);font-weight:500;text-decoration:none}
  .chp-region-panel__empty a:hover{color:var(--chp-deep);text-decoration:underline;text-underline-offset:3px}
  .chp-region-panel__foot{display:none!important}
  .chp-region-wrap.is-open>.chp-region{color:var(--chp-deep)}
}
@media (min-width:761px) and (max-width:1180px){
  .chp-region-drawer{grid-template-columns:220px minmax(0,1fr);gap:0 32px;padding-block:24px 22px}
  .chp-region-list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .chp-region-panel__head>strong{font-size:22px}
  .chp-region-panel__head p{font-size:12px}
}
@media (max-width:760px){
  .chp-region-panel{display:none!important}
}
@media (prefers-reduced-motion:reduce){
  .chp-region-panel,.chp-region-drawer,.chp-region-panel__head,.chp-region-option,.chp-region-panel__empty{animation:none!important;transition:none!important}
}

/* 0.40.8 — Mobile Stadt-Hubs: weniger vertikale Wiederholung, gleiche Careful-Hands-Sprache.
 * Desktop bleibt im bestehenden Seitenaufbau. Mobile nutzt vorhandene Swipe-/Disclosure-Muster. */
.ch-region-fold-toggle{display:none}
@media(max-width:760px){
  /* Die vier Einstiege werden bereits durch ch-mobile-experience als Swipe-Reihe verbessert. */
  .ch-region-page #ihr-weg .ch-path-grid.ch-swipe-track{margin-top:26px!important}
  .ch-region-page #ihr-weg .ch-path-card{min-height:100%;padding:24px}

  /* Zweite Navigationsebene bewusst kompakt halten: vier Leistungen als kurze Zeilen. */
  .ch-region-page #leistungen .ch-local-services{margin-top:22px}
  .ch-region-page #leistungen .ch-local-services>a{padding:18px 0;gap:6px 14px}
  .ch-region-page #leistungen .ch-local-services strong{font-size:17px;line-height:1.42}
  .ch-region-page #leistungen .ch-local-services p{font-size:14px;line-height:1.65}

  /* Fünf lokale Ratgeber: auf Mobile horizontal, Desktop weiterhin die bekannten Link-Zeilen. */
  .ch-region-page .ch-region-guide-links.ch-swipe-track{margin-top:22px!important}
  .ch-region-page .ch-region-guide-links.ch-swipe-track>a{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 20px!important;
    align-items:start!important;
    align-content:space-between!important;
    gap:18px!important;
    min-height:128px!important;
    padding:22px!important;
    border:1px solid var(--ch-system-rule)!important;
    border-radius:4px!important;
    background:#fff!important;
    font-size:15px!important;
    line-height:1.55!important;
    color:var(--chp-deep)!important;
    text-decoration:none!important;
  }
  .ch-region-page .ch-region-guide-links.ch-swipe-track>a>span{align-self:end;color:var(--chp-green);font-size:20px}
  .ch-region-page .ch-local-guide-hub .sp-link{display:inline-flex;min-height:44px;align-items:center;margin-top:12px}

  /* Sekundäre Informationen sind mobil aufklappbar; ohne JS bleiben sie vollständig sichtbar. */
  .ch-region-page .ch-region-mobile-fold.ch-region-fold-enhanced{padding-block:0!important}
  .ch-region-page .ch-region-mobile-fold.ch-region-fold-enhanced>.ch-shell{gap:0}
  .ch-region-page .ch-region-fold-toggle{
    display:flex;
    grid-column:1/-1;
    width:100%;
    min-height:68px;
    align-items:center;
    gap:16px;
    padding:20px 0;
    border:0;
    border-top:1px solid var(--ch-system-rule);
    background:transparent;
    color:var(--chp-deep);
    font:500 17px/1.4 var(--chp-sans);
    text-align:left;
    cursor:pointer;
  }
  .ch-region-page .ch-region-fold-toggle__icon{margin-left:auto;color:var(--chp-green);font-size:23px;font-weight:400;line-height:1}
  .ch-region-page .ch-region-mobile-fold.ch-region-fold-open{padding-bottom:44px!important}
  .ch-region-page .ch-region-mobile-fold.ch-region-fold-open .ch-region-fold-toggle{margin-bottom:22px}
}
@media print{
  .ch-region-fold-toggle{display:none!important}
  .ch-region-mobile-fold [hidden]{display:block!important}
}
