
/* Checkpoint C: shared navigation and accessible skip link */
.skip-link,.skip{position:fixed!important;top:0;left:12px;transform:translateY(-180%);padding:12px;background:white;color:#242424;z-index:1000}
.skip-link:focus,.skip:focus{transform:none;outline:3px solid #d2115d}
details:not([open])>nav{display:none!important}
.header{isolation:isolate}
.header .local-mobile nav{top:100%!important}
:where(h1,h2,h3,section,form)[id]{scroll-margin-top:110px!important}
.demo-card{padding:22px;border:1px solid #dedbd7;background:white;margin-bottom:14px}
.demo-card h3{font-size:1.35rem;font-weight:600}.demo-card .link{min-height:48px}
.map-checkpoint .hero{grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr)}
.journey-body{padding:20px}.journey-body>h2{font-size:24px}.journey-kicker,.journey-steps{display:none}.journey-disclaimer{margin-top:16px}
.results{grid-template-columns:1fr}.result-preview{border:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.flow{gap:18px}.input-row input{border:2px solid #242424}.search .btn{background:#d2115d}
@media(max-width:760px){.map-checkpoint .hero{grid-template-columns:1fr;gap:18px}.journey .map-head{display:none}.journey-body{padding:16px}.journey-body>h2{font-size:20px}.journey-disclaimer{margin-top:8px}.result-preview{grid-template-columns:1fr;gap:0}.flow{display:flex;gap:8px 16px}.demo{font-size:11px!important;padding:6px 12px}.breadcrumb{margin:8px 0}.intro{font-size:16px!important}.eyebrow{margin-bottom:6px}.map-checkpoint .hero h1{font-size:42px}.note{font-size:13px!important}.header .local-mobile[open]{max-width:none;min-width:0}.local-mobile nav{border-bottom:1px solid #ddd}.search{margin-top:16px}}
@media(max-width:1000px){
body>.header:has(.local-mobile){display:grid;grid-template-columns:1fr auto;align-items:center}
body>.header .local-mobile{display:contents!important}
body>.header .local-mobile summary{grid-column:2;grid-row:1;justify-self:end}
body>.header .local-mobile[open] nav{position:static!important;grid-column:1/-1;grid-row:2;max-height:60svh;padding:8px 0 12px;box-shadow:none}
}
@media(max-width:900px){
.c .header{display:grid;grid-template-columns:1fr auto}
.c .mobile{display:contents}
.c .mobile summary{grid-column:2;grid-row:1}
.c .mobile[open] nav{position:static;grid-column:1/-1;grid-row:2;padding:8px 0;max-height:60svh;overflow:auto}
}
