/* Web ANLOK 2026 · testigos.css — «Qué hace cada apartado» (ANLOK Motors, antes de #precios). Lo monta testigos.js. */

.tg-cuadro{
  position:relative;max-width:1080px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(12px,1.4vw,18px);
  padding:clamp(12px,2.2vw,28px);border-radius:28px;
  background:radial-gradient(ellipse 80% 70% at 50% 0%,#24233A 0%,#14141B 60%),#14141B;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),inset 0 -20px 40px rgba(0,0,0,.4),0 40px 90px -40px rgba(108,99,255,.5)
}

.tg-luces{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:8px}
.tg-testigo{
  position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;
  min-width:0;min-height:44px;padding:14px 6px 12px;border:0;border-radius:16px;
  background:rgba(255,255,255,.03);color:#8F90A3;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
  font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;
  transition:background-color .25s,color .25s,box-shadow .25s
}
.tg-testigo:hover{background:rgba(255,255,255,.06);color:#D9D8E6}
.tg-testigo[aria-selected="true"]{
  color:#FFFFFF;background:rgba(255,255,255,.065);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--luz) 42%,transparent),0 10px 30px -18px var(--luz)
}
.tg-testigo:focus-visible{outline:2px solid #FFFFFF;outline-offset:2px;border-radius:16px}

.tg-luz{
  position:relative;display:flex;align-items:center;justify-content:center;flex:none;width:52px;height:52px;border-radius:50%;
  background:#0B0B10;box-shadow:inset 0 2px 6px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.06)
}
.tg-luz::before{
  content:"";position:absolute;inset:-6px;border-radius:50%;opacity:0;pointer-events:none;
  background:radial-gradient(circle,color-mix(in srgb,var(--luz) 30%,transparent) 0%,transparent 68%);
  transition:opacity .25s
}
.tg-luz svg{
  position:relative;width:28px;height:28px;fill:none;stroke:#3A3A48;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;
  transition:stroke .2s,filter .2s
}
.tg-testigo:hover .tg-luz svg{stroke:#5A5A6E}
.tg-testigo[aria-selected="true"] .tg-luz svg{stroke:var(--luz);filter:drop-shadow(0 0 4px var(--luz)) drop-shadow(0 0 11px var(--luz))}
.tg-testigo[aria-selected="true"] .tg-luz::before{opacity:1}
.tg-nombre{font-size:12.5px;font-weight:700;line-height:1.25;text-align:center;text-wrap:balance;-webkit-hyphens:auto;hyphens:auto}

.tg-pantalla{
  --luz:#FAAA2F;position:relative;overflow:hidden;padding:16px 18px 20px;border-radius:18px;
  background:linear-gradient(180deg,#0B0B12,#101019);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.07),inset 0 0 40px rgba(108,99,255,.12)
}
.tg-pantalla::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(180deg,rgba(255,255,255,.025) 0 1px,transparent 1px 3px)
}
.tg-pantalla::after{
  content:"";position:absolute;left:0;right:0;top:0;height:45%;pointer-events:none;opacity:0;
  background:linear-gradient(180deg,transparent,rgba(140,133,255,.10) 70%,rgba(187,174,255,.22) 100%);
  transform:translateY(-100%)
}
.tg-pantalla__cab{
  position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;
  font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;line-height:1.4
}
.tg-ceja{display:inline-flex;align-items:center;gap:9px;color:var(--luz);transition:color .25s}
.tg-ceja::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--luz);box-shadow:0 0 8px var(--luz);transition:background-color .25s,box-shadow .25s}
.tg-cuenta{color:#6F7086;font-variant-numeric:tabular-nums;white-space:nowrap}
.tg-paneles{position:relative;display:grid}
.tg-panel{grid-area:1/1;visibility:hidden;min-width:0;border-radius:8px}
.tg-panel.tg-activo{visibility:visible}
.tg-panel:focus-visible{outline:2px solid #FFFFFF;outline-offset:8px;border-radius:10px}
.tg-titulo{margin:0 0 8px;font-size:clamp(21px,2.1vw,28px);font-weight:750;letter-spacing:-.02em;line-height:1.2;color:#FFFFFF;text-wrap:balance}
.tg-texto{margin:0;max-width:46em;font-size:16px;line-height:1.6;color:#C8C6DA}

.tg-pie{margin-top:clamp(20px,2.4vw,32px)}
.tg-planes svg{width:18px;height:18px}
.tg-planes:hover svg{transform:translateY(3px)}

@media (min-width:760px){
  .tg-pantalla{padding:20px 26px 24px}
  .tg-texto{font-size:17px}
  .tg-nombre{font-size:13.5px}
}
@media (min-width:900px){
  .tg-luces{grid-template-columns:repeat(9,minmax(0,1fr));gap:8px}
  .tg-luz{width:56px;height:56px}
  .tg-luz svg{width:30px;height:30px}
}
@media (max-width:420px){
  .tg-cuadro{border-radius:22px}
  .tg-luces{gap:6px}
  .tg-testigo{gap:8px;padding:12px 4px 10px;border-radius:14px}
  .tg-luz{width:46px;height:46px}
  .tg-luz svg{width:25px;height:25px}
  .tg-nombre{font-size:12px}
  .tg-pantalla{padding:14px 16px 18px;border-radius:16px}
  .tg-pantalla__cab{font-size:10.5px;letter-spacing:.12em}
}
@media (max-width:360px){
  .tg-testigo{padding:12px 2px 10px}
  .tg-nombre{font-size:11px}
  .tg-pantalla__cab{font-size:10px;letter-spacing:.08em}
}

/* Contacto apagado hasta que el cuadro entra en pantalla; luego, autocomprobación como al arrancar */
.tg-apagado .tg-luz svg{stroke:#2C2C38;filter:none}
.tg-apagado .tg-luz::before{opacity:0}
.tg-apagado .tg-testigo[aria-selected="true"]{color:#8F90A3;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.tg-apagado :is(.tg-pantalla__cab,.tg-paneles){opacity:0}

.tg-arranca .tg-luz svg{animation:tg-autotest 1.3s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i,0) * 85ms)}
.tg-arranca .tg-luz::before{animation:tg-halo 1.3s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i,0) * 85ms)}
.tg-arranca .tg-testigo[aria-selected="true"]{animation:tg-marco 1.9s ease both}
.tg-arranca :is(.tg-pantalla__cab,.tg-paneles){animation:tg-pantalla .7s linear 1.15s both}
.tg-arranca .tg-pantalla::after{animation:tg-barrido .8s cubic-bezier(.3,.6,.3,1) 1.05s both}
@keyframes tg-autotest{
  0%{stroke:#2C2C38;filter:none}
  14%,58%{stroke:var(--luz);filter:drop-shadow(0 0 4px var(--luz)) drop-shadow(0 0 11px var(--luz))}
}
@keyframes tg-halo{0%{opacity:0}14%,58%{opacity:1}}
@keyframes tg-marco{0%,60%{color:#8F90A3;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}}
@keyframes tg-pantalla{0%{opacity:0}18%{opacity:.75}30%{opacity:.25}48%,100%{opacity:1}}
@keyframes tg-barrido{0%{opacity:1;transform:translateY(-100%)}100%{opacity:0;transform:translateY(240%)}}

.tg-recien .tg-luz{animation:tg-parpadeo .5s steps(1,end)}
@keyframes tg-parpadeo{0%{opacity:.4}25%{opacity:1}40%{opacity:.5}55%,100%{opacity:1}}
.tg-nuevo :is(.tg-titulo,.tg-texto){animation:tg-texto .55s ease both}
.tg-nuevo .tg-texto{animation-delay:.1s}
@keyframes tg-texto{from{clip-path:inset(0 100% 0 0);opacity:.3}to{clip-path:inset(0 0 0 0);opacity:1}}

@media (prefers-reduced-motion:reduce){
  .tg-testigo,.tg-luz::before,.tg-luz svg,.tg-ceja,.tg-ceja::before{transition:none}
  .tg-arranca :is(.tg-luz svg,.tg-testigo,.tg-pantalla__cab,.tg-paneles),.tg-arranca .tg-luz::before,.tg-arranca .tg-pantalla::after,
  .tg-recien .tg-luz,.tg-nuevo :is(.tg-titulo,.tg-texto){animation:none}
  .tg-planes:hover svg{transform:none}
}
