/* =============================================================================
   AÉREO · GUÍAS (aereo.cl/guias)
   Piel del índice y de las páginas de guía. Vive fuera de las páginas para que
   las once compartan una sola hoja: si cambia el diseño, se cambia acá.

   Depende de los tokens de partials/chrome.css (--yellow, --ink, --hd…), que
   build.js inyecta en cada página. Por eso este archivo NO redefine :root.
   ============================================================================= */

.gwrap{max-width:var(--maxw);margin:0 auto;padding:0 22px;width:100%;}
@media(min-width:820px){ .gwrap{padding:0 34px;} }

/* ---------------- MIGA DE PAN ----------------
   Va arriba de todo y también alimenta el schema BreadcrumbList: Google la usa
   para dibujar la ruta bajo el título del resultado. */
.ruta{font-family:var(--mn);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink-3);padding:26px 0 0;display:flex;flex-wrap:wrap;gap:7px;align-items:center;}
.ruta a{color:var(--ink-2);text-decoration:none;border-bottom:1px solid var(--line-strong);}
.ruta a:hover{color:#000;border-color:#000;}
.ruta span[aria-current]{color:#000;}

/* ---------------- ENCABEZADO ---------------- */
.gu-hero{padding:22px 0 8px;}
.gu-k{display:inline-block;font-family:var(--mn);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--ink);background:var(--yellow);padding:6px 11px;}
.gu-hero h1{font-family:var(--hd);font-weight:900;text-transform:uppercase;line-height:.94;letter-spacing:-.005em;
  font-size:clamp(34px,7vw,68px);color:var(--ink);margin:16px 0 0;max-width:19ch;}
.gu-baja{font-family:var(--bd);font-size:clamp(16px,2vw,19px);line-height:1.55;color:var(--ink-2);
  margin:18px 0 0;max-width:60ch;}
.gu-baja strong{color:var(--ink);font-weight:500;}
.gu-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;}
.gu-meta span{font-family:var(--mn);font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-2);border:1px solid var(--line-strong);border-radius:999px;padding:6px 12px;}

/* ---------------- RESPUESTA CORTA ----------------
   El bloque que los buscadores de IA citan. Va antes de cualquier rodeo:
   la pregunta respondida en dos o tres frases, con los datos duros dentro. */
.gu-resp{background:var(--ink);color:#fff;border:3px solid #000;box-shadow:9px 9px 0 var(--yellow);
  padding:clamp(20px,3vw,30px);margin:34px 0 0;border-radius:3px;}
.gu-resp .k{display:block;font-family:var(--mn);font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--yellow);margin-bottom:11px;}
.gu-resp p{font-family:var(--bd);font-size:clamp(15.5px,1.9vw,17.5px);line-height:1.62;color:#D7DBDF;margin:0;max-width:70ch;}
.gu-resp p+p{margin-top:12px;}
.gu-resp b,.gu-resp strong{color:#fff;font-weight:500;}
.gu-resp a{color:var(--yellow);text-decoration:underline;text-underline-offset:3px;}

/* ---------------- CUERPO A DOS COLUMNAS ---------------- */
.gu-cuerpo{display:grid;grid-template-columns:1fr;gap:34px;margin:44px 0 0;}
@media(min-width:1000px){
  .gu-cuerpo{grid-template-columns:minmax(0,1fr) 268px;gap:54px;align-items:start;}
  .gu-lado{position:sticky;top:118px;}
}

/* índice lateral */
.gu-indice{border:2px solid var(--ink);border-radius:3px;padding:18px 19px;background:var(--bg);}
.gu-indice b{display:block;font-family:var(--mn);font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink-3);margin-bottom:12px;}
.gu-indice ol{list-style:none;margin:0;padding:0;counter-reset:gi;}
.gu-indice li{counter-increment:gi;border-top:1px solid var(--line);}
.gu-indice li:first-child{border-top:0;}
.gu-indice a{display:grid;grid-template-columns:26px 1fr;gap:8px;padding:9px 0;text-decoration:none;
  font-family:var(--bd);font-size:14px;line-height:1.35;color:var(--ink-2);transition:color .15s;}
.gu-indice a::before{content:counter(gi,decimal-leading-zero);font-family:var(--mn);font-size:10.5px;
  color:var(--ink-3);padding-top:2px;}
.gu-indice a:hover{color:#000;}

/* tarjeta de curso en la columna lateral */
.gu-ficha{margin-top:18px;border:3px solid #000;border-radius:3px;box-shadow:7px 7px 0 var(--ink);
  background:var(--yellow);padding:19px;}
.gu-ficha b{display:block;font-family:var(--hd);font-weight:900;text-transform:uppercase;
  font-size:22px;line-height:1.02;color:#000;}
.gu-ficha p{font-family:var(--bd);font-size:13.5px;line-height:1.5;color:#2A2E31;margin:9px 0 0;}
.gu-ficha ul{list-style:none;margin:13px 0 0;padding:0;display:grid;gap:5px;}
.gu-ficha li{font-family:var(--mn);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:#000;
  padding-left:14px;position:relative;}
.gu-ficha li::before{content:"→";position:absolute;left:0;}
.gu-ficha .b{display:block;margin-top:15px;text-align:center;background:#000;color:#fff;text-decoration:none;
  font-family:var(--hd);font-weight:800;text-transform:uppercase;font-size:15px;letter-spacing:.02em;padding:12px;
  border:2px solid #000;transition:transform .15s;}
.gu-ficha .b:hover{transform:translate(-1px,-1px);}

/* ---------------- TEXTO ---------------- */
.gu-texto h2{font-family:var(--hd);font-weight:900;text-transform:uppercase;line-height:1;
  font-size:clamp(25px,3.6vw,38px);color:var(--ink);margin:52px 0 0;scroll-margin-top:120px;}
.gu-texto h2:first-child{margin-top:0;}
.gu-texto h3{font-family:var(--hd);font-weight:800;text-transform:uppercase;font-size:clamp(19px,2.3vw,23px);
  line-height:1.08;color:var(--ink);margin:32px 0 0;}
.gu-texto p{font-family:var(--bd);font-size:16.5px;line-height:1.72;color:var(--ink-2);margin:15px 0 0;max-width:66ch;}
.gu-texto p strong{color:var(--ink);font-weight:500;}
.gu-texto a{color:var(--blue);text-decoration:none;border-bottom:1px solid var(--line-strong);}
.gu-texto a:hover{color:#000;border-color:#000;}
.gu-texto ul,.gu-texto ol{margin:15px 0 0;padding-left:0;list-style:none;max-width:66ch;}
.gu-texto ul li{position:relative;padding-left:23px;margin-top:9px;font-family:var(--bd);font-size:16.5px;
  line-height:1.65;color:var(--ink-2);}
.gu-texto ul li::before{content:"";position:absolute;left:2px;top:11px;width:9px;height:2px;background:var(--ink);}
.gu-texto ul li strong{color:var(--ink);font-weight:500;}
.gu-texto ol{counter-reset:gp;}
.gu-texto ol li{counter-increment:gp;position:relative;padding-left:38px;margin-top:13px;
  font-family:var(--bd);font-size:16.5px;line-height:1.65;color:var(--ink-2);}
.gu-texto ol li::before{content:counter(gp,decimal-leading-zero);position:absolute;left:0;top:1px;
  font-family:var(--mn);font-weight:700;font-size:12px;color:var(--ink);background:var(--yellow);padding:2px 6px;}
.gu-texto ol li strong{color:var(--ink);font-weight:500;}

/* dato duro suelto dentro del texto */
.gu-dato{display:grid;grid-template-columns:auto 1fr;gap:0 18px;align-items:center;
  border-left:5px solid var(--yellow);background:var(--bg-2);padding:17px 19px;margin:26px 0 0;border-radius:0 3px 3px 0;}
.gu-dato b{font-family:var(--hd);font-weight:900;font-size:clamp(30px,5vw,44px);line-height:.95;color:var(--ink);}
.gu-dato span{font-family:var(--bd);font-size:15px;line-height:1.55;color:var(--ink-2);}
.gu-dato span strong{color:var(--ink);font-weight:500;}

/* aviso / advertencia honesta */
.gu-ojo{border:2px solid var(--ink);border-radius:3px;padding:17px 19px;margin:26px 0 0;background:var(--bg);}
.gu-ojo b{display:block;font-family:var(--mn);font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  color:#C0261C;margin-bottom:8px;}
.gu-ojo p{margin:0;font-size:15.5px;}

/* tabla */
.gu-tabla{width:100%;border-collapse:collapse;margin:26px 0 0;font-family:var(--bd);font-size:15px;}
.gu-tabla th{font-family:var(--mn);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);
  text-align:left;padding:0 12px 9px 0;border-bottom:2px solid var(--ink);}
.gu-tabla td{padding:12px 12px 12px 0;border-bottom:1px solid var(--line);color:var(--ink-2);
  line-height:1.5;vertical-align:top;}
.gu-tabla td b{color:var(--ink);font-weight:500;}
@media(max-width:639px){
  .gu-tabla,.gu-tabla tbody,.gu-tabla tr,.gu-tabla td{display:block;width:100%;}
  .gu-tabla thead{display:none;}
  .gu-tabla tr{border-bottom:2px solid var(--ink);padding:12px 0;}
  .gu-tabla td{border:0;padding:3px 0;}
  .gu-tabla td::before{content:attr(data-th);display:block;font-family:var(--mn);font-size:9.5px;
    letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:2px;}
}

/* ---------------- PREGUNTAS FRECUENTES ----------------
   El mismo texto alimenta el schema FAQPage. Si editas una respuesta acá,
   edítala también en el JSON-LD de la página: son la misma fuente. */
.gu-faq{margin:64px 0 0;}
.gu-faq h2{font-family:var(--hd);font-weight:900;text-transform:uppercase;font-size:clamp(25px,3.6vw,38px);
  line-height:1;color:var(--ink);margin:0 0 20px;scroll-margin-top:120px;}
.gu-faq details{border-top:2px solid var(--ink);padding:0;}
.gu-faq details:last-of-type{border-bottom:2px solid var(--ink);}
.gu-faq summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr 26px;gap:14px;
  align-items:center;padding:18px 0;font-family:var(--hd);font-weight:800;text-transform:uppercase;
  font-size:clamp(17px,2.2vw,21px);line-height:1.15;color:var(--ink);}
.gu-faq summary::-webkit-details-marker{display:none;}
.gu-faq summary::after{content:"+";justify-self:end;font-family:var(--mn);font-size:21px;color:var(--ink-3);}
.gu-faq details[open] summary::after{content:"–";color:var(--ink);}
.gu-faq summary:hover{color:#000;}
.gu-faq .r{padding:0 0 20px;}
.gu-faq .r p{font-family:var(--bd);font-size:16px;line-height:1.7;color:var(--ink-2);margin:0;max-width:66ch;}
.gu-faq .r p+p{margin-top:11px;}
.gu-faq .r a{color:var(--blue);border-bottom:1px solid var(--line-strong);text-decoration:none;}
.gu-faq .r a:hover{color:#000;border-color:#000;}

/* ---------------- CIERRE ---------------- */
.gu-cta{margin:64px 0 0;background:var(--ink);color:#fff;border:3px solid #000;box-shadow:10px 10px 0 var(--yellow);
  padding:clamp(24px,4vw,40px);border-radius:3px;}
.gu-cta h2{font-family:var(--hd);font-weight:900;text-transform:uppercase;line-height:.98;
  font-size:clamp(26px,4.6vw,44px);color:#fff;margin:0;max-width:18ch;}
.gu-cta p{font-family:var(--bd);font-size:16px;line-height:1.6;color:#C3C9CE;margin:14px 0 0;max-width:58ch;}
.gu-cta p strong{color:#fff;font-weight:500;}
.gu-cta .btns{display:flex;flex-wrap:wrap;gap:11px;margin-top:24px;}
.gu-cta .btn{display:inline-block;font-family:var(--hd);font-weight:800;text-transform:uppercase;font-size:16px;
  letter-spacing:.02em;text-decoration:none;padding:14px 22px;border:2px solid var(--yellow);
  background:var(--yellow);color:#000;transition:transform .15s;}
.gu-cta .btn:hover{transform:translate(-1px,-1px);}
.gu-cta .btn.g{background:transparent;color:#fff;border-color:#6A6F76;}
.gu-cta .btn.g:hover{background:#fff;color:#000;border-color:#fff;}

/* ---------------- OTRAS GUÍAS ---------------- */
.gu-rel{margin:64px 0 84px;}
.gu-rel h2{font-family:var(--hd);font-weight:900;text-transform:uppercase;font-size:clamp(22px,3vw,30px);
  line-height:1;color:var(--ink);margin:0 0 18px;}
.gu-rel ul{list-style:none;margin:0;padding:0;display:grid;gap:11px;}
@media(min-width:760px){ .gu-rel ul{grid-template-columns:1fr 1fr;} }
.gu-rel a{display:block;border:2px solid var(--line-strong);border-radius:3px;padding:15px 17px;text-decoration:none;
  transition:border-color .18s,transform .18s var(--ease),box-shadow .18s var(--ease);background:var(--bg);}
.gu-rel a:hover{border-color:#000;transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--yellow);}
.gu-rel a b{display:block;font-family:var(--hd);font-weight:800;text-transform:uppercase;font-size:18px;
  line-height:1.08;color:var(--ink);}
.gu-rel a span{display:block;font-family:var(--bd);font-size:13.5px;line-height:1.5;color:var(--ink-2);margin-top:5px;}

/* =============================================================================
   ÍNDICE /guias/
   ============================================================================= */
.gx-hero{padding:34px 0 0;}
.gx-hero h1{font-family:var(--hd);font-weight:900;text-transform:uppercase;line-height:.92;
  font-size:clamp(38px,8.4vw,86px);color:var(--ink);margin:16px 0 0;max-width:15ch;}
.gx-hero h1 em{font-style:normal;background:var(--yellow);padding:0 .12em;display:inline-block;transform:rotate(-1deg);}
.gx-lead{font-family:var(--bd);font-size:clamp(16px,2vw,19.5px);line-height:1.55;color:var(--ink-2);
  margin:20px 0 0;max-width:64ch;}
.gx-lead strong{color:var(--ink);font-weight:500;}

.gx-grid{display:grid;gap:13px;margin:40px 0 0;}
@media(min-width:700px){ .gx-grid{grid-template-columns:1fr 1fr;} }
@media(min-width:1080px){ .gx-grid{grid-template-columns:repeat(3,1fr);} }
.gx-card{display:flex;flex-direction:column;border:2px solid var(--ink);border-radius:3px;padding:20px;
  text-decoration:none;background:var(--bg);position:relative;overflow:hidden;
  transition:transform .2s var(--ease),box-shadow .2s var(--ease);}
.gx-card:hover{transform:translate(-3px,-3px);box-shadow:7px 7px 0 var(--yellow);}
.gx-card .n{font-family:var(--mn);font-size:10px;letter-spacing:.16em;color:var(--ink-3);}
.gx-card h2{font-family:var(--hd);font-weight:900;text-transform:uppercase;font-size:clamp(21px,2.5vw,26px);
  line-height:1.02;color:var(--ink);margin:11px 0 0;}
.gx-card p{font-family:var(--bd);font-size:14.5px;line-height:1.55;color:var(--ink-2);margin:10px 0 0;flex:1;}
.gx-card .go{margin-top:16px;font-family:var(--mn);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink);border-top:1px solid var(--line);padding-top:11px;}
.gx-card.dest{background:var(--yellow);border-width:3px;}
.gx-card.dest .n,.gx-card.dest p{color:#2A2E31;}

.gx-bloque{margin:70px 0 0;}
.gx-bloque h2{font-family:var(--hd);font-weight:900;text-transform:uppercase;font-size:clamp(24px,3.4vw,34px);
  line-height:1;color:var(--ink);margin:0;}
.gx-bloque .sub{font-family:var(--bd);font-size:16px;line-height:1.6;color:var(--ink-2);margin:12px 0 0;max-width:62ch;}
.gx-lista{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:0;border-top:2px solid var(--ink);}
.gx-lista li{border-bottom:1px solid var(--line);min-width:0;}
.gx-lista a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px 0;
  text-decoration:none;transition:padding .18s var(--ease);}
.gx-lista a:hover{padding-left:9px;}
.gx-lista b{font-family:var(--bd);font-weight:500;font-size:16px;line-height:1.4;color:var(--ink);}
.gx-lista span{font-family:var(--mn);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);
  white-space:nowrap;}
.gx-lista a:hover b{color:#000;}
/* En celular el título y la etiqueta no caben en una fila: el 1fr no encogía
   —los items de grid tienen min-width:auto— y la página se desbordaba 173 px
   a la derecha. Con minmax(0,1fr) el título ya puede partirse; bajo 560 px,
   además, la etiqueta se va a su propia línea. */
@media(max-width:560px){
  .gx-lista a{grid-template-columns:1fr;gap:5px;}
  .gx-lista span{justify-self:start;}
}
.gx-lista a{min-width:0;}
.gx-lista b{min-width:0;overflow-wrap:anywhere;}

.gx-cierre{margin:70px 0 84px;}
