/* townapp.co — v1. System font stack = zero third-party requests. */
:root{
  --sky:#0EA5E9; --ink:#0F172A; --secondary:#64748B; --divider:#F1F5F9;
  --coral-text:#C2410C; --coral:#FB923C;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;border-radius:0 0 8px 0;z-index:10}
.skip:focus{left:0}
header{max-width:960px;margin:0 auto;padding:36px 24px 0}
.logo{font-size:20px;font-weight:700;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:9px}
.logo .mark{flex:none}
main{max-width:960px;margin:0 auto;padding:0 24px}
.hero{padding:96px 0 88px;max-width:760px}
h1{font-size:clamp(48px,9vw,78px);font-weight:800;letter-spacing:-.03em;line-height:1.05}
h1 .dot{color:var(--coral)}
.subhead{font-size:clamp(18px,3vw,24px);color:var(--secondary);margin-top:22px;max-width:620px}
.cta{margin-top:34px;font-size:17px;font-weight:600;color:var(--coral-text)}
.badge{height:52px;margin-top:34px}
.how{padding:64px 0;border-top:1px solid var(--divider)}
h2{font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--secondary);margin-bottom:36px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.step .label{font-size:14px;font-weight:700;color:var(--coral-text)}
.step h3{font-size:26px;font-weight:800;letter-spacing:-.02em;color:var(--sky);margin:6px 0 10px}
.step p{font-size:16px;color:var(--ink)}
.where{padding:72px 0 88px;max-width:600px;margin:0 auto;text-align:center}
.where .rule{width:44px;height:3px;background:var(--coral);margin:0 auto 28px;border-radius:2px}
.where p{font-size:17px}
footer{border-top:1px solid var(--divider);padding:30px 24px 44px;max-width:960px;margin:0 auto;
  display:flex;gap:24px;align-items:center;flex-wrap:wrap;font-size:14px;color:var(--secondary)}
footer nav{display:flex;gap:20px}
footer a{color:var(--secondary);text-decoration:none;font-weight:600}
footer a:hover{color:var(--ink)}
.copyright{margin-left:auto}
@media (max-width:720px){
  .steps{grid-template-columns:1fr}
  .hero{padding:72px 0 64px}
  footer{flex-direction:column;align-items:flex-start}
  .copyright{margin-left:0}
}
