/* Tipografia propia, servida desde nuestro dominio igual que ellos hacen con Gilmer.
     Outfit para titulos (geometrica) e Inter para parrafos. Nada de fuentes del sistema. */
  @font-face{font-family:'Outfit';src:url('fonts/outfit-400.woff2') format('woff2');
             font-weight:400;font-display:swap;font-style:normal}
  @font-face{font-family:'Outfit';src:url('fonts/outfit-500.woff2') format('woff2');
             font-weight:500;font-display:swap;font-style:normal}
  @font-face{font-family:'Outfit';src:url('fonts/outfit-600.woff2') format('woff2');
             font-weight:600;font-display:swap;font-style:normal}
  @font-face{font-family:'Outfit';src:url('fonts/outfit-700.woff2') format('woff2');
             font-weight:700;font-display:swap;font-style:normal}
  @font-face{font-family:'InterAGS';src:url('fonts/inter-400.woff2') format('woff2');
             font-weight:400;font-display:swap;font-style:normal}
  @font-face{font-family:'InterAGS';src:url('fonts/inter-500.woff2') format('woff2');
             font-weight:500;font-display:swap;font-style:normal}
  @font-face{font-family:'InterAGS';src:url('fonts/inter-600.woff2') format('woff2');
             font-weight:600;font-display:swap;font-style:normal}
  :root{
    --azul:#0d2f52; --azul2:#123f6d; --oro:#d99b25; --teal:#12777f;
    --tinta:#101720; --suave:#5b6673; --linea:#e3e8ee; --hueso:#f7f9fb;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{margin:0;color:var(--tinta);background:#fff;
       font:17px/1.7 'InterAGS','Segoe UI',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
  .caja{max-width:1140px;margin:0 auto;padding:0 22px}
  a{color:var(--azul)}
  h1,h2,h3{font-family:'Outfit','Segoe UI',sans-serif;font-weight:600;letter-spacing:-.02em;line-height:1.16;margin:0}
  h1{font-size:44px;font-weight:700} h2{font-size:33px} h3{font-size:20.5px;font-weight:600}

  /* barra */
  header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--linea)}
  .nav{display:flex;align-items:center;gap:26px;height:78px}
  .marca{display:flex;align-items:center;gap:12px;text-decoration:none}
  .marca img{height:44px}
  .marca b{font-family:'Outfit',sans-serif;font-weight:700;font-size:22px;color:var(--azul);line-height:1;letter-spacing:-.01em}
  .marca span{display:block;font-size:10.5px;letter-spacing:4px;color:var(--suave)}
  .menu{display:flex;gap:22px;margin-left:auto;font-size:15.5px;font-family:'Outfit',sans-serif;font-weight:500}
  .menu a{color:var(--tinta);text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
  .menu a:hover{border-color:var(--oro)}
  .btn{display:inline-block;background:var(--oro);color:#22160a;text-decoration:none;
       font-family:'Outfit',sans-serif;font-weight:600;padding:14px 24px;border-radius:8px;border:0;cursor:pointer;font-size:16px}
  .btn:hover{filter:brightness(1.06)}
  .btn.sec{background:transparent;color:var(--azul);border:2px solid var(--azul)}

  /* hero */
  .hero{background:linear-gradient(160deg,var(--azul) 0%,#0a2340 100%);color:#fff;padding:64px 0 72px}
  .hero .caja{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
  .hero h1{color:#fff;font-size:50px;font-weight:700;letter-spacing:-.03em}
  .hero p.baja{font-size:19px;color:#c9d8e6;margin:18px 0 26px}
  .marcas{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
  .chip{border:1px solid rgba(255,255,255,.28);border-radius:20px;padding:6px 14px;
        font-size:13.5px;color:#d6e2ee}
  form{background:#fff;color:var(--tinta);border-radius:14px;padding:26px 24px;
       box-shadow:0 18px 50px rgba(0,0,0,.28)}
  form h3{margin-bottom:4px}
  form .ayuda{font-size:13.5px;color:var(--suave);margin-bottom:16px}
  label{display:block;font-size:13.5px;font-weight:600;margin:12px 0 5px}
  input,select{width:100%;padding:12px 13px;border:1px solid var(--linea);border-radius:8px;
               font:inherit;font-size:15.5px;background:var(--hueso)}
  input:focus,select:focus{outline:2px solid var(--azul);background:#fff}
  form .btn{width:100%;margin-top:18px}
  .privado{font-size:12.5px;color:var(--suave);margin-top:12px;text-align:center}

  /* bloques */
  section{padding:74px 0}
  .titulo{text-align:center;max-width:760px;margin:0 auto 42px}
  .titulo p{color:var(--suave);margin-top:12px;font-size:17.5px}
  .grid{display:grid;gap:18px}
  .g3{grid-template-columns:repeat(3,1fr)}
  .g2{grid-template-columns:repeat(2,1fr)}
  .card{border:1px solid var(--linea);border-radius:14px;padding:26px 24px;background:#fff}
  .card h3{margin-bottom:8px;color:var(--azul)}
  .card p{color:var(--suave);font-size:16px;margin:0}
  .card.destacada{border:2px solid var(--oro);background:#fffdf7}
  .etq{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:1px;
       text-transform:uppercase;color:#8a5f11;background:#fdf3e2;padding:3px 9px;border-radius:20px;margin-bottom:10px}

  .pasos{counter-reset:p}
  .paso{display:flex;gap:20px;padding:22px 0;border-bottom:1px solid var(--linea)}
  .paso:last-child{border:0}
  .paso .n{flex:0 0 46px;height:46px;border-radius:50%;background:var(--azul);color:#fff;
           display:flex;align-items:center;justify-content:center;font-family:'Outfit',sans-serif;font-weight:600;font-size:18px}
  .paso h3{margin-bottom:4px}
  .paso p{color:var(--suave);margin:0;font-size:16px}

  .datos{background:var(--hueso)}
  .lista{list-style:none;padding:0;margin:14px 0 0}
  .lista li{padding:9px 0 9px 30px;position:relative;color:#2b3543}
  .lista li::before{content:"";position:absolute;left:0;top:16px;width:14px;height:3px;
                    background:var(--oro);border-radius:2px}

  .faq details{border:1px solid var(--linea);border-radius:12px;padding:16px 20px;margin-bottom:12px;background:#fff}
  .faq summary{cursor:pointer;font-family:'Outfit',sans-serif;font-weight:600;font-size:17.5px;color:var(--azul)}
  .faq p{color:var(--suave);margin:12px 0 0}

  .cierre{background:var(--azul);color:#fff;text-align:center}
  .cierre h2{color:#fff}
  .cierre p{color:#c9d8e6;max-width:640px;margin:14px auto 26px}

  footer{background:#0a1a2c;color:#93a6ba;font-size:14.5px;padding:52px 0 28px}
  footer a{color:#cddaea;text-decoration:none}
  footer a:hover{text-decoration:underline}
  .pie{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px}
  .pie h4{color:#fff;font-size:15px;margin:0 0 12px}
  .pie img{height:52px;margin-bottom:14px}
  .legal{border-top:1px solid #16293e;margin-top:34px;padding-top:20px;font-size:13px;color:#6f8399}

  @media(max-width:900px){
    .hero .caja{grid-template-columns:1fr;gap:32px}
    .g3,.g2,.pie{grid-template-columns:1fr}
    .menu{display:none}
    h1,.hero h1{font-size:33px} h2{font-size:26px}
    section{padding:52px 0}
  }

/* ---- paginas internas ---- */
.hero-2col{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
a.card{display:block;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}
a.card:hover{border-color:var(--oro);transform:translateY(-2px)}
.post{padding:56px 0 20px}
.post h1{font-size:38px;margin:12px 0 6px}
.post h2{font-size:24px;margin:30px 0 8px}
.post .meta{color:var(--suave);font-size:14.5px;margin-bottom:22px}
.post p{font-size:17.5px}
.post ul{padding-left:20px;color:#2b3543}
.post li{margin:7px 0}
.volver{margin:34px 0 10px;font-size:15.5px}
.hero .baja:empty{display:none}
@media(max-width:900px){
  .hero-2col{grid-template-columns:1fr;gap:30px}
  .post h1{font-size:28px}
}

/* ---- testimonios ---- */
.testis{background:var(--hueso)}
.testi{margin:0;background:#fff;border:1px solid var(--linea);border-radius:14px;padding:24px 22px}
.testi blockquote{margin:0;font-size:18px;line-height:1.5;color:#1b2733}
.testi blockquote::before{content:'C';font-family:Georgia,serif;font-size:44px;color:var(--oro);
  line-height:0;vertical-align:-14px;margin-right:4px}
.testi figcaption{margin-top:14px;font-size:13.5px;color:var(--suave);font-weight:600;
  letter-spacing:.4px;text-transform:uppercase}
