/* Landing-page additions, built on site.css tokens */
.hero--sub{min-height:auto;padding-bottom:0}.hero--sub .hero-grid{padding-top:calc(var(--nav-h) + 3rem)}.hero--sub h1{font-size:clamp(2.3rem,8.5vw,4.6rem);line-height:.95;margin-bottom:1.5rem}
@media(min-width:62em){.hero--sub h1{font-size:min(4.6vw,5.6rem)}}
.kicker{margin:0 0 1.2rem;font:700 .8rem/1 var(--f);letter-spacing:.14em;text-transform:uppercase;color:var(--brass)}
.cards{display:grid;gap:.9rem;grid-template-columns:minmax(0,1fr)}
@media(min-width:40em){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:75em){.cards{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}}
.card{padding:1.6rem;border:1px solid var(--rim);border-radius:1.4rem;background:var(--deep);min-width:0}
.card i{font:700 .8rem/1 var(--f);font-style:normal;color:var(--brass)}.card h3{margin:.9rem 0 .7rem;font-size:clamp(1.3rem,1.8vw,1.6rem)}.card p{margin:0;color:#b9d0e2;font-size:.98rem}
.card a,.prose a{color:var(--azure);text-underline-offset:3px}.prose a{color:var(--azure-d)}
.light{background:var(--paper);color:var(--ink)}.guide{display:grid;gap:2.5rem}@media(min-width:62em){.guide{grid-template-columns:1fr 1.2fr;gap:5rem}.guide>h2{position:sticky;top:calc(var(--nav-h) + 2rem);align-self:start}}
.prose h3{margin:2rem 0 .6rem}.prose h3:first-child{margin-top:0}.prose p{color:#34506b;max-width:62ch}.prose .btn-row{margin-top:2rem}.light :focus-visible{outline-color:var(--azure-d)}
.light .btn--line{--fg:var(--ink);--bd:#9fb6c9}.light .btn--ink:hover{--bg:var(--azure-d)}
.netgrid{display:grid;gap:.9rem;grid-template-columns:minmax(0,1fr)}@media(min-width:40em){.netgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:75em){.netgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.netcard{display:flex;flex-direction:column;gap:.6rem;padding:1.5rem;border:1px solid var(--rim);border-radius:1.4rem;text-decoration:none;min-width:0;transition:border-color .3s,background .3s}
.netcard:hover{border-color:var(--azure);background:rgba(56,169,232,.06)}.netcard b{font:800 1.2rem/1.2 var(--f);font-stretch:108%}.netcard span{color:#b9d0e2;font-size:.95rem}
.netcard em{margin-top:auto;display:inline-flex;align-items:center;gap:.5rem;font:700 .85rem/1 var(--f);font-style:normal;color:var(--brass);padding-top:.6rem}.netcard em svg{width:1em;height:1em}
.areas .map{margin-top:2rem}
