.crumbs{padding-top:18px;font-size:var(--s-small);color:var(--ink-soft)}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.crumbs li+li::before{content:"›";margin-right:8px;color:#9fb3c8}
.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}
.inner-hero{padding-top:12px}
.inner-hero .lead{font-size:clamp(1.0625rem,1rem + .4vw,1.3rem);max-width:44ch}
.inner-hero .hero-photo{min-height:min(64svh,620px)}
.facts{padding-top:clamp(40px,5vw,72px)}
.fact-row{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.fact-row li{background:var(--tint);padding:24px;display:flex;flex-direction:column;gap:6px;transition:transform .35s var(--ease),background .35s}
.fact-row li:first-child{border-radius:0 var(--corner) 0 0}
.fact-row li:hover{transform:translateY(-6px);background:var(--tint-2)}
.fact-row b{font-size:1.125rem}.fact-row span{color:var(--ink-soft);font-size:1rem}
.areas-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,72px)}
.areas-inner h3{font-size:1.125rem}
.chips-s{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.chips-s li{background:var(--tint);padding:8px 14px;border-radius:999px;font-size:1rem}
.chips-s.links li{padding:0;background:none}
.chips-s.links a{display:inline-flex;min-height:44px;align-items:center;padding:0 16px;border-radius:999px;background:var(--navy);color:#fff;text-decoration:none;font-weight:600;transition:background .2s}
.chips-s.links a:hover{background:var(--accent)}
.cta-band{background:var(--navy);color:#fff;margin-top:clamp(80px,11vw,168px);padding:clamp(64px,8vw,120px) 0;text-align:center}
.cta-band h2{max-width:18ch;margin:0 auto}
.cta-band .lead{color:#dbe5ef;margin:18px auto 0}
.cta-band .hero-ctas{justify-content:center}
.cta-band+footer{border-top:1px solid rgba(255,255,255,.12)}
.towns{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:32px}
.town{background:var(--tint);padding:24px 22px;text-decoration:none;display:flex;flex-direction:column;gap:22px;transition:background .25s,color .25s,transform .3s var(--ease)}
.town:first-child{border-radius:0 var(--corner) 0 0}
.town b{font-size:1.4rem;letter-spacing:-.02em}
.town span{font-size:var(--s-small);color:var(--ink-soft)}
.town:hover{background:var(--navy);color:#fff;transform:translateY(-4px)}
.town:hover span{color:#c9d6e3}
.card .ph{aspect-ratio:4/3}
@media (max-width:1080px){.fact-row,.towns{grid-template-columns:repeat(2,1fr)}.inner-hero .hero-photo{min-height:0}}
@media (max-width:760px){.areas-inner{grid-template-columns:1fr}.inner-hero .hero-photo{aspect-ratio:4/3}.fact-row li{padding:18px}.towns{grid-template-columns:1fr 1fr}.town{padding:18px 16px}.town b{font-size:1.2rem}}

.fact-row li:first-child{background:linear-gradient(135deg,var(--blue),var(--sky));color:#fff}
.fact-row li:first-child span{color:#e6f2fe}
.fact-row b{color:var(--blue)}.fact-row li:first-child b{color:var(--lime)}
.fact-row li:hover{background:var(--blue);color:#fff}.fact-row li:hover b{color:var(--lime)}.fact-row li:hover span{color:#e6f2fe}
.chips-s.links a{background:var(--blue)}.chips-s.links a:hover{background:var(--sky)}
.cta-band{background:radial-gradient(60% 90% at 100% 0%,rgba(6,140,240,.6),transparent 60%),linear-gradient(135deg,var(--blue),var(--navy))}
.town b{color:var(--blue)}
.town:hover{background:linear-gradient(135deg,var(--blue),var(--sky))}.town:hover b{color:var(--lime)}
.crumbs a{color:var(--blue)}

.eyebrow{display:inline-block;font-weight:700;font-size:.875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);background:var(--lime);padding:6px 12px;border-radius:999px;margin-bottom:18px}
.apply{background:linear-gradient(180deg,var(--tint),#fff)}
.apply-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:56px;align-items:start}
.apply-card{background:#fff;border-radius:22px;padding:32px;box-shadow:0 30px 60px -30px rgba(0,59,115,.35);display:grid;gap:18px}
.apply-card .f{display:grid;gap:8px}
.apply-card label[for],.apply-card .q{font-weight:600;color:var(--ink)}
.apply-card textarea{width:100%;padding:12px 16px;font:inherit;border:1.5px solid #c5d1dd;border-radius:12px}
.apply-card .err{display:none;color:#b42318;font-size:.9rem}
.apply-card .bad .err{display:block}
.apply-card .fine{font-size:.875rem;color:var(--ink-soft);text-align:center}
.apply-card.done h3{font-size:1.6rem;color:var(--blue)}
.legal-grid{display:grid;grid-template-columns:240px 1fr;gap:56px;align-items:start}
.legal-toc{position:sticky;top:110px;background:var(--tint);border-radius:18px;padding:22px}
.legal-toc p{font-weight:700;color:var(--blue);margin-bottom:10px}
.legal-toc ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.legal-toc a{color:var(--ink);text-decoration:none}.legal-toc a:hover{color:var(--sky)}
.legal-body{max-width:72ch}
.legal-body h2{font-size:clamp(1.4rem,1.2rem + .8vw,1.9rem);margin:40px 0 12px;scroll-margin-top:110px}
.legal-body h2:first-child{margin-top:0}
.legal-body p,.legal-body li{color:var(--ink-soft);line-height:1.7;margin-bottom:12px}
.legal-body ul{padding-left:22px}
@media (max-width:900px){.apply-grid,.legal-grid{grid-template-columns:1fr;gap:28px}.legal-toc{position:static}.apply-card{padding:22px}}
/* local section */
.local{background:linear-gradient(180deg,#fff, var(--tint))}
.local-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:center}
.local .lede{font-size:1.125rem;line-height:1.7;color:#24364d;max-width:62ch}
.local-card{background:#fff;border-radius:20px;padding:28px;box-shadow:0 12px 40px rgba(0,59,115,.10);border-top:5px solid var(--lime)}
.local-card h3{margin:0 0 4px;color:var(--navy)}
.local-card .small{margin-top:16px;color:#4a5b70;font-size:.95rem}
@media(max-width:860px){.local-grid{grid-template-columns:1fr;gap:24px}}
/* footer towns */
/* gift page */
.gift-hero .gcard-stage{display:flex;align-items:center;justify-content:center;padding:24px;min-height:320px;background:linear-gradient(160deg,var(--tint),#fff);border-radius:28px}
.gift-ideas{list-style:none;display:grid;gap:12px;margin-top:28px}
.gift-ideas li{display:flex;gap:16px;align-items:center;background:#fff;border-radius:16px;padding:14px 18px;box-shadow:0 6px 24px rgba(0,59,115,.08)}
.gift-ideas b{font-size:1.4rem;color:var(--blue);min-width:64px}
.gift-steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
.gift-steps li{background:var(--tint);border-radius:20px;padding:24px;display:grid;gap:8px}
.gift-steps b{color:var(--navy);font-size:1.15rem}
.custom-amt{margin-top:12px}
@media(max-width:760px){.gift-steps{grid-template-columns:1fr}}
.gift-hero .eyebrow{width:fit-content;align-self:flex-start;justify-self:start}
/* blog */
.blog-hero{padding:clamp(40px,6vw,80px) 0 24px;background:linear-gradient(180deg,var(--tint),#fff)}
.blog-hero h1{max-width:18ch}
.tag-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.tag-btn{min-height:44px;padding:0 18px;border-radius:999px;border:2px solid var(--blue);background:#fff;color:var(--blue);font:600 1rem/1 inherit;font-family:inherit;cursor:pointer;transition:background .2s,color .2s}
.tag-btn:hover{background:var(--tint)}
.tag-btn.on{background:var(--blue);color:#fff}
.blog-list{padding:24px 0 clamp(64px,8vw,112px)}
.post-grid{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post-card[hidden]{display:none}
.post-card a{display:flex;flex-direction:column;height:100%;background:#fff;border-radius:22px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 10px 34px rgba(0,59,115,.10);transition:transform .25s var(--ease),box-shadow .25s}
.post-card a:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(0,59,115,.16)}
.post-card img{aspect-ratio:16/10;object-fit:cover;width:100%}
.pc-in{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.pc-in h3{color:var(--navy);font-size:1.3rem;line-height:1.2}
.pc-in p{color:#4a5b70;font-size:1rem;line-height:1.5}
.pc-meta{margin-top:auto;color:#5d6d80;font-size:.9rem}
.tag{display:inline-block;width:fit-content;background:var(--lime);color:var(--navy);font-weight:700;font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;padding:5px 11px;border-radius:999px;text-decoration:none}
.post{max-width:820px;padding-top:24px;padding-bottom:clamp(64px,8vw,112px)}
.post-head h1{font-size:clamp(2rem,1.3rem + 3vw,3.4rem);line-height:1.05;margin-top:16px;color:var(--navy)}
.post-meta{margin-top:14px;color:#5d6d80}
.post-img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:24px;margin-top:28px}
.post-body{margin-top:32px}
.post-body .lead{font-size:1.2rem;line-height:1.6}
.post-body h2{font-size:clamp(1.4rem,1.1rem + 1.2vw,1.9rem);color:var(--navy);margin-top:40px}
.post-body p{margin-top:14px;font-size:1.0625rem;line-height:1.75;color:#24364d;max-width:68ch}
.check{list-style:none;display:grid;gap:10px;margin-top:16px}
.check li{position:relative;padding-left:36px;font-size:1.0625rem;line-height:1.6;color:#24364d}
.check li::before{content:"✓";position:absolute;left:0;top:1px;width:24px;height:24px;border-radius:50%;background:var(--lime);color:var(--navy);display:grid;place-items:center;font-size:.85rem;font-weight:700}
.post-cta{margin-top:48px;background:var(--navy);color:#fff;border-radius:24px;padding:32px}
.post-cta h2{color:#fff;margin-top:0}
.post-cta p{color:#dbe5ef}
.post-cta .hero-ctas{margin-top:22px}
.post-more{margin-top:56px}
.post-more h2{color:var(--navy);font-size:1.5rem}
.post-more ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}
.post-more a{display:flex;flex-direction:column;gap:10px;padding:20px;background:var(--tint);border-radius:18px;text-decoration:none;color:var(--navy);font-weight:600;line-height:1.3;height:100%}
.post-more a:hover{background:#dcecfd}
@media(max-width:960px){.post-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.post-grid,.post-more ul{grid-template-columns:1fr}.post-cta{padding:24px}}
