/* ═══════════════════════════════════════════════════════════════════════════
   TouchTurn · /sistema-de-turnos/  — hoja propia de la página
   Estética editorial de la propuesta: rótulos monoespaciados (FIG. 01),
   titulares con la palabra clave en cursiva roja, papel cuadriculado y
   secciones azul noche con retícula de puntos.
   Todo lo que es de pantallas pequeñas vive en movil.css (regla del sitio).
   ═══════════════════════════════════════════════════════════════════════════ */
.tt-page{--tt-navy:#111C3A;--tt-navy2:#1B3161;--tt-deep:#0B1430;--tt-red:#E11E2C;--tt-red-l:#FF5A66;
  --tt-paper:#F6F8FC;--tt-ink:#111C3A;--tt-muted:#56617A;--tt-line:#E1E7F1;
  --tt-mono:ui-monospace,'SFMono-Regular','Cascadia Mono',Consolas,'Liberation Mono',monospace;
  --tt-display:'Space Grotesk','Segoe UI',sans-serif}
.tt-wrap{max-width:1180px;margin:0 auto;padding:0 24px;position:relative}
.tt-sec{padding:104px 0;position:relative;overflow-x:clip}
.tt-paper{background-color:var(--tt-paper);
  background-image:linear-gradient(rgba(17,28,58,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(17,28,58,.045) 1px,transparent 1px);
  background-size:36px 36px}
.tt-white{background:#fff}
.tt-dark{background:#0E1733;color:#fff;overflow:hidden}
.tt-dark::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1.2px);background-size:22px 22px;
  -webkit-mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.35));mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.35))}
.tt-dark>.tt-wrap{z-index:1}

/* tipografía editorial */
.tt-kicker{display:flex;align-items:center;gap:12px;font:600 12px/1.3 var(--tt-mono);letter-spacing:.18em;text-transform:uppercase;color:#C8101D}
.tt-kicker::before{content:"";width:30px;height:1.5px;background:currentColor;flex:none}
.tt-dark .tt-kicker,.tt-hero .tt-kicker{color:var(--tt-red-l)}
.tt-h2{font-family:var(--tt-display);font-weight:700;font-size:clamp(30px,4.1vw,52px);line-height:1.04;letter-spacing:-.032em;color:var(--tt-ink);margin:18px 0 20px;max-width:900px}
.tt-h2 em,.tt-h1 em,.tt-close-t em{font-style:italic;color:var(--tt-red)}
.tt-dark .tt-h2{color:#fff}
.tt-dark .tt-h2 em,.tt-hero .tt-h1 em,.tt-close-t em{color:#FF4D59}
.tt-lead{font-size:18px;line-height:1.62;color:var(--tt-muted);max-width:740px;margin:0}
.tt-dark .tt-lead{color:#BAC7E2}
.tt-lead b{color:var(--tt-ink)}
.tt-dark .tt-lead b{color:#fff}
.tt-fig{display:inline-block;font:600 10.5px/1 var(--tt-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--tt-muted);
  background:#fff;border:1px solid var(--tt-line);border-radius:6px;padding:7px 9px}
.tt-dark .tt-fig{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#AFC0DE}
.tt-note{font-size:13px;color:var(--tt-muted);margin:18px 0 0}
.tt-dark .tt-note{color:#93A4C6}
.tt-head-center{text-align:center}
.tt-head-center .tt-kicker{justify-content:center}
.tt-head-center .tt-h2,.tt-head-center .tt-lead{margin-left:auto;margin-right:auto}

/* botones */
.tt-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;border-radius:12px;font:700 15.5px/1.2 Inter,sans-serif;
  text-decoration:none;border:0;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.tt-btn:hover{transform:translateY(-2px)}
.tt-btn-red{background:var(--tt-red);color:#fff;box-shadow:0 14px 34px rgba(225,30,44,.34)}
.tt-btn-red:hover{background:#C8101D}
.tt-btn-ghost{background:rgba(255,255,255,.04);color:#fff;border:1px solid rgba(255,255,255,.26)}
.tt-btn-ink{background:var(--tt-navy);color:#fff}
.tt-btn-line{background:#fff;color:var(--tt-ink);border:1.5px solid var(--tt-ink)}

/* dispositivos */
.tt-dev{position:relative;margin:0;display:block;background:#070C1E;box-shadow:0 30px 70px rgba(6,12,32,.38),inset 0 0 0 1px rgba(255,255,255,.07)}
.tt-dev img{display:block;width:100%;height:auto}
.tt-dev-k{border-radius:22px;padding:9px}
.tt-dev-k img{border-radius:14px}
.tt-dev-p{border-radius:30px;padding:8px}
.tt-dev-p img{border-radius:23px}
.tt-dev-l{border-radius:14px 14px 4px 4px;padding:10px 10px 12px}
.tt-dev-l img{border-radius:6px}
.tt-dev-l::after{content:"";position:absolute;left:-7%;right:-7%;bottom:-16px;height:16px;border-radius:0 0 14px 14px;
  background:linear-gradient(#CDD5E3,#9AA6BC);box-shadow:0 18px 30px rgba(6,12,32,.25)}

/* ═════ HÉROE ═════ */
.tt-hero{position:relative;color:#fff;padding:70px 0 84px;overflow:hidden;
  background:radial-gradient(900px 520px at 85% 12%,rgba(225,30,44,.20),transparent 62%),
             radial-gradient(900px 640px at 5% 100%,rgba(43,120,214,.20),transparent 60%),#0B1430}
.tt-hero::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.075) 1px,transparent 1.2px);background-size:22px 22px;
  -webkit-mask-image:radial-gradient(ellipse at 60% 40%,#000 30%,transparent 78%);mask-image:radial-gradient(ellipse at 60% 40%,#000 30%,transparent 78%)}
.tt-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:40px;align-items:center;position:relative;z-index:1}
.tt-hero .tt-h1{font-family:var(--tt-display);font-weight:700;font-size:clamp(38px,5vw,66px);line-height:1.0;letter-spacing:-.036em;margin:22px 0 24px;color:#fff}
.tt-hero-lead{font-size:18.5px;line-height:1.62;color:#C9D4EA;max-width:600px;margin:0}
.tt-hero-lead b{color:#fff}
.tt-cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.tt-stats-t{margin:44px 0 0;font:600 11px/1 var(--tt-mono);letter-spacing:.16em;text-transform:uppercase;color:#8FA2C8}
.tt-stats{display:grid;grid-template-columns:repeat(4,auto);justify-content:start;gap:14px 28px;margin-top:14px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1)}
.tt-stats div{display:flex;flex-direction:column;gap:4px}
.tt-stats b{font:700 30px/1 var(--tt-display);letter-spacing:-.02em;color:#fff}
.tt-stats span{font-size:12.5px;color:#9FB0D0}

.tt-stage{position:relative;height:590px}
.tt-tv{position:absolute;right:0;top:0;width:80%;border-radius:16px;padding:10px;background:#04081A;
  box-shadow:0 34px 80px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.08)}
.tt-tv::after{content:"";position:absolute;left:44%;right:44%;bottom:-22px;height:22px;background:linear-gradient(#1C2645,#0B1430)}
.tt-tv-scr{border-radius:8px;overflow:hidden;display:grid;grid-template-columns:1.2fr 1fr;aspect-ratio:16/9;background:linear-gradient(135deg,#15244F,#0B1430)}
.tt-tv-call{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:6% 7%;background:linear-gradient(155deg,#E11E2C,#96101A);position:relative}
.tt-tv-call small{font:700 11px/1 var(--tt-mono);letter-spacing:.2em;text-transform:uppercase;color:#fff}
.tt-tv-call b{font:700 clamp(40px,5vw,70px)/1 var(--tt-display);letter-spacing:-.03em;color:#fff}
.tt-tv-call span{font:600 15px/1.2 Inter,sans-serif;color:#fff}
.tt-tv-call i{font-style:normal;font-size:11.5px;color:#fff;margin-top:6px}
.tt-tv-side{padding:7% 7% 5%;display:flex;flex-direction:column;gap:6px}
.tt-tv-side small{font:700 10px/1 var(--tt-mono);letter-spacing:.18em;text-transform:uppercase;color:#8FA2C8;margin-bottom:4px}
.tt-tv-row{display:flex;justify-content:space-between;align-items:center;font:600 13px/1 Inter,sans-serif;color:#E7ECF7;padding:7px 9px;border-radius:8px;background:rgba(255,255,255,.06)}
.tt-tv-row b{font:700 14px/1 var(--tt-display)}
.tt-tv-row em{font-style:normal;font-size:10.5px;color:#FF8A93}
.tt-hero .tt-dev-k{position:absolute;left:0;bottom:0;width:33%}
.tt-hero .tt-dev-p{position:absolute;right:4%;bottom:6px;width:25%}
.tt-kbase{position:absolute;left:9%;bottom:-24px;width:15%;height:24px;background:linear-gradient(#1C2645,#0B1430);border-radius:0 0 8px 8px}
.tt-chip{position:absolute;z-index:3;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:13px;background:#fff;color:var(--tt-ink);
  font:600 13px/1.25 Inter,sans-serif;box-shadow:0 16px 40px rgba(4,8,26,.35);max-width:260px}
.tt-chip i{font-style:normal;flex:none;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#FFE3E6;color:#C8101D;font-weight:800}
.tt-chip small{display:block;font-size:11px;font-weight:500;color:var(--tt-muted)}
.tt-chip-ia{background:#111C3A;color:#fff;border:1px solid rgba(255,90,102,.55)}
.tt-chip-ia i{background:var(--tt-red);color:#fff}
.tt-chip-ia small{color:#AFC0DE}
.tt-chip-1{left:24%;top:46%}
.tt-chip-2{right:-2%;top:40%}
.tt-chip-3{left:30%;bottom:6%}

/* ═════ DOS CAMINOS ═════ */
.tt-paths{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.tt-path{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:22px 24px;border-radius:18px;background:#fff;
  border:1px solid var(--tt-line);text-decoration:none;color:var(--tt-ink);box-shadow:0 12px 30px rgba(17,28,58,.07);transition:transform .2s,box-shadow .2s}
.tt-path:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(17,28,58,.12)}
.tt-path-ic{width:54px;height:54px;border-radius:15px;display:grid;place-items:center;background:var(--tt-navy);color:#fff;font:700 18px var(--tt-display)}
.tt-path:nth-child(2) .tt-path-ic{background:var(--tt-red)}
.tt-path strong{display:block;font:700 19px/1.2 var(--tt-display);letter-spacing:-.01em}
.tt-path span span{display:block;font-size:14.5px;color:var(--tt-muted);margin-top:4px;line-height:1.45}
.tt-path-go{font:700 22px var(--tt-display);color:var(--tt-red)}

/* ═════ RECORRIDO ═════ */
.tt-journey{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:20px;position:relative}
.tt-journey::before{content:"";position:absolute;left:4%;right:4%;top:23px;height:2px;
  background:repeating-linear-gradient(90deg,var(--tt-red) 0 10px,transparent 10px 18px);opacity:.55}
.tt-jstep{position:relative;display:flex;flex-direction:column}
.tt-jnum{position:relative;z-index:1;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--tt-navy);color:#fff;
  font:700 17px var(--tt-display);box-shadow:0 0 0 6px var(--tt-paper)}
.tt-jstep:nth-child(odd) .tt-jnum{background:var(--tt-red)}
.tt-jshot{margin:22px 0 18px;height:300px;display:flex;align-items:flex-end;justify-content:center}
.tt-jshot .tt-dev-k{width:150px}
.tt-jshot .tt-dev-p{width:142px}
.tt-jshot .tt-dev-l{width:100%}
.tt-jshot .tt-tvmini{width:100%}
.tt-jstep h3{font:700 19px/1.2 var(--tt-display);letter-spacing:-.01em;color:var(--tt-ink);margin:8px 0 8px}
.tt-jstep p{font-size:14.5px;line-height:1.55;color:var(--tt-muted);margin:0}
.tt-tvmini{border-radius:10px;padding:6px;background:#04081A;box-shadow:0 20px 44px rgba(6,12,32,.3)}
.tt-tvmini .tt-tv-scr{border-radius:6px}
.tt-tvmini .tt-tv-call b{font-size:34px}
.tt-tvmini .tt-tv-call span{font-size:11px}
.tt-tvmini .tt-tv-call small,.tt-tvmini .tt-tv-side small{font-size:8px}
.tt-tvmini .tt-tv-row{font-size:10px;padding:5px 6px}
.tt-tvmini .tt-tv-row b{font-size:11px}

/* ═════ SIMULADOR ═════ */
.tt-sim{display:grid;grid-template-columns:.92fr 1.25fr .95fr;gap:18px;margin-top:44px;align-items:stretch}
.tt-panel{background:#fff;border:1px solid var(--tt-line);border-radius:22px;padding:22px;box-shadow:0 18px 44px rgba(17,28,58,.08);display:flex;flex-direction:column}
.tt-panel-dark{background:#0B1430;border-color:transparent;color:#fff}
.tt-panel-t{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}
.tt-panel-t span{font:600 10.5px/1 var(--tt-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--tt-muted)}
.tt-panel-dark .tt-panel-t span{color:#8FA2C8}
.tt-panel-t strong{font:700 17px/1.2 var(--tt-display)}
.tt-kq{font:700 21px/1.2 var(--tt-display);letter-spacing:-.015em;margin:0 0 14px}
.tt-kbtn{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:14px 16px;margin-bottom:10px;border-radius:14px;
  border:1.5px solid var(--tt-line);background:#F8FAFD;font:700 15px/1.2 Inter,sans-serif;color:var(--tt-ink);cursor:pointer;transition:border-color .15s,transform .15s}
.tt-kbtn:hover{border-color:var(--tt-navy);transform:translateY(-1px)}
.tt-kbtn i{font-style:normal;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--tt-navy);color:#fff;font-size:15px;flex:none}
.tt-kbtn.cita i{background:var(--tt-red)}
.tt-kbtn small{display:block;font-weight:500;font-size:12px;color:var(--tt-muted);margin-top:2px}
.tt-pref{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.4;color:var(--tt-ink);margin:6px 0 14px;cursor:pointer}
.tt-pref input{width:20px;height:20px;accent-color:var(--tt-red);flex:none;margin:0}
.tt-ticket{margin-top:auto;border-radius:14px;padding:14px 16px;background:#111C3A;color:#fff;position:relative;
  -webkit-mask:radial-gradient(circle 9px at 0 50%,transparent 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 9px at 100% 50%,transparent 98%,#000) right/51% 100% no-repeat;
  mask:radial-gradient(circle 9px at 0 50%,transparent 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 9px at 100% 50%,transparent 98%,#000) right/51% 100% no-repeat}
.tt-ticket span{font:600 10px/1 var(--tt-mono);letter-spacing:.16em;text-transform:uppercase;color:#8FA2C8}
.tt-ticket b{display:block;font:700 34px/1.05 var(--tt-display);letter-spacing:-.02em;margin:6px 0 2px}
.tt-ticket em{font-style:normal;font-size:12.5px;color:#C9D4EA}
.tt-ticket.nuevo{animation:tt-print .5s ease}
@keyframes tt-print{from{transform:translateY(-10px);opacity:.3}to{transform:none;opacity:1}}
.tt-simcall{border-radius:16px;padding:16px 18px;background:linear-gradient(155deg,#E11E2C,#96101A);display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.tt-simcall small{display:block;font:700 10px/1 var(--tt-mono);letter-spacing:.2em;text-transform:uppercase;color:#fff}
.tt-simcall b{display:block;font:700 42px/1 var(--tt-display);letter-spacing:-.03em;margin-top:6px}
.tt-simcall span{font:600 14px/1.3 Inter,sans-serif;text-align:right}
.tt-qhead{display:flex;justify-content:space-between;font:600 10px/1 var(--tt-mono);letter-spacing:.14em;text-transform:uppercase;color:#8FA2C8;margin:4px 2px 8px}
.tt-qlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.tt-qlist li{display:grid;grid-template-columns:58px 1fr 78px;gap:10px;align-items:center;padding:9px 10px;border-radius:11px;background:rgba(255,255,255,.06);
  font-size:12.5px;color:#DCE4F3;transition:background .3s}
.tt-qlist li:first-child{background:rgba(225,30,44,.2);box-shadow:inset 0 0 0 1px rgba(255,90,102,.45)}
.tt-qlist b{font:700 16px/1 var(--tt-display);color:#fff}
.tt-qlist em{font-style:normal;display:block;font-size:11px;color:#93A4C6;margin-top:2px}
.tt-bar{height:7px;border-radius:9px;background:rgba(255,255,255,.1);overflow:hidden}
.tt-bar i{display:block;height:100%;width:var(--w,40%);border-radius:inherit;background:linear-gradient(90deg,#FF8A93,#E11E2C);transition:width .5s}
.tt-qlist .pts{font:600 10.5px/1 var(--tt-mono);color:#AFC0DE;text-align:right;margin-top:5px}
.tt-qvacia{font-size:13px;color:#93A4C6;padding:10px 4px}
.tt-callbtn{width:100%;padding:18px;border-radius:14px;border:0;background:var(--tt-red);color:#fff;font:700 17px/1 Inter,sans-serif;cursor:pointer;
  box-shadow:0 14px 30px rgba(225,30,44,.3);display:flex;align-items:center;justify-content:center;gap:10px}
.tt-callbtn:hover{background:#C8101D}
.tt-attn{margin:14px 0 0;padding:14px;border-radius:14px;background:#F4F7FC;border:1px solid var(--tt-line)}
.tt-attn span{font:600 10px/1 var(--tt-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tt-muted)}
.tt-attn b{display:block;font:700 26px/1.1 var(--tt-display);margin:6px 0 2px;color:var(--tt-ink)}
.tt-why{margin-top:10px;font-size:13px;line-height:1.5;color:var(--tt-ink)}
.tt-why strong{color:var(--tt-red)}
.tt-clock{display:inline-flex;align-items:center;gap:8px;font:600 12px/1 var(--tt-mono);color:var(--tt-muted);margin-top:14px}
.tt-clock::before{content:"";width:8px;height:8px;border-radius:50%;background:#2BB673;box-shadow:0 0 0 4px rgba(43,182,115,.18)}
.tt-sim-foot{display:flex;flex-wrap:wrap;gap:14px 26px;align-items:center;justify-content:space-between;margin-top:22px}

/* ═════ MOTOR DE PRIORIDAD ═════ */
.tt-split{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.tt-split-r{grid-template-columns:.95fr 1.05fr}
.tt-checks{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:14px}
.tt-checks li{position:relative;padding-left:34px;font-size:16px;line-height:1.55;color:var(--tt-muted)}
.tt-checks li::before{content:"";position:absolute;left:0;top:3px;width:21px;height:21px;border-radius:7px;background:var(--tt-red);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/15px no-repeat,linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask-composite:exclude}
.tt-checks li b{color:var(--tt-ink)}
.tt-dark .tt-checks li{color:#BAC7E2}
.tt-dark .tt-checks li b{color:#fff}
.tt-screens2{position:relative;height:560px}
.tt-screens2 .tt-dev-k{position:absolute;width:47%}
.tt-screens2 .tt-dev-k:first-child{left:0;top:0;transform:rotate(-4deg)}
.tt-screens2 .tt-dev-k:nth-child(2){right:0;bottom:0;transform:rotate(3deg)}
.tt-screens2 .tt-fig{position:absolute;z-index:2}

/* ═════ MÓDULOS (bento) ═════ */
.tt-bento{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-top:48px}
.tt-mod{grid-column:span 2;position:relative;display:flex;flex-direction:column;min-height:360px;padding:24px 24px 0;border-radius:22px;background:#fff;
  border:1px solid var(--tt-line);overflow:hidden;box-shadow:0 10px 30px rgba(17,28,58,.05)}
.tt-mod.w3{grid-column:span 3}
.tt-mod .n{font:600 11px/1 var(--tt-mono);letter-spacing:.16em;color:var(--tt-red)}
.tt-mod h3{font:700 21px/1.18 var(--tt-display);letter-spacing:-.015em;color:var(--tt-ink);margin:12px 0 8px}
.tt-mod p{font-size:14.5px;line-height:1.55;color:var(--tt-muted);margin:0}
.tt-mod-shot{margin-top:auto;padding-top:22px;height:200px;display:flex;justify-content:center;align-items:flex-start;overflow:hidden}
.tt-mod-shot img{display:block;width:78%;height:auto;border-radius:14px 14px 0 0;box-shadow:0 -6px 30px rgba(17,28,58,.14);border:6px solid #0B1430;border-bottom:0}
.tt-mod-shot.wide img{width:96%}
.tt-mod-shot.pair{gap:10px}
.tt-mod-shot.pair img{width:44%}
.tt-mod.ia{background:linear-gradient(155deg,#16244F,#0B1430);border-color:transparent;color:#fff}
.tt-mod.ia h3{color:#fff}
.tt-mod.ia p{color:#BAC7E2}
.tt-mod.ia .n{color:var(--tt-red-l)}
.tt-badge-ia{position:absolute;top:22px;right:22px;font:700 11px/1 var(--tt-mono);letter-spacing:.14em;padding:7px 10px;border-radius:999px;background:var(--tt-red);color:#fff}
.tt-mod-ai{margin-top:auto;padding:20px 0 24px;display:flex;flex-direction:column;gap:8px}
.tt-mod-ai span{display:block;align-self:flex-start;max-width:92%;padding:9px 12px;border-radius:14px 14px 14px 4px;background:rgba(255,255,255,.1);font-size:13px;line-height:1.4;color:#E7ECF7}
.tt-mod-ai span.u{align-self:flex-end;border-radius:14px 14px 4px 14px;background:var(--tt-red);color:#fff}
.tt-mod-ai span.r{border:1px solid rgba(255,90,102,.55);background:rgba(225,30,44,.12)}

/* ═════ APP EN ABANICO ═════ */
.tt-fan{position:relative;height:640px;margin-top:30px}
.tt-fan figure{position:absolute;margin:0;width:33%}
.tt-fan figure .tt-fig{position:absolute;left:50%;bottom:-40px;transform:translateX(-50%);white-space:nowrap}
.tt-fan figure:nth-child(even) .tt-fig{bottom:auto;top:-40px}
.tt-fan figure:nth-child(1){left:0;top:40px;transform:rotate(-6deg)}
.tt-fan figure:nth-child(2){left:22%;top:0;transform:rotate(-2deg);z-index:2}
.tt-fan figure:nth-child(3){left:45%;top:24px;transform:rotate(2deg);z-index:3}
.tt-fan figure:nth-child(4){left:67%;top:58px;transform:rotate(6deg);z-index:4}

/* ═════ IA · ATENCIÓN ═════ */
.tt-ai{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.tt-chat{max-width:440px;margin-left:auto;border-radius:28px;padding:10px;background:#04081A;box-shadow:0 34px 80px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.08)}
.tt-chat-in{border-radius:21px;overflow:hidden;background:#0F1A3D}
.tt-chat-top{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#16244F;border-bottom:1px solid rgba(255,255,255,.07)}
.tt-chat-top i{font-style:normal;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--tt-red);color:#fff;font-weight:800}
.tt-chat-top strong{display:block;font:700 15px/1.2 Inter,sans-serif;color:#fff}
.tt-chat-top span{font-size:12px;color:#7FD9A8}
.tt-chat ol{list-style:none;margin:0;padding:16px 14px 18px;display:flex;flex-direction:column;gap:9px;min-height:420px}
.tt-msg{max-width:84%;padding:10px 13px;border-radius:16px 16px 16px 5px;background:#fff;color:var(--tt-ink);font-size:14px;line-height:1.45;align-self:flex-start;transition:opacity .35s,transform .35s}
.tt-msg.u{align-self:flex-end;border-radius:16px 16px 5px 16px;background:var(--tt-red);color:#fff}
.tt-msg.sys{align-self:center;max-width:none;background:rgba(255,255,255,.08);color:#C9D4EA;font:600 11px/1.3 var(--tt-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:8px 12px}
.tt-msg .slots{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
.tt-msg .slots em{font-style:normal;font-weight:700;font-size:12.5px;padding:6px 10px;border-radius:9px;border:1.5px solid #CFD7E6}
.tt-msg .slots em.on{border-color:var(--tt-red);color:var(--tt-red)}
.tt-msg .qr{display:flex;gap:10px;align-items:center;margin-top:8px;padding:8px;border-radius:10px;background:#F2F5FA}
.tt-msg .qr svg{flex:none}
.js-anim .tt-chat .tt-msg.wait{opacity:0;transform:translateY(8px)}
.tt-typing{align-self:flex-start;display:none;gap:4px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.12)}
.tt-typing i{width:6px;height:6px;border-radius:50%;background:#C9D4EA;animation:tt-dot 1s infinite}
.tt-typing i:nth-child(2){animation-delay:.15s}.tt-typing i:nth-child(3){animation-delay:.3s}
@keyframes tt-dot{0%,60%,100%{opacity:.3;transform:none}30%{opacity:1;transform:translateY(-3px)}}
.tt-avatar{display:grid;grid-template-columns:130px 1fr;gap:18px;align-items:center;margin-top:30px;padding:14px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}
.tt-avatar img{width:130px;height:130px;object-fit:cover;border-radius:12px;display:block}
.tt-avatar strong{display:block;font:700 17px/1.2 var(--tt-display);color:#fff;margin-bottom:6px}
.tt-avatar span{font-size:14px;line-height:1.5;color:#BAC7E2}
.tt-dodont{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px}
.tt-dodont div{padding:18px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}
.tt-dodont strong{display:block;font:700 11px/1 var(--tt-mono);letter-spacing:.16em;text-transform:uppercase;color:#7FD9A8;margin-bottom:10px}
.tt-dodont div+div strong{color:#FF8A93}
.tt-dodont ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.tt-dodont li{font-size:14px;line-height:1.45;color:#DCE4F3}

/* ═════ IA · ANÁLISIS DE COLAS ═════ */
.tt-dash{margin-top:48px;border-radius:24px;background:#fff;border:1px solid var(--tt-line);box-shadow:0 30px 70px rgba(17,28,58,.12);overflow:hidden}
.tt-dash-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;background:var(--tt-navy);color:#fff}
.tt-dash-top strong{font:700 16px/1.2 var(--tt-display)}
.tt-dash-top span{font-size:12.5px;color:#AFC0DE}
.tt-dash-tags{display:flex;gap:8px}
.tt-dash-tags em{font-style:normal;font:700 10.5px/1 var(--tt-mono);letter-spacing:.12em;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.1);color:#fff}
.tt-dash-tags em.ia{background:var(--tt-red)}
.tt-dash-body{display:grid;grid-template-columns:1.55fr 1fr;gap:0}
.tt-chart{padding:22px 22px 16px;border-right:1px solid var(--tt-line)}
.tt-chart-t{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.tt-chart-t strong{font:700 16px/1.2 var(--tt-display);color:var(--tt-ink)}
.tt-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--tt-muted)}
.tt-legend span{display:inline-flex;align-items:center;gap:6px}
.tt-legend i{display:inline-block;width:14px;height:10px;border-radius:3px}
.tt-chart svg{display:block;width:100%;height:auto;margin-top:14px}
.tt-side{padding:22px;display:flex;flex-direction:column;gap:12px;background:#FAFBFE}
.tt-card{border-radius:16px;padding:16px;background:#fff;border:1px solid var(--tt-line)}
.tt-card span{font:700 10px/1 var(--tt-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tt-muted)}
.tt-card strong{display:block;font:700 17px/1.3 var(--tt-display);color:var(--tt-ink);margin:8px 0 4px}
.tt-card em{font-style:normal;font-size:13px;line-height:1.45;color:var(--tt-muted)}
.tt-card.reco{border-color:rgba(225,30,44,.45);box-shadow:0 10px 26px rgba(225,30,44,.12)}
.tt-card.reco span{color:var(--tt-red)}
.tt-card.alert{background:#FFF6F7}
.tt-ask{padding:20px 22px 24px;border-top:1px solid var(--tt-line)}
.tt-ask-t{font:700 11px/1 var(--tt-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tt-muted);margin-bottom:12px}
.tt-qa{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.tt-qa div{border-radius:14px;padding:14px;background:#F4F7FC;border:1px solid var(--tt-line)}
.tt-qa b{display:block;font-size:13.5px;line-height:1.4;color:var(--tt-ink)}
.tt-qa span{display:block;margin-top:8px;font-size:13px;line-height:1.5;color:var(--tt-muted)}
.tt-qa span::before{content:"✦ ";color:var(--tt-red)}
.tt-ai-points{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
.tt-ai-points div{padding:20px;border-radius:18px;background:#fff;border:1px solid var(--tt-line)}
.tt-ai-points strong{display:block;font:700 17px/1.25 var(--tt-display);color:var(--tt-ink);margin-bottom:6px}
.tt-ai-points span{font-size:14px;line-height:1.55;color:var(--tt-muted)}

/* ═════ CALCULADORA ═════ */
.tt-calc{display:grid;grid-template-columns:1fr 1.05fr;gap:22px;margin-top:44px}
.tt-calc-in,.tt-calc-out{border-radius:22px;padding:26px}
.tt-calc-in{background:#fff;border:1px solid var(--tt-line)}
.tt-calc-out{background:#0B1430;color:#fff}
.tt-range{margin-bottom:22px}
.tt-range label{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font:600 15px/1.3 Inter,sans-serif;color:var(--tt-ink)}
.tt-range output{font:700 22px/1 var(--tt-display);color:var(--tt-red)}
.tt-range input{width:100%;margin-top:12px;accent-color:var(--tt-red);height:28px}
.tt-range small{display:block;font-size:12.5px;color:var(--tt-muted);margin-top:2px}
.tt-res{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tt-res div{padding:16px;border-radius:16px;background:rgba(255,255,255,.06)}
.tt-res div:first-child{grid-column:span 2;background:linear-gradient(155deg,#E11E2C,#96101A)}
.tt-res span{display:block;font:600 10.5px/1.3 var(--tt-mono);letter-spacing:.12em;text-transform:uppercase;color:#C9D4EA}
.tt-res div:first-child span{color:#FFD6D9}
.tt-res b{display:block;font:700 34px/1.05 var(--tt-display);letter-spacing:-.02em;margin-top:8px}
.tt-res div:first-child b{font-size:54px}
.tt-qviz{margin-top:18px;padding:16px;border-radius:16px;background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.16)}
.tt-qviz-t{font:600 10.5px/1 var(--tt-mono);letter-spacing:.14em;text-transform:uppercase;color:#8FA2C8;margin-bottom:12px}
.tt-mods{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.tt-mods i{width:26px;height:26px;border-radius:7px;background:#246CC6;display:grid;place-items:center;font-style:normal;font-size:10px;font-weight:700;color:#fff}
.tt-dots{display:flex;flex-wrap:wrap;gap:6px;min-height:14px}
.tt-dots i{width:12px;height:12px;border-radius:50%;background:#FF8A93;animation:tt-bob 2.4s ease-in-out infinite}
.tt-dots i:nth-child(3n){animation-delay:.4s}.tt-dots i:nth-child(3n+1){animation-delay:.8s}
@keyframes tt-bob{50%{transform:translateY(-3px)}}
.tt-formula{margin-top:16px;font-size:13.5px;color:var(--tt-muted)}
.tt-formula summary{cursor:pointer;font-weight:700;color:var(--tt-ink)}

/* ═════ CONSOLA ═════ */
.tt-console{position:relative;padding-bottom:30px}
.tt-console-note{display:block;margin-top:34px}
.tt-console .tt-dev-l{width:100%}
.tt-console-inset{position:absolute;right:-24px;bottom:-10px;width:46%;border-radius:14px;padding:6px;background:#04081A;box-shadow:0 26px 60px rgba(6,12,32,.4)}
.tt-console-inset img{display:block;width:100%;border-radius:9px}

/* ═════ UNA SOLA PUERTA ═════ */
.tt-flow{margin-top:40px}
.tt-flow svg{display:block;width:100%;height:auto}
.tt-flow .ln{fill:none;stroke-linecap:round}
.js-anim .tt-flow.ver .ln.flujo{stroke-dasharray:6 10;animation:tt-flujo 1.6s linear infinite}
@keyframes tt-flujo{to{stroke-dashoffset:-32}}

/* ═════ EQUIPOS ═════ */
.tt-hw{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;align-items:end;margin-top:44px}
.tt-hw figure{margin:0;text-align:center}
.tt-hw img{display:block;height:250px;width:auto;max-width:100%;margin:0 auto;object-fit:contain;filter:drop-shadow(0 18px 24px rgba(17,28,58,.18))}
.tt-hw figcaption{margin-top:16px;font-size:13.5px;line-height:1.45;color:var(--tt-muted)}
.tt-hw figcaption b{display:block;font:700 16px/1.2 var(--tt-display);color:var(--tt-ink);margin-bottom:4px}
.tt-factory{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;margin-top:40px}
.tt-factory figure{margin:0;position:relative;border-radius:20px;overflow:hidden;height:340px}
.tt-factory img{display:block;width:100%;height:100%;object-fit:cover}
.tt-factory figcaption{position:absolute;left:14px;bottom:14px}
.tt-grow{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.tt-grow a{display:block;padding:20px;border-radius:18px;background:#fff;border:1px solid var(--tt-line);text-decoration:none;color:var(--tt-ink);transition:transform .2s}
.tt-grow a:hover{transform:translateY(-3px)}
.tt-grow a:first-child{background:var(--tt-navy);color:#fff;border-color:transparent}
.tt-grow span{font:600 10.5px/1 var(--tt-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tt-red)}
.tt-grow a:first-child span{color:var(--tt-red-l)}
.tt-grow strong{display:block;font:700 18px/1.25 var(--tt-display);margin:10px 0 6px}
.tt-grow em{font-style:normal;font-size:14px;line-height:1.5;color:var(--tt-muted)}
.tt-grow a:first-child em{color:#BAC7E2}

/* ═════ 90 DÍAS Y SOPORTE ═════ */
.tt-gantt{margin-top:40px;padding:24px;border-radius:22px;background:#fff;border:1px solid var(--tt-line)}
.tt-gantt-axis{display:grid;grid-template-columns:repeat(3,1fr);font:600 11px/1 var(--tt-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--tt-muted);padding-bottom:12px;border-bottom:1px solid var(--tt-line)}
.tt-gantt-row{position:relative;height:54px;margin-top:12px}
.tt-gantt-row b{position:absolute;top:0;bottom:0;display:flex;align-items:center;padding:0 16px;border-radius:12px;font:700 14px/1.2 Inter,sans-serif;color:#fff;white-space:nowrap;overflow:hidden}
.tt-miles{position:relative;height:74px;margin-top:18px;border-top:2px dashed var(--tt-line)}
.tt-miles span{position:absolute;top:-8px;transform:translateX(-50%);text-align:center;font-size:12.5px;line-height:1.35;color:var(--tt-muted);width:130px}
.tt-miles span::before{content:"";display:block;width:14px;height:14px;margin:0 auto 8px;border-radius:50%;background:var(--tt-red);box-shadow:0 0 0 4px #FFE3E6}
.tt-miles b{display:block;color:var(--tt-ink);font:700 13px var(--tt-display)}
.tt-rings{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-top:56px}
.tt-rings svg{display:block;width:100%;height:auto}
.tt-levels{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.tt-levels li{display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:center;padding:14px;border-radius:16px;background:#fff;border:1px solid var(--tt-line)}
.tt-levels i{font-style:normal;width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font:700 16px var(--tt-display);color:#fff;background:var(--tt-navy)}
.tt-levels li:first-child i{background:var(--tt-red)}
.tt-levels strong{display:block;font:700 16px/1.25 var(--tt-display);color:var(--tt-ink)}
.tt-levels span{font-size:13.5px;color:var(--tt-muted)}

/* ═════ SECTORES, CIERRE ═════ */
.tt-sectors{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
.tt-sector{display:flex;flex-direction:column;border-radius:20px;overflow:hidden;background:#fff;border:1px solid var(--tt-line);text-decoration:none;color:var(--tt-ink);transition:transform .2s}
.tt-sector:hover{transform:translateY(-3px)}
.tt-sector figure{margin:0;position:relative;height:180px;overflow:hidden;background:var(--tt-navy)}
.tt-sector img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(.35) contrast(1.05);mix-blend-mode:luminosity;opacity:.85}
.tt-sector figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(11,20,48,.7))}
.tt-sector div{padding:20px}
.tt-sector strong{display:block;font:700 19px/1.2 var(--tt-display);margin-bottom:8px}
.tt-sector span{display:block;font-size:14.5px;line-height:1.55;color:var(--tt-muted)}
.tt-sector em{display:inline-block;margin-top:12px;font-style:normal;font-weight:700;color:var(--tt-red);font-size:14px}
.tt-glos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 28px;margin:34px auto 0;max-width:1000px}
.tt-glos div{padding:14px 0;border-top:1px solid var(--tt-line)}
.tt-glos dt{font:700 15px/1.3 var(--tt-display);color:var(--tt-ink)}
.tt-glos dd{margin:6px 0 0;font-size:14px;line-height:1.5;color:var(--tt-muted)}
.tt-close{padding:110px 0;text-align:center;background:#0B1430;color:#fff;position:relative;overflow:hidden}
.tt-close::before{content:"A-001";position:absolute;right:-2%;bottom:-18%;font:700 clamp(160px,24vw,340px)/1 var(--tt-display);letter-spacing:-.05em;color:rgba(255,255,255,.035);pointer-events:none}
.tt-close .tt-close-t{font:700 clamp(34px,5.4vw,70px)/1.02 var(--tt-display);color:#fff;letter-spacing:-.04em;margin:0 auto 26px;max-width:900px;position:relative}
.tt-close p{position:relative;color:#BAC7E2;font-size:18px;max-width:640px;margin:0 auto 30px}
.tt-close .tt-cta-row{justify-content:center;position:relative}

/* movimiento: solo si el usuario no pidió reducirlo */
@media (prefers-reduced-motion:no-preference){
  .tt-chip{animation:tt-float 6s ease-in-out infinite}
  .tt-chip-2{animation-delay:-2s}.tt-chip-3{animation-delay:-4s}
  @keyframes tt-float{50%{transform:translateY(-8px)}}
  .tt-tv-call b.cambia{animation:tt-flash .6s ease}
  @keyframes tt-flash{0%{opacity:0;transform:scale(.9)}100%{opacity:1;transform:none}}
}
@media (prefers-reduced-motion:reduce){
  .tt-dots i,.tt-typing i,.tt-ticket.nuevo{animation:none}
  .tt-bar i{transition:none}
}

/* pantallas intermedias (escritorio angosto y tableta). Lo de 768 px o menos, en movil.css */
@media (max-width:1100px){
  .tt-hero-grid{grid-template-columns:1fr}
  .tt-stage{max-width:760px;width:100%;margin:10px auto 0}
  .tt-tv{width:74%}
  .tt-hero .tt-dev-k{width:25%}
  .tt-hero .tt-dev-p{width:23%}
  .tt-screens2{width:100%;max-width:520px;margin:0 auto}
  .tt-fan{width:100%;max-width:640px;margin:30px auto 0}
  .tt-console{padding:0 7% 30px}
  .tt-journey{grid-template-columns:repeat(3,1fr);row-gap:44px}
  .tt-journey::before{display:none}
  .tt-sim{grid-template-columns:1fr 1fr}
  .tt-sim .tt-panel:nth-child(2){grid-column:span 2;order:3}
  .tt-bento{grid-template-columns:repeat(4,1fr)}
  .tt-mod,.tt-mod.w3{grid-column:span 2}
  .tt-ai,.tt-split,.tt-split-r{grid-template-columns:1fr;gap:44px}
  .tt-chat{margin:0 auto}
  .tt-dash-body{grid-template-columns:1fr}
  .tt-chart{border-right:0;border-bottom:1px solid var(--tt-line)}
  .tt-hw{grid-template-columns:repeat(3,1fr)}
  .tt-rings{grid-template-columns:1fr}
}

/* ═════ complementos ═════ */
.tt-paths-band{padding:44px 0}
.tt-h3x{font:700 clamp(21px,2.2vw,26px)/1.2 var(--tt-display);letter-spacing:-.015em;color:var(--tt-ink);margin:48px 0 18px}
.tt-rings .tt-h3x{margin:14px 0 18px}
.tt-h2s{font-size:clamp(26px,3vw,38px)}
.tt-mod-link{display:inline-block;margin:0 0 22px;font-weight:700;font-size:14px;color:#FF8A93;text-decoration:none}
.tt-mod-link:hover{color:#fff}
.tt-mod-tv{align-items:center;padding-bottom:22px}
.tt-mod-tv .tt-tvmini{width:88%}
.tt-legend i.dash{background:none;border-top:2px dashed var(--tt-red);height:0;border-radius:0}
.tt-formula-t{display:block;margin-top:10px;line-height:1.55}
.tt-door{display:grid;grid-template-columns:1fr 110px 1.05fr 110px 1fr;align-items:center;margin-top:44px}
.tt-door-col{list-style:none;margin:0;padding:0;height:420px;display:grid;grid-template-rows:repeat(5,1fr);align-items:center}
.tt-door-sys{grid-template-rows:repeat(4,1fr)}
.tt-door-col li{justify-self:stretch;padding:14px 18px;border-radius:999px;border:1.5px solid rgba(255,255,255,.4);text-align:center;font:600 15px/1.2 Inter,sans-serif;color:#fff;background:rgba(255,255,255,.03)}
.tt-door-col li:nth-child(3){border-color:#FF5A66;background:rgba(225,30,44,.14)}
.tt-door-sys li{border-radius:14px;text-align:left;border-color:rgba(255,255,255,.2)}
.tt-door-sys li:nth-child(3){border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.03)}
.tt-door-svg{display:block;width:100%;height:420px}
.tt-door-core{border-radius:22px;padding:30px 24px;text-align:center;background:linear-gradient(160deg,#E11E2C,#8E0F19);box-shadow:0 30px 70px rgba(225,30,44,.3)}
.tt-door-core strong{display:block;font:700 30px/1 var(--tt-display);letter-spacing:-.02em}
.tt-door-core span{display:block;margin-top:12px;font:600 11.5px/1.5 var(--tt-mono);letter-spacing:.1em;text-transform:uppercase;color:#FFD6D9}
.tt-door-core em{display:inline-block;margin-top:16px;font-style:normal;font:700 12px/1 var(--tt-mono);letter-spacing:.14em;padding:9px 12px;border-radius:999px;background:#0B1430;color:#fff}
@media (max-width:1100px){
  .tt-door{grid-template-columns:1fr 70px 1fr 70px 1fr}
  .tt-door-col li{font-size:13.5px;padding:12px 10px}
}

/* módulo 06: el puntaje del motor, como en el simulador */
.tt-mod-score{align-items:flex-end;padding-bottom:22px}
.tt-mod-score .tt-qlist{width:100%;padding:12px;border-radius:14px;background:#0B1430}
.tt-mod-score .tt-qlist li{grid-template-columns:62px 1fr 64px}
.tt-chat-col{display:flex;flex-direction:column;gap:14px}
@media (min-width:1101px) and (max-width:1290px){.tt-fan figure:nth-child(4) .tt-fig{left:auto;right:0;transform:none}}
