/* LA PORTADA NUEVA, «EL TALLER» (versión final, fase 1: 11-nov-2026). Va con inc/portada.php y assets/js/portada.js.
   TODAVÍA NO SE ENCOLA: la portada publicada sigue siendo la de siempre.
   Todo cuelga de .stt-portada y lleva el prefijo pt-, para no chocar con theme.css.
   Lo que salió de la auditoría del 11-nov y ya está aquí: ninguna letra por debajo de 12 px; el foco, en tinta sobre lo
   claro y en mostaza sobre lo oscuro (la mostaza sobre el papel no llegaba a 3:1); todo lo que se pulsa mide 44 px;
   en la tableta el banco sigue en dos columnas; y [hidden] manda siempre (sin JavaScript no se ven mandos que no hacen nada). */
.stt-portada{--pt-papel:#FAFAF7;--pt-tinta:#0B1B2B;--pt-plano:#0C2238;--pt-panel:#12283D;--pt-gris:#56616F;--pt-filete:#D9D5CA;
  --pt-verde:#10B981;--pt-verde-vivo:#34D399;--pt-verde-texto:#04724F;--pt-verde-tinta:#062A1F;--pt-mostaza:#F2C230;--pt-coral:#FF6B6B;--pt-azul:#5A9BD8;
  --pt-p-verde:#CFF3E3;--pt-p-mostaza:#FBE9A9;--pt-p-coral:#FFD6CF;--pt-p-azul:#CFE3F8;
  --pt-serif:var(--wp--preset--font-family--serif,'Spectral',Georgia,serif);
  --pt-sans:var(--wp--preset--font-family--sans,'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif);
  --pt-mono:var(--wp--preset--font-family--mono,'JetBrains Mono',ui-monospace,Consolas,monospace);
  --pt-sale:cubic-bezier(.23,1,.32,1);
  color:var(--pt-tinta);font-family:var(--pt-sans);font-size:1.0625rem;line-height:1.55;background:var(--pt-papel);-webkit-font-smoothing:antialiased}
.stt-portada *,.stt-portada *::before,.stt-portada *::after{box-sizing:border-box}
.stt-portada [hidden]{display:none!important}
.stt-portada a{color:inherit}
.stt-portada :focus-visible{outline:3px solid var(--pt-tinta);outline-offset:2px}
.pt-arriba :focus-visible{outline-color:var(--pt-mostaza)}
.pt-ancho{max-width:1240px;margin-inline:auto;padding-inline:32px}
.pt-mono{font:500 .78rem/1.4 var(--pt-mono);letter-spacing:.07em;text-transform:uppercase;margin:0}
.pt-flecha{display:inline-block;transition:transform .18s var(--pt-sale)}
.pt-f-maquinas{--pt-color:var(--pt-azul);--pt-papel-color:var(--pt-p-azul)}
.pt-f-electricidad{--pt-color:var(--pt-mostaza);--pt-papel-color:var(--pt-p-mostaza)}
.pt-f-diseno{--pt-color:var(--pt-coral);--pt-papel-color:var(--pt-p-coral)}
.pt-f-control{--pt-color:var(--pt-verde);--pt-papel-color:var(--pt-p-verde)}

/* ---------------------------------------------------------------- arriba: titular, buscador y banco */
.pt-arriba{background:var(--pt-tinta);color:#fff}
.pt-raya{height:10px;background:repeating-linear-gradient(-45deg,var(--pt-mostaza) 0 14px,var(--pt-tinta) 14px 28px)}
.pt-titular{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:40px;align-items:end;padding:24px 0 22px}
.pt-sobre{font:500 .78rem/1.5 var(--pt-mono);letter-spacing:.07em;text-transform:uppercase;color:#9FB0C2;margin:0 0 10px}
.pt-claim{font:600 clamp(2.3rem,4.1vw,3.5rem)/1.03 var(--pt-serif);letter-spacing:-.03em;margin:0;color:#fff}
.pt-claim em{font-style:italic;color:var(--pt-verde-vivo);position:relative;white-space:nowrap}
.pt-claim em svg{position:absolute;left:-2%;bottom:-.16em;width:104%;height:.3em;overflow:visible}
.pt-claim em path{fill:none;stroke:var(--pt-mostaza);stroke-width:5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:pt-trazo .8s var(--pt-sale) .35s forwards}
@keyframes pt-trazo{to{stroke-dashoffset:0}}
.pt-lema{margin:0 0 12px;color:#DCE5EE;font-size:1rem}
.pt-lema b{color:#fff;font-weight:600}
/* el buscador y su lista de sugerencias */
.pt-busca-caja{position:relative;z-index:8}
.pt-busca{display:flex;align-items:stretch;background:#fff;margin:0}
.pt-busca input{flex:1;min-width:0;height:54px;border:0;border-radius:0;padding:0 16px;font:400 1.02rem var(--pt-sans);background:transparent;color:var(--pt-tinta)}
.pt-busca input:focus{outline:none}
.pt-busca:focus-within{outline:3px solid var(--pt-mostaza);outline-offset:2px}
.pt-busca button[type="submit"]{border:0;border-radius:0;background:var(--pt-verde);color:var(--pt-verde-tinta);font:600 1rem var(--pt-sans);padding:0 20px;cursor:pointer;transition:transform .14s var(--pt-sale)}
.pt-busca button[type="submit"]:active{transform:scale(.96)}
.pt-tecla{display:none;align-self:center;margin-right:12px;font:500 .78rem var(--pt-mono);color:var(--pt-gris);border:1px solid var(--pt-filete);border-bottom-width:2px;padding:1px 7px}
.pt-js .pt-tecla{display:block}
.pt-busca:focus-within .pt-tecla,.pt-busca.con-texto .pt-tecla{display:none}
.pt-borra{border:0;background:none;color:var(--pt-gris);font:400 1.6rem/1 var(--pt-sans);padding:0 12px;min-width:44px;cursor:pointer}
.pt-sug{position:absolute;right:0;top:calc(100% + 8px);width:min(590px,calc(100vw - 36px));max-height:480px;overflow:auto;overscroll-behavior:contain;
  background:#fff;color:var(--pt-tinta);border:1px solid var(--pt-tinta);box-shadow:0 26px 50px -20px rgba(0,0,0,.65);
  visibility:hidden;opacity:0;transform:translateY(-4px);transition:opacity .14s var(--pt-sale),transform .14s var(--pt-sale),visibility 0s .14s}
.pt-sug.abierta{visibility:visible;opacity:1;transform:none;transition-delay:0s}
.pt-sug-rot{margin:0;padding:11px 14px 5px;color:var(--pt-gris)}
.pt-op{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;min-height:54px;padding:8px 14px 8px 10px;border:0;border-left:4px solid var(--pt-color,transparent);
  background:none;text-align:left;text-decoration:none;color:inherit;font:inherit;cursor:pointer}
.pt-op img,.pt-op .pt-cuadro{width:60px;height:38px;border:1px solid var(--pt-tinta);display:block}
.pt-op img{object-fit:cover}
.pt-op .pt-cuadro{display:grid;place-items:center;background:var(--pt-papel-color,var(--pt-papel));font:500 .75rem var(--pt-mono);letter-spacing:.06em;text-transform:uppercase}
.pt-op strong{display:block;font:600 1.06rem/1.2 var(--pt-serif)}
.pt-op small{display:block;color:var(--pt-gris);font-size:.85rem;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pt-op .pt-m{color:var(--pt-gris);text-align:right;font:500 .75rem/1.5 var(--pt-mono);letter-spacing:.05em;text-transform:uppercase}
.pt-op mark{background:var(--pt-p-mostaza);color:inherit}
.pt-op.activa{background:#F1EEE6}
.pt-op.pt-todo{grid-template-columns:minmax(0,1fr) auto;border-top:1px solid var(--pt-filete);border-left-color:transparent;font-weight:600;color:var(--pt-verde-texto)}
.pt-prueba{display:flex;flex-wrap:wrap;gap:8px;padding:6px 14px 14px}
.pt-prueba .pt-op{width:auto;min-height:44px;display:inline-flex;border:1px solid var(--pt-tinta);padding:6px 12px;font:500 .95rem var(--pt-sans)}
.pt-prueba .pt-op.activa{background:var(--pt-p-mostaza)}
.pt-nada{margin:0;padding:14px 14px 8px}
/* el banco: el escenario (foto, o ruedas con JavaScript) y el panel */
.pt-maquina{display:grid;grid-template-columns:minmax(0,1fr) 340px;background:var(--pt-panel);border:2px solid #fff}
.pt-escenario{position:relative;min-height:380px;overflow:hidden;border-right:2px solid #fff;background-color:var(--pt-papel-color,#E3E8EF)}
.pt-escenario img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.pt-maquina.en-vivo .pt-escenario{background-color:var(--pt-plano);
  background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:100px 100px,100px 100px,20px 20px,20px 20px}
.pt-maquina.en-vivo .pt-escenario img{display:none}
.pt-escenario svg{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.pt-escenario svg.agarrado{cursor:grabbing}
.pt-escenario svg:focus-visible{outline-offset:-4px}
.pt-maquina:not(.en-vivo) .pt-escenario svg,.pt-maquina:not(.en-vivo) .pt-pista,.pt-escenario.tocado .pt-pista{display:none}
.pt-pista{position:absolute;right:10px;top:10px;margin:0;background:var(--pt-tinta);color:#fff;padding:7px 12px;font:500 .78rem var(--pt-mono);letter-spacing:.07em;text-transform:uppercase;pointer-events:none}
.pt-eje{fill:none;stroke:rgba(255,255,255,.32);stroke-width:1;stroke-dasharray:14 5 2 5;vector-effect:non-scaling-stroke}
.pt-prim{fill:none;stroke:rgba(255,255,255,.5);stroke-width:1;stroke-dasharray:5 6;vector-effect:non-scaling-stroke}
.pt-contacto{fill:var(--pt-mostaza);stroke:#0C2238;stroke-width:2;vector-effect:non-scaling-stroke}
.pt-rot{fill:#DCE5EE;font-family:var(--pt-mono);font-weight:500;text-anchor:middle;letter-spacing:.06em}
.pt-giro path{fill:none;stroke:#fff;stroke-opacity:.8;stroke-width:2;vector-effect:non-scaling-stroke} .pt-giro polygon{fill:#fff;fill-opacity:.8}
.pt-panel{padding:16px 18px 18px;display:flex;flex-direction:column;gap:14px}
.pt-panel .pt-mono{color:#9FB0C2}
.pt-instrumentos{display:flex;flex-direction:column;gap:14px;flex:1}
.pt-relojes{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pt-reloj{border:1px solid rgba(255,255,255,.3);padding:8px 8px 6px;text-align:center}
.pt-reloj svg{display:block;width:100%;max-width:190px;height:auto;margin-inline:auto}
.pt-reloj b{display:block;font:500 1.25rem/1.1 var(--pt-mono)}
.pt-reloj > span{font:500 .875rem var(--pt-mono);letter-spacing:.02em;color:#9FB0C2;white-space:nowrap}
.pt-reloj sub{font-size:.86em;line-height:0}
.pt-selector{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #fff;margin-top:6px}
.pt-selector button{border:0;border-left:1px solid #fff;border-radius:0;background:none;color:#fff;font:500 1.05rem var(--pt-mono);min-height:44px;cursor:pointer;transition:background-color .15s ease,transform .14s var(--pt-sale)}
.pt-selector button:first-child{border-left:0}
.pt-selector button[aria-pressed="true"]{background:var(--pt-verde-vivo);color:var(--pt-verde-tinta)}
.pt-selector button:active{transform:scale(.96)}
.pt-formula{font:500 1.02rem/2.5 var(--pt-sans);margin:0;white-space:nowrap}
.pt-formula sub{font-size:.75em;line-height:0}
.pt-formula b{font:500 1.05rem var(--pt-mono);color:var(--pt-mostaza)}
.pt-frac{display:inline-flex;flex-direction:column;text-align:center;line-height:1.15;vertical-align:middle}
.pt-frac > span{padding:0 5px} .pt-frac > span:first-child{border-bottom:1.5px solid currentColor}
.pt-ficha{flex:1}
.pt-maquina.en-vivo .pt-ficha{display:none}
.pt-ficha-nombre{font:600 1.7rem/1.1 var(--pt-serif);margin:2px 0 8px;color:#fff}
.pt-ficha p{margin:0 0 8px;color:#DCE5EE;font-size:.98rem}
.pt-ud{font-size:.95rem;color:#DCE5EE;padding:4px 0;text-decoration:underline;text-decoration-color:var(--pt-mostaza);text-decoration-thickness:2px;text-underline-offset:4px}
.pt-abrir{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;background:var(--pt-verde);color:var(--pt-verde-tinta)!important;text-decoration:none;font:600 1.05rem var(--pt-sans);transition:transform .14s var(--pt-sale)}
.pt-abrir:active{transform:scale(.97)}
/* la tira: todos los simuladores; se desliza con las flechas, con el dedo o arrastrándola */
.pt-tira-caja{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding:12px 0 24px}
.pt-tira{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;user-select:none;-webkit-user-select:none}
.pt-tira::-webkit-scrollbar{display:none}
.pt-js .pt-tira{cursor:grab} .pt-tira.arrastrando{cursor:grabbing}
.pt-tira a{flex:0 0 150px;padding:6px 0 0;color:#C9D4DF;text-decoration:none;border-top:3px solid transparent;cursor:inherit}
.pt-tira img{width:100%;height:auto;aspect-ratio:16/7;object-fit:cover;display:block;border:1px solid rgba(255,255,255,.5);opacity:.74;transition:opacity .15s ease;pointer-events:none}
.pt-tira i{font:500 .75rem var(--pt-mono);font-style:normal;color:#9FB0C2;display:block;margin-top:5px}
.pt-tira span{display:block;font:600 .95rem/1.2 var(--pt-serif);margin-top:2px}
.pt-tira a[aria-pressed="true"]{border-top-color:var(--pt-mostaza);color:#fff} .pt-tira a[aria-pressed="true"] img{opacity:1}
.pt-tira-ir{width:44px;height:66px;border:1px solid rgba(255,255,255,.6);border-radius:0;background:none;color:#fff;font:500 1.2rem var(--pt-mono);cursor:pointer;transition:transform .14s var(--pt-sale)}
.pt-tira-ir:active{transform:scale(.94)}

/* ---------------------------------------------------------------- cabeceras de sección y pestañas de curso */
.pt-cabeza{display:flex;flex-wrap:wrap;align-items:flex-end;gap:0 24px;border-bottom:3px solid var(--pt-tinta)}   /* si las pestañas no caben junto al título, bajan a su línea */
.pt-cabeza h2{font:600 clamp(1.8rem,2.8vw,2.5rem)/1.1 var(--pt-serif);letter-spacing:-.015em;margin:0 auto 10px 0;color:var(--pt-tinta)}
.pt-pestanas{display:flex;gap:6px;max-width:100%;overflow-x:auto;scrollbar-width:none}
.pt-pestanas::-webkit-scrollbar{display:none}
.pt-pestanas button{flex:0 0 auto;border:0;border-radius:0;background:none;min-height:44px;min-width:48px;padding:0 12px;font:500 .98rem var(--pt-sans);color:var(--pt-gris);cursor:pointer;white-space:nowrap;transition:background-color .15s ease,color .15s ease}
.pt-pestanas button[aria-pressed="true"]{color:var(--pt-tinta);font-weight:600;background:var(--pt-mostaza)}
.pt-nota{margin:12px 0 0;padding:9px 12px;border-left:3px solid var(--pt-verde);background:#fff;font-size:.95rem;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
.pt-nota button{border:0;background:none;min-height:44px;padding:0;font:600 .95rem var(--pt-sans);color:var(--pt-verde-texto);cursor:pointer;text-decoration:underline;text-underline-offset:3px}

/* ---------------------------------------------------------------- los cajones de simuladores */
.pt-cajones{padding:46px 0 0}
.pt-bajo{display:flex;align-items:center;gap:16px;margin:12px 0 18px;min-height:44px}
.pt-cuenta{color:var(--pt-gris);margin:0 auto 0 0}
.pt-pausa{border:1px solid var(--pt-tinta);border-radius:0;background:none;color:var(--pt-tinta);min-height:44px;padding:0 14px;font:500 .9rem var(--pt-sans);white-space:nowrap;cursor:pointer;transition:transform .14s var(--pt-sale)}
.pt-pausa:active{transform:scale(.97)}
.pt-pausa[aria-pressed="true"]{background:var(--pt-tinta);color:#fff}
.pt-cajon{border-top:2px solid var(--pt-tinta);background:var(--pt-papel-color)}
.pt-cajon:last-of-type{border-bottom:2px solid var(--pt-tinta)}
.pt-tirador{background:var(--pt-color);border-bottom:2px solid var(--pt-tinta)}
/* una rejilla fija, igual en los cuatro cajones: título y recuento arriba, las unidades debajo y las flechas a la derecha
   (con flex, donde los enlaces cabían junto al título subían a su línea y ese cajón quedaba distinto de los demás) */
.pt-tirador .pt-ancho{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:4px 20px;padding-top:10px;padding-bottom:10px}
.pt-tirador h3{grid-column:1;grid-row:1} .pt-tirador .pt-cuantos{grid-column:2;grid-row:1} .pt-tirador ul{grid-column:1 / 3;grid-row:2} .pt-tirador .pt-flechas{grid-column:3;grid-row:1 / 3}
.pt-tirador h3{font:600 1.5rem/1.15 var(--pt-serif);margin:0;color:var(--pt-tinta)}
.pt-tirador h3 a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}   /* el título lleva al catálogo de simuladores */
.pt-tirador h3 a::after{content:"\00a0\2192";font:500 .7em var(--pt-sans);text-decoration:none;display:inline-block}
.pt-tirador ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:2px 14px;font-size:.95rem}
.pt-tirador li a{display:inline-block;padding:4px 0;text-decoration-thickness:1px;text-underline-offset:3px}
.pt-flechas{margin-left:auto;display:flex;gap:6px;align-self:center}
.pt-flechas button{width:44px;height:44px;border:2px solid var(--pt-tinta);border-radius:0;background:none;color:var(--pt-tinta);font:500 1.15rem var(--pt-mono);cursor:pointer;transition:transform .14s var(--pt-sale)}
.pt-flechas button:active{transform:scale(.94)}
.pt-carril{display:flex;gap:14px;overflow-x:auto;padding:16px max(32px,calc((100vw - 1240px)/2 + 32px));scrollbar-width:thin}
.pt-js .pt-carril{scrollbar-width:none} .pt-js .pt-carril::-webkit-scrollbar{display:none}
.pt-placa{flex:0 0 250px;background:#fff;border:2px solid var(--pt-tinta);text-decoration:none;display:block}
.pt-placa .pt-foto{display:block;aspect-ratio:16/10;overflow:hidden;border-bottom:2px solid var(--pt-tinta)}
.pt-placa img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s var(--pt-sale)}
.pt-placa .pt-txt{display:block;padding:8px 10px 10px}
.pt-placa .pt-mono{color:var(--pt-gris);font-size:.75rem;display:block}
.pt-placa strong{display:block;font:600 1.15rem/1.2 var(--pt-serif);margin-top:2px}
.pt-placa .pt-desc{display:none}                             /* la descripción, solo en la rejilla del catálogo */
/* EN REJILLA (el archivo de simuladores): todos a la vista, sin fila que pase ni flechas, y cada uno con su descripción */
.pt-rejilla .pt-carril{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:16px;overflow:visible;max-width:1240px;margin-inline:auto;padding:18px 32px 22px}
.pt-rejilla .pt-placa{flex:none}
.pt-rejilla .pt-placa .pt-desc{display:block;margin-top:5px;font-size:.92rem;line-height:1.4;color:#33414F}
.pt-rejilla .pt-pausa,.pt-rejilla .pt-flechas{display:none!important}
.pt-vacio{color:var(--pt-gris);padding:10px 0 30px;margin:0}

/* ---------------------------------------------------------------- las unidades didácticas */
.pt-unidades{padding:50px 0 10px}
.pt-que{margin:16px 0 0;max-width:70ch}
.pt-partes{list-style:none;margin:16px 0 22px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:2px solid var(--pt-tinta);background:#fff;counter-reset:pt-parte}
.pt-partes li{padding:12px 16px 14px;border-left:1px solid var(--pt-tinta);position:relative;counter-increment:pt-parte;font-size:.95rem;line-height:1.4;margin:0}
.pt-partes li:first-child{border-left:0}
/* la captura de esa pestaña en una unidad de verdad: arriba, de lado a lado del paso, recortada por abajo */
.pt-partes img{display:block;width:calc(100% + 32px);max-width:none;margin:-12px -16px 10px;aspect-ratio:16/9;height:auto;object-fit:cover;object-position:top left;border-bottom:1px solid var(--pt-tinta);background:#F3F1EA}
.pt-partes b::before{content:"0" counter(pt-parte);display:block;font:500 .78rem var(--pt-mono);color:var(--pt-gris)}   /* el número, sobre el nombre (debajo de la captura) */
.pt-partes b{display:block;font:600 1.2rem/1.2 var(--pt-serif)}
.pt-partes li + li::after{content:"\2192";position:absolute;left:-.62em;top:50%;transform:translateY(-50%);background:#fff;font:500 1rem var(--pt-mono);padding:2px 0}
/* el horario: los cursos en las filas (como las horas) y las cuatro familias en las columnas, con su color */
.pt-oculto{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pt-horario{width:100%;border-collapse:collapse;table-layout:fixed;border:2px solid var(--pt-tinta);background:#fff;margin:0}
.pt-horario th,.pt-horario td{border:1px solid var(--pt-tinta);padding:0;vertical-align:top;text-align:left}
.pt-horario thead th{background:var(--pt-color,var(--pt-tinta));color:var(--pt-tinta);font:600 1.12rem/1.2 var(--pt-serif);padding:10px 12px;border-bottom-width:2px}
.pt-horario thead .pt-h-curso{width:8.5rem;background:var(--pt-tinta);color:#fff;font:500 .78rem var(--pt-mono);letter-spacing:.08em;text-transform:uppercase;vertical-align:middle}
.pt-horario tbody th{background:var(--pt-tinta);color:#fff;font:500 .95rem/1.25 var(--pt-mono);padding:12px;vertical-align:middle;border-color:#fff var(--pt-tinta)}
.pt-horario td{background:var(--pt-papel-color,#fff);padding:6px}
.pt-horario td.pt-libre{background:#fff;color:#B9B4A7;text-align:center;vertical-align:middle;font:500 1.2rem var(--pt-mono)}
.pt-manual{position:relative;display:block;padding:8px 10px 8px 16px;margin:0 0 6px;background:#fff;border:1px solid var(--pt-tinta);text-decoration:none;color:var(--pt-tinta)}
.pt-manual:last-child{margin-bottom:0}
.pt-manual::before{content:"";position:absolute;left:0;top:0;bottom:0;width:7px;background:var(--pt-color);border-right:1px solid var(--pt-tinta);transform-origin:left;transition:transform .2s var(--pt-sale)}
.pt-manual strong{display:block;font:600 1.05rem/1.2 var(--pt-serif)}
.pt-manual .pt-dentro{display:block;margin-top:3px;font:500 .75rem var(--pt-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--pt-gris)}

/* ---------------------------------------------------------------- para quién es */
.pt-quien{background:var(--pt-tinta);padding:44px 0;margin-top:44px}
.pt-quien .pt-ancho{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pt-rotulo{padding:22px 24px;color:var(--pt-tinta)}
.pt-rotulo.pt-a{background:var(--pt-mostaza)} .pt-rotulo.pt-b{background:var(--pt-verde)}
.pt-rotulo h2{font:600 1.6rem/1.15 var(--pt-serif);margin:6px 0 10px;color:var(--pt-tinta)}
.pt-rotulo p{margin:0 0 12px;max-width:44ch}
.pt-rotulo a{display:inline-block;min-height:44px;line-height:44px;font-weight:600;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}

@media (hover:hover) and (pointer:fine){
  .pt-placa:hover img{transform:scale(1.05)}
  .pt-placa:hover strong,.pt-manual:hover strong{text-decoration:underline;text-decoration-color:var(--pt-mostaza);text-decoration-thickness:3px;text-underline-offset:4px}
  .pt-manual:hover::before{transform:scaleX(1.5)}
  .pt-tira a:hover img{opacity:1}
  .pt-selector button:not([aria-pressed="true"]):hover{background:rgba(255,255,255,.14)}
  .pt-pestanas button:not([aria-pressed="true"]):hover{background:#ECE8DD;color:var(--pt-tinta)}
  .pt-abrir:hover .pt-flecha,.pt-rotulo a:hover .pt-flecha,.pt-manual:hover .pt-flecha{transform:translateX(4px)}
}
@media (hover:none){ .pt-flechas,.pt-tira-ir,.pt-tecla{display:none!important} .pt-tira-caja{grid-template-columns:minmax(0,1fr)} }
/* tableta: el banco sigue en dos columnas, con el panel más estrecho */
@media (max-width:1000px){ .pt-titular{grid-template-columns:minmax(0,1fr) 340px;gap:28px} .pt-maquina{grid-template-columns:minmax(0,1fr) 300px} .pt-horario thead .pt-h-curso{width:6.2rem} .pt-horario thead th{font-size:1rem;padding:8px} .pt-manual strong{font-size:.98rem} }
@media (max-width:720px){
  .pt-ancho{padding-inline:18px}
  .pt-titular{grid-template-columns:minmax(0,1fr);gap:14px;padding:14px 0 16px}
  .pt-sug{left:0;right:0;width:auto} .pt-op{grid-template-columns:auto minmax(0,1fr)} .pt-op .pt-m{display:none}
  .pt-maquina{grid-template-columns:minmax(0,1fr)} .pt-escenario{min-height:0;height:270px;border-right:0;border-bottom:2px solid #fff}
  .pt-pista{top:auto;bottom:8px;right:8px;padding:5px 9px}
  .pt-relojes{max-width:420px;margin-inline:auto;width:100%}
  /* en lo estrecho se desliza con el dedo: las flechas sobran (también donde el navegador no se declara táctil) */
  .pt-flechas,.pt-tira-ir{display:none!important}
  .pt-tira-caja{grid-template-columns:minmax(0,1fr);margin-inline:-18px;padding:12px 0 20px} .pt-tira{padding-inline:18px} .pt-tira a{flex-basis:128px}
  .pt-cabeza{display:block}
  .pt-cajones{padding-top:32px}
  .pt-tirador .pt-ancho{grid-template-columns:minmax(0,1fr)} .pt-tirador h3,.pt-tirador .pt-cuantos,.pt-tirador ul{grid-column:1;grid-row:auto}
  .pt-tirador h3{font-size:1.3rem} .pt-tirador ul{gap:0 16px} .pt-tirador li a{padding:8px 0}
  .pt-carril{padding:12px 18px;gap:12px} .pt-placa{flex-basis:70%}
  .pt-rejilla .pt-carril{grid-template-columns:1fr 1fr;gap:10px;padding:12px 18px 16px} .pt-rejilla .pt-placa strong{font-size:1.02rem} .pt-rejilla .pt-placa .pt-desc{font-size:.85rem}
  .pt-unidades{padding-top:36px}
  .pt-partes{grid-template-columns:1fr 1fr} .pt-partes li:nth-child(3){border-left:0} .pt-partes li:nth-child(n+3){border-top:1px solid var(--pt-tinta)} .pt-partes li:nth-child(3)::after{display:none}
  /* en el móvil las unidades van sin el resumen: 14 seguidas hacían la portada muy larga */
  /* en el móvil el horario no cabe de lado: cada curso es un bloque con su banda, y dentro, las unidades en dos columnas
     con el color de su familia (sin las casillas libres ni la fila de cabecera) */
  .pt-horario,.pt-horario tbody,.pt-horario tr,.pt-horario th,.pt-horario td{display:block}
  .pt-horario{border:0;background:none} .pt-horario thead{display:none}
  .pt-horario tr{display:grid;grid-template-columns:1fr 1fr;gap:6px;border:2px solid var(--pt-tinta);background:#fff;padding:0 6px 6px;margin-bottom:12px}
  .pt-horario tbody th{grid-column:1 / -1;margin:0 -6px;border:0;padding:8px 12px}
  .pt-horario td{display:contents} .pt-horario td.pt-libre{display:none}
  .pt-manual{margin:0}
  .pt-quien .pt-ancho{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){ .stt-portada *{transition:none!important} .pt-claim em path{animation:none;stroke-dashoffset:0} }
