
:root{
  --bg:#ffffff;--surface:#f8fafc;--surface-2:#eef2f7;--text:#0f172a;--muted:#475569;--line:#dbe3ee;
  --brand:#b91c1c;--brand-dark:#7f1d1d;--brand-soft:#fee2e2;--ok:#14532d;
  --radius:22px;--shadow:0 18px 45px rgba(15,23,42,.08);--max:1180px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);line-height:1.65}
img{max-width:100%;height:auto}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}
.container{width:min(var(--max), calc(100% - 2rem));margin:auto}
.topbar{background:#111827;color:#fff;font-size:.95rem}.topbar .container{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.72rem 0}.topbar a{color:#fff}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav-wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0}
.brand{display:flex;align-items:center;gap:.8rem;color:var(--text);font-weight:800;letter-spacing:.02em}
.brand img{width:52px;height:52px;border-radius:14px;box-shadow:var(--shadow);object-fit:contain;background:transparent;display:block}
.brand span{font-size:1.18rem;font-weight:800;letter-spacing:.04em}
nav ul{display:flex;gap:1rem;list-style:none;padding:0;margin:0;align-items:center;flex-wrap:wrap}
nav a{color:var(--text);font-weight:600}
.btn,.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.96rem 1.22rem;border-radius:999px;font-weight:700;border:1px solid transparent;text-decoration:none;cursor:pointer}
.btn{background:var(--brand);color:#fff;box-shadow:var(--shadow)}.btn:hover{background:var(--brand-dark);text-decoration:none}
.btn-outline{background:#fff;color:var(--text);border-color:var(--line)}.btn-outline:hover{background:var(--surface);text-decoration:none}
.mobile-toggle{display:none}
.hero{padding:4.8rem 0 3rem;background:linear-gradient(180deg,#fff, #fff7f7 60%, #fff)}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:center}
.kicker{display:inline-block;padding:.42rem .8rem;border-radius:999px;background:var(--brand-soft);color:var(--brand-dark);font-weight:700;font-size:.92rem}
h1,h2,h3{line-height:1.15;margin:0 0 .7rem}h1{font-size:clamp(2.2rem,5vw,4rem)}h2{font-size:clamp(1.5rem,3vw,2.3rem)}h3{font-size:1.15rem}
.lead{font-size:1.12rem;color:var(--muted);max-width:62ch}
.hero-card,.card,.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.hero-card{padding:1.3rem}
.hero-list,.checklist,.list-clean{margin:0;padding:0;list-style:none}
.hero-list li,.checklist li,.list-clean li{padding-left:1.5rem;position:relative;margin:.55rem 0}
.hero-list li:before,.checklist li:before,.list-clean li:before{content:"✓";position:absolute;left:0;top:0;color:var(--brand);font-weight:800}
section{padding:4rem 0}.band{background:var(--surface)}
.grid-2,.grid-3,.grid-4,.two-col{display:grid;gap:1.25rem}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.two-col{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}
.card{padding:1.3rem}.form-card{padding:1.5rem}
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.3rem}
.metric{padding:1rem;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.metric strong{display:block;font-size:1.35rem}
.page-hero{padding:3rem 0 2.2rem;background:linear-gradient(180deg,#fff,#fff7f7)}
.breadcrumbs{font-size:.95rem;color:var(--muted);margin-bottom:1rem}
.notice{background:#fffbeb;border:1px solid #fcd34d;border-radius:16px;padding:1rem}
.sidebar-box{position:sticky;top:96px}
.service-cards .card h3,.location-cards .card h3{margin-bottom:.4rem}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.form-grid .full{grid-column:1/-1}
input,select,textarea{width:100%;padding:1rem;border:1px solid var(--line);border-radius:16px;font:inherit;background:#fff;color:var(--text)}
textarea{min-height:180px;resize:vertical}
footer{background:#0f172a;color:#cbd5e1;padding:3rem 0 2rem}
footer a{color:#fff}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:1.5rem}
.small{font-size:.92rem;color:#94a3b8}
.logo-note{font-size:.88rem;color:var(--muted);margin-top:.6rem}
@media (max-width:960px){
  .hero-grid,.two-col,.footer-grid,.grid-4,.grid-3,.grid-2,.metrics{grid-template-columns:1fr}
  .mobile-toggle{display:inline-flex}
  nav ul{display:none;position:absolute;right:1rem;top:78px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem;box-shadow:var(--shadow);width:min(320px,calc(100vw - 2rem))}
  nav ul.open{display:flex;flex-direction:column;align-items:stretch}
  .form-grid{grid-template-columns:1fr}
}

.brand{white-space:nowrap}
.footer-brand .brand img{width:48px;height:48px}
