:root{
  --bg:#0b1220;
  --ink:#0f172a;
  --muted:#475569;
  --card:#ffffff;
  --soft:#f1f5f9;
  --accent:#16a34a;
  --accent2:#0ea5e9;
  --border:#e2e8f0;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: Arial, sans-serif;
  color: var(--ink);
  line-height: 1.7;
  background: #ffffff;
}

.container{
  width:min(1100px, 92%);
  margin-inline:auto;
}

.site-header{
  background: var(--bg);
  color:#fff;
  padding: 28px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.site-header h1{
  margin:0 0 6px 0;
  font-size: 32px;
  letter-spacing: .2px;
}
.subhead{margin:0;color:rgba(255,255,255,.85)}
.site-header .container{
  display:flex;
  gap:20px;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
}
.header-actions{
  text-align:right;
}
.header-actions .mini{
  margin:8px 0 0 0;
  color:rgba(255,255,255,.75);
  font-size: 14px;
}

a{color:var(--accent2)}
a:hover{opacity:.9}

.cta{
  display:inline-block;
  background: var(--accent);
  color:#fff;
  text-decoration:none;
  padding: 12px 18px;
  border-radius: 10px;
  font-weight: 700;
}
.cta.big{
  padding: 14px 22px;
  font-size: 18px;
}

.hero{padding: 44px 0 18px 0;}
.section{padding: 42px 0;}
.section.alt{background: var(--soft); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);}

h2{
  font-size: 28px;
  margin: 0 0 14px 0;
}
h3{
  font-size: 20px;
  margin: 18px 0 8px 0;
}
p{margin: 0 0 14px 0; color: var(--ink);}
p.strong{font-weight:700}
ol.steps{padding-left: 22px}
.bullets{padding-left: 20px}
.bullets li{margin: 8px 0}

.card-row{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 18px;
}
.card{
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 16px 16px 14px 16px;
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.06);
}
.card h3{margin-top:0}

.grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 16px;
}
.grid-item{
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 16px;
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.06);
}
.faq{
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 16px;
  margin: 12px 0;
}
.faq h3{margin:0 0 8px 0}

.map-wrap{
  margin-top: 14px;
  border-radius: 14px;
  overflow:hidden;
  border: 1px solid var(--border);
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.06);
}
.map-wrap iframe{width:100%; height: 450px; display:block}

.social{padding-left: 18px}
.social li{margin: 8px 0}

.cta-band{
  background: linear-gradient(135deg, rgba(22,163,74,.12), rgba(14,165,233,.10));
  border-top: 1px solid var(--border);
}

.site-footer{
  padding: 26px 0;
  background: #0b1220;
  color: rgba(255,255,255,.92);
}
.site-footer a{color:#fff}
.site-footer p{color: rgba(255,255,255,.88)}
.site-footer .fine{color: rgba(255,255,255,.72); font-size: 13px}

@media (max-width: 900px){
  .header-actions{text-align:left}
  .card-row{grid-template-columns: 1fr}
  .grid{grid-template-columns: 1fr}
}