/* GCFI · estilos de la estructura por páginas (inicio corto, catálogo, contacto) */
.phero.sm{min-height:min(56svh,520px)}
.phero.xs{min-height:min(44svh,400px)}
.phero.xs .wrap,.phero.sm .wrap{padding-bottom:56px}
.phero.xs h1{font-size:clamp(2.2rem,4.6vw,3.6rem)}

/* Banda de catálogo (inicio) */
.band{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;padding:clamp(32px,5vw,60px);border-radius:12px;background:var(--deep) url("../../img/repuestos-hero.webp") center/cover;position:relative;isolation:isolate;overflow:hidden;color:#fff}
.band::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,22,36,.95) 30%,rgba(6,22,36,.6));z-index:-1}
.band .kicker{color:var(--frost)}
.band .lede{color:var(--muted-d);margin-top:14px}

/* Clientes (inicio) */
.logos-title{font-size:.8rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}
.logos{list-style:none;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.logos li{padding:22px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--display);font-weight:700;color:#3a4d61;letter-spacing:-.01em}

/* Cierre */
.closing{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(40px,6vw,96px);align-items:center}
.closing>*{min-width:0}
.closing-info{list-style:none;display:grid;border-top:1px solid var(--line-d)}
.closing-info li{display:grid;grid-template-columns:28px 1fr;gap:14px;padding:18px 0;border-bottom:1px solid var(--line-d)}
.closing-info svg{width:20px;height:20px;color:var(--frost);margin-top:3px}
.closing-info b{display:block;font-weight:600}
.closing-info span{color:var(--muted-d);font-size:.93rem}

/* Enlace a productos (páginas de solución) */
.prod-link{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding:24px 28px;border-radius:10px;background:var(--ice);border:1px solid #d6e8f3;transition:border-color .2s}
.prod-link:hover{border-color:var(--brand-2)}
.prod-link b{display:block;font-family:var(--display);font-size:1.15rem;letter-spacing:-.01em;color:var(--ink)}
.prod-link span:first-child{color:var(--muted);font-size:.95rem}

/* Portada del catálogo */
.cat-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cat-tile{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;transition:border-color .2s,box-shadow .3s,transform .3s var(--ease)}
.cat-tile:hover{border-color:#bfd3e2;box-shadow:0 18px 40px rgba(10,34,54,.09);transform:translateY(-3px)}
.cat-art{aspect-ratio:16/9;display:grid;place-items:center;background:radial-gradient(circle at 30% 20%,#fff 0%,var(--ice) 75%);color:var(--brand)}
.cat-art svg{width:34%;height:auto}
.cat-info{padding:22px 24px 26px}
.cat-info h2{font-size:1.35rem;font-weight:600;letter-spacing:-.02em}
.cat-info p{color:var(--muted);font-size:.93rem;margin:8px 0 16px}
.how{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:h}
.how li{padding:26px 24px 26px 72px;border-radius:10px;background:var(--paper);position:relative}
.how li::before{counter-increment:h;content:counter(h);position:absolute;left:24px;top:24px;width:32px;height:32px;border-radius:50%;background:var(--deep);color:#fff;display:grid;place-items:center;font-weight:600;font-size:.9rem}
.how b{display:block;font-family:var(--display);font-size:1.08rem;margin-bottom:4px}
.how span{color:var(--muted);font-size:.93rem}
.help{margin-top:28px;color:var(--muted)}

/* Página de categoría */
.chip{display:inline-flex;align-items:center}
.chip[aria-current="page"]{background:var(--deep);border-color:var(--deep);color:#fff}
.cat-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:48px;padding-top:24px;border-top:1px solid var(--line);color:var(--muted)}

/* Contacto */
.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(32px,5vw,72px);align-items:start}
.contact-grid>*{min-width:0}
.contact-grid form.qf{border:1px solid var(--line);box-shadow:0 20px 50px rgba(10,34,54,.07)}
.quick{display:grid;gap:12px}
.quick a{display:flex;align-items:center;gap:16px;padding:18px 20px;border:1px solid var(--line);border-radius:10px;transition:border-color .2s}
.quick a:hover{border-color:var(--brand-2)}
.quick svg{width:24px;height:24px;color:var(--brand-2);flex:none}
.quick span{color:var(--muted);font-size:.95rem;overflow-wrap:anywhere;min-width:0}
.quick b{display:block;color:var(--ink);font-weight:600}
.quick .quick-wa{background:var(--wa);border-color:var(--wa)}
.quick .quick-wa svg,.quick .quick-wa span,.quick .quick-wa b{color:#fff}
.map{position:relative;border-radius:12px;overflow:hidden;border:1px solid var(--line);height:420px}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.map .btn{position:absolute;left:20px;bottom:20px}

@media (max-width:1100px){.cat-tiles{grid-template-columns:repeat(2,1fr)}}
@media (max-width:860px){
  .closing,.contact-grid{grid-template-columns:1fr}
  .how{grid-template-columns:1fr}
}
@media (max-width:600px){
  .cat-tiles{grid-template-columns:1fr}
  .map{height:340px}
}
