
:root { --primary:#0ea5e9; --dark:#0b1220; --muted:#6b7280; --bg:#f8fafc; --card:#ffffff; }
*{box-sizing:border-box} body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--dark);background:var(--bg)}
a{color:var(--primary);text-decoration:none} .container{width:min(1100px,92%);margin:0 auto}
.row{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}
.hero{padding:4rem 0;background:linear-gradient(180deg,#e0f2fe,#fff)}
.hero h1{font-size:clamp(2rem,4vw,3rem);margin:0 0 .75rem} .hero p{font-size:1.05rem;color:var(--muted);margin:0 0 1rem}
.btn{display:inline-block;padding:.75rem 1rem;background:var(--primary);color:#fff;border-radius:10px;font-weight:600}
.btn.outline{background:transparent;border:2px solid var(--primary);color:var(--primary)}
.card{background:var(--card);border-radius:14px;box-shadow:0 6px 18px rgba(2,8,23,.08);padding:1.25rem}
.site-header{background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10} .site-header .brand{font-weight:800;font-size:1.25rem}
.nav a{margin:0 .5rem;color:#111827} .site-footer{margin-top:3rem;padding:2rem 0;background:#f1f5f9;border-top:1px solid #e5e7eb}
.legal{margin-top:1rem;text-align:center;color:var(--muted)} .section{padding:2.5rem 0} .section h2{margin:0 0 1rem}
.pricing-table{width:100%;border-collapse:collapse} .pricing-table th,.pricing-table td{border:1px solid #e5e7eb;padding:.65rem;text-align:left}
.badge{display:inline-block;background:#e0f2fe;color:#0369a1;padding:.25rem .5rem;border-radius:6px;font-size:.8rem;font-weight:600}
.badges{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0 0} .badges .pill{background:#ecfeff;color:#0c4a6e;padding:.35rem .6rem;border-radius:999px;font-size:.85rem;font-weight:700}
.map-embed iframe{width:100%;height:320px;border:0;border-radius:12px}
form .field{margin-bottom:.9rem} label{font-weight:600;display:block;margin-bottom:.35rem}
input,select,textarea{width:100%;padding:.65rem;border:1px solid #cbd5e1;border-radius:10px;background:#fff}
input[type=submit]{cursor:pointer} .notice{font-size:.9rem;color:var(--muted)}
.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(2,8,23,.5)} .modal.active{display:flex}
.modal .modal-card{background:#fff;padding:1rem;border-radius:12px;width:min(700px,92%);max-height:80vh;overflow:auto}
.close{float:right;cursor:pointer;font-weight:700} figure{margin:0} .hero .contact-line{font-weight:700}
.hero-image{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;display:block}
.tos h1,.tos h2{margin-top:1rem} .tos p{line-height:1.6;color:#334155}
.city-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.city-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1rem}
.city-card h3{margin:.25rem 0}
.thanks{min-height:50vh;display:flex;align-items:center;justify-content:center;text-align:center}
.city-hero{padding:2rem 0;background:#fff}
.faq dt{font-weight:700;margin-top:.75rem} .faq dd{margin:0 0 .75rem 0;color:#334155}
