/* Charla: diapositivas de 1600 × 900 escaladas a la pantalla */
body.charla-page{margin:0;height:100vh;overflow:hidden;background:var(--navy-deep)}
.deck{position:fixed;left:50%;top:50%;width:1600px;height:900px;transform:translate(-50%,-50%) scale(var(--s,1));transform-origin:50% 50%;overflow:hidden;background:var(--bg)}
.slide{position:absolute;inset:0;overflow:hidden;opacity:0;visibility:hidden;transform:translateX(calc(var(--dir,1) * -56px));transition:opacity 500ms var(--ease),transform 700ms var(--ease),visibility 0s linear 700ms}
.slide.on{opacity:1;visibility:visible;transform:none;transition:opacity 600ms var(--ease),transform 800ms var(--ease),visibility 0s}
.slide.dark{background:radial-gradient(120% 90% at 78% 100%,var(--navy-3) 0%,var(--navy) 55%,var(--navy-deep) 100%);color:var(--on-dark)}
.slide.light{background:var(--bg)}
.slide [data-a]{opacity:0}
.slide.on [data-a]{animation:up 800ms var(--ease) both;animation-delay:calc(var(--d,0) * 120ms + 300ms)}
@media (prefers-reduced-motion:reduce){.slide,.slide.on{transition:opacity 1ms}.slide [data-a],.slide.on [data-a]{opacity:1;animation:none}}

/* 1 · apertura */
.s-open{display:grid;grid-template-columns:1fr 600px;align-items:end;gap:40px;padding:90px 96px 0}
.s-open .logo{width:340px;height:auto;margin-bottom:72px}
.s-open .kicker{font-size:15px}
.s-open h1{margin-top:22px;font-size:92px;line-height:1;color:var(--gold-hi)}
.s-open .who{margin-top:34px;font-size:22px;color:var(--on-dark-2)}
.s-open .copy{align-self:center;padding-bottom:40px}
.s-open .temple{width:600px}

/* 2 · etapas */
.s-etapas{padding:44px 80px 0}
.s-etapas .top{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}
.s-etapas .h2{font-size:64px;margin:0}
.s-etapas .top p{font-size:19px;color:var(--muted);max-width:44ch;text-align:right}
.s-etapas .etapas .ages{margin-bottom:20px}
.s-etapas .etapas .age small{font-size:15px}
.s-etapas .etapas .media{min-height:400px}
.s-etapas .etapas .chart .box{min-height:0}
.s-etapas .etapas .band{margin-top:18px;padding:20px 36px}
.s-etapas .etapas .big{font-size:58px}
.s-etapas .etapas .band p{font-size:17px}
.s-etapas .etapas .story h3{font-size:44px}
.s-etapas .etapas .story p{font-size:19px}

/* 3-5 · pilares */
.s-pilar{display:grid;grid-template-columns:600px 1fr}
.s-pilar .side{position:relative;display:flex;flex-direction:column;padding:72px 64px 0;background:radial-gradient(120% 90% at 70% 100%,var(--navy-3) 0%,var(--navy) 55%,var(--navy-deep) 100%);color:var(--on-dark);overflow:hidden}
.s-pilar .num{font-family:var(--mono);font-size:15px;letter-spacing:.22em;color:var(--gold)}
.s-pilar h2{margin-top:16px;font-family:var(--caps);font-weight:500;font-size:64px;letter-spacing:.05em;line-height:1;color:var(--gold-hi)}
.s-pilar .side .lema{margin-top:20px;font-family:var(--serif);font-size:38px;color:#fff;line-height:1.15}
.s-pilar .side p{margin-top:16px;font-size:20px;line-height:1.5;color:var(--on-dark-2)}
.s-pilar .side .temple{margin-top:auto;width:440px;align-self:center}
.s-pilar .main{display:flex;flex-direction:column;padding:72px 72px 64px}
.s-pilar .main .kicker{font-size:14px}
.s-pilar .tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}
.s-pilar .tile{padding:22px;border-radius:20px;background:var(--paper);box-shadow:0 1px 0 var(--line-2)}
.s-pilar .tile .ico{width:52px;height:52px;padding:11px;border-radius:14px;background:var(--navy)}
.s-pilar .tile svg{width:100%;height:100%;fill:none;stroke:var(--gold-hi);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.s-pilar .tile h3{margin-top:14px;font-size:25px;color:var(--ink)}
.s-pilar .tile p{margin-top:6px;font-size:16px;line-height:1.4;color:var(--muted)}
.s-pilar .go{margin-top:auto;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.s-pilar .go .btn.big{min-height:84px;padding:0 40px;font-size:23px;gap:14px}
.s-pilar .go .btn.big small{font-family:var(--caps);font-size:14px;letter-spacing:.14em;color:var(--gold)}
.s-pilar .go .others{display:flex;flex-wrap:wrap;gap:8px}
.s-pilar .go .others a{font-size:15px;padding:10px 16px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line);color:var(--navy);transition:background-color 200ms ease-out}
@media (hover:hover){.s-pilar .go .others a:hover{background:var(--paper)}}

/* 6 · cierre */
.s-cierre{display:grid;grid-template-columns:1fr 420px;align-items:center;gap:80px;padding:0 120px}
.s-cierre h2{font-size:150px;line-height:1;color:var(--gold-hi)}
.s-cierre p{margin-top:24px;font-size:26px;color:var(--on-dark-2);line-height:1.5}
.s-cierre p b{color:#fff;font-weight:500}
.s-cierre .logo{width:380px;margin-top:56px}
.s-cierre .qr{padding:30px;border-radius:28px;background:#fff;text-align:center;color:var(--navy)}
.s-cierre .qr img{width:100%;height:auto}
.s-cierre .qr span{display:block;margin-top:14px;font-family:var(--caps);font-size:18px;letter-spacing:.14em}

/* controles del presentador */
.c-bar{position:fixed;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.08);z-index:5}
.c-bar i{position:absolute;inset:0;background:var(--gold);transform-origin:left;transform:scaleX(0);transition:transform 600ms var(--ease)}
.c-ui{position:fixed;right:16px;bottom:14px;z-index:6;display:flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:rgba(10,20,40,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--on-dark);font-size:13px;transition:opacity 300ms ease-out}
.c-ui button,.c-ui a{display:grid;place-items:center;min-width:34px;height:30px;padding:0 10px;border:0;border-radius:999px;background:none;color:inherit;cursor:pointer;font:inherit}
.c-ui button:hover,.c-ui a:hover{background:rgba(255,255,255,.1)}
.c-ui .c-cnt{padding:0 8px;font-family:var(--mono);font-variant-numeric:tabular-nums}
body.idle .c-ui{opacity:0}
body.idle{cursor:none}
.c-black{position:fixed;inset:0;z-index:20;background:#000;opacity:0;pointer-events:none;transition:opacity 300ms ease-out}
.c-black.on{opacity:1;pointer-events:auto}
