/* ─────────────────────────────────────────────────────────────────────────
   AE ENERGY SOLUTIONS — sistema de diseño
   Motores, bombas, transformadores y mantenimiento industrial · MX/US/CL.
   Paleta y tipografía tomadas del catálogo de la propia empresa (verde
   #1f9d3a, marino #0f2a44, Anton + Barlow Condensed para titulares — el
   mismo tono "letrero de planta" que ya usan en su material impreso).
   Estático, sin dependencias externas, fuentes auto-hospedadas.
   ───────────────────────────────────────────────────────────────────── */

@font-face{font-family:'Anton';src:url('../fonts/Anton-400-latin.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+20AC,U+2122;}
@font-face{font-family:'Anton';src:url('../fonts/Anton-400-latin-ext.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF;}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/BarlowCondensed-600-latin.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+20AC,U+2122;}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/BarlowCondensed-600-latin-ext.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF;}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/BarlowCondensed-700-latin.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+20AC,U+2122;}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/BarlowCondensed-700-latin-ext.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF;}
@font-face{font-family:'Barlow';src:url('../fonts/Barlow-400-latin.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+20AC,U+2122;}
@font-face{font-family:'Barlow';src:url('../fonts/Barlow-400-latin-ext.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF;}
@font-face{font-family:'Barlow';src:url('../fonts/Barlow-600-latin.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+20AC,U+2122;}
@font-face{font-family:'Barlow';src:url('../fonts/Barlow-600-latin-ext.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF;}

:root{
  --verde:      #1f9d3a;
  --verde-osc:  #15702a;
  --verde-luz:  #e9f7ec;
  --marino:     #0f2a44;
  --marino-2:   #163a5c;
  --papel:      #f6f8f7;
  --panel:      #ffffff;
  --tinta:      #16202a;
  --gris:       #58656f;
  --gris-claro: #8a96a0;
  --linea:      #e1e6e4;
  --ambar:      #c97a1f;   /* solo para el aviso "sin backend" del formulario */

  --f-display: 'Anton', 'Arial Narrow', sans-serif;
  --f-titulo:  'Barlow Condensed', 'Arial Narrow', sans-serif;
  --f-ui:      'Barlow', 'Segoe UI', Arial, sans-serif;

  --m: 6vw;
  --radio: 10px;
  --sombra: 0 10px 30px -12px rgba(15,42,68,.18);
  --ease: cubic-bezier(.22,1,.36,1);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
/* El menú móvil (.nav__links) vive fuera de pantalla vía transform:translateX
   sobre position:fixed — algunos motores igual cuentan esa caja trasladada
   para el overflow scrolleable del documento. overflow-x:hidden en html/body
   lo cierra sin recortar nada visible, porque todo el contenido real ya vive
   dentro de .envolt (max-width) o de su propio contenedor con scroll
   (.tabla-scroll). */
html,body{overflow-x:clip;}
body{
  margin:0;
  background:var(--papel);
  color:var(--tinta);
  font-family:var(--f-ui);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;}
h1,h2,h3,h4{margin:0;font-family:var(--f-titulo);font-weight:700;letter-spacing:.01em;}
p{margin:0 0 1em;color:var(--gris);}
ul{margin:0;padding:0;list-style:none;}
.envolt{max-width:1180px;margin:0 auto;padding:0 var(--m);}
.solo-lector{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.saltar{position:absolute;left:-999px;top:0;background:var(--marino);color:#fff;padding:.8em 1.4em;z-index:200;border-radius:0 0 8px 0;}
.saltar:focus{left:0;}
:focus-visible{outline:3px solid var(--verde);outline-offset:2px;}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}}

/* ── Botones ─────────────────────────────────────────────────────────── */
.btn{
  display:inline-flex;align-items:center;gap:.55em;
  font-family:var(--f-titulo);font-weight:700;font-size:17px;letter-spacing:.03em;text-transform:uppercase;
  padding:.85em 1.6em;border-radius:7px;border:2px solid transparent;
  text-decoration:none;cursor:pointer;transition:transform .18s var(--ease),box-shadow .18s var(--ease),background .18s var(--ease);
  line-height:1.1;
}
.btn svg{width:1.1em;height:1.1em;flex:none;}
.btn--verde{background:var(--verde);color:#fff;}
.btn--verde:hover{background:var(--verde-osc);transform:translateY(-2px);box-shadow:0 10px 22px -8px rgba(31,157,58,.55);}
.btn--marino{background:var(--marino);color:#fff;}
.btn--marino:hover{background:var(--marino-2);transform:translateY(-2px);box-shadow:0 10px 22px -8px rgba(15,42,68,.45);}
.btn--linea{background:transparent;border-color:rgba(255,255,255,.55);color:#fff;}
.btn--linea:hover{background:rgba(255,255,255,.12);}
.btn--linea-osc{background:transparent;border-color:var(--marino);color:var(--marino);}
.btn--linea-osc:hover{background:var(--marino);color:#fff;}
.btn--wa{background:#25D366;color:#053b1f;}
.btn--wa:hover{background:#1ebc5a;transform:translateY(-2px);box-shadow:0 10px 22px -8px rgba(37,211,102,.55);}
.btn--sm{font-size:14.5px;padding:.65em 1.2em;}
.btn--full{width:100%;justify-content:center;}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none !important;box-shadow:none !important;}

/* ── Barra de utilidad + navegación ─────────────────────────────────── */
.utilbar{background:var(--marino);color:#cfe0ee;font-family:var(--f-ui);font-size:13px;}
.utilbar .envolt{display:flex;justify-content:space-between;align-items:center;padding:.5em var(--m);gap:1em;flex-wrap:wrap;}
.utilbar a{text-decoration:none;color:#e7f0f7;}
.utilbar a:hover{color:#fff;}
.utilbar__datos{display:flex;gap:1.4em;flex-wrap:wrap;}
.utilbar__datos span{display:inline-flex;align-items:center;gap:.4em;}
.utilbar__datos svg{width:14px;height:14px;opacity:.85;}
.utilbar__idioma a{font-weight:700;letter-spacing:.04em;}
.utilbar__idioma .activo{color:var(--verde);}
.utilbar__idioma span{opacity:.5;margin:0 .3em;}

header.nav{position:sticky;top:0;z-index:100;background:#fff;box-shadow:0 1px 0 var(--linea);}
.nav__fila{display:flex;align-items:center;justify-content:space-between;gap:1.2em;padding:.7em var(--m);max-width:1180px;margin:0 auto;}
.nav__marca{display:flex;align-items:center;gap:.65em;text-decoration:none;flex:none;}
.nav__marca img{width:46px;height:46px;border-radius:50%;}
.nav__marca-txt{font-family:var(--f-titulo);font-weight:700;font-size:19px;color:var(--marino);line-height:1.05;}
.nav__marca-txt b{color:var(--verde);}
.nav__marca-txt small{display:block;font-family:var(--f-ui);font-weight:600;font-size:10.5px;letter-spacing:.14em;color:var(--gris-claro);text-transform:uppercase;}
.nav__links{display:flex;align-items:center;gap:1.65em;font-family:var(--f-titulo);font-weight:600;font-size:16px;letter-spacing:.01em;}
.nav__links a{text-decoration:none;color:var(--marino);padding:.3em 0;border-bottom:2px solid transparent;transition:border-color .15s,color .15s;}
.nav__links a:hover,.nav__links a[aria-current="page"]{color:var(--verde);border-color:var(--verde);}
.nav__cta{display:flex;gap:.6em;flex:none;}
.nav__burger{display:none;background:none;border:0;padding:.4em;cursor:pointer;}
.nav__burger span{display:block;width:24px;height:2.5px;background:var(--marino);margin:5px 0;border-radius:2px;}

@media (max-width:900px){
  .nav__links{position:fixed;top:64px;left:0;right:0;width:100%;max-width:100vw;bottom:0;box-sizing:border-box;background:#fff;flex-direction:column;align-items:flex-start;padding:1.6em var(--m);gap:0;font-size:20px;overflow-y:auto;
    transform:translateX(100%);transition:transform .28s var(--ease);}
  .nav__links[data-abierto]{transform:translateX(0);}
  .nav__links a{width:100%;padding:.75em 0;border-bottom:1px solid var(--linea);}
  .nav__cta{display:none;}
  .nav__burger{display:block;}
  .utilbar__datos span:nth-child(2){display:none;}
}

/* ── Franja de marcas ────────────────────────────────────────────────── */
.marcas{background:var(--panel);border-bottom:1px solid var(--linea);padding:1.3em 0;}
.marcas__fila{display:flex;justify-content:center;align-items:center;gap:2.4em;flex-wrap:wrap;font-family:var(--f-titulo);font-weight:700;font-size:19px;color:var(--gris);letter-spacing:.02em;}
.marcas__fila b{color:var(--marino);font-weight:700;}

/* ── Hero ────────────────────────────────────────────────────────────── */
.hero{position:relative;overflow:hidden;background:var(--marino);color:#fff;padding:clamp(48px,8vw,84px) 0 0;}
.hero::before{content:'';position:absolute;inset:0;background:
  linear-gradient(120deg,var(--marino) 0%,var(--marino) 42%,var(--verde-osc) 43%,var(--verde) 55%,transparent 56%),
  radial-gradient(720px 420px at 88% 8%,rgba(31,157,58,.28),transparent 65%);
  opacity:.9;pointer-events:none;}
.hero__envolt{position:relative;z-index:1;}
.hero__chip{display:inline-flex;align-items:center;gap:.5em;font-family:var(--f-titulo);font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#bfe8c9;border:1px solid rgba(191,232,201,.4);border-radius:99px;padding:.4em 1em;}
.hero h1{font-family:var(--f-display);font-weight:400;text-transform:uppercase;font-size:clamp(38px,6vw,68px);line-height:.98;margin:.4em 0 .3em;text-wrap:balance;letter-spacing:.005em;}
.hero h1 em{font-style:normal;color:var(--verde);}
.hero__baja{font-size:18px;color:#d7e3ec;max-width:56ch;margin:0 0 1.6em;}
.hero__acciones{display:flex;gap:.9em;flex-wrap:wrap;margin-bottom:2.4em;}
.hero__foto{display:block;width:100%;height:auto;border-radius:var(--radio) var(--radio) 0 0;}
.hero__foto-wrap{position:relative;z-index:1;border-radius:var(--radio) var(--radio) 0 0;overflow:hidden;box-shadow:0 -14px 40px -18px rgba(0,0,0,.35);}

/* Hero corto (páginas interiores, sin foto de producto) */
.hero--corto{padding-bottom:clamp(40px,6vw,64px);}
.hero--corto h1{font-size:clamp(32px,5.4vw,52px);}
.hero--corto .hero__baja{margin-bottom:0;}
.hero__miga{font-family:var(--f-ui);font-size:13px;color:#a9c2d6;margin-bottom:1em;}
.hero__miga a{color:#d7e3ec;text-decoration:none;}
.hero__miga a:hover{text-decoration:underline;}

/* ── Secciones / cabeceras ───────────────────────────────────────────── */
.sec{padding:clamp(48px,7vw,88px) 0;}
.sec--alt{background:var(--panel);}
.cab{max-width:760px;margin:0 0 2.4em;}
.cab--centro{margin-left:auto;margin-right:auto;text-align:center;}
.eti{display:inline-flex;align-items:center;gap:.5em;font-family:var(--f-titulo);font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--verde-osc);margin-bottom:.7em;}
.eti::before{content:'';width:22px;height:3px;background:var(--verde);border-radius:2px;}
.cab--centro .eti::before{display:none;}
.cab h2{font-size:clamp(28px,4vw,40px);color:var(--marino);text-transform:uppercase;text-wrap:balance;}
.cab h2 b{color:var(--verde);}
.cab p{font-size:17px;margin-top:.6em;}

/* ── Tarjetas de soluciones ──────────────────────────────────────────── */
.grid-sol{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
@media (max-width:900px){.grid-sol{grid-template-columns:repeat(2,1fr);}}
@media (max-width:620px){.grid-sol{grid-template-columns:1fr;}}
/* Variante de 4 columnas (franjas de beneficios/iconos). Clase aparte —y no
   un estilo inline— justo para que estos cortes de ancho sí puedan pisarla:
   un style="" en el HTML gana siempre sobre la media query de una clase,
   sin importar el ancho de pantalla, y eso fue lo que rompió el responsive
   la primera vez que se probó esto en móvil. */
.grid-sol--4{grid-template-columns:repeat(4,1fr);}
@media (max-width:760px){.grid-sol--4{grid-template-columns:repeat(2,1fr);}}
@media (max-width:420px){.grid-sol--4{grid-template-columns:1fr;}}
.tarjeta{background:var(--panel);border:1px solid var(--linea);border-radius:var(--radio);padding:1.8em 1.7em;transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s;}
.tarjeta:hover{transform:translateY(-4px);box-shadow:var(--sombra);border-color:transparent;}
.tarjeta__icono{width:52px;height:52px;border-radius:50%;background:var(--verde-luz);display:flex;align-items:center;justify-content:center;margin-bottom:1em;}
.tarjeta__icono svg{width:26px;height:26px;stroke:var(--marino);}
.tarjeta h3{font-size:21px;color:var(--marino);text-transform:uppercase;margin-bottom:.35em;}
.tarjeta p{font-size:15px;margin:0;}
.tarjeta a.tarjeta__enlace{display:inline-flex;align-items:center;gap:.4em;margin-top:.9em;font-family:var(--f-titulo);font-weight:700;font-size:14.5px;color:var(--verde-osc);text-decoration:none;text-transform:uppercase;letter-spacing:.03em;}
.tarjeta a.tarjeta__enlace svg{width:14px;height:14px;transition:transform .15s;}
.tarjeta a.tarjeta__enlace:hover svg{transform:translateX(3px);}

/* ── Cobertura (3 países) ────────────────────────────────────────────── */
.paises{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
@media (max-width:820px){.paises{grid-template-columns:1fr;}}
.pais{background:var(--panel);border:1px solid var(--linea);border-radius:var(--radio);overflow:hidden;}
.pais__foto{aspect-ratio:16/6.2;overflow:hidden;}
.pais__foto img{width:100%;height:100%;object-fit:cover;}
.pais__cuerpo{padding:1.5em 1.6em 1.7em;}
.pais__bandera{font-size:26px;line-height:1;margin-bottom:.35em;}
.pais h3{font-size:20px;color:var(--marino);text-transform:uppercase;margin-bottom:.4em;}
.pais p{font-size:14.5px;margin:0;}

/* ── Especificaciones (motores / bombas) ─────────────────────────────── */
.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;}
@media (max-width:860px){.spec-grid{grid-template-columns:1fr;}}
.spec{background:var(--panel);border:1px solid var(--linea);border-radius:var(--radio);padding:1.8em 1.9em;}
.spec__cab{display:flex;align-items:center;gap:.8em;margin-bottom:1em;}
.spec__cab .tarjeta__icono{margin:0;flex:none;}
.spec h3{font-size:22px;color:var(--marino);text-transform:uppercase;}
.spec h3 small{display:block;font-family:var(--f-ui);font-weight:600;font-size:13px;color:var(--gris);text-transform:none;letter-spacing:0;}
.spec ul{margin:1em 0;}
.spec ul li{display:flex;gap:.6em;align-items:flex-start;font-size:15px;color:var(--tinta);padding:.4em 0;border-top:1px solid var(--linea);}
.spec ul li:first-child{border-top:0;}
.spec ul li svg{width:16px;height:16px;flex:none;margin-top:.25em;stroke:var(--verde);}
.spec__destacado{display:flex;gap:14px;flex-wrap:wrap;margin-top:1.2em;}
.pastilla{background:var(--verde-luz);color:var(--verde-osc);font-family:var(--f-titulo);font-weight:700;font-size:13.5px;letter-spacing:.03em;padding:.5em .9em;border-radius:99px;}
.pastilla--marino{background:#eaf0f5;color:var(--marino);}

/* ── Tabla de especificaciones (bombas) ──────────────────────────────── */
.tabla-scroll{overflow-x:auto;border:1px solid var(--linea);border-radius:var(--radio);background:var(--panel);}
table.tabla-specs{width:100%;border-collapse:collapse;font-size:14.5px;min-width:640px;}
table.tabla-specs caption{caption-side:top;text-align:left;padding:1.1em 1.4em 0;font-family:var(--f-titulo);font-weight:700;font-size:15px;color:var(--marino);text-transform:uppercase;}
table.tabla-specs th{background:var(--marino);color:#fff;text-align:left;font-family:var(--f-titulo);font-weight:600;letter-spacing:.03em;text-transform:uppercase;font-size:12.5px;padding:.85em 1em;}
table.tabla-specs td{padding:.8em 1em;border-top:1px solid var(--linea);color:var(--tinta);}
table.tabla-specs tr:hover td{background:var(--verde-luz);}
table.tabla-specs td.num{font-variant-numeric:tabular-nums;white-space:nowrap;}
table.tabla-specs td.marca{font-weight:700;color:var(--marino);white-space:nowrap;}

/* ── Mantenimiento: lista numerada ───────────────────────────────────── */
.servicios{display:flex;flex-direction:column;gap:14px;}
.servicio{display:grid;grid-template-columns:56px 1fr;gap:1.3em;align-items:center;background:var(--panel);border:1px solid var(--linea);border-radius:var(--radio);padding:1.2em 1.4em;}
.servicio__num{width:40px;height:40px;border-radius:50%;background:var(--verde);color:#fff;font-family:var(--f-titulo);font-weight:700;font-size:18px;display:flex;align-items:center;justify-content:center;}
.servicio h3{font-size:18px;color:var(--marino);text-transform:uppercase;margin-bottom:.2em;}
.servicio p{font-size:14.5px;margin:0;}
@media (max-width:560px){.servicio{grid-template-columns:1fr;text-align:left;}.servicio__num{margin-bottom:.2em;}}

/* ── Formularios ─────────────────────────────────────────────────────── */
.form-panel{background:var(--panel);border:1px solid var(--linea);border-radius:var(--radio);padding:clamp(24px,4vw,40px);box-shadow:var(--sombra);}
.campo{margin-bottom:1.3em;}
.campo label{display:block;font-family:var(--f-titulo);font-weight:600;font-size:13.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--marino);margin-bottom:.45em;}
.campo .opc{color:var(--gris-claro);text-transform:none;font-weight:400;letter-spacing:0;}
.campo input,.campo select,.campo textarea{
  width:100%;font-family:var(--f-ui);font-size:16px;color:var(--tinta);
  background:#fff;border:1.5px solid var(--linea);border-radius:7px;padding:.75em .9em;
  transition:border-color .15s,box-shadow .15s;
}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:none;border-color:var(--verde);box-shadow:0 0 0 3px rgba(31,157,58,.15);}
.campo textarea{resize:vertical;min-height:110px;}
.campo-fila{display:grid;grid-template-columns:1fr 1fr;gap:1.1em;}
@media (max-width:560px){.campo-fila{grid-template-columns:1fr;}}
.campo-archivo{border:1.5px dashed var(--linea);border-radius:7px;padding:1.1em;text-align:center;background:#fbfcfb;cursor:pointer;transition:border-color .15s,background .15s;}
.campo-archivo:hover,.campo-archivo[data-arrastrando]{border-color:var(--verde);background:var(--verde-luz);}
.campo-archivo input{display:none;}
.campo-archivo__txt{font-size:14px;color:var(--gris);}
.campo-archivo__nombre{margin-top:.5em;font-family:var(--f-titulo);font-weight:600;font-size:14px;color:var(--verde-osc);}
.campo-error{color:#b3261e;font-size:13px;margin-top:.35em;display:none;}
.campo.inv input,.campo.inv select,.campo.inv textarea{border-color:#b3261e;}
.campo.inv .campo-error{display:block;}
.nota-form{background:#fdf3e6;border:1px solid #f0d3a3;color:#7a4c0f;border-radius:8px;padding:.9em 1.1em;font-size:13.5px;margin-bottom:1.5em;display:flex;gap:.7em;align-items:flex-start;}
.nota-form svg{width:18px;height:18px;flex:none;margin-top:.15em;stroke:var(--ambar);}

/* ── CTA final ───────────────────────────────────────────────────────── */
.cta-final{background:var(--marino);color:#fff;border-radius:var(--radio);padding:clamp(28px,5vw,50px);display:flex;justify-content:space-between;align-items:center;gap:2em;flex-wrap:wrap;position:relative;overflow:hidden;}
.cta-final::after{content:'';position:absolute;right:-40px;top:-40px;width:220px;height:220px;background:var(--verde);opacity:.18;border-radius:50%;}
.cta-final__txt{position:relative;z-index:1;max-width:480px;}
.cta-final h2{font-size:clamp(24px,3.4vw,32px);color:#fff;text-transform:uppercase;margin-bottom:.3em;}
.cta-final p{color:#c9dae6;margin:0;}
.cta-final__acciones{position:relative;z-index:1;display:flex;gap:.8em;flex-wrap:wrap;}

/* ── Footer ──────────────────────────────────────────────────────────── */
footer.pie{background:#0a1c2e;color:#b9c9d6;padding:3.2em 0 1.6em;font-size:14.5px;}
.pie__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2.4em;margin-bottom:2.4em;}
@media (max-width:820px){.pie__grid{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.pie__grid{grid-template-columns:1fr;}}
.pie__marca{display:flex;align-items:center;gap:.6em;margin-bottom:.9em;}
.pie__marca img{width:38px;height:38px;border-radius:50%;}
.pie__marca-txt{font-family:var(--f-titulo);font-weight:700;font-size:17px;color:#fff;}
.pie__marca-txt b{color:var(--verde);}
.pie h4{font-family:var(--f-titulo);font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#fff;margin-bottom:.9em;}
.pie ul li{margin-bottom:.55em;}
.pie a{text-decoration:none;color:#b9c9d6;}
.pie a:hover{color:#fff;}
.pie__contacto li{display:flex;gap:.6em;align-items:flex-start;}
.pie__contacto svg{width:16px;height:16px;flex:none;margin-top:.2em;opacity:.8;}
.pie__abajo{border-top:1px solid rgba(255,255,255,.1);padding-top:1.4em;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.8em;font-size:12.5px;color:#82909c;}
.pie__abajo a{color:#82909c;}
.pie__abajo a:hover{color:#fff;}

/* ── Utilidades ──────────────────────────────────────────────────────── */
.texto-legal{max-width:760px;}
.texto-legal h2{font-size:24px;color:var(--marino);margin:1.6em 0 .5em;text-transform:uppercase;}
.texto-legal h2:first-child{margin-top:0;}
.texto-legal p,.texto-legal li{color:var(--tinta);font-size:15.5px;}
.texto-legal ul{margin:0 0 1em;padding-left:1.3em;list-style:disc;}
.texto-legal li{margin-bottom:.4em;}

/* ── Panel de marcas con logotipos ───────────────────────────────────── */
.marca-panel{background:#fff;border:1px solid var(--linea);border-radius:var(--radio);padding:1.8em 1.6em;display:grid;gap:1.7em;}
.marca-linea__t{font-family:var(--f-titulo);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gris);margin:0 0 .9em;text-align:center;}
.marca-rejilla{display:flex;flex-wrap:wrap;justify-content:center;gap:.9em 1.6em;}
.marca-caja{display:flex;align-items:center;justify-content:center;width:158px;height:62px;padding:.5em .9em;
            border:1px solid var(--linea);border-radius:10px;background:#fff;transition:box-shadow .18s,border-color .18s;}
.marca-caja:hover{border-color:var(--verde);box-shadow:0 6px 18px -10px rgba(0,0,0,.35);}
.marca-caja img{max-width:100%;max-height:38px;width:auto;height:auto;object-fit:contain;display:block;}
.marca-caja--txt span{font-family:var(--f-titulo);font-weight:700;font-size:18px;color:var(--marino);letter-spacing:.01em;}
.marca-nota{text-align:center;font-size:12.5px;color:var(--gris-claro);margin-top:1.1em;}
.marca-linea + .marca-linea{border-top:1px solid var(--linea);padding-top:1.5em;}
@media (max-width:560px){.marca-caja{width:44%;height:56px;}}
