/* v26 · Comunidad Educación (agente EDUCACIÓN).
   1) Pieza propia de /educacion/: «El camino de un estudiante» (.ed-camino).
   2) Subpáginas de presentación: /educacion/conecta-escuela/, /brujula-vocacional/, /conecta-coar/ (.ed-sub).
   Sin puntitos decorativos, sin rótulos en mayúsculas, sin bordes superiores de color.
   v28 · lista negra anti-IA: fuera rayitas laterales, píldoras de estado, cajas tintadas y tarjetas iguales.
   El estado de una iniciativa se dibuja con el mismo trazo que en el camino (continuo, doble, discontinuo, fino). */

.ed-camino, .ed-sub{
  --ed:var(--cm, var(--ac-escuela));
  --ed-hondo:color-mix(in oklab, var(--ed) 38%, var(--tinta));
  --ed-velo:color-mix(in srgb, var(--ed) 16%, transparent);
}

/* ============================================================ 1 · EL CAMINO (v27) */
.ed-camino{ position:relative; overflow:hidden }
.ed-camino__cab{ max-width:48rem; margin-bottom:var(--e-xl) }
.ed-camino__cab .entrada{ margin-top:var(--e-sm) }

/* El camino dibujado: solo con JS */
.ed-ruta[hidden]{ display:none }
.ed-ruta{ margin-bottom:var(--e-xl) }
.ed-ruta__pista{ position:relative }
.ed-ruta__lienzo{ position:absolute; left:0; right:0; top:0; height:6.5rem; pointer-events:none }
.ed-ruta__trazo{ position:absolute; inset:0; width:100%; height:100%; overflow:visible }
.ed-ruta__trazo path{ fill:none; vector-effect:non-scaling-stroke; stroke-linecap:round }
.ed-ruta__lecho{ stroke:rgba(216,203,179,.09); stroke-width:22 }
.ed-ruta__eje{ stroke:rgba(216,203,179,.28); stroke-width:1.25; stroke-dasharray:7 9 }
.ed-ruta__avance{ stroke:var(--ed); stroke-width:3 }
.ed-ruta__viajero{
  position:absolute; left:10%; top:50%; width:1.6rem; height:1.6rem; margin:-.8rem 0 0 -.8rem; border-radius:50%;
  background:var(--ed); box-shadow:0 0 0 4px var(--noche), 0 0 0 6px color-mix(in srgb, var(--ed) 55%, transparent);
}
.ed-ruta__viajero::after{ content:""; position:absolute; inset:.5rem; border-radius:50%; background:var(--noche) }

.ed-ruta__paradas{ position:relative; list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)) }
.ed-parada{
  width:100%; display:flex; flex-direction:column; align-items:center; gap:.25rem;
  padding:calc(3.25rem - .5rem) .25rem .6rem; background:none; border:0; border-radius:.7rem;
  font:inherit; color:var(--t2); text-align:center; cursor:pointer; transition:background-color .2s var(--curva);
}
.ed-parada__hito{ width:1rem; height:1rem; border-radius:50%; background:var(--noche); box-shadow:inset 0 0 0 2px rgba(216,203,179,.5);
  margin-bottom:1.85rem; transition:box-shadow .2s var(--curva), background-color .2s var(--curva) }
.ed-parada__n{ font-family:var(--sans); font-weight:650; font-size:1.02rem; line-height:1.2; color:var(--t1); transition:color .2s var(--curva) }
.ed-parada__corto{ display:none }
.ed-parada__e{ font-family:var(--sans); font-size:.84rem; line-height:1.3; color:var(--t3) }
.ed-parada:hover{ background:rgba(216,203,179,.06) }
.ed-parada:hover .ed-parada__hito{ box-shadow:inset 0 0 0 2px var(--ed) }
.ed-parada--hecha .ed-parada__hito{ background:var(--ed); box-shadow:none }
.ed-parada[aria-selected="true"] .ed-parada__n{ color:var(--ed) }
.ed-parada:focus-visible{ outline:2px solid var(--piedra); outline-offset:-2px }

/* Las iniciativas como líneas que acompañan al camino */
.ed-lineas{ margin-top:var(--e-md); padding-top:var(--e-md); border-top:1px solid var(--fl) }
.ed-lineas__lista{ list-style:none; margin:0; padding:0; display:grid; gap:.6rem }
.ed-linea{ display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); align-items:end }
.ed-linea__seg{ grid-row:1; position:relative; display:block; margin:0 .9rem; padding-bottom:.45rem; min-width:0;
  opacity:.38; transition:opacity .3s var(--curva) }
.ed-linea__seg::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:3px; border-radius:2px; background:var(--li) }
.ed-linea__seg--piloto::after{ background:repeating-linear-gradient(90deg, var(--li) 0 10px, transparent 10px 16px) }
.ed-linea__seg--diseno::after{ height:0; border-bottom:1px solid var(--li) }
.ed-linea__seg--entregado::after{ height:0; background:none; border-bottom:6px double var(--li); border-radius:0 }
.ed-linea__n{ display:block; font-family:var(--sans); font-size:.82rem; font-weight:600; line-height:1.2; color:var(--t1);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.ed-linea__seg.on{ opacity:1 }
.ed-lineas__ley{ display:flex; flex-wrap:wrap; gap:.4rem 1.5rem; margin:var(--e-md) 0 0; font-family:var(--sans); font-size:.82rem; color:var(--t3) }
.ed-ley{ display:inline-flex; align-items:center; gap:.55rem }
.ed-ley::before{ content:""; width:1.6rem; height:3px; border-radius:2px; background:var(--piedra) }
.ed-ley--piloto::before{ background:repeating-linear-gradient(90deg, var(--piedra) 0 7px, transparent 7px 11px) }
.ed-ley--diseno::before{ height:0; border-bottom:1px solid var(--piedra) }
.ed-ley--entregado::before{ height:0; background:none; border-bottom:6px double var(--piedra); border-radius:0 }

/* Mando: anterior, estado, siguiente, recorrer */
.ed-mando{ display:flex; flex-wrap:wrap; align-items:center; gap:.6rem 1rem; margin-top:var(--e-lg) }
.ed-mando__b{ display:inline-grid; place-items:center; width:2.75rem; height:2.75rem; border-radius:50%; border:1px solid var(--filete-piedra);
  background:transparent; color:var(--t1); cursor:pointer; transition:background-color .2s var(--curva), border-color .2s var(--curva), opacity .2s }
.ed-mando__b:hover{ background:rgba(216,203,179,.1); border-color:var(--piedra) }
.ed-mando__b[aria-disabled="true"]{ opacity:.35; cursor:default }
.ed-mando__b:focus-visible, .ed-mando__play:focus-visible{ outline:2px solid var(--piedra); outline-offset:3px }
.ed-mando__estado{ margin:0; min-width:12rem; font-family:var(--sans); font-size:.95rem; font-weight:600; color:var(--t1); font-variant-numeric:tabular-nums }
.ed-mando__play{ position:relative; overflow:hidden; display:inline-flex; align-items:center; gap:.6rem; margin-left:auto; padding:.7rem 1.15rem;
  border-radius:999px; border:1px solid var(--filete-piedra); background:transparent; color:var(--t1);
  font-family:var(--sans); font-weight:600; font-size:.92rem; cursor:pointer; transition:background-color .2s var(--curva), border-color .2s var(--curva) }
.ed-mando__play:hover{ background:rgba(216,203,179,.1); border-color:var(--piedra) }
.ed-mando__ico{ width:0; height:0; border-style:solid; border-width:.38rem 0 .38rem .62rem; border-color:transparent transparent transparent currentColor }
.ed-mando__play[aria-pressed="true"] .ed-mando__ico{ width:.62rem; height:.76rem; border:0; border-left:3px solid; border-right:3px solid }
.ed-mando__barra{ position:absolute; left:0; bottom:0; height:2px; width:100%; background:var(--ed); transform-origin:0 50%; transform:scaleX(0) }
.ed-mando__play[aria-pressed="true"] .ed-mando__barra{ animation:ed-barra var(--ed-paso, 7s) linear both }
@keyframes ed-barra{ to{ transform:scaleX(1) } }
.ed-sin-mov .ed-mando__play{ display:none }

/* Los tramos */
.ed-camino__tramos{ display:grid; gap:var(--e-2xl) }
.ed-tramo{ display:grid; gap:var(--e-lg); grid-template-columns:minmax(0, 1fr); align-items:start }
.ed-tramo[hidden]{ display:none }
.ed-tramo__foto{ margin:0; position:relative }
.ed-tramo__foto picture{ display:block; overflow:hidden; border-radius:1rem; background:var(--noche-2) }
.ed-tramo__foto img{ display:block; width:100%; height:auto; aspect-ratio:4 / 3; object-fit:cover; object-position:var(--pos, 50% 50%) }
.ed-tramo__foto figcaption{ margin-top:.6rem; font-family:var(--sans); font-size:.82rem; color:var(--t3) }
.ed-tramo__paso{ font-family:var(--sans); font-size:.88rem; color:var(--t3); margin:0 0 .5rem }
.ed-tramo__t{ font-family:var(--sans); font-weight:650; font-size:clamp(1.9rem, 1.4rem + 1.6vw, 2.75rem); line-height:1.05; letter-spacing:-.02em; margin:0; color:var(--t1) }
.ed-tramo__juego{ font-family:var(--lee); font-size:clamp(1.08rem, 1rem + .3vw, 1.22rem); line-height:1.55; color:var(--t2); margin:var(--e-sm) 0 0; max-width:38ch }
.ed-tramo__cifra{ margin:var(--e-lg) 0 0; padding-top:var(--e-md); border-top:1px solid var(--fl); display:grid; gap:.35rem }
.ed-tramo__cifra b{ font-family:var(--sans); font-weight:650; font-size:clamp(2.6rem, 1.9rem + 2.4vw, 4rem); line-height:1; letter-spacing:-.02em; color:var(--ed); font-variant-numeric:tabular-nums }
.ed-tramo__cifra span{ font-size:1rem; line-height:1.5; color:var(--t2); max-width:36ch }
.ed-tramo__fuente{ font-family:var(--sans); font-size:.8rem; color:var(--t3); text-decoration:underline; text-decoration-color:rgba(216,203,179,.35); text-underline-offset:3px; justify-self:start }
.ed-tramo__fuente:hover{ color:var(--t1); text-decoration-color:currentColor }
/* v28 · Escala: qué parte de toda la matrícula escolar transita el tramo */
.ed-escala{ margin-top:var(--e-md); max-width:30rem }
.ed-escala__barra{ display:flex; gap:3px; height:.75rem; margin-bottom:1.55rem }
.ed-escala__s{ position:relative; flex:0 0 var(--w); max-width:var(--w); border-radius:2px; background:rgba(216,203,179,.16) }
.ed-escala__s.on{ background:var(--ed) }
.ed-escala__s.ed-escala__s--parte{ background:rgba(216,203,179,.16) }
.ed-escala__sub{ position:absolute; right:0; top:0; bottom:0; width:var(--w); border-radius:2px }
.ed-escala__sub.on{ background:var(--ed) }
.ed-escala__n{ position:absolute; top:100%; left:0; margin-top:.4rem; font-family:var(--sans); font-size:.72rem; line-height:1; color:var(--t3); white-space:nowrap }
.ed-escala__s.on .ed-escala__n{ color:var(--t1); font-weight:600 }
.ed-escala__t{ margin:0; font-family:var(--sans); font-size:.86rem; line-height:1.45; color:var(--t3); max-width:40ch }
.ed-escala__t b{ font-weight:650; color:var(--t1); font-variant-numeric:tabular-nums }
.ed-js .ed-tramo.ed-entra .ed-escala__s.on:not(.ed-escala__s--parte), .ed-js .ed-tramo.ed-entra .ed-escala__sub.on{ animation:ed-crece .7s .15s var(--curva) both; transform-origin:0 50% }
@keyframes ed-crece{ from{ transform:scaleX(0) } to{ transform:none } }
@media (max-width:30rem){ .ed-escala__s:not(.on) .ed-escala__n{ visibility:hidden } }
.ed-tramo__cuerpo{ display:grid; gap:var(--e-lg) }
.ed-tramo__k{ font-family:var(--sans); font-weight:650; font-size:.9rem; letter-spacing:0; color:var(--ed); margin:0 0 .5rem }
.ed-ini__lista{ list-style:none; margin:0; padding:0; display:grid }
.ed-ini{ padding:.85rem 0; border-top:1px solid var(--fl) }
.ed-ini__cab{ display:flex; flex-wrap:wrap; align-items:center; gap:.35rem .7rem; margin:0 0 .3rem }
.ed-ini__cab a{ font-family:var(--sans); font-weight:650; font-size:1.02rem; color:var(--t1); text-decoration:underline; text-decoration-color:color-mix(in srgb, var(--ed) 70%, transparent); text-decoration-thickness:2px; text-underline-offset:4px; transition:text-decoration-color .2s }
.ed-ini__cab a:hover{ text-decoration-color:var(--ed) }
.ed-ini__d{ margin:0; font-size:.98rem; line-height:1.5; color:var(--t2); max-width:58ch }
.ed-tramo__alr p{ margin:0; font-size:.98rem; line-height:1.55; color:var(--t2); max-width:58ch; padding-top:.85rem; border-top:1px solid var(--fl) }

/* Estado: un rótulo de texto con el mismo trazo que la leyenda del camino (v28: sin píldora ni relleno) */
.ed-estado{ display:inline-flex; align-items:center; gap:.45rem; font-family:var(--sans); font-size:.8rem; font-weight:600; line-height:1.2; white-space:nowrap; color:var(--mudo) }
.ed-estado::before{ content:""; flex:none; width:1.15rem; border-top:3px solid currentColor; border-radius:2px }
.ed-estado--uso{ color:var(--petroleo-hondo, #0E3B3A) }
.ed-estado--entregado{ color:var(--petroleo-hondo, #0E3B3A) }
.ed-estado--entregado::before{ border-top:5px double currentColor; border-radius:0 }
.ed-estado--piloto{ color:#7A4A1D }
.ed-estado--piloto::before{ border-top:2px dashed currentColor; border-radius:0 }
.ed-estado--diseno::before{ border-top-width:1px }
.oscuro .ed-estado--uso, .oscuro .ed-estado--entregado{ color:#A9DCD7 }
.oscuro .ed-estado--piloto{ color:#F6BE8C }
.oscuro .ed-estado--diseno{ color:var(--t2) }

.ed-camino__nota{ margin:var(--e-xl) 0 0; font-family:var(--sans); font-size:.86rem; line-height:1.5; color:var(--t3); max-width:70ch }

/* Con JS: un tramo a la vista, con su entrada */
.ed-js .ed-camino__tramos{ gap:0 }
.ed-js .ed-tramo.ed-entra .ed-tramo__foto picture{ animation:ed-foto .6s var(--curva) both }
.ed-js .ed-tramo.ed-entra .ed-tramo__foto img{ animation:ed-zoom 1.1s var(--curva) both }
.ed-js .ed-tramo.ed-entra .ed-tramo__texto,
.ed-js .ed-tramo.ed-entra .ed-tramo__cuerpo{ animation:ed-texto .45s var(--curva) both }
.ed-js .ed-tramo.ed-entra .ed-tramo__cuerpo{ animation-delay:.08s }
.ed-js .ed-tramo.ed-entra[data-dir="-1"] .ed-tramo__foto picture{ animation-name:ed-foto-i }
@keyframes ed-foto{ from{ clip-path:inset(0 0 0 22% round 1rem) } to{ clip-path:inset(0 0 0 0 round 1rem) } }
@keyframes ed-foto-i{ from{ clip-path:inset(0 22% 0 0 round 1rem) } to{ clip-path:inset(0 0 0 0 round 1rem) } }
@keyframes ed-zoom{ from{ transform:scale(1.06) } to{ transform:none } }
@keyframes ed-texto{ from{ opacity:0; transform:translateY(10px) } to{ opacity:1; transform:none } }

@media (min-width:60rem){
  .ed-tramo{ grid-template-columns:minmax(0, 7fr) minmax(0, 5fr); column-gap:clamp(2.5rem, 5vw, 5rem); row-gap:var(--e-xl) }
  .ed-tramo__foto{ grid-row:1 }
  .ed-tramo__texto{ grid-row:1; align-self:center }
  .ed-tramo__cuerpo{ grid-column:1 / -1; grid-template-columns:minmax(0, 7fr) minmax(0, 5fr); column-gap:clamp(2.5rem, 5vw, 5rem) }
  .ed-ini__lista{ grid-template-columns:1fr 1fr; column-gap:2rem }
}
@media (max-width:47.99rem){
  .ed-lineas{ display:none }
  .ed-ruta__lienzo{ height:5rem }
  .ed-ruta__lecho{ stroke-width:14 }
  .ed-parada{ padding:calc(2.5rem - .5rem) .1rem .5rem }
  .ed-parada__hito{ margin-bottom:1.3rem }
  .ed-parada__largo, .ed-parada__e{ display:none }
  .ed-parada__corto{ display:inline }
  .ed-parada__n{ font-size:.8rem }
  .ed-ruta__viajero{ width:1.3rem; height:1.3rem; margin:-.65rem 0 0 -.65rem }
  .ed-ruta__viajero::after{ inset:.4rem }
  .ed-mando__estado{ min-width:0; flex:1; text-align:center; font-size:.88rem }
  .ed-mando__play{ margin-left:0; width:100%; justify-content:center }
  .ed-ruta{ margin-bottom:var(--e-lg) }
}

/* ============================================================ 2 · SUBPÁGINAS */
.ed-sub .portada--v11.ed-ap{ min-height:min(46rem, 92svh) }
.ed-ap .portada__velo{ background:
  linear-gradient(180deg, rgba(10,26,47,.72) 0, rgba(10,26,47,.35) 48px, rgba(10,26,47,0) 96px),  /* v28 · el menú se lee sobre ventanas claras */
  linear-gradient(90deg, rgba(10,26,47,.88) 0%, rgba(10,26,47,.62) 42%, rgba(10,26,47,.12) 78%),
  linear-gradient(0deg, rgba(10,26,47,.7) 0%, rgba(10,26,47,0) 40%) }
@media (max-width:47.99rem){  /* v27: en celular el texto va sobre la foto; velo más firme para que no tape caras ni se mezcle con los pupitres */
  .ed-ap .portada__velo{ background:linear-gradient(180deg, rgba(10,26,47,.72) 0, rgba(10,26,47,.35) 48px, rgba(10,26,47,0) 96px), linear-gradient(0deg, rgba(10,26,47,.94) 0%, rgba(10,26,47,.86) 58%, rgba(10,26,47,.35) 82%, rgba(10,26,47,.1) 100%) }
}
.ed-migas ol{ list-style:none; margin:0 0 var(--e-md); padding:0; display:flex; flex-wrap:wrap; gap:.25rem .5rem; font-family:var(--sans); font-size:.86rem }
.ed-migas li{ display:flex; align-items:center; gap:.5rem; color:#C9D4D7 }
.ed-migas li + li::before{ content:"/"; color:rgba(244,242,238,.4) }
.ed-migas a{ color:#DCE3E6; text-decoration:none; border-bottom:1px solid rgba(244,242,238,.3) }
.ed-migas a:hover{ color:var(--papel); border-color:currentColor }
.ed-migas a[aria-current]{ border-bottom:0; color:var(--papel) }
.ed-ap__origen{ display:inline-flex; align-items:center; gap:.55rem; font-family:var(--sans); font-size:.88rem; color:#DCE3E6 }
.ed-ap__origen b{ color:var(--papel); font-weight:600 }
.ed-ap__marca{ display:inline-grid; place-items:center; width:1.9rem; height:1.9rem; border-radius:.55rem; background:var(--ed); color:var(--tinta) }
.ed-ap__marca svg{ width:1.15rem; height:1.15rem }
.ed-ap .acciones .boton:not(.boton--vidrio){ background:var(--ed); border-color:var(--ed); color:var(--tinta) }
.ed-ap .acciones .boton:not(.boton--vidrio):hover{ background:color-mix(in srgb, var(--ed) 82%, white); border-color:transparent }
.ed-ap__dom{ margin-top:var(--e-md); font-family:var(--sans); font-size:.86rem; color:#C9D4D7 }
.ed-ap__dom b{ color:var(--papel); font-weight:600 }

/* Ficha: qué es, para quién, qué resuelve, estado */
.ed-ficha__rej{ display:grid; gap:var(--e-xl); align-items:start }
.ed-ficha__lista{ margin:0; display:grid; gap:0 }
.ed-ficha__fila{ display:grid; gap:.35rem; padding:var(--e-md) 0; border-top:1px solid var(--filete) }
.ed-ficha__fila:last-child{ border-bottom:1px solid var(--filete) }
.ed-ficha__fila dt{ font-family:var(--sans); font-weight:650; font-size:.92rem; color:var(--ed-hondo) }
.ed-ficha__fila dd{ margin:0; font-size:1.06rem; line-height:1.6; color:var(--tinta-2); max-width:60ch }
.ed-ficha__fila dd .ed-estado{ margin-right:.5rem; vertical-align:.1em }
.ed-ficha__foto{ margin:0; border-radius:1rem; overflow:hidden; box-shadow:0 30px 50px -36px rgba(10,26,47,.55) }
.ed-ficha__foto img{ display:block; width:100%; height:auto; aspect-ratio:4 / 5; object-fit:cover }
.ed-ficha__foto figcaption{ font-family:var(--sans); font-size:.82rem; color:var(--mudo); padding:.65rem .1rem 0; background:var(--papel) }
@media (min-width:56rem){
  .ed-ficha__rej{ grid-template-columns:minmax(0, 7fr) minmax(0, 4fr); gap:clamp(3rem, 6vw, 6rem) }
  .ed-ficha__foto{ position:sticky; top:calc(var(--alto-nav) + 1.5rem) }
}

/* Secuencias (horas del día, semanas, módulos): sí son una secuencia */
.ed-seq__cab{ max-width:46rem; margin-bottom:var(--e-xl) }
.ed-seq__cab .entrada{ margin-top:var(--e-sm) }
.ed-seq{ list-style:none; margin:0; padding:0; display:grid; gap:0; counter-reset:none }
.ed-seq__paso{ display:grid; grid-template-columns:6.5rem minmax(0, 1fr); gap:var(--e-md); padding:var(--e-md) 0; border-top:1px solid var(--fl) }
.ed-seq__paso:last-child{ border-bottom:1px solid var(--fl) }
.ed-seq__k{ font-family:var(--sans); font-weight:650; font-size:.95rem; color:var(--ed); font-variant-numeric:tabular-nums; padding-top:.15rem }
.ed-seq__t{ font-family:var(--sans); font-weight:650; font-size:1.08rem; line-height:1.3; margin:0 0 .3rem; color:var(--t1) }
.ed-seq__d{ margin:0; font-size:1rem; line-height:1.55; color:var(--t2); max-width:62ch }
.ed-seq__d small{ display:block; margin-top:.3rem; font-family:var(--sans); font-size:.84rem; color:var(--t3) }
.ed-seq__nota{ margin:var(--e-md) 0 0; font-size:.88rem; color:var(--t3) }
@media (min-width:60rem){
  .ed-seq--dos{ grid-template-columns:1fr 1fr; column-gap:clamp(2rem, 5vw, 5rem) }
  .ed-seq--dos .ed-seq__paso:nth-last-child(2){ border-bottom:1px solid var(--fl) }
}

/* Bloques de texto con lista sobria */
.ed-par__rej{ display:grid; gap:var(--e-xl) }
.ed-par__col h2{ margin-bottom:var(--e-md) }
.ed-sale{ display:inline-flex; align-items:center; gap:.4rem }
.ed-sale svg{ flex:none }
.ed-par__col .entrada + .ed-lista{ margin-top:var(--e-md) }
.ed-par__col p + p{ margin-top:var(--e-sm) }
.ed-par__col a:not([class]){ color:var(--t1); text-decoration:underline; text-underline-offset:3px }
.ed-lista{ list-style:none; margin:0; padding:0 }
.ed-lista li{ position:relative; padding:.85rem 0; border-top:1px solid var(--fl); font-size:1rem; line-height:1.55; color:var(--t2) }
.ed-lista li:last-child{ border-bottom:1px solid var(--fl) }
.ed-lista a{ color:var(--t1); text-decoration:underline; text-underline-offset:3px }
.ed-lista b{ color:var(--t1); font-weight:650 }
.ed-par__liga{ margin-top:var(--e-md) }
.ed-cifra{ margin:var(--e-lg) 0 0; padding-top:var(--e-md); border-top:1px solid var(--filete) }
.ed-cifra b{ display:block; font-family:var(--sans); font-weight:650; font-size:clamp(2.2rem, 1.8rem + 1.4vw, 3rem); letter-spacing:-.02em; line-height:1.05; color:var(--ed-hondo) }
.ed-cifra span{ display:block; margin-top:.35rem; font-size:.98rem; line-height:1.5; color:var(--tinta-2) }
.ed-cifra a{ display:inline-block; margin-top:.4rem; font-family:var(--sans); font-size:.8rem; color:var(--mudo) }
@media (min-width:56rem){ .ed-par__rej{ grid-template-columns:1fr 1fr; gap:clamp(3rem, 6vw, 6rem) } }

/* Dónde encaja + cierre */
.ed-encaja__rej{ display:grid; gap:var(--e-xl); align-items:start }
.ed-encaja__lista{ list-style:none; margin:0; padding:0; display:grid }
.ed-encaja__lista li{ border-top:1px solid var(--filete-firme) }
.ed-encaja__lista li:last-child{ border-bottom:1px solid var(--filete-firme) }
.ed-encaja__lista a{ display:grid; grid-template-columns:auto minmax(0, 1fr); gap:.3rem 1.1rem; align-items:start; padding:1.35rem 0;
  text-decoration:none; color:var(--tinta) }
.ed-encaja__lista a:focus-visible{ outline:3px solid var(--petroleo); outline-offset:4px }
.ed-encaja__ico{ grid-row:span 2; display:grid; place-items:center; width:2.2rem; height:2.2rem; color:color-mix(in oklab, var(--c) 55%, var(--tinta)); transition:transform .25s var(--curva) }
.ed-encaja__ico svg{ width:1.6rem; height:1.6rem }
.ed-encaja__lista b{ font-family:var(--sans); font-weight:650; font-size:clamp(1.15rem, 1.05rem + .4vw, 1.4rem); letter-spacing:-.01em;
  text-decoration:underline; text-decoration-color:transparent; text-decoration-thickness:2px; text-underline-offset:5px; transition:text-decoration-color .2s var(--curva) }
.ed-encaja__lista a:hover b{ text-decoration-color:color-mix(in oklab, var(--c) 70%, var(--tinta)) }
.ed-encaja__lista a:hover .ed-encaja__ico{ transform:translateX(3px) }
.ed-encaja__lista span:last-child{ font-size:.98rem; line-height:1.5; color:var(--tinta-2); max-width:52ch }
@media (min-width:56rem){ .ed-encaja__rej{ grid-template-columns:minmax(0, 5fr) minmax(0, 6fr); gap:clamp(3rem, 6vw, 6rem) } }

.ed-cierre{ text-align:left }
.ed-cierre__in{ max-width:48rem }
.ed-cierre .h2{ margin-bottom:var(--e-sm) }
.ed-cierre .acciones{ margin-top:var(--e-lg); display:flex; flex-wrap:wrap; gap:.75rem }
.ed-cierre .boton:not(.boton--vidrio){ background:var(--ed); border-color:var(--ed); color:var(--tinta) }
.ed-cierre .boton:not(.boton--vidrio):hover{ background:color-mix(in srgb, var(--ed) 82%, white); border-color:transparent }
.ed-cierre__origen{ margin-top:var(--e-lg); font-family:var(--sans); font-size:.9rem; color:var(--t3) }
.ed-cierre__origen a{ color:var(--t2) }

@media (max-width:37.5rem){
  .ed-seq__paso{ grid-template-columns:1fr; gap:.3rem }
  .ed-cierre .acciones{ flex-direction:column; align-items:stretch }
}

/* ============================================================ 3 · v27 · APERTURA DE PRODUCTO, PIEZAS VIVAS, VITRINA Y MAPA */
.ed-ficha__lema{ margin:var(--e-md) 0 var(--e-lg); font-family:var(--lee); font-size:clamp(1.25rem, 1.05rem + .7vw, 1.6rem); line-height:1.45; color:var(--tinta); max-width:36ch; text-wrap:pretty }

/* Sin JS se ve la secuencia; con JS, la pieza viva */
.ed-js .ed-nojs{ display:none }
.ed-vivo__rej[hidden], .ed-mapa [data-ed-solo-js][hidden]{ display:none }
.ed-vivo__rej{ display:grid; grid-template-columns:minmax(0, 1fr); gap:var(--e-xl); align-items:start }
.ed-vivo__rej > *, .ed-vivo__escena > *{ min-width:0 }
.ed-vivo__nota{ margin:var(--e-xl) 0 0; font-family:var(--sans); font-size:.86rem; line-height:1.55; color:var(--t3); max-width:70ch }
.ed-vivo__nota .liga{ margin-left:.35rem }

/* Reloj: pasos como pestañas, con una línea que se llena */
.ed-reloj{ position:relative; list-style:none; margin:0; padding:0; display:grid }
.ed-reloj li + li{ border-top:1px solid var(--fl) }
.ed-reloj__b{ position:relative; width:100%; display:grid; grid-template-columns:5.6rem minmax(0, 1fr); column-gap:.75rem; align-items:baseline;
  padding:.8rem .6rem; border:0; border-radius:0; background:none; color:var(--t2); font:inherit; text-align:left; cursor:pointer;
  transition:background-color .2s var(--curva), color .2s var(--curva) }
.ed-reloj__h{ font-family:var(--sans); font-size:.84rem; color:var(--t3); font-variant-numeric:tabular-nums }
.ed-reloj__t{ font-family:var(--sans); font-weight:600; font-size:1rem; line-height:1.25; color:var(--t2); transition:color .2s var(--curva) }
.ed-reloj__b:hover{ background:rgba(216,203,179,.06) }
.ed-reloj__b:hover .ed-reloj__t{ color:var(--t1) }
.ed-reloj__b.ed-hecho .ed-reloj__t{ color:var(--t1) }
.ed-reloj__b[aria-selected="true"]{ background:rgba(216,203,179,.08) }
.ed-reloj__b[aria-selected="true"] .ed-reloj__h, .ed-reloj__b[aria-selected="true"] .ed-reloj__t{ color:var(--ed) }
.ed-reloj__b:focus-visible{ outline:2px solid var(--piedra); outline-offset:-2px }
.ed-vivo__mando .ed-mando{ margin-top:var(--e-md) }
.ed-vivo__mando .ed-mando__estado{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap }
.ed-vivo__mando .ed-mando__play{ margin-left:0 }

.ed-vivo__escena{ display:grid; grid-template-columns:minmax(0, 1fr); gap:var(--e-lg); align-items:center }
.ed-vivo__escena:focus{ outline:none }
.ed-vivo__txt[hidden]{ display:none }
.ed-vivo__h{ margin:0 0 .4rem; font-family:var(--sans); font-size:.9rem; font-weight:600; color:var(--ed) }
.ed-vivo__txt h3{ font-family:var(--sans); font-weight:650; font-size:clamp(1.6rem, 1.3rem + 1.1vw, 2.25rem); line-height:1.08; letter-spacing:-.02em; margin:0 0 var(--e-sm) }
.ed-vivo__txt p:last-child{ margin:0; font-family:var(--lee); font-size:clamp(1.05rem, 1rem + .25vw, 1.18rem); line-height:1.6; color:var(--t2); max-width:34ch }

/* Teléfono ilustrado */
.ed-tel{ justify-self:center; width:min(100%, 18.5rem); padding:.65rem; border-radius:2.4rem; background:#1A2C44;
  box-shadow:inset 0 0 0 1px rgba(216,203,179,.18), 0 40px 70px -40px rgba(0,0,0,.8) }
.ed-tel__cab{ display:flex; justify-content:space-between; align-items:center; padding:.55rem 1rem .45rem; font-family:var(--sans); font-size:.72rem; color:#C9D4D7 }
.ed-tel__marca{ display:inline-flex; align-items:center; gap:.4rem; font-weight:600 }
.ed-tel__marca svg{ width:.95rem; height:.95rem; color:var(--ed) }
.ed-tel__pantalla{ position:relative; height:24rem; overflow:hidden; border-radius:1.8rem; background:var(--papel); color:var(--tinta); padding:1.15rem 1rem }
.ed-tel__vista[hidden]{ display:none }
.ed-js .ed-tel__vista.ed-entra{ animation:ed-texto .35s var(--curva) both }
.ed-js .ed-vivo__txt:not([hidden]){ animation:ed-texto .3s var(--curva) both }
.ed-sin-mov .ed-vivo__txt:not([hidden]){ animation:none }

.ed-ui__t{ margin:0; font-family:var(--sans); font-weight:650; font-size:1.02rem; color:var(--tinta) }
.ed-ui__s{ margin:.15rem 0 .9rem; font-family:var(--sans); font-size:.75rem; color:var(--mudo) }
.ed-ui__lista, .ed-ui__marcas, .ed-ui__barras, .ed-ui__mods, .ed-ui__plan{ list-style:none; margin:0; padding:0 }
.ed-ui__fila{ display:grid; grid-template-columns:1.6rem minmax(0, 1fr) auto; align-items:center; gap:.5rem; padding:.48rem 0; border-top:1px solid var(--filete);
  font-family:var(--sans); font-size:.78rem; color:var(--tinta-2) }
.ed-ui__av{ display:grid; place-items:center; width:1.6rem; height:1.6rem; border-radius:50%; background:#E6DCC9; font-size:.66rem; font-weight:650; color:var(--tinta) }
.ed-ui__chip{ font-size:.68rem; font-weight:600; padding:.2rem .45rem; border-radius:999px; background:rgba(20,80,79,.1); color:#0E3B3A; white-space:nowrap }
.ed-ui__fila.falta .ed-ui__chip{ background:#F7DCE1; color:#7C2335 }
.ed-ui__marcas li{ display:flex; justify-content:space-between; gap:.6rem; padding:.7rem 0; border-top:1px solid var(--filete); font-family:var(--sans); font-size:.82rem; color:var(--tinta-2) }
.ed-ui__marcas b{ color:var(--tinta); font-weight:650 }
.ed-ui__ok{ margin:.9rem 0 0; font-family:var(--sans); font-size:.74rem; color:#0E3B3A }
.ed-ui__alerta, .ed-ui__caso{ padding:.85rem .9rem; border-radius:.9rem; background:#fff; box-shadow:0 0 0 1px #F0C3CC, 0 10px 22px -16px rgba(124,35,53,.6) }
.ed-ui__alerta p, .ed-ui__caso p{ margin:0 0 .5rem; font-family:var(--sans); font-size:.8rem; line-height:1.4; color:var(--tinta) }
.ed-ui__alerta p:last-child, .ed-ui__caso p:last-child{ margin:0 }
.ed-ui__k{ font-size:.68rem !important; font-weight:650; color:#7C2335 !important; margin-bottom:.15rem !important }
.ed-ui__caso{ margin-top:.9rem; box-shadow:0 0 0 1px var(--filete) }
.ed-ui__caso .ed-ui__k{ color:var(--mudo) !important }
.ed-ui__msj{ position:relative; padding:.8rem .85rem 1.3rem; border-radius:1rem 1rem 1rem .25rem; background:#fff; box-shadow:0 0 0 1px var(--filete) }
.ed-ui__msj p{ margin:0; font-family:var(--sans); font-size:.8rem; line-height:1.45; color:var(--tinta) }
.ed-ui__msj span{ position:absolute; right:.8rem; bottom:.4rem; font-family:var(--sans); font-size:.64rem; color:var(--mudo) }
.ed-ui__canales{ display:flex; gap:.35rem; margin:.9rem 0 0 }
.ed-ui__canales span{ font-family:var(--sans); font-size:.68rem; padding:.22rem .5rem; border-radius:999px; box-shadow:inset 0 0 0 1px var(--filete-firme); color:var(--tinta-2) }
.ed-ui__barras{ display:grid; gap:.45rem }
.ed-ui__barras li{ position:relative; height:1.5rem; border-radius:.4rem; background:#ECE7DE; overflow:hidden }
.ed-ui__barras li::before{ content:""; position:absolute; inset:0 auto 0 0; width:calc(var(--v) * 100%); background:#CFE2DF }
.ed-ui__barras li.sel::before{ background:#F2C2CB }
.ed-ui__barras span{ position:relative; display:block; padding:.25rem .5rem; font-family:var(--sans); font-size:.72rem; font-weight:600; color:var(--tinta) }

/* Brújula en el teléfono */
.ed-ui__form{ display:grid; gap:.6rem }
.ed-ui__form label{ display:grid; gap:.25rem; font-family:var(--sans); font-size:.72rem; font-weight:600; color:var(--tinta-2) }
.ed-ui__form label i{ font-style:normal; font-weight:400; color:var(--mudo) }
.ed-ui__form label span{ display:block; min-height:2.1rem; padding:.55rem .65rem; border-radius:.6rem; background:#fff; box-shadow:inset 0 0 0 1px var(--filete-firme); font-weight:400; font-size:.78rem; color:var(--tinta) }
.ed-ui__btn{ margin:.3rem 0 0; padding:.65rem; border-radius:999px; background:var(--ac-brujula); text-align:center; font-family:var(--sans); font-weight:650; font-size:.82rem; color:var(--tinta) }
.ed-ui__mods li{ display:grid; grid-template-columns:minmax(0, 1fr) auto; gap:.2rem .5rem; padding:.42rem 0; border-top:1px solid var(--filete); font-family:var(--sans); font-size:.76rem; color:var(--tinta-2) }
.ed-ui__mods li::after{ content:""; grid-column:1 / -1; height:4px; border-radius:2px; width:calc(var(--m) / 8 * 100%); background:var(--ac-brujula) }
.ed-ui__mods b{ font-weight:600; color:var(--tinta) }
.ed-ui__hex{ display:block; width:100%; height:auto; margin:.2rem 0 .4rem }
.ed-ui__hex .m polygon, .ed-ui__hex .m line{ fill:none; stroke:rgba(14,23,38,.14); stroke-width:1 }
.ed-ui__hex .p{ fill:color-mix(in srgb, var(--ac-brujula) 35%, transparent); stroke:#B5651D; stroke-width:2; stroke-linejoin:round }
.ed-ui__hex text{ font-family:var(--sans); font-size:13px; font-weight:650; fill:var(--tinta); text-anchor:middle }
.ed-ui__nota{ margin:0; font-family:var(--sans); font-size:.74rem; line-height:1.45; color:var(--tinta-2) }
.ed-ui__plan{ display:grid; gap:.6rem }
.ed-ui__plan li{ display:grid; gap:.2rem; padding:.7rem .8rem; border-radius:.8rem; background:#fff; box-shadow:0 0 0 1px var(--filete) }
.ed-ui__plan b{ font-family:var(--sans); font-size:.72rem; color:#9A5414 }
.ed-ui__plan span{ font-family:var(--sans); font-size:.8rem; line-height:1.4; color:var(--tinta) }

@media (min-width:64rem){
  .ed-vivo__rej{ grid-template-columns:minmax(15rem, 4fr) minmax(0, 8fr); column-gap:clamp(2.5rem, 5vw, 5rem) }
  .ed-vivo__escena{ grid-template-columns:minmax(0, 1fr) auto; column-gap:clamp(2rem, 4vw, 4rem) }
  .ed-tel{ width:18.5rem }
}
@media (max-width:63.99rem){
  .ed-reloj{ display:flex; gap:.4rem; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:none; margin:0 calc(var(--canal) * -1); padding:.2rem var(--canal) }
  .ed-reloj::-webkit-scrollbar{ display:none }
  .ed-reloj li{ flex:none }
  .ed-reloj li + li{ border-top:0 }
  .ed-reloj__b{ display:flex; flex-direction:column; align-items:flex-start; gap:.1rem; padding:.6rem .85rem; box-shadow:inset 0 0 0 1px var(--fl) }
  .ed-reloj__b[aria-selected="true"]{ box-shadow:inset 0 0 0 1.5px var(--ed) }
  .ed-reloj__t{ font-size:.92rem; white-space:nowrap }
  .ed-vivo__mando .ed-mando__play{ margin-left:auto; width:auto }
}

/* Los seis módulos de Brújula: barras de tiempo */
.ed-mods{ list-style:none; margin:0; padding:0 }
.ed-mods li{ display:grid; grid-template-columns:minmax(0, 1fr) auto; gap:.2rem 1rem; padding:var(--e-sm) 0; border-top:1px solid var(--filete) }
.ed-mods li:last-child{ border-bottom:1px solid var(--filete) }
.ed-mod__n{ font-family:var(--sans); font-weight:650; font-size:1.06rem; color:var(--tinta) }
.ed-mod__q{ grid-row:1; grid-column:2; font-family:var(--sans); font-size:.84rem; color:var(--mudo); align-self:center }
.ed-mod__d{ grid-column:1 / -1; font-size:.98rem; line-height:1.5; color:var(--tinta-2) }
.ed-mod__barra{ grid-column:1 / -1; height:6px; margin-top:.35rem; border-radius:3px; background:#EADFD0; position:relative; overflow:hidden }
.ed-mod__barra::after{ content:""; position:absolute; inset:0 auto 0 0; width:calc(var(--m) / 8 * 100%); background:var(--ac-brujula); border-radius:3px;
  transform-origin:0 50%; transition:transform .9s var(--curva) }
.ed-mods[data-entra]:not(.visto) .ed-mod__barra::after{ transform:scaleX(0) }
.ed-mods li:nth-child(2) .ed-mod__barra::after{ transition-delay:.06s } .ed-mods li:nth-child(3) .ed-mod__barra::after{ transition-delay:.12s }
.ed-mods li:nth-child(4) .ed-mod__barra::after{ transition-delay:.18s } .ed-mods li:nth-child(5) .ed-mod__barra::after{ transition-delay:.24s }
.ed-mods li:nth-child(6) .ed-mod__barra::after{ transition-delay:.3s }

/* Vitrina: capturas reales en una computadora y un celular */
.ed-vitrina{ overflow:hidden }
.ed-vitrina__rej{ display:grid; gap:var(--e-xl); align-items:center }
.ed-vitrina__txt .acciones{ margin-top:var(--e-lg) }
.ed-vitrina__txt .boton{ background:var(--tinta); border-color:var(--tinta); color:var(--papel) }
.ed-vitrina__dom{ margin-top:var(--e-sm); font-family:var(--sans); font-size:.86rem; color:var(--mudo) }
.ed-vitrina__equipos{ position:relative; padding:0 0 2.5rem }
.ed-nav-marco{ margin:0; border-radius:.9rem; overflow:hidden; background:#E9E5DD; box-shadow:0 0 0 1px var(--filete), 0 40px 60px -40px rgba(10,26,47,.55) }
.ed-nav-marco__barra{ display:flex; align-items:center; padding:.55rem .8rem }
.ed-nav-marco__barra span{ flex:1; max-width:22rem; margin:0 auto; padding:.28rem .8rem; border-radius:999px; background:#fff; font-family:var(--sans); font-size:.72rem; color:var(--mudo); text-align:center; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.ed-nav-marco img{ display:block; width:100%; height:auto }
.ed-cel-marco{ position:absolute; right:-.5rem; bottom:0; width:clamp(7rem, 24%, 11.5rem); margin:0; padding:.35rem; border-radius:1.5rem; background:var(--tinta);
  box-shadow:0 30px 50px -28px rgba(10,26,47,.7) }
.ed-cel-marco img{ display:block; width:100%; height:auto; border-radius:1.2rem }
@media (min-width:64rem){
  .ed-vitrina__rej{ grid-template-columns:minmax(0, 4fr) minmax(0, 8fr); column-gap:clamp(3rem, 6vw, 6rem) }
  .ed-cel-marco{ right:-1.5rem }
}

/* Mapa de las 25 sedes COAR */
.ed-mapa{ --ed:var(--ac-coar) }
.ed-mapa__rej{ display:grid; gap:var(--e-xl); align-items:start }
.ed-mapa__lienzo{ position:relative; width:min(100%, 30rem); justify-self:center; aspect-ratio:600 / 871 }
.ed-mapa__svg{ position:absolute; inset:0; width:100%; height:100% }
.ed-mapa__dep{ fill:rgba(216,203,179,.05); stroke:rgba(216,203,179,.28); stroke-width:1; stroke-linejoin:round; transition:fill .3s var(--curva) }
.ed-mapa__dep--s{ fill:rgba(216,203,179,.09) }
.ed-mapa__dep.on{ fill:color-mix(in srgb, var(--ac-coar) 30%, transparent) }
.ed-mapa__sedes{ position:absolute; inset:0 }
.ed-sede{ position:absolute; left:var(--x); top:var(--y); width:1.6rem; height:1.6rem; margin:-.8rem 0 0 -.8rem; padding:0; border:0; background:none; cursor:pointer; display:grid; place-items:center }
.ed-sede span{ width:.62rem; height:.62rem; border-radius:50%; background:var(--ac-coar); box-shadow:0 0 0 2px var(--noche); transition:transform .2s var(--curva), box-shadow .2s var(--curva) }
.ed-sede:hover span{ transform:scale(1.35) }
.ed-sede.on span{ transform:scale(1.5); box-shadow:0 0 0 2px var(--noche), 0 0 0 5px color-mix(in srgb, var(--ac-coar) 55%, transparent) }
.ed-js .ed-mapa__sedes .ed-sede span{ animation:ed-sede .5s var(--curva) both; animation-delay:calc(var(--i) * 35ms) }
@keyframes ed-sede{ from{ transform:scale(0) } }
.ed-mapa__ficha{ padding:var(--e-md) 0 0; border-top:1px solid var(--fl) }
.ed-mapa__fphr{ margin:var(--e-sm) 0 0; font-family:var(--sans); font-size:.9rem; font-weight:600; color:var(--ac-coar) }
.ed-mapa__fphr[hidden]{ display:none }
.ed-mapa__phr{ margin:var(--e-md) 0 0; font-size:1rem; line-height:1.55; color:var(--t2); max-width:60ch }
.ed-mapa__ver{ display:inline; margin-left:.35rem; padding:0; border:0; background:none; font:inherit; font-family:var(--sans); font-weight:600; font-size:.95rem; color:var(--ac-coar);
  text-decoration:underline; text-underline-offset:4px; text-decoration-thickness:1.5px; cursor:pointer }
.ed-mapa__ver[hidden]{ display:none }
.ed-mapa__ver:hover{ color:var(--papel) }
.ed-mapa__ver:focus-visible{ outline:2px solid var(--piedra); outline-offset:3px; border-radius:2px }
.ed-sedes__phr{ font-style:normal; font-weight:600; color:var(--ac-coar) }
.ed-phr-on .ed-sede:not(.ed-sede--phr) span{ opacity:.28 }
.ed-phr-on .ed-sede--phr span{ transform:scale(1.55); box-shadow:0 0 0 2px var(--noche), 0 0 0 5px rgba(244,242,238,.75) }
.ed-mapa__dep.phr{ fill:color-mix(in srgb, var(--ac-coar) 22%, transparent) }
.ed-fuentes{ margin:var(--e-sm) 0 0; font-family:var(--sans); font-size:.84rem; line-height:1.55; color:var(--t3); max-width:72ch }
.ed-fuentes summary{ display:inline-flex; align-items:center; gap:.4rem; cursor:pointer; list-style:none; color:var(--t2); font-weight:600; padding:.3rem 0 }
.ed-fuentes summary::-webkit-details-marker{ display:none }
.ed-fuentes summary::after{ content:""; width:.42rem; height:.42rem; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:translateY(-2px) rotate(45deg); transition:transform .2s var(--curva) }
.ed-fuentes[open] summary::after{ transform:translateY(1px) rotate(-135deg) }
.ed-fuentes summary:hover{ color:var(--t1) }
.ed-fuentes summary:focus-visible{ outline:2px solid var(--piedra); outline-offset:3px; border-radius:2px }
.ed-fuentes ul{ list-style:none; margin:.4rem 0 0; padding:0 }
.ed-fuentes li{ padding:.3rem 0 }
.ed-fuentes a{ color:var(--t2) }
.ed-mapa__ficha.ed-entra .ed-mapa__n, .ed-mapa__ficha.ed-entra .ed-mapa__dl{ animation:ed-texto .3s var(--curva) both }
.ed-mapa__k{ margin:0 0 .35rem; font-family:var(--sans); font-size:.84rem; color:var(--ed) }
.ed-mapa__n{ margin:0; font-family:var(--sans); font-weight:650; font-size:clamp(1.5rem, 1.25rem + 1vw, 2rem); line-height:1.1 }
.ed-mapa__dl{ margin:var(--e-sm) 0 0; display:grid; gap:.5rem }
.ed-mapa__dl div{ display:grid; grid-template-columns:6rem minmax(0, 1fr); gap:.75rem; padding-top:.5rem; border-top:1px solid var(--fl) }
.ed-mapa__dl dt{ font-family:var(--sans); font-size:.84rem; color:var(--t3) }
.ed-mapa__dl dd{ margin:0; font-size:.98rem; line-height:1.45; color:var(--t1) }
.ed-mapa__nav{ display:flex; gap:.5rem; margin-top:var(--e-sm) }
.ed-sedes{ list-style:none; margin:var(--e-md) 0 0; padding:0; display:grid; grid-template-columns:1fr 1fr; column-gap:1.25rem }
.ed-sedes li{ border-top:1px solid var(--fl) }
.ed-sedes__b{ display:none }
.ed-sedes__sinjs{ display:block; padding:.5rem 0; font-size:.9rem; line-height:1.35; color:var(--t2) }
.ed-sedes__sinjs b{ font-family:var(--sans); font-weight:600; color:var(--t1) }
.ed-js .ed-sedes__sinjs{ display:none }
.ed-js .ed-sedes__b{ display:grid; gap:.05rem; width:100%; padding:.45rem .5rem; margin:0 -.5rem; border:0; border-radius:.5rem; background:none; text-align:left; cursor:pointer; font:inherit; color:var(--t2);
  transition:background-color .2s var(--curva) }
.ed-sedes__b b{ font-family:var(--sans); font-weight:600; font-size:.9rem; color:var(--t1) }
.ed-sedes__b span{ font-family:var(--sans); font-size:.76rem; color:var(--t3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.ed-sedes__b:hover{ background:rgba(216,203,179,.07) }
.ed-sedes__b[aria-pressed="true"]{ background:color-mix(in srgb, var(--ac-coar) 16%, transparent) }
.ed-sedes__b[aria-pressed="true"] b{ color:var(--ac-coar) }
.ed-sedes__b:focus-visible{ outline:2px solid var(--piedra); outline-offset:-2px }
.ed-js .ed-sedes{ max-height:26rem; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:rgba(216,203,179,.3) transparent; padding-right:.5rem;
  scroll-snap-type:y proximity; scroll-padding-block:1.25rem;
  /* v28 · las filas que no caben se desvanecen arriba y abajo en vez de cortarse en seco */
  -webkit-mask-image:linear-gradient(to bottom, transparent 0, #000 1.25rem, #000 calc(100% - 2.5rem), transparent 100%);
  mask-image:linear-gradient(to bottom, transparent 0, #000 1.25rem, #000 calc(100% - 2.5rem), transparent 100%);
  padding-block:1.25rem 2rem }
.ed-js .ed-sedes li{ scroll-snap-align:start }
.ed-mapa__nota{ margin:var(--e-xl) 0 0; font-family:var(--sans); font-size:.84rem; line-height:1.55; color:var(--t3); max-width:72ch }
.ed-mapa__nota a{ color:var(--t2) }
.ed-mapa__cifra{ font-weight:650; color:var(--ac-coar) }
@media (min-width:56rem){
  .ed-mapa__rej{ grid-template-columns:minmax(0, 6fr) minmax(0, 5fr); column-gap:clamp(2.5rem, 5vw, 5rem) }
  .ed-mapa__lienzo{ width:100%; max-width:34rem }
}
@media (max-width:30rem){ .ed-sedes{ grid-template-columns:1fr } }

@media (prefers-reduced-motion:reduce){
  .ed-parada, .ed-parada__hito, .ed-parada__n, .ed-linea__seg, .ed-encaja__lista a, .ed-reloj__b, .ed-reloj__b::before,
  .ed-mapa__dep, .ed-sede span, .ed-sedes__b, .ed-mod__barra::after, .ed-encaja__ico, .ed-encaja__lista b, .ed-fuentes summary::after{ transition:none }
  .ed-encaja__lista a:hover .ed-encaja__ico{ transform:none }
  .ed-js .ed-tramo.ed-entra *, .ed-js .ed-tramo.ed-entra .ed-tramo__foto picture, .ed-js .ed-tramo.ed-entra .ed-tramo__foto img,
  .ed-js .ed-tel__vista.ed-entra, .ed-js .ed-vivo__txt:not([hidden]), .ed-js .ed-mapa__sedes .ed-sede span,
  .ed-mapa__ficha.ed-entra *, .ed-mando__barra{ animation:none !important }
  .ed-mods[data-entra]:not(.visto) .ed-mod__barra::after{ transform:none }
  .ed-mando__play{ display:none }
}
