/* Six real policy destinations. City reform is the common foundation, not a seventh policy. */
.policy-map{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"work children town" "mobility base care";grid-auto-rows:1fr;gap:40px 34px;padding:24px 0;margin-top:26px}
.policy-map-lines{position:absolute;inset:24px 0;width:100%;height:calc(100% - 48px);z-index:-1;overflow:visible;pointer-events:none}
.policy-map-lines path{fill:none;stroke:var(--brand-ink);stroke-opacity:.32;stroke-width:2}
.policy-map-node{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:23px 22px;background:var(--brand-white);border:1px solid var(--brand-line);border-radius:var(--brand-radius);box-shadow:var(--brand-shadow);color:var(--brand-ink)}
.policy-map-work{grid-area:work}.policy-map-children{grid-area:children}.policy-map-town{grid-area:town}.policy-map-mobility{grid-area:mobility}.policy-map-care{grid-area:care}
.policy-map-base{grid-area:base;align-items:center;text-align:center;background:var(--brand-cream-deep);border-color:#e8c98e;border-radius:32px}
.map-icon{width:72px;height:50px;flex:none;color:var(--brand-ink);margin-bottom:9px}
.map-icon-halo{fill:var(--brand-cream)}
.policy-map-base .map-icon-halo{fill:var(--brand-white)}
.map-kicker{display:block;font-size:11px;font-weight:700;line-height:1.7;color:var(--brand-muted)}
.map-title{display:block;font-size:23px;line-height:1.5;letter-spacing:-.04em;margin:6px 0 9px}
.policy-map-base .map-title{font-size:26px}
.map-scope{display:block;font-size:12px;line-height:1.9;color:var(--brand-muted);margin-bottom:16px;overflow-wrap:anywhere}
.map-action{display:flex;align-items:center;gap:15px;margin-top:auto;padding-top:5px;font-size:12px;font-weight:700;color:var(--brand-red)}
.map-action>span{display:inline-block;font-size:20px;line-height:1}
.policy-map-node:hover{border-color:var(--brand-red)}
.policy-map-node:focus-visible{outline:3px solid var(--brand-ink);outline-offset:5px}
.map-mobile-bridge{display:none}
.hero-title-line{display:block;padding:.08em .12em;margin:-.08em -.12em;overflow:clip}
.hero-title-line>span{display:block}
@media(max-width:800px){
 .policy-map{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"base base" "bridge bridge" "work children" "town mobility" "care care";grid-auto-rows:auto;gap:14px;padding:10px 0 0;margin-top:20px}
 .policy-map-lines{display:none}
 .policy-map-base{display:grid;grid-template-columns:64px minmax(0,1fr);gap:0 15px;align-items:start;text-align:left;border-radius:var(--brand-radius);padding:22px}
 .policy-map-base .map-icon{grid-column:1;grid-row:1/5;align-self:center;width:64px;height:48px;margin:0}
 .policy-map-base .map-kicker,.policy-map-base .map-title,.policy-map-base .map-scope,.policy-map-base .map-action{grid-column:2}
 .policy-map-base .map-title{font-size:23px;margin:3px 0 6px}.policy-map-base .map-title br{display:none}
 .policy-map-base .map-scope{margin-bottom:8px}
 .policy-map-node:not(.policy-map-base){padding:18px 15px}
 .map-title{font-size:20px}.map-icon{width:60px;height:43px}
 .map-kicker{font-size:10px}.map-scope{font-size:12px;line-height:1.85}
 .map-mobile-bridge{grid-area:bridge;display:flex;flex-direction:column;align-items:center;gap:7px;font-size:11px;font-weight:700;color:var(--brand-muted);margin:-7px 0 2px}
 .map-mobile-bridge::before{content:"";width:1px;height:19px;background:var(--brand-line)}
 .map-mobile-bridge span{padding:0 12px;background:var(--brand-cream)}
 .policy-map-care .map-title{font-size:21px}
}
@media(max-width:380px){.policy-map{gap:12px}.policy-map-node:not(.policy-map-base){padding:17px 12px}.map-title{font-size:18px}.policy-map-base{grid-template-columns:46px minmax(0,1fr);gap:0 12px;padding:18px}.policy-map-base .map-icon{width:46px;height:38px}.map-action{gap:10px}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .policy-map-node{transition:border-color .18s ease,box-shadow .18s ease}
 .policy-map-node:hover{box-shadow:0 9px 25px #243e5914}
 .map-action>span,.hero .button>span{transition:translate .2s ease}
 .policy-map-node:hover .map-action>span,.hero .button:hover>span{translate:3px -3px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

