:root{
  --primary:#d71920;
  --dark:#111111;
  --muted:#6c757d;
  --light:#f8f9fa;
}
html{scroll-behavior:smooth}
body{
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:#1e1e1e;
  line-height:1.65;
}
.navbar-brand img{height:58px;width:auto}
.topbar{
  background:var(--dark);
  color:#fff;
  font-size:.92rem;
}
.topbar a{color:#fff;text-decoration:none}
.hero{
  background: radial-gradient(circle at top left, rgba(215,25,32,.35), transparent 35%), linear-gradient(135deg, #151515 0%, #1f1f1f 45%, #0f0f0f 100%);
  color:#fff;
  padding:120px 0 90px;
}
.page-hero{
  background: radial-gradient(circle at right top, rgba(215,25,32,.28), transparent 30%), linear-gradient(135deg, #181818 0%, #232323 55%, #101010 100%);
  color:#fff;
  padding:90px 0 70px;
}
.hero-card,.info-card,.service-card,.contact-card{
  background:#fff;
  border:none;
  border-radius:1rem;
  box-shadow:0 1rem 2rem rgba(0,0,0,.08);
}
.section-title{font-weight:800;letter-spacing:-.02em}
.badge-soft{
  background:rgba(215,25,32,.1);
  color:var(--primary);
  border:1px solid rgba(215,25,32,.12);
  font-weight:700;
}
.icon-wrap{
  width:56px;height:56px;border-radius:16px;
  display:grid;place-items:center;
  background:rgba(215,25,32,.1);color:var(--primary);
  font-size:1.35rem;
}
.cta-strip{
  background:linear-gradient(90deg,var(--primary),#aa1117);
  color:#fff;
  border-radius:1.2rem;
}
.brand-pill{
  border:1px solid #e9ecef;
  border-radius:999px;
  padding:.75rem 1rem;
  background:#fff;
  text-align:center;
  font-weight:700;
}
footer{
  background:#0c0c0c;
  color:#d6d6d6;
}
footer a{color:#fff;text-decoration:none}
.map-frame{
  width:100%;
  min-height:420px;
  border:0;
  border-radius:1rem;
}
.list-check{padding-left:0;list-style:none}
.list-check li{margin-bottom:.7rem;padding-left:1.9rem;position:relative}
.list-check li::before{
  content:'✔';position:absolute;left:0;top:0;color:var(--primary);font-weight:700;
}
.shadow-soft{box-shadow:0 1rem 2rem rgba(0,0,0,.07)}
.bg-soft{background:#fafafa}
.btn-primary{
  background:var(--primary);border-color:var(--primary);
}
.btn-primary:hover,.btn-primary:focus{
  background:#b5141b;border-color:#b5141b;
}
.text-primary{color:var(--primary)!important}
.whatsapp-float{
  position:fixed;right:18px;bottom:18px;z-index:999;
}
.whatsapp-float a{
  width:58px;height:58px;border-radius:50%;display:grid;place-items:center;
  background:#25d366;color:#fff;font-size:1.6rem;text-decoration:none;
  box-shadow:0 .75rem 1.5rem rgba(0,0,0,.18);
}
@media (max-width:991.98px){
  .navbar-brand img{height:48px}
  .hero{padding:100px 0 70px}
}
