:root{
  --primary:#D32F2F;
  --black:#000000;
  --text:#222;
  --muted:#6b7280;
  --bg:#ffffff;
  --card:#f7f7f8;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:Poppins, Montserrat, system-ui, -apple-system, Segoe UI, Roboto, 'Helvetica Neue', Arial, 'Noto Sans', 'Apple Color Emoji', 'Segoe UI Emoji';
  color:var(--text);
  background:var(--bg);
  line-height:1.6;
}
.container{width:min(1150px,92%);margin-inline:auto}

.site-header{
  position:sticky; top:0; z-index:50;
  background:#fff; border-bottom:1px solid #eee;
}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0}
.brand img{height:48px;width:auto}
.site-title{font-weight:700;color:var(--black);text-decoration:none;font-size:1.25rem}
.site-nav ul{list-style:none;display:flex;gap:22px;margin:0;padding:0;align-items:center}
.site-nav a{color:var(--black);text-decoration:none;font-weight:600}
.btn{display:inline-block;padding:12px 18px;border-radius:10px;text-decoration:none;font-weight:600}
.btn-small{padding:8px 12px;border-radius:8px;background:var(--primary);color:#fff}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{filter:brightness(0.95)}

.nav-toggle{display:none;background:none;border:0;cursor:pointer}
.nav-toggle span{display:block;width:24px;height:2px;background:#111;margin:5px 0}

.hero{
  background: radial-gradient(1200px 400px at -10% -20%, rgba(211,47,47,.20), transparent 40%), linear-gradient(180deg,#0e0f10,#1a1b1f);
  color:#fff; padding:120px 0 110px; text-align:center;
}
.hero h1{font-size:clamp(28px,6vw,48px);line-height:1.15;margin:0 0 16px}
.hero p{color:#d0d6e1;margin:0 0 26px;font-size:clamp(16px,2.4vw,20px)}

section{padding:64px 0}
h2{font-size:clamp(24px,4.5vw,36px);margin:0 0 24px;text-align:center}

.services .cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media (max-width:980px){.services .cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.services .cards{grid-template-columns:1fr}}

.card{background:var(--card);border:1px solid #ececec;border-radius:14px;padding:22px;box-shadow:0 6px 18px rgba(0,0,0,.04)}
.card .icon{font-size:28px}
.card h3{margin:8px 0 8px}
.card p{color:#444;margin:0}

.about .about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center}
@media (max-width:860px){.about .about-grid{grid-template-columns:1fr}}
.about-panel{background:#0f1114;color:#e6e6e6;border-radius:14px;padding:20px 22px}
.about-panel ul{margin:0;padding-left:18px}
.about-panel li{margin:8px 0}

.contact .contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:22px}
@media (max-width:860px){.contact .contact-grid{grid-template-columns:1fr}}
.contact .contact-card{background:var(--card);border:1px solid #ececec;border-radius:14px;padding:20px}

.site-footer{background:#0e0f10;color:#d1d1d1;padding:36px 0}
.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:10px}
@media (max-width:700px){.footer-grid{grid-template-columns:1fr}}
.copy{text-align:center;margin:0;color:#aaa;font-size:14px}

.brand-link{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
}

.brand-logo{
  height:48px;      /* ajusta a tu preferencia: 40–56px */
  width:auto;
  display:block;
}

.site-title{
  font-weight:700;
  color:#000;       /* cambia si usas header oscuro */
  font-size:1.25rem;
  line-height:1;
}