
@font-face{font-family:Recoleta;src:url("fonts/Recoleta-RegularDEMO.otf") format("opentype");font-display:swap}
:root{--blue:#137bc1;--dark:#123f7d;--light:#f5f8fb;--text:#22303d}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;line-height:1.55}
a{color:inherit}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);box-shadow:0 2px 14px rgba(0,0,0,.08)}
.nav{max-width:1120px;margin:auto;min-height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.brand{font-weight:800;color:var(--dark);text-decoration:none;font-size:1.15rem}.nav-links{display:flex;gap:28px;align-items:center}.nav-links a{text-decoration:none;font-weight:700;font-size:.92rem}.nav-links a:hover,.nav-links a[aria-current="page"]{color:var(--blue)}.menu-btn{display:none;border:0;background:none;font-size:1.8rem}
.hero{min-height:68vh;background:#fff url("images/Disenosintitulo.png") center/cover no-repeat}
.section{padding:76px 24px}.section.alt{background:var(--light)}.container{max-width:1120px;margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--blue);font-weight:800;font-size:.78rem}.section h2{font-family:Recoleta,Georgia,serif;color:var(--dark);font-size:clamp(2rem,4vw,3rem);margin:8px 0 14px}.intro{max-width:760px;color:#5b6874;font-size:1.06rem}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}.card{background:#fff;border-radius:16px;padding:26px;box-shadow:0 8px 28px rgba(18,63,125,.09);border:1px solid #e7edf3}.card img{width:76px;height:76px;object-fit:contain}.card h3{color:var(--dark);font-size:1.12rem;text-transform:capitalize}.card p{color:#5e6b76;margin-bottom:0}.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}.contact-list{display:grid;gap:18px;margin-top:28px}.contact-item{display:flex;gap:14px;align-items:center}.contact-item img{width:30px;height:30px;object-fit:contain}.contact-item a{text-decoration:none;color:var(--dark);font-weight:700}.contact-box{background:var(--dark);color:#fff;padding:34px;border-radius:18px}.contact-box h3{font-size:1.6rem;margin-top:0}.button-group{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.btn{display:inline-block;background:var(--blue);color:#fff;text-decoration:none;padding:13px 20px;border-radius:9px;font-weight:800}.btn-whatsapp{background:#25d366;color:#082b17}.footer{background:#0b2d59;color:#dbe6f2;text-align:center;padding:28px 24px}.page-hero{padding:92px 24px 58px;background:linear-gradient(135deg,#0f3d78,#1683cb);color:#fff}.page-hero .container{max-width:1120px}.page-hero h1{font-family:Recoleta,Georgia,serif;font-size:clamp(2.2rem,5vw,4rem);margin:0}.page-hero p{max-width:700px;font-size:1.1rem}
@media(max-width:800px){.menu-btn{display:block}.nav-links{display:none;position:absolute;top:74px;left:0;right:0;background:#fff;padding:20px 24px;flex-direction:column;align-items:flex-start;box-shadow:0 10px 18px rgba(0,0,0,.09)}.nav-links.open{display:flex}.grid{grid-template-columns:1fr}.contact-wrap{grid-template-columns:1fr}.hero{min-height:52vh;background-size:cover;background-position:center}.section{padding:58px 20px}}

/* Versión 1.3: alineación centrada y optimización del banner en móviles */
main .container,
.page-hero .container,
.card,
.contact-box {
  text-align: center;
}

.intro,
.page-hero p {
  margin-left: auto;
  margin-right: auto;
}

.card img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.contact-list {
  justify-items: center;
}

.contact-item {
  justify-content: center;
  text-align: center;
}

.button-group {
  justify-content: center;
}

@media (max-width: 800px) {
  .hero {
    min-height: 0;
    aspect-ratio: 15 / 7;
    background-size: contain;
    background-position: center center;
    background-color: #fff;
  }

  .nav-links {
    align-items: center;
    text-align: center;
  }
}
