/* Mónica Escobar | Speaker. Versión ejecutiva: grafito, hueso y un solo acento cobre dorado. */

@font-face { font-family: "Oswald"; src: url("/assets/fonts/oswald.woff2") format("woff2"); font-weight: 200 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Cormorant Garamond"; src: url("/assets/fonts/cormorant.woff2") format("woff2"); font-weight: 300 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Cormorant Garamond"; src: url("/assets/fonts/cormorant-italic.woff2") format("woff2"); font-weight: 300 700; font-style: italic; font-display: swap; }
@font-face { font-family: "DM Sans"; src: url("/assets/fonts/dmsans.woff2") format("woff2"); font-weight: 100 1000; font-style: normal; font-display: swap; }

:root {
  --ink: #09090a;
  --graphite: #111113;
  --steel: #1a1b1e;
  --line: rgba(232, 231, 236, 0.14);
  --ash: #9a9ca3;
  --bone: #e6e5e9;
  --bone-2: #d6d5da;
  --paper: #ecebee;
  --bronze: #8a63d9;
  --bronze-hi: #b8a3f2;
  --bronze-lo: #5a3ea8;
  --text: #d9d8dd;
  --dark-text: #17171a;
  --dark-soft: #55565c;
  --display: "Oswald", "Arial Narrow", Impact, sans-serif;
  --serif: "Cormorant Garamond", Georgia, serif;
  --sans: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --gutter: clamp(18px, 4.2vw, 64px);
  --max: 1280px;
  --ease: cubic-bezier(0.2, 0.75, 0.15, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; overflow-x: clip; }
body { margin: 0; background: var(--ink); color: var(--text); font-family: var(--sans); font-size: 1.0625rem; line-height: 1.65; -webkit-font-smoothing: antialiased; overflow-x: clip; }
img, video, svg { display: block; max-width: 100%; }
a { color: inherit; }
h1, h2, h3, h4, p, ul, ol, figure { margin: 0; padding: 0; }
ul, ol { list-style: none; }
h1, h2, h3, h4 { font-family: var(--display); font-weight: 600; text-transform: uppercase; letter-spacing: 0.01em; line-height: 1.02; color: #fff; }
button { font: inherit; color: inherit; cursor: pointer; background: none; border: 0; }
:focus-visible { outline: 2px solid var(--bronze-hi); outline-offset: 3px; }
em { font-family: var(--serif); font-style: italic; font-weight: 500; text-transform: none; letter-spacing: -0.01em; color: var(--bronze-hi); }
.sec--bone h1, .sec--bone h2, .sec--bone h3 { color: var(--dark-text); }
.sec--bone em { color: var(--bronze-lo); }

.wrap { width: 100%; max-width: var(--max); margin: 0 auto; padding: 0 var(--gutter); }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: -999px; top: 8px; background: var(--bronze); color: var(--ink); padding: 10px 16px; z-index: 300; }
.skip:focus { left: 8px; }
.gray { filter: grayscale(1) contrast(1.06) brightness(0.96); }

/* Apertura sobria: dos cortinas negras con filo cobre */
.curtain { position: fixed; inset: 0; z-index: 400; pointer-events: none; display: grid; grid-template-columns: 1fr 1fr; }
.curtain i { display: block; background: var(--ink); transition: transform 1.3s 0.5s var(--ease); }
.curtain i:first-child { border-right: 1px solid var(--bronze); }
.curtain i:last-child { border-left: 1px solid var(--bronze); }
.curtain__mark { position: absolute; inset: 0; display: grid; place-items: center; font-family: var(--display); font-weight: 500; font-size: clamp(1.6rem, 4vw, 2.8rem); letter-spacing: 0.3em; text-transform: uppercase; color: #fff; transition: opacity 0.5s 0.1s; }
.curtain__mark span { color: var(--bronze-hi); margin-left: 0.3em; }
.is-ready .curtain i:first-child { transform: translateX(-101%); }
.is-ready .curtain i:last-child { transform: translateX(101%); }
.is-ready .curtain__mark { opacity: 0; }
.is-gone .curtain { display: none; }

.progress { position: fixed; top: 0; left: 0; height: 2px; width: 100%; background: var(--bronze); transform-origin: left; transform: scaleX(var(--p, 0)); z-index: 120; }
.cursor { position: fixed; left: 0; top: 0; width: 34px; height: 34px; margin: -17px 0 0 -17px; border: 1px solid var(--bronze); border-radius: 50%; pointer-events: none; z-index: 250; opacity: 0; transition: width 0.25s var(--ease), height 0.25s var(--ease), margin 0.25s var(--ease), opacity 0.3s; }
.cursor.is-on { opacity: 0.9; }
.cursor.is-big { width: 64px; height: 64px; margin: -32px 0 0 -32px; }
@media (pointer: coarse) { .cursor { display: none; } }

/* Botones */
.btn { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 12px; padding: 17px 32px; border-radius: 2px; font-family: var(--display); font-weight: 500; font-size: 0.98rem; letter-spacing: 0.12em; text-transform: uppercase; text-decoration: none; white-space: nowrap; overflow: hidden; isolation: isolate; transition: transform 0.35s var(--ease), background 0.3s, color 0.3s, border-color 0.3s; }
.btn svg { width: 19px; height: 19px; flex: none; }
.btn--solid { background: var(--bronze); color: var(--ink); }
.btn--solid::before { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--bone); transform: translateY(101%); transition: transform 0.45s var(--ease); }
.btn--solid:hover::before { transform: none; }
.btn--line { border: 1px solid rgba(232, 231, 236, 0.45); color: #fff; }
.btn--line:hover { border-color: var(--bronze-hi); color: var(--bronze-hi); }
.btn--dark { background: var(--ink); color: #fff; }
.btn--dark:hover { background: var(--bronze); color: var(--ink); }
.btn--small { padding: 12px 22px; font-size: 0.86rem; }

/* Cabecera */
.top { position: fixed; inset: 0 0 auto 0; z-index: 130; transition: background 0.4s, border-color 0.4s; border-bottom: 1px solid transparent; }
.top.is-solid { background: rgba(9, 9, 10, 0.9); backdrop-filter: blur(14px); border-color: var(--line); }
.top__in { display: flex; align-items: center; justify-content: space-between; gap: 24px; height: 76px; }
.brand { display: inline-flex; align-items: center; gap: 14px; font-family: var(--display); font-weight: 500; font-size: 1.08rem; letter-spacing: 0.22em; text-transform: uppercase; text-decoration: none; color: #fff; }
.brand svg { width: 34px; height: 34px; }
.brand span { color: var(--bronze-hi); }
.nav { display: flex; gap: 34px; }
.nav a { position: relative; text-decoration: none; font-size: 0.82rem; font-family: var(--display); font-weight: 400; letter-spacing: 0.16em; text-transform: uppercase; color: rgba(232, 231, 236, 0.8); padding: 6px 0; }
.nav a::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: var(--bronze); transform: scaleX(0); transform-origin: left; transition: transform 0.4s var(--ease); }
.nav a:hover { color: #fff; }
.nav a:hover::after { transform: scaleX(1); }
@media (max-width: 960px) { .nav { display: none; } }

/* Hero */
.hero { position: relative; min-height: 100svh; display: flex; flex-direction: column; overflow: hidden; background: var(--ink); --mx: 70%; --my: 30%; }
.hero__bg { position: absolute; inset: 0; background: url("/assets/img/hero-publico.webp") center 22% / cover no-repeat; filter: grayscale(1) contrast(1.1); opacity: 0.42; transform: scale(1.06); animation: slow-zoom 24s ease-in-out infinite alternate; }
@keyframes slow-zoom { to { transform: scale(1.14) translateY(-1.5%); } }
.hero__shade { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(9, 9, 10, 0.96) 0%, rgba(9, 9, 10, 0.74) 48%, rgba(9, 9, 10, 0.5) 100%), linear-gradient(0deg, var(--ink) 0, transparent 30%); }
.hero__beam { position: absolute; inset: 0; pointer-events: none; opacity: 0; transition: opacity 2s 1.4s; background: radial-gradient(560px circle at var(--mx) var(--my), rgba(184, 163, 242, 0.12), transparent 62%); }
.is-ready .hero__beam { opacity: 1; }
.hero__word { position: absolute; left: 50%; top: 52%; transform: translate(-30%, -50%); font-family: var(--display); font-weight: 700; font-size: clamp(9rem, 27vw, 26rem); line-height: 0.8; text-transform: uppercase; letter-spacing: -0.02em; color: transparent; -webkit-text-stroke: 1px rgba(184, 163, 242, 0.28); white-space: nowrap; pointer-events: none; opacity: 0; transition: opacity 2s 1.6s; }
.is-ready .hero__word { opacity: 1; }
.hero__grid { position: relative; z-index: 3; flex: 1; display: grid; grid-template-columns: 1.08fr 0.92fr; align-items: end; padding-top: 112px; }
.hero__copy { padding-bottom: clamp(48px, 8vh, 88px); }
.kicker { display: inline-flex; align-items: center; gap: 14px; font-family: var(--display); font-weight: 400; font-size: 0.86rem; letter-spacing: 0.28em; text-transform: uppercase; color: var(--bronze-hi); }
.kicker::before { content: ""; width: 42px; height: 1px; background: var(--bronze); }
.hero h1 { margin-top: 26px; font-size: clamp(3rem, 6.2vw, 6.1rem); font-weight: 700; line-height: 0.98; }
.mask { display: block; overflow: hidden; padding: 0.04em 0 0.12em; }
.mask > span { display: block; transform: translateY(112%); transition: transform 1.2s var(--ease); }
.is-ready .mask > span { transform: none; }
.is-ready .mask:nth-child(1) > span { transition-delay: 1.5s; }
.is-ready .mask:nth-child(2) > span { transition-delay: 1.65s; }
.is-ready .mask:nth-child(3) > span { transition-delay: 1.8s; }
.hero h1 em { font-size: 1.04em; }
.hero__lead { margin-top: 26px; max-width: 520px; font-size: 1.14rem; color: rgba(232, 231, 236, 0.8); }
.hero__cta { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 36px; }
.fade-in { opacity: 0; transform: translateY(18px); transition: opacity 1s var(--ease), transform 1s var(--ease); }
.is-ready .fade-in { opacity: 1; transform: none; }
.is-ready .d1 { transition-delay: 1.4s; } .is-ready .d2 { transition-delay: 2s; } .is-ready .d3 { transition-delay: 2.2s; } .is-ready .d4 { transition-delay: 2.5s; }
.hero__portrait { position: relative; align-self: end; justify-self: end; width: min(100%, 560px); }
.hero__portrait img { position: relative; width: 100%; height: auto; max-height: 86svh; object-fit: contain; object-position: bottom; transform: translateY(var(--py, 0px)); opacity: 0; filter: grayscale(1) contrast(1.08) brightness(0.3); transition: opacity 1.4s 1.5s, filter 1.4s 1.5s; }
.is-ready .hero__portrait img { opacity: 1; filter: grayscale(1) contrast(1.08) brightness(1) drop-shadow(0 0 1px rgba(184, 163, 242, 0.9)) drop-shadow(0 28px 36px rgba(0, 0, 0, 0.6)); }

/* Barra de cifras */
.facts { position: relative; z-index: 4; border-top: 1px solid var(--line); background: rgba(9, 9, 10, 0.78); backdrop-filter: blur(10px); }
.facts__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.fact { display: flex; align-items: center; gap: 16px; padding: 24px 22px; border-left: 1px solid var(--line); }
.fact:first-child { border-left: 0; padding-left: 0; }
.fact .ico { width: 36px; height: 36px; flex: none; }
.fact b { display: block; font-family: var(--display); font-weight: 600; font-size: 1.7rem; line-height: 1; color: #fff; letter-spacing: 0.02em; }
.fact span { display: block; margin-top: 4px; font-size: 0.86rem; line-height: 1.3; color: var(--ash); }
@media (max-width: 960px) { .facts__grid { grid-template-columns: repeat(2, 1fr); } .fact:nth-child(3) { border-left: 0; padding-left: 0; } .fact:nth-child(n+3) { border-top: 1px solid var(--line); } }

.scrollcue { display: none; }

@media (max-width: 860px) {
  .hero__grid { grid-template-columns: 1fr; padding-top: 96px; }
  .hero__shade { background: linear-gradient(180deg, rgba(9, 9, 10, 0.94), rgba(9, 9, 10, 0.78) 60%, rgba(9, 9, 10, 0.6)); }
  .hero__copy { padding-bottom: 0; }
  .hero__portrait { justify-self: center; width: min(86%, 400px); }
  .hero__word { top: 70%; transform: translate(-50%, -50%); }
}

/* Franja de escenarios */
.marquee { position: relative; z-index: 4; background: var(--graphite); border-block: 1px solid var(--line); overflow: hidden; }
.marquee__track { display: flex; width: max-content; animation: slide 60s linear infinite; }
.marquee:hover .marquee__track { animation-play-state: paused; }
.marquee__set { display: flex; align-items: center; flex: none; }
.marquee__set span { display: inline-flex; align-items: center; gap: 30px; padding: 22px 30px; font-family: var(--display); font-weight: 400; font-size: 1.15rem; letter-spacing: 0.22em; text-transform: uppercase; white-space: nowrap; color: var(--ash); }
.marquee__set span::after { content: ""; width: 5px; height: 5px; background: var(--bronze); transform: rotate(45deg); }
@keyframes slide { to { transform: translateX(-50%); } }

/* Secciones */
.sec { position: relative; padding: clamp(84px, 11vw, 150px) 0; overflow: hidden; }
.sec--graphite { background: var(--graphite); }
.sec--bone { background: var(--paper); color: var(--dark-text); }
.h2 { font-size: clamp(2.3rem, 4.8vw, 4.4rem); max-width: 18ch; }
.h2--wide { max-width: 24ch; }
.sub { margin-top: 22px; max-width: 56ch; font-size: 1.12rem; color: rgba(217, 216, 221, 0.78); }
.sec--bone .sub { color: var(--dark-soft); }
.orn { display: flex; align-items: center; gap: 16px; margin-bottom: 22px; font-family: var(--display); font-weight: 400; font-size: 0.84rem; letter-spacing: 0.28em; text-transform: uppercase; color: var(--bronze); }
.orn::before { content: ""; width: 42px; height: 1px; background: currentColor; }
.sec--bone .orn { color: var(--bronze-lo); }
.reveal { opacity: 0; transform: translateY(30px); transition: opacity 1s var(--ease), transform 1s var(--ease); transition-delay: calc(var(--i, 0) * 110ms); }
.reveal.is-in { opacity: 1; transform: none; }

/* Íconos de línea */
.ico path, .ico circle, .ico rect, .ico line, .ico polyline, .ico ellipse { fill: none; stroke: var(--bronze-hi); stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.sec--bone .ico path, .sec--bone .ico circle, .sec--bone .ico rect, .sec--bone .ico line, .sec--bone .ico polyline, .sec--bone .ico ellipse { stroke: var(--bronze-lo); }
.draw path, .draw circle, .draw rect, .draw line, .draw polyline { stroke-dasharray: 160; stroke-dashoffset: 160; transition: stroke-dashoffset 1.8s 0.3s var(--ease); }
.is-in .draw path, .is-in .draw circle, .is-in .draw rect, .is-in .draw line, .is-in .draw polyline, .draw.is-in path, .draw.is-in circle, .draw.is-in rect, .draw.is-in line, .draw.is-in polyline { stroke-dashoffset: 0; }
.icon-box { width: 64px; height: 64px; display: grid; place-items: center; border: 1px solid rgba(138, 99, 217, 0.6); margin-bottom: 26px; }
.icon-box svg { width: 32px; height: 32px; }

/* Propuesta de valor */
.valor { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 6vw, 96px); align-items: end; }
.cards4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; margin-top: clamp(52px, 7vw, 88px); background: var(--line); border: 1px solid var(--line); }
.vc { position: relative; padding: 36px 28px 40px; background: var(--graphite); --cx: 50%; --cy: 0%; overflow: hidden; transition: background 0.4s; }
.vc::before { content: ""; position: absolute; inset: 0; background: radial-gradient(320px circle at var(--cx) var(--cy), rgba(184, 163, 242, 0.12), transparent 62%); opacity: 0; transition: opacity 0.4s; }
.vc:hover::before { opacity: 1; }
.vc h3 { font-size: 1.55rem; line-height: 1.1; }
.vc p { margin-top: 12px; font-size: 0.98rem; color: var(--ash); }
@media (max-width: 960px) { .valor { grid-template-columns: 1fr; } .cards4 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .cards4 { grid-template-columns: 1fr; } }

/* Formato 45 minutos */
.formato { display: grid; grid-template-columns: 0.8fr 1.2fr; gap: clamp(32px, 6vw, 96px); align-items: start; }
.fsteps { border-top: 1px solid var(--line); }
.fstep { position: relative; display: grid; grid-template-columns: 96px 1fr; gap: 24px; align-items: center; padding: 30px 0; border-bottom: 1px solid var(--line); }
.fstep::before { content: ""; position: absolute; left: 0; top: -1px; height: 2px; width: 0; background: var(--bronze); transition: width 1.2s var(--ease); }
.fstep.is-in::before { width: 96px; }
.fstep .n { font-family: var(--display); font-weight: 300; font-size: 3.6rem; line-height: 1; color: var(--bronze); }
.fstep h3 { font-size: 1.9rem; display: flex; align-items: center; gap: 14px; }
.fstep h3 svg { width: 28px; height: 28px; }
.fstep p { margin-top: 8px; color: var(--ash); max-width: 46ch; }
@media (max-width: 860px) { .formato { grid-template-columns: 1fr; } .fstep { grid-template-columns: 64px 1fr; } .fstep .n { font-size: 2.6rem; } }

/* En escena */
.escena__top { display: grid; grid-template-columns: 1fr 300px; gap: clamp(16px, 2.4vw, 32px); margin-top: 52px; align-items: start; }
.player { position: relative; overflow: hidden; background: #000; isolation: isolate; outline: 1px solid var(--line); outline-offset: -1px; }
.player video { width: 100%; height: 100%; object-fit: cover; background: #000; transition: transform 0.9s var(--ease); }
.player--wide { height: 533px; }
.player--tall { aspect-ratio: 9 / 16; }
.escena__top .player--tall { height: 533px; aspect-ratio: auto; width: 300px; }
.player__btn { position: absolute; inset: 0; z-index: 2; display: grid; place-items: center; background: linear-gradient(0deg, rgba(9, 9, 10, 0.78), rgba(9, 9, 10, 0.08) 60%); transition: opacity 0.4s; }
.player__play { position: relative; width: 84px; height: 84px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--bronze-hi); color: #fff; background: rgba(9, 9, 10, 0.4); backdrop-filter: blur(6px); transition: transform 0.4s var(--ease), background 0.3s, color 0.3s; }
.player__play::after { content: ""; position: absolute; inset: 0; border-radius: 50%; border: 1px solid var(--bronze-hi); animation: ripple 2.8s infinite; }
@keyframes ripple { from { transform: scale(1); opacity: 0.8; } to { transform: scale(1.7); opacity: 0; } }
.player__btn:hover .player__play { transform: scale(1.08); background: var(--bronze); color: var(--ink); }
.player__play svg { width: 30px; height: 30px; margin-left: 4px; }
.player__cap { position: absolute; left: 22px; right: 22px; bottom: 20px; z-index: 3; pointer-events: none; font-family: var(--display); font-weight: 500; font-size: 1.05rem; letter-spacing: 0.14em; text-transform: uppercase; color: #fff; }
.player.is-playing .player__btn, .player.is-playing .player__cap { opacity: 0; pointer-events: none; }
.reel { margin-top: clamp(16px, 2.4vw, 32px); display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 4px 2px 20px; scrollbar-width: thin; scrollbar-color: var(--bronze) transparent; }
.reel .player { flex: 0 0 clamp(210px, 22vw, 272px); scroll-snap-align: start; }
.reel .player:hover video { transform: scale(1.05); }
.reel .player::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(9, 9, 10, 0.55), transparent 40%); pointer-events: none; }
.sound { position: absolute; right: 12px; top: 12px; z-index: 3; width: 38px; height: 38px; border-radius: 50%; background: rgba(9, 9, 10, 0.7); border: 1px solid rgba(232, 231, 236, 0.5); display: grid; place-items: center; }
.sound svg { width: 17px; height: 17px; fill: #fff; }
.sound .on { display: none; }
.sound[aria-pressed="true"] .on { display: block; }
.sound[aria-pressed="true"] .off { display: none; }
.escena .btn { margin-top: 18px; }
@media (max-width: 860px) { .escena__top { grid-template-columns: 1fr; } .player--wide { height: auto; aspect-ratio: 16 / 9; } .escena__top .player--tall { width: 100%; height: auto; aspect-ratio: 9 / 14; max-height: 72svh; } }

/* Conferencias */
.confs { display: flex; gap: 12px; margin-top: 56px; height: 640px; }
.cp { position: relative; flex: 1; min-width: 0; overflow: hidden; background: var(--steel); color: var(--text); cursor: pointer; transition: flex 0.9s var(--ease); isolation: isolate; }
.cp.is-open { flex: 3.4; cursor: default; }
.cp__img { position: absolute; inset: 0; z-index: -2; }
.cp__img img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.05) brightness(0.55); transition: transform 1.4s var(--ease), filter 0.9s; }
.cp.is-open .cp__img img { transform: scale(1.05); filter: grayscale(0.15) brightness(0.62); }
.cp::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, rgba(9, 9, 10, 0.96) 6%, rgba(9, 9, 10, 0.4) 60%, rgba(9, 9, 10, 0.55)); }
.cp::after { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 2px; background: var(--bronze); transform: scaleY(0); transform-origin: top; transition: transform 0.9s var(--ease); z-index: 2; }
.cp.is-open::after { transform: scaleY(1); }
.cp__tab { position: absolute; left: 0; right: 0; bottom: 0; padding: 28px 24px; transition: opacity 0.4s; }
.cp__tab .ico-wrap { width: 56px; height: 56px; display: grid; place-items: center; border: 1px solid rgba(138, 99, 217, 0.7); margin-bottom: 16px; background: rgba(9, 9, 10, 0.5); }
.cp__tab .ico-wrap svg { width: 30px; height: 30px; }
.cp__tab h3 { font-size: 1.6rem; line-height: 1.05; overflow-wrap: anywhere; }
.cp__body { position: absolute; left: 0; bottom: 0; width: min(700px, 100%); padding: 44px; opacity: 0; transform: translateY(24px); pointer-events: none; transition: opacity 0.5s, transform 0.7s var(--ease); }
.cp.is-open .cp__body { opacity: 1; transform: none; pointer-events: auto; transition-delay: 0.45s; }
.cp.is-open .cp__tab { opacity: 0; pointer-events: none; }
.cp__tag { display: inline-block; font-family: var(--display); font-size: 0.8rem; letter-spacing: 0.24em; text-transform: uppercase; color: var(--bronze-hi); padding-bottom: 6px; border-bottom: 1px solid var(--bronze); }
.cp__body h3 { margin-top: 18px; font-size: clamp(2.3rem, 4vw, 3.6rem); }
.cp__line { margin-top: 10px; font-family: var(--serif); font-style: italic; font-size: 1.5rem; color: var(--bronze-hi); }
.cp__for { margin-top: 14px; max-width: 52ch; color: rgba(232, 231, 236, 0.82); }
.topics { margin-top: 20px; display: flex; flex-wrap: wrap; gap: 8px; }
.topics li { padding: 8px 14px; border: 1px solid rgba(232, 231, 236, 0.3); font-size: 0.88rem; background: rgba(9, 9, 10, 0.5); }
.cp__body .btn { margin-top: 26px; }
@media (max-width: 960px) {
  .confs { flex-direction: column; height: auto; }
  .cp { flex: none; height: 104px; transition: height 0.8s var(--ease); }
  .cp.is-open { flex: none; height: 700px; }
  .cp__tab { padding: 18px 20px; display: flex; align-items: center; gap: 14px; top: 0; }
  .cp__tab .ico-wrap { margin: 0; width: 48px; height: 48px; flex: none; }
  .cp__body { padding: 28px 22px; }
}

/* Instituciones */
.aud__bg { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(9, 9, 10, 0.94), rgba(17, 17, 19, 0.9)); filter: grayscale(1); }
.aud .wrap { position: relative; z-index: 2; }
.tiles { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; margin-top: 52px; background: var(--line); border: 1px solid var(--line); }
.tile { position: relative; padding: 34px 24px; background: rgba(17, 17, 19, 0.92); --cx: 50%; --cy: 0%; overflow: hidden; transition: background 0.4s; }
.tile::before { content: ""; position: absolute; inset: 0; background: radial-gradient(260px circle at var(--cx) var(--cy), rgba(184, 163, 242, 0.14), transparent 62%); opacity: 0; transition: opacity 0.4s; }
.tile:hover::before { opacity: 1; }
.tile .icon-box { width: 56px; height: 56px; margin-bottom: 20px; }
.tile h3 { font-size: 1.25rem; line-height: 1.15; letter-spacing: 0.04em; }
.logos-t { margin-top: 80px; font-size: clamp(1.6rem, 2.8vw, 2.4rem); max-width: 28ch; }
.logos { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; margin-top: 28px; }
.logos li { background: var(--paper); display: grid; place-items: center; aspect-ratio: 2 / 1; padding: 10px; }
.logos img { max-height: 100%; width: auto; object-fit: contain; filter: grayscale(1); opacity: 0.8; transition: opacity 0.3s; }
.logos li:hover img { opacity: 1; }
@media (max-width: 960px) { .tiles { grid-template-columns: repeat(2, 1fr); } .logos { grid-template-columns: repeat(3, 1fr); } }

/* Testimonios */
.testi__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(14px, 2.4vw, 32px); margin-top: 52px; align-items: stretch; }
.quote { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 28px; padding: clamp(28px, 3vw, 44px); border: 1px solid var(--line); background: var(--steel); overflow: hidden; }
.quote::before { content: "\201C"; position: absolute; left: 24px; top: -34px; font-family: var(--serif); font-size: 13rem; line-height: 1; color: rgba(138, 99, 217, 0.2); }
.quote p { position: relative; margin-top: 56px; font-family: var(--serif); font-style: italic; font-size: clamp(1.7rem, 2.4vw, 2.2rem); line-height: 1.18; color: #fff; }
.quote .btn { align-self: flex-start; }
@media (max-width: 860px) { .testi__grid { grid-template-columns: 1fr; } .testi__grid .player--tall { max-height: 74svh; } }

/* Trayectoria */
.auth { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: clamp(32px, 6vw, 96px); align-items: center; }
.auth__img { position: relative; }
.auth__img .frame { position: relative; overflow: hidden; }
.auth__img .frame img { width: 100%; height: auto; filter: grayscale(1) contrast(1.05); }
.auth__img .frame::after { content: ""; position: absolute; inset: 14px; border: 1px solid rgba(184, 163, 242, 0.7); pointer-events: none; }
.seal { position: absolute; right: -30px; bottom: 36px; width: 140px; height: 140px; border-radius: 50%; background: var(--ink); display: grid; place-items: center; box-shadow: 0 12px 34px rgba(0, 0, 0, 0.35); }
.seal svg.txt { position: absolute; inset: 0; width: 100%; height: 100%; animation: spin 26s linear infinite; }
.seal svg.txt text { fill: var(--bronze-hi); font-family: var(--display); font-size: 10.4px; letter-spacing: 3.4px; }
@keyframes spin { to { transform: rotate(360deg); } }
.seal > .ico { width: 42px; height: 42px; }
.auth__bio { margin-top: 22px; max-width: 56ch; color: var(--dark-soft); font-size: 1.12rem; }
.creds { margin-top: 26px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.creds li { display: flex; align-items: center; gap: 14px; padding: 15px 16px; background: #fff; border: 1px solid rgba(23, 23, 26, 0.12); font-weight: 600; font-size: 0.95rem; line-height: 1.3; color: var(--dark-text); }
.creds svg { width: 26px; height: 26px; flex: none; }
.books { display: flex; gap: 16px; margin-top: 34px; flex-wrap: wrap; }
.book { position: relative; width: 108px; aspect-ratio: 2 / 3; padding: 14px 12px 12px 18px; display: flex; flex-direction: column; justify-content: space-between; background: linear-gradient(135deg, #202226, var(--ink)); color: #fff; box-shadow: -4px 6px 0 -1px rgba(90, 62, 168, 0.55), 0 18px 28px rgba(23, 23, 26, 0.3); transform: perspective(600px) rotateY(-14deg); transition: transform 0.6s var(--ease); }
.book::before { content: ""; position: absolute; left: 7px; top: 0; bottom: 0; width: 1px; background: var(--bronze); }
.book:hover { transform: perspective(600px) rotateY(0) translateY(-8px); }
.book b { font-family: var(--display); font-weight: 500; font-size: 0.95rem; line-height: 1.1; text-transform: uppercase; letter-spacing: 0.04em; }
.book small { font-size: 0.72rem; letter-spacing: 0.1em; color: var(--bronze-hi); }
.timeline { margin-top: clamp(72px, 9vw, 120px); display: grid; grid-template-columns: 1fr 1fr; column-gap: clamp(28px, 6vw, 88px); }
.tl { position: relative; display: grid; grid-template-columns: 84px 1fr; gap: 16px; padding: 22px 0; border-top: 1px solid rgba(23, 23, 26, 0.16); }
.tl__y { font-family: var(--display); font-weight: 400; font-size: 1.9rem; line-height: 1; color: var(--bronze-lo); }
.tl b { display: block; font-size: 1.05rem; line-height: 1.3; color: var(--dark-text); }
.tl small { display: block; margin-top: 3px; color: var(--dark-soft); font-size: 0.92rem; }
.tl::before { content: ""; position: absolute; left: 0; top: -1px; height: 2px; width: 0; background: var(--bronze-lo); transition: width 1.1s var(--ease); }
.tl.is-in::before { width: 84px; }
@media (max-width: 900px) { .auth, .timeline { grid-template-columns: 1fr; } .seal { right: 8px; width: 116px; height: 116px; } .creds { grid-template-columns: 1fr; } }

/* Cómo contratar */
.how { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: clamp(32px, 6vw, 96px); align-items: start; }
.steps { border-top: 1px solid var(--line); }
.step { position: relative; display: grid; grid-template-columns: 64px 1fr; gap: 24px; align-items: center; padding: 28px 0; border-bottom: 1px solid var(--line); --cx: 50%; --cy: 50%; overflow: hidden; }
.step::before { content: ""; position: absolute; inset: 0; background: radial-gradient(340px circle at var(--cx) var(--cy), rgba(184, 163, 242, 0.1), transparent 62%); opacity: 0; transition: opacity 0.4s; }
.step:hover::before { opacity: 1; }
.step .icon-box { margin: 0; }
.step b { font-family: var(--display); font-weight: 500; font-size: 1.6rem; letter-spacing: 0.04em; text-transform: uppercase; color: #fff; line-height: 1.1; }
.step p { margin-top: 6px; color: var(--ash); }
.how .btn { margin-top: 36px; }
@media (max-width: 900px) { .how { grid-template-columns: 1fr; } }

/* FAQ */
.faq { margin-top: 48px; max-width: 920px; border-top: 1px solid var(--line); }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary { list-style: none; cursor: pointer; padding: 26px 0; font-family: var(--display); font-weight: 500; font-size: 1.35rem; letter-spacing: 0.03em; text-transform: uppercase; color: #fff; display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary i { position: relative; flex: none; width: 32px; height: 32px; border: 1px solid var(--bronze); transition: transform 0.5s var(--ease), background 0.3s; }
.faq summary i::before, .faq summary i::after { content: ""; position: absolute; left: 50%; top: 50%; width: 12px; height: 1.5px; margin: -0.75px 0 0 -6px; background: var(--bronze-hi); }
.faq summary i::after { transform: rotate(90deg); }
.faq details[open] summary i { transform: rotate(135deg); background: rgba(138, 99, 217, 0.2); }
.faq details p { padding: 0 60px 26px 0; color: var(--ash); max-width: 64ch; }

/* Cierre */
.close { background: var(--graphite); overflow: hidden; border-top: 1px solid var(--line); }
.close__word { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); font-family: var(--display); font-weight: 700; font-size: clamp(9rem, 28vw, 28rem); line-height: 0.8; text-transform: uppercase; color: transparent; -webkit-text-stroke: 1px rgba(184, 163, 242, 0.2); white-space: nowrap; pointer-events: none; }
.close__grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.2fr 0.8fr; align-items: end; gap: 24px; }
.close h2 { font-size: clamp(2.6rem, 5.6vw, 5.2rem); max-width: 15ch; }
.close p.lead { margin-top: 20px; font-size: 1.15rem; max-width: 44ch; color: rgba(217, 216, 221, 0.82); }
.close .btn { margin-top: 32px; }
.close__tel { margin-top: 18px; font-family: var(--display); letter-spacing: 0.14em; font-size: 1.1rem; color: var(--bronze-hi); }
.close__img { align-self: end; justify-self: end; width: min(100%, 400px); margin-bottom: calc(-1 * clamp(84px, 11vw, 150px)); }
.close__img img { width: 100%; height: auto; filter: grayscale(1) contrast(1.05); outline: 1px solid rgba(184, 163, 242, 0.6); outline-offset: -14px; }
@media (max-width: 860px) { .close__grid { grid-template-columns: 1fr; } .close__img { justify-self: center; width: min(76%, 320px); } }

/* Pie */
.foot { background: var(--ink); padding: 64px 0 40px; border-top: 1px solid var(--line); }
.foot__grid { display: flex; flex-wrap: wrap; gap: 36px 72px; justify-content: space-between; align-items: flex-start; }
.foot h4 { font-size: 0.86rem; letter-spacing: 0.22em; color: var(--bronze-hi); margin-bottom: 14px; font-weight: 400; }
.foot li + li { margin-top: 8px; }
.foot a { color: var(--ash); text-decoration: none; transition: color 0.3s; }
.foot a:hover { color: #fff; }
.foot .brand { color: #fff; }
.foot p { margin-top: 12px; color: var(--ash); }
.foot small { display: block; margin-top: 44px; color: rgba(154, 156, 163, 0.7); }

/* WhatsApp flotante */
.wa-float { position: fixed; right: 20px; bottom: 20px; z-index: 140; width: 58px; height: 58px; border-radius: 50%; background: #25d366; color: #fff; display: grid; place-items: center; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5); transition: transform 0.3s var(--ease); }
.wa-float:hover { transform: scale(1.08); }
.wa-float svg { width: 30px; height: 30px; }

@media (max-width: 560px) {
  .top__in { height: 66px; gap: 10px; }
  .brand { font-size: 0.86rem; letter-spacing: 0.16em; gap: 10px; }
  .brand svg { width: 28px; height: 28px; }
  .btn--small { padding: 10px 14px; font-size: 0.76rem; letter-spacing: 0.08em; }
  .hero h1 { font-size: clamp(2.5rem, 11vw, 3.2rem); }
  .wa-float { width: 52px; height: 52px; right: 14px; bottom: 14px; }
  .fact { padding: 18px 12px; gap: 12px; }
  .fact b { font-size: 1.35rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .curtain { display: none; }
  .mask > span, .fade-in, .reveal, .hero__portrait img, .hero__word { transform: none; opacity: 1; transition: none; }
  .hero__portrait img { filter: grayscale(1); }
  .hero__beam { opacity: 1; }
  .marquee__track, .hero__bg, .seal svg.txt, .player__play::after { animation: none; }
  .draw path, .draw circle, .draw rect, .draw line, .draw polyline { stroke-dashoffset: 0; }
}

.hero h1 { font-size: clamp(2.6rem, 4.7vw, 4.7rem); }
@media (min-width: 861px) { .hero h1 .mask { white-space: nowrap; } }
.hero__word { font-size: clamp(8rem, 21vw, 21rem); left: 62%; }
.hero__portrait img { max-height: 76svh; }
.hero__grid { padding-top: 100px; }
.hero__copy { padding-bottom: clamp(36px, 6vh, 64px); }

.cp__tab h3 { font-size: clamp(1.05rem, 1.55vw, 1.5rem); overflow-wrap: normal; hyphens: none; letter-spacing: 0; }
.cp__tab { padding: 24px 18px; }
.fact b .num { display: inline; margin: 0; font-size: inherit; line-height: inherit; color: inherit; }

/* ===== Fondos con profundidad ===== */
.brand__logo { width: 46px; height: auto; flex: none; }
@media (max-width: 560px) { .brand__logo { width: 38px; } }
.top.is-solid { background: rgba(9, 9, 10, 0.62); backdrop-filter: blur(18px) saturate(1.3); }

.hero__dust { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 2; pointer-events: none; opacity: 0; transition: opacity 2s 1.6s; }
.is-ready .hero__dust { opacity: 0.9; }
.hero__beam--2 { background: conic-gradient(from 200deg at 78% 0%, transparent 0deg, rgba(184, 163, 242, 0.13) 14deg, transparent 30deg, transparent 52deg, rgba(184, 163, 242, 0.08) 64deg, transparent 80deg); mix-blend-mode: screen; transform-origin: 78% 0; animation: sweep 11s ease-in-out infinite alternate; }
@keyframes sweep { from { transform: rotate(-5deg); opacity: 0.55; } to { transform: rotate(6deg); opacity: 1; } }
.hero__bg { animation: kenburns 28s ease-in-out infinite alternate; }
@keyframes kenburns { from { transform: scale(1.02); } to { transform: scale(1.12) translate(-1.5%, 1%); } }

.sec--graphite::before, .escena::before, .close::before {
  content: ""; position: absolute; z-index: 0; width: 62vw; height: 62vw; max-width: 900px; max-height: 900px; border-radius: 50%; pointer-events: none;
  background: radial-gradient(circle, rgba(138, 99, 217, 0.16), transparent 66%); top: -22%; right: -18%; animation: drift 16s ease-in-out infinite alternate;
}
.sec--graphite:nth-of-type(even)::before { right: auto; left: -20%; top: auto; bottom: -26%; }
@keyframes drift { from { transform: translate3d(0, 0, 0) scale(1); } to { transform: translate3d(-5%, 7%, 0) scale(1.18); } }
.sec > .wrap, .sec > div { position: relative; z-index: 1; }

.sec--graphite::after, .close::after {
  content: ""; position: absolute; z-index: 0; pointer-events: none; width: min(46vw, 640px); aspect-ratio: 900 / 266;
  background: url("/assets/img/logo-su.webp") center / contain no-repeat; opacity: 0.045; bottom: 6%; right: 4%;
  filter: grayscale(0.2);
}
.sec--graphite:nth-of-type(even)::after { right: auto; left: 3%; bottom: auto; top: 8%; }

.grain { position: fixed; inset: -50%; z-index: 120; pointer-events: none; opacity: 0.055; mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  animation: grain 1.2s steps(6) infinite; }
@keyframes grain { 0% { transform: translate(0, 0); } 20% { transform: translate(-3%, 2%); } 40% { transform: translate(2%, -3%); } 60% { transform: translate(-2%, -1%); } 80% { transform: translate(3%, 3%); } 100% { transform: translate(0, 0); } }

.cards4 .vc, .tile, .quote, .step { backdrop-filter: blur(10px); background-color: rgba(26, 27, 30, 0.55); }
@media (prefers-reduced-motion: reduce) { .grain, .hero__beam--2, .hero__bg, .sec--graphite::before, .escena::before, .close::before { animation: none; } }

/* Mónica Escobar | Speaker. Capa de efectos v4: escena masiva, glow animado, transiciones por sección. */

@property --a { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
@keyframes spinA { to { --a: 360deg; } }
html.js { scroll-behavior: auto; }

/* ===== Hero: auditorio lleno y luces de escenario ===== */
.hero__bg {
  inset: -3%;
  background: url("/assets/img/hero-publico.webp") 8% 34% / auto 116% no-repeat;
  opacity: 0; filter: contrast(1.05) brightness(0.62) saturate(0.9);
  translate: var(--bx, 0px) var(--by, 0px);
  transform: scale(1.22); animation: none;
  transition: opacity 2.6s 0.9s ease, transform 6.5s 0.9s var(--ease);
}
.is-ready .hero__bg { opacity: 0.72; transform: scale(1.04); animation: breathe 32s ease-in-out 7.5s infinite alternate; }
@keyframes breathe { from { transform: scale(1.04); } to { transform: scale(1.12) translate(-1.2%, 0.8%); } }
.hero__shade {
  background:
    linear-gradient(90deg, rgba(9, 9, 10, 0.95) 0%, rgba(9, 9, 10, 0.78) 34%, rgba(9, 9, 10, 0.5) 66%, rgba(9, 9, 10, 0.6) 100%),
    linear-gradient(180deg, rgba(9, 9, 10, 0.78), transparent 26%),
    linear-gradient(0deg, var(--ink) 0, rgba(9, 9, 10, 0.5) 12%, transparent 34%);
}
.hero__beam--3 { background: conic-gradient(from 168deg at 24% -4%, transparent 0deg, rgba(226, 216, 255, 0.07) 10deg, transparent 22deg, transparent 40deg, rgba(184, 163, 242, 0.05) 50deg, transparent 64deg); mix-blend-mode: screen; transform-origin: 24% 0; animation: sweep 14s ease-in-out -4s infinite alternate-reverse; }
.hero__spot { position: absolute; z-index: 1; pointer-events: none; left: 0; top: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 2.4s 2s;
  background: radial-gradient(34vw 24vw at 48% 55%, rgba(226, 216, 255, 0.07), transparent 70%); mix-blend-mode: screen; animation: flicker 6s ease-in-out infinite; }
.is-ready .hero__spot { opacity: 1; }
@keyframes flicker { 0%, 100% { filter: brightness(1); } 45% { filter: brightness(1.35); } 55% { filter: brightness(0.85); } }
.hero__word { left: 66%; top: 50%; font-size: clamp(9rem, 25vw, 25rem); -webkit-text-stroke: 1.5px rgba(184, 163, 242, 0.5); animation: strokeGlow 6s ease-in-out infinite alternate; }
@keyframes strokeGlow { from { -webkit-text-stroke-color: rgba(184, 163, 242, 0.34); } to { -webkit-text-stroke-color: rgba(240, 214, 150, 0.62); } }

.kicker { gap: 12px; }
.eq { display: inline-flex; align-items: flex-end; gap: 3px; height: 16px; }
.eq i { display: block; width: 3px; height: 100%; background: var(--bronze-hi); box-shadow: 0 0 4px rgba(184, 163, 242, 0.4); transform-origin: bottom; animation: eq 1.15s ease-in-out infinite; }
.eq i:nth-child(2) { animation-delay: -0.3s; } .eq i:nth-child(3) { animation-delay: -0.6s; } .eq i:nth-child(4) { animation-delay: -0.15s; } .eq i:nth-child(5) { animation-delay: -0.8s; }
@keyframes eq { 0%, 100% { transform: scaleY(0.22); } 50% { transform: scaleY(1); } }
.kicker::before { display: none; }

.cue { position: absolute; z-index: 5; left: 50%; bottom: 112px; width: 26px; height: 42px; margin-left: -13px; border: 1px solid rgba(232, 231, 236, 0.5); border-radius: 14px; opacity: 0; transition: opacity 1s 3.4s; }
.is-ready .cue { opacity: 0.9; }
.cue span { position: absolute; left: 50%; top: 8px; width: 3px; height: 8px; margin-left: -1.5px; border-radius: 2px; background: var(--bronze-hi); box-shadow: 0 0 4px rgba(184, 163, 242, 0.5); animation: cue 1.8s ease-in-out infinite; }
@keyframes cue { 0% { transform: translateY(0); opacity: 1; } 80% { transform: translateY(16px); opacity: 0; } 100% { opacity: 0; } }
@media (max-width: 860px), (max-height: 760px) { .cue { display: none; } }

/* ===== Texto con glow animado ===== */
.glow-t, .hero h1 em, .h2 em .w > span, .close h2 em .w > span, .cp__line, .fstep .n {
  background: linear-gradient(100deg, var(--bronze) 0%, #fff3cf 36%, var(--bronze-hi) 50%, var(--bronze) 100%) 0 0 / 260% 100%;
  -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent;
  animation: shim 7s linear infinite;
}
.sec--bone .h2 em .w > span { background-image: linear-gradient(100deg, var(--bronze-lo) 0%, #c9a55c 40%, var(--bronze) 52%, var(--bronze-lo) 100%); }
@keyframes shim { to { background-position: -260% 0; } }
.h2 em, .hero h1 em, .close h2 em { filter: drop-shadow(0 0 5px rgba(184, 163, 242, 0.2)); animation: halo 3.6s ease-in-out infinite alternate; }
.sec--bone .h2 em { filter: drop-shadow(0 0 4px rgba(138, 99, 217, 0.18)); animation: none; }
@keyframes halo { to { filter: drop-shadow(0 0 11px rgba(255, 226, 160, 0.34)); } }
.fstep .n { -webkit-text-stroke: 0; }

/* Titulares: cada palabra sube desde una máscara */
.split .w { display: inline-block; overflow: hidden; vertical-align: top; padding: 0.04em 0 0.16em; margin-bottom: -0.16em; }
.split .w > span { display: inline-block; transform: translateY(118%) rotate(5deg); transform-origin: 0 100%; transition: transform 1.05s var(--ease); transition-delay: calc(var(--wi, 0) * 70ms + 80ms); }
.is-in .split .w > span, .split.is-in .w > span { transform: none; }

/* ===== Íconos con glow y anillo de luz ===== */
.icon-box, .cp__tab .ico-wrap { position: relative; background: radial-gradient(circle at 50% 130%, rgba(184, 163, 242, 0.12), rgba(9, 9, 10, 0.4) 70%); animation: iconPulse 3.6s ease-in-out infinite; animation-delay: calc(var(--i, 0) * 0.45s); }
.icon-box::before, .cp__tab .ico-wrap::before {
  content: ""; position: absolute; inset: -1px; padding: 1px; pointer-events: none;
  background: conic-gradient(from var(--a), transparent 0 70%, #fff0c4 88%, transparent 100%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  animation: spinA 3.8s linear infinite;
}
@keyframes iconPulse { 50% { box-shadow: 0 0 14px 0 rgba(184, 163, 242, 0.13), inset 0 0 14px rgba(184, 163, 242, 0.06); } }
svg.ico { filter: drop-shadow(0 0 2px rgba(184, 163, 242, 0.28)); animation: icoGlow 3.2s ease-in-out infinite alternate; }
@keyframes icoGlow { to { filter: drop-shadow(0 0 5px rgba(255, 228, 165, 0.45)); } }
.sec--bone svg.ico { filter: drop-shadow(0 0 3px rgba(138, 99, 217, 0.5)); animation: none; }

/* ===== Botones: brillo, pulso y destello ===== */
.btn--solid { animation: ctaGlow 3.4s ease-in-out infinite; }
@keyframes ctaGlow { 0%, 100% { box-shadow: 0 0 0 rgba(184, 163, 242, 0); } 50% { box-shadow: 0 0 16px rgba(184, 163, 242, 0.2); } }
.btn--solid::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(105deg, transparent 38%, rgba(255, 255, 255, 0.3) 50%, transparent 62%); transform: translateX(-130%); animation: shine 7s ease-in-out infinite; }
@keyframes shine { 0%, 62% { transform: translateX(-130%); } 100% { transform: translateX(130%); } }
.btn--line { backdrop-filter: blur(6px); }
.wa-float::before { content: ""; position: absolute; inset: 0; border-radius: 50%; border: 2px solid #25d366; animation: ripple 2.4s infinite; }
.burst { position: fixed; inset: 0; width: 100%; height: 100%; z-index: 300; pointer-events: none; }

/* ===== Costuras de luz entre secciones ===== */
.seam { position: relative; z-index: 6; height: 1px; background: linear-gradient(90deg, transparent, rgba(184, 163, 242, 0.35), transparent); overflow: visible; }
.seam::before { content: ""; position: absolute; left: 50%; top: -1px; width: 0; height: 3px; transform: translateX(-50%); background: linear-gradient(90deg, transparent, #fff3cf, transparent); box-shadow: 0 0 9px 1px rgba(184, 163, 242, 0.38); transition: width 1.6s var(--ease); }
.seam.is-in::before { width: min(70vw, 900px); }
.seam::after { content: ""; position: absolute; left: 50%; top: 0; width: 60vw; height: 120px; transform: translateX(-50%); background: radial-gradient(closest-side, rgba(184, 163, 242, 0.06), transparent); opacity: 0; transition: opacity 1.6s; pointer-events: none; }
.seam.is-in::after { opacity: 1; }

/* Secciones que se abren como cortina al entrar */
.wipe { clip-path: inset(calc((1 - var(--rv, 1)) * 14vh) calc((1 - var(--rv, 1)) * 6vw) 0 round calc((1 - var(--rv, 1)) * 44px) calc((1 - var(--rv, 1)) * 44px) 0 0); }

/* Franja con texto en contorno */
.marquee--out { background: var(--ink); border-block: 0; }
.marquee--out .marquee__set span { font-size: clamp(2.6rem, 6.5vw, 5.6rem); font-weight: 600; letter-spacing: 0.06em; color: transparent; -webkit-text-stroke: 1px rgba(184, 163, 242, 0.55); padding: 14px 34px; transition: color 0.4s, -webkit-text-stroke-color 0.4s; }
.marquee--out .marquee__set span:hover { color: rgba(184, 163, 242, 0.18); -webkit-text-stroke-color: #fff3cf; }
.marquee--out .marquee__set span::after { width: 9px; height: 9px; box-shadow: 0 0 6px rgba(184, 163, 242, 0.5); }
.marquee__track--rev { animation-direction: reverse; animation-duration: 70s; }

/* ===== Valor: borde de luz giratorio ===== */
.vc::after { content: ""; position: absolute; inset: 0; padding: 1px; pointer-events: none; opacity: 0; transition: opacity 0.5s;
  background: conic-gradient(from var(--a), transparent 0 62%, rgba(214, 200, 255, 0.95) 82%, transparent 100%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  animation: spinA 3.4s linear infinite; }
.vc:hover::after { opacity: 1; }
.vc h3, .vc p, .vc .icon-box { position: relative; z-index: 1; }
.vc:hover .icon-box { transform: translateY(-4px); }
.icon-box { transition: transform 0.5s var(--ease); }

/* ===== Formato: línea que se enciende con el scroll ===== */
.fsteps { position: relative; }
.fline { position: absolute; left: -30px; top: 0; bottom: 0; width: 2px; background: var(--line); }
.fline i { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: linear-gradient(var(--bronze-hi), var(--bronze)); transform-origin: top; transform: scaleY(var(--p, 0)); box-shadow: 0 0 7px rgba(184, 163, 242, 0.45); }
.fline b { position: absolute; left: -5px; top: calc(var(--p, 0) * 100%); width: 12px; height: 12px; margin-top: -6px; border-radius: 50%; background: #fff3cf; box-shadow: 0 0 9px 2px rgba(184, 163, 242, 0.45); }
@media (max-width: 1100px) { .fline { display: none; } }
.fstep .n { text-shadow: none; filter: drop-shadow(0 0 0 transparent); transition: filter 1s 0.3s; }
.fstep.is-in .n { filter: drop-shadow(0 0 7px rgba(184, 163, 242, 0.32)); }

/* ===== En escena: videos que se abren como pantalla ===== */
.cine { clip-path: inset(14% 10% 14% 10%); opacity: 0; transform: scale(0.94); transition: clip-path 1.5s var(--ease), opacity 1s, transform 1.5s var(--ease), box-shadow 0.5s; }
.cine.is-in { clip-path: inset(0); opacity: 1; transform: none; }
.player:hover { box-shadow: 0 0 0 1px rgba(184, 163, 242, 0.55), 0 30px 70px -26px rgba(184, 163, 242, 0.2); }
.player__play { box-shadow: 0 0 14px rgba(184, 163, 242, 0.15); }
.reel { cursor: grab; scroll-snap-type: none; }
.reel.is-drag { cursor: grabbing; }
.reel.is-drag .player { pointer-events: none; }

/* ===== Conferencias ===== */
.cp.is-open { box-shadow: inset 0 0 0 1px rgba(184, 163, 242, 0.3), 0 0 40px -14px rgba(184, 163, 242, 0.16); }
.cp.is-open .cp__img img { animation: kb 20s ease-in-out infinite alternate; }
@keyframes kb { from { transform: scale(1.05); } to { transform: scale(1.16) translate(-2%, -1%); } }
.cp__img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 40%, rgba(226, 216, 255, 0.14) 50%, transparent 60%); transform: translateX(-120%); }
.cp.is-open .cp__img::after { animation: sheen 1.6s 0.15s var(--ease) both; }
@keyframes sheen { to { transform: translateX(120%); } }
.cp.is-open .cp__body > * { animation: rise 0.9s var(--ease) both; }
.cp.is-open .cp__body > :nth-child(1) { animation-delay: 0.5s; } .cp.is-open .cp__body > :nth-child(2) { animation-delay: 0.6s; } .cp.is-open .cp__body > :nth-child(3) { animation-delay: 0.7s; }
.cp.is-open .cp__body > :nth-child(4) { animation-delay: 0.8s; } .cp.is-open .cp__body > :nth-child(5) { animation-delay: 0.9s; } .cp.is-open .cp__body > :nth-child(6) { animation-delay: 1s; }
@keyframes rise { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: none; } }
.cp__line { -webkit-background-clip: text; }
.topics li { transition: border-color 0.3s, background 0.3s, transform 0.4s var(--ease); }
.topics li:hover { border-color: var(--bronze-hi); background: rgba(138, 99, 217, 0.18); transform: translateY(-3px); }

/* ===== Instituciones: el mosaico se llena de luz al pasar ===== */
.tile { isolation: isolate; }
.tile > * { position: relative; z-index: 2; }
.tile::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(135deg, #e3c887, var(--bronze) 60%, #8f7140); clip-path: circle(0 at var(--cx) var(--cy)); transition: clip-path 0.75s var(--ease); }
.tile:hover::after { clip-path: circle(160% at var(--cx) var(--cy)); }
.tile:hover h3 { color: var(--ink); }
.tile:hover .sub { color: rgba(9, 9, 10, 0.78); }
.tile:hover .ico path, .tile:hover .ico circle, .tile:hover .ico rect, .tile:hover .ico line, .tile:hover .ico polyline { stroke: var(--ink); }
.tile:hover .icon-box { border-color: var(--ink); animation: none; box-shadow: none; }
.tile h3, .tile .sub, .tile .ico path, .tile .ico circle, .tile .ico rect, .tile .ico line, .tile .ico polyline { transition: color 0.4s 0.1s, stroke 0.4s 0.1s; }
.aud__bg { transform: scale(1.08); translate: 0 calc((var(--p, 0.5) - 0.5) * -60px); }
.aud::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: conic-gradient(from 190deg at 20% -10%, transparent 0, rgba(226, 216, 255, 0.1) 8deg, transparent 18deg, transparent 40deg, rgba(184, 163, 242, 0.08) 48deg, transparent 60deg); transform-origin: 20% 0; animation: sweep 13s ease-in-out infinite alternate; mix-blend-mode: screen; }
.logos li { transition: transform 0.4s var(--ease), box-shadow 0.4s; }
.logos li:hover { transform: translateY(-6px); box-shadow: 0 20px 40px -16px rgba(184, 163, 242, 0.22); }

/* ===== Testimonios ===== */
.quote::before { text-shadow: 0 0 24px rgba(184, 163, 242, 0.25); animation: halo2 4s ease-in-out infinite alternate; }
@keyframes halo2 { from { color: rgba(138, 99, 217, 0.12); } to { color: rgba(184, 163, 242, 0.22); } }
.quote p .wd { opacity: 0.16; transition: opacity 0.5s, text-shadow 0.5s; }
.quote p .wd.on { opacity: 1; text-shadow: 0 0 12px rgba(184, 163, 242, 0.16); }
.quote { box-shadow: inset 0 0 0 1px rgba(184, 163, 242, 0.12); }

/* ===== Trayectoria ===== */
.sec--bone::before { content: ""; position: absolute; z-index: 0; width: 70vw; max-width: 1000px; aspect-ratio: 1; top: -20%; left: -15%; border-radius: 50%; pointer-events: none; background: radial-gradient(circle, rgba(138, 99, 217, 0.2), transparent 66%); animation: drift 18s ease-in-out infinite alternate; }
.auth__img .frame::before { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none; background: linear-gradient(115deg, transparent 38%, rgba(226, 216, 255, 0.45) 50%, transparent 62%); transform: translateX(-130%); animation: shine 6s 1s ease-in-out infinite; }
.auth__img .frame img { transform: scale(1.1) translateY(calc((var(--p, 0.5) - 0.5) * -34px)); }
.seal { animation: sealGlow 3.6s ease-in-out infinite alternate; }
@keyframes sealGlow { to { box-shadow: 0 0 0 4px rgba(138, 99, 217, 0.14), 0 0 22px rgba(184, 163, 242, 0.28); } }
.creds li { transition: transform 0.4s var(--ease), box-shadow 0.4s, border-color 0.4s; }
.creds li:hover { transform: translateY(-4px); border-color: var(--bronze); box-shadow: 0 18px 34px -16px rgba(90, 62, 168, 0.5); }
.book { animation: floatT 6.5s ease-in-out infinite; animation-delay: calc(var(--k, 0) * -1.6s); }
@keyframes floatT { 0%, 100% { translate: 0 0; } 50% { translate: 0 -9px; } }
.tl { transition: padding-left 0.5s var(--ease); }
.tl:hover { padding-left: 14px; }
.tl:hover .tl__y { color: var(--bronze); text-shadow: 0 0 9px rgba(138, 99, 217, 0.22); }
.tl::after { content: ""; position: absolute; right: 0; top: -3px; width: 5px; height: 5px; background: var(--bronze-lo); transform: rotate(45deg) scale(0); transition: transform 0.8s 0.4s var(--ease); }
.tl.is-in::after { transform: rotate(45deg) scale(1); }

/* ===== Cómo contratar: línea con luz viajera ===== */
.steps { position: relative; }
.steps::before { content: ""; position: absolute; left: 31px; top: 40px; bottom: 40px; width: 2px; background: linear-gradient(180deg, transparent, var(--bronze) 12%, var(--bronze) 88%, transparent); opacity: 0.35; }
.steps::after { content: ""; position: absolute; left: 28px; top: 40px; width: 8px; height: 8px; border-radius: 50%; background: #fff3cf; box-shadow: 0 0 8px 2px rgba(184, 163, 242, 0.5); animation: travel 4.2s ease-in-out infinite; }
@keyframes travel { 0% { transform: translateY(0); opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { transform: translateY(calc(100% * 0 + 270px)); opacity: 0; } }
.step .icon-box { position: relative; z-index: 2; background-color: var(--graphite); }
.step:hover b { color: var(--bronze-hi); text-shadow: 0 0 10px rgba(184, 163, 242, 0.22); }
.step b { transition: color 0.3s, text-shadow 0.3s; }
@media (max-width: 900px) { .steps::before, .steps::after { display: none; } }

/* ===== FAQ ===== */
.faq details { transition: background 0.4s; }
.faq details[open] { background: linear-gradient(90deg, rgba(138, 99, 217, 0.08), transparent); }
.faq details[open] summary { color: var(--bronze-hi); text-shadow: 0 0 10px rgba(184, 163, 242, 0.18); }
.faq details[open] p { animation: rise 0.6s var(--ease) both; }
.faq summary { transition: color 0.3s, padding-left 0.4s var(--ease); }
.faq summary:hover { padding-left: 12px; }

/* ===== Cierre: luces y retrato que sube ===== */
.close__beam { position: absolute; inset: 0; z-index: 0; pointer-events: none; mix-blend-mode: screen; }
.close__beam--a { background: conic-gradient(from 195deg at 15% -6%, transparent 0, rgba(226, 216, 255, 0.13) 9deg, transparent 20deg); transform-origin: 15% 0; animation: sweep 12s ease-in-out infinite alternate; }
.close__beam--b { background: conic-gradient(from 165deg at 85% -6%, transparent 0, rgba(184, 163, 242, 0.12) 9deg, transparent 20deg); transform-origin: 85% 0; animation: sweep 15s -5s ease-in-out infinite alternate-reverse; }
.close__word { translate: 0 calc((var(--p, 0.5) - 0.5) * 120px); animation: strokeGlow 6s ease-in-out infinite alternate; }
.close__img { position: relative; }
.close__img::before { content: ""; position: absolute; inset: -18% -30% 0; z-index: -1; background: radial-gradient(closest-side, rgba(184, 163, 242, 0.13), transparent); animation: flicker 7s ease-in-out infinite; }
.close__img img { clip-path: inset(100% 0 0 0); transition: clip-path 1.8s 0.3s var(--ease); }
.close__img.is-in img { clip-path: inset(0); }
.close .btn { animation-duration: 2.4s; }

/* ===== Nav activa ===== */
.nav a.is-cur { color: #fff; }
.nav a.is-cur::after { transform: scaleX(1); box-shadow: 0 0 5px rgba(184, 163, 242, 0.5); }

/* ===== Cursor con estela ===== */
.cursor { box-shadow: 0 0 18px rgba(184, 163, 242, 0.35), inset 0 0 12px rgba(184, 163, 242, 0.15); mix-blend-mode: normal; }

/* ===== Movimiento reducido ===== */
@media (prefers-reduced-motion: reduce) {
  .split .w > span, .cine, .close__img img { transform: none; clip-path: none; opacity: 1; transition: none; }
  .hero__bg { opacity: 0.78; transform: none; }
  .hero__spot, .hero__beam--3, .eq i, .icon-box, .icon-box::before, .cp__tab .ico-wrap::before, svg.ico, .btn--solid, .btn--solid::after, .vc::after, .book, .seal, .steps::after, .quote::before,
  .h2 em, .hero h1 em, .close h2 em, .glow-t, .h2 em .w > span, .cp__line, .fstep .n, .close__beam, .aud::before, .sec--bone::before, .wa-float::before, .hero__word, .close__word { animation: none; }
  .wipe { clip-path: none; }
  .seam::before { width: min(70vw, 900px); transition: none; }
}
@media (max-width: 860px) {
  .hero__bg { background-size: cover; background-position: 52% 30%; }
  .hero__spot { display: none; }
  .wipe { clip-path: inset(calc((1 - var(--rv, 1)) * 8vh) calc((1 - var(--rv, 1)) * 4vw) 0 round calc((1 - var(--rv, 1)) * 28px) calc((1 - var(--rv, 1)) * 28px) 0 0); }
}

.hero h1 em { font-size: 1.04em; }
@media (max-width: 860px) {
  .hero__shade { background: linear-gradient(180deg, rgba(9, 9, 10, 0.9), rgba(9, 9, 10, 0.74) 55%, rgba(9, 9, 10, 0.6)), linear-gradient(0deg, var(--ink) 0, transparent 30%); }
}
.logos { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.logos img { max-width: 100%; height: auto; max-height: 100%; }
@media (max-width: 960px) { .logos { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 460px) { .logos { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Brillos de fondo mas tenues */
.sec--graphite::before, .escena::before, .close::before { background: radial-gradient(circle, rgba(138, 99, 217, 0.08), transparent 66%); }
.sec--bone::before { background: radial-gradient(circle, rgba(138, 99, 217, 0.1), transparent 66%); }
.hero__beam--2, .hero__beam--3 { opacity: 0.7; }
.cursor { box-shadow: 0 0 8px rgba(184, 163, 242, 0.15); }

/* testimonios: video destacado a la izquierda, cuatro mas a la derecha, cita debajo */
.testi__grid { grid-template-columns: 1.7fr 1fr 1fr; align-items: stretch; }
.testi__grid .player--feature { grid-row: 1 / span 2; aspect-ratio: auto; min-width: 0; min-height: 0; outline: 1px solid rgba(184, 163, 242, 0.55); box-shadow: 0 30px 80px -34px rgba(0, 0, 0, 0.9); }
.testi__grid .player--tall:not(.player--feature) { aspect-ratio: 9 / 14; min-width: 0; }
.testi__grid .quote { grid-column: 1 / -1; }
.player__tag { position: absolute; left: 22px; top: 22px; z-index: 3; pointer-events: none; padding: 7px 12px; font-family: var(--display); font-size: 0.74rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink); background: linear-gradient(135deg, #e3c887, var(--bronze)); }
.player.is-playing .player__tag { opacity: 0; }
.player--feature .player__cap { font-size: clamp(1.15rem, 1.6vw, 1.5rem); letter-spacing: 0.1em; line-height: 1.2; }
.player--feature .player__play { width: 92px; height: 92px; }
@media (max-width: 1000px) {
  .testi__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .testi__grid .player--feature { grid-column: 1 / -1; grid-row: auto; aspect-ratio: 9 / 16; max-height: 82svh; justify-self: center; width: min(100%, 460px); }
  .testi__grid .player--tall:not(.player--feature) { aspect-ratio: 9 / 14; max-height: none; }
}
@media (max-width: 520px) { .testi__grid { grid-template-columns: 1fr; } .testi__grid .player--tall:not(.player--feature) { aspect-ratio: 9 / 14; max-height: 74svh; } }

/* ===== Hero en tablet y celular: portada centrada, titulo, foto enorme, texto y botones ===== */
@media (max-width: 1024px) {
  .hero { min-height: 0; }
  .hero__word, .cue { display: none; }
  .hero__grid { display: flex; flex-direction: column; align-items: center; text-align: center; padding-top: 92px; padding-bottom: 0; gap: 0; }
  .hero__copy { display: contents; }
  .hero .kicker { order: 1; justify-content: center; margin: 0; white-space: nowrap; font-size: clamp(0.6rem, 2.8vw, 0.86rem); letter-spacing: 0.15em; gap: 10px; }
  .hero .kicker .eq { display: none; }
  .hero h1 { order: 2; margin-top: clamp(14px, 3.4vw, 26px); font-size: clamp(2.7rem, 11.4vw, 6rem); line-height: 0.96; text-align: center; }
  .hero h1 .mask { display: block; white-space: nowrap; }
  .hero__portrait { order: 3; position: relative; width: min(118vw, 700px); margin: clamp(-6px, -1vw, 0px) 0 0; align-self: center; justify-self: auto; }
  .hero__portrait::before { content: "SPEAKER"; position: absolute; z-index: 0; left: 50%; top: 25%; translate: -50% -50%; font-family: var(--display); font-weight: 700; font-size: clamp(5rem, 23.5vw, 15rem); line-height: 0.8; letter-spacing: 0.01em; color: transparent; -webkit-text-stroke: 1.5px rgba(184, 163, 242, 0.5); white-space: nowrap; pointer-events: none; opacity: 0; transition: opacity 2s 1.2s; animation: strokeGlow 6s ease-in-out infinite alternate; }
  .is-ready .hero__portrait::before { opacity: 1; }
  .hero__portrait::after { content: ""; position: absolute; z-index: 0; left: 50%; bottom: 0; width: 120%; aspect-ratio: 1; translate: -50% 38%; border-radius: 50%; background: radial-gradient(closest-side, rgba(184, 163, 242, 0.14), transparent); pointer-events: none; }
  .hero__portrait img { position: relative; z-index: 1; max-height: none; width: 100%; -webkit-mask-image: linear-gradient(180deg, #000 78%, transparent 99%); mask-image: linear-gradient(180deg, #000 78%, transparent 99%); }
  .hero__lead { order: 4; margin: clamp(-34px, -6vw, -12px) auto 0; position: relative; z-index: 2; max-width: 36ch; font-size: clamp(1.05rem, 3.6vw, 1.3rem); line-height: 1.5; text-align: center; }
  .hero__cta { order: 5; flex-direction: column; align-items: center; width: min(100%, 400px); margin: 28px auto 0; padding-bottom: 40px; gap: 12px; position: relative; z-index: 2; }
  .hero__cta .btn { width: 100%; justify-content: center; }
  .hero__shade { background: linear-gradient(180deg, rgba(9, 9, 10, 0.92), rgba(9, 9, 10, 0.7) 40%, rgba(9, 9, 10, 0.82) 100%); }
}
@media (max-width: 1024px) and (prefers-reduced-motion: reduce) { .hero__portrait::before { animation: none; opacity: 1; } }

/* Conferencias: panel abierto mas oscuro y textos mas claros para leer mejor */
.cp.is-open .cp__img img { filter: grayscale(0.2) brightness(0.5); }
.cp.is-open::before { background: linear-gradient(90deg, rgba(9, 9, 10, 0.9) 0%, rgba(9, 9, 10, 0.74) 55%, rgba(9, 9, 10, 0.3) 100%), linear-gradient(0deg, rgba(9, 9, 10, 0.88) 0%, rgba(9, 9, 10, 0.25) 70%); }
.cp.is-open .cp__body h3 { color: #fff; text-shadow: 0 2px 18px rgba(0, 0, 0, 0.7); }
.cp.is-open .cp__tag { color: #f0d696; }
.cp.is-open .cp__line { filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.8)); }
.cp.is-open .cp__for { color: #f4f1ea; text-shadow: 0 1px 10px rgba(0, 0, 0, 0.7); }
.cp.is-open .topics li { background: rgba(9, 9, 10, 0.72); border-color: rgba(184, 163, 242, 0.55); color: #f4f1ea; backdrop-filter: blur(4px); }

/* ===== Carga rápida: entrada corta, sin cortina en móvil/tablet ===== */
.is-ready .mask:nth-child(1) > span { transition-delay: .15s; }
.is-ready .mask:nth-child(2) > span { transition-delay: .27s; }
.is-ready .mask:nth-child(3) > span { transition-delay: .39s; }
.is-ready .d1 { transition-delay: .2s; } .is-ready .d2 { transition-delay: .55s; } .is-ready .d3 { transition-delay: .7s; } .is-ready .d4 { transition-delay: .85s; }
.curtain i { transition: transform .9s .1s var(--ease); }
.hero__portrait img { transition: opacity .9s .15s, filter .9s .15s; }
.hero__beam { transition: opacity 1.2s .3s; }
.hero__word { transition: opacity 1.2s .4s; }
.is-ready .hero__bg { animation-delay: 2s; }
@media (max-width: 1024px) {
  .curtain { display: none; }
  .mask > span { transition-duration: .7s; }
  .fade-in { transition-duration: .6s; transform: translateY(12px); }
  .is-ready .mask:nth-child(1) > span { transition-delay: 0s; }
  .is-ready .mask:nth-child(2) > span { transition-delay: .08s; }
  .is-ready .mask:nth-child(3) > span { transition-delay: .16s; }
  .is-ready .d1 { transition-delay: 0s; } .is-ready .d2 { transition-delay: .2s; } .is-ready .d3 { transition-delay: .3s; } .is-ready .d4 { transition-delay: .4s; }
  .hero__portrait img { transition: opacity .6s, filter .6s; }
  .hero__beam, .hero__word { transition: opacity .8s .1s; }
  .grain { display: none; }
  .hero__bg { animation: none; transform: none; }
  .is-ready .hero__bg { animation: none; transform: none; }
}

.aud__bg.is-loaded { background: linear-gradient(180deg, rgba(9, 9, 10, 0.94), rgba(17, 17, 19, 0.9)), url("/assets/img/hero-escenario.webp") center / cover no-repeat; }
@media (max-width: 700px) {
  .hero__bg { background-image: url("/assets/img/hero-publico-m.webp"); }
  .aud__bg.is-loaded { background: linear-gradient(180deg, rgba(9, 9, 10, 0.94), rgba(17, 17, 19, 0.9)), url("/assets/img/hero-escenario-m.webp") center / cover no-repeat; }
}

.foot li a span { display: block; margin-top: 2px; font-size: .78rem; letter-spacing: .04em; color: rgba(232, 231, 236, .5); }
.foot li a:hover span { color: var(--bronze-hi); }

/* Indicador de panel: icono + / x */
.cp__plus { position: absolute; top: 18px; right: 18px; z-index: 3; width: 40px; height: 40px; border-radius: 50%; border: 1px solid rgba(184, 163, 242, .75); background: rgba(9, 9, 10, .55); box-shadow: 0 0 0 0 rgba(184, 163, 242, .35); transition: transform .5s var(--ease), background .3s, opacity .4s; }
.cp__plus::before, .cp__plus::after { content: ""; position: absolute; left: 50%; top: 50%; width: 16px; height: 1.5px; background: var(--bronze-hi, #b8a3f2); transform: translate(-50%, -50%); transition: transform .5s var(--ease); }
.cp__plus::after { transform: translate(-50%, -50%) rotate(90deg); }
.cp__hint { display: none; font-family: var(--display); font-size: .7rem; letter-spacing: .2em; text-transform: uppercase; color: var(--bronze-hi, #b8a3f2); }
.cp:hover .cp__plus { background: rgba(184, 163, 242, .18); }
.cp.is-open .cp__plus { opacity: 0; pointer-events: none; }
@media (max-width: 960px) {
  .cp { cursor: pointer; }
  .cp:not(.is-open) .cp__plus { animation: plusPulse 2.6s ease-out infinite; }
  .cp.is-open .cp__plus { opacity: 1; pointer-events: auto; transform: rotate(45deg); background: rgba(9, 9, 10, .7); cursor: pointer; }
  .cp.is-open .cp__plus::before, .cp.is-open .cp__plus::after { background: #f0d696; }
  .cp__plus { top: 32px; right: 18px; }
  .cp.is-open .cp__plus { top: 18px; }
  .cp__tab { padding-right: 76px; }
  .cp__tab > h3 { flex: 1 1 auto; }
  .cp__hint { display: block; position: absolute; left: 88px; bottom: 14px; }
  .cp__tab { align-items: center; padding-bottom: 30px; }
}
@keyframes plusPulse { 0% { box-shadow: 0 0 0 0 rgba(184, 163, 242, .4); } 70%, 100% { box-shadow: 0 0 0 14px rgba(184, 163, 242, 0); } }
@media (prefers-reduced-motion: reduce) { .cp__plus { animation: none !important; } }

/* ===== SANDRA UPEGUI · acentos, botones, iconos y detalles propios ===== */
:root{--bronze:#8a63d9;--bronze-hi:#b8a3f2;--bronze-lo:#5a3ea8}
.i{width:1.1em;height:1.1em;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.f{width:1.1em;height:1.1em;fill:currentColor;stroke:none;flex:none}
.btn svg.i,.btn svg.f{width:19px;height:19px}

/* botones en paralelogramo (la franja de Sandra) */
.btn{border-radius:0;padding:17px 42px;clip-path:polygon(16px 0,100% 0,calc(100% - 16px) 100%,0 100%)}
.btn--small{padding:12px 30px;clip-path:polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%)}
.btn--solid{color:#fff}
.btn--solid:hover{color:var(--ink)}
.btn--line{border:0;background:rgba(232,231,236,.42);color:#fff}
.btn--line::before{content:"";position:absolute;inset:1px;z-index:-1;background:var(--ink);clip-path:polygon(15px 0,100% 0,calc(100% - 15px) 100%,0 100%)}
.btn--line:hover{color:var(--bronze-hi)}
.player__btn:hover .player__play{color:#fff}
.pricenote{font-size:.9rem;color:var(--ash);align-self:center}
.cta{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:34px}
.cta--c{justify-content:center;margin-top:56px}

/* iconos en rombo */
.icon-box,.cp__tab .ico-wrap{transform:rotate(45deg);border-radius:0}
.icon-box svg,.cp__tab .ico-wrap svg{transform:rotate(-45deg)}
.icon-box{width:50px;height:50px;margin:12px 0 38px 10px}
.icon-box svg{width:26px;height:26px}
.tile .icon-box{width:44px;height:44px;margin:10px 0 32px 8px}
.step .icon-box{width:44px;height:44px;margin:0 10px}
.cp__tab .ico-wrap{width:44px;height:44px;margin:6px 0 26px 8px}
.cp__tab .ico-wrap svg{width:24px;height:24px}
.kicker::after,.orn::after{content:"";width:6px;height:6px;background:var(--bronze);transform:rotate(45deg);flex:none}
.fact .ico{width:34px;height:34px}

/* cabecera */
.top__in{height:76px}
.brand img{height:38px;width:auto}
.top__in .nav{align-items:center}
.top__in .nav .btn{margin-left:8px}
.burger{display:none;position:relative;z-index:3;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:6px}
.burger span{width:22px;height:1.5px;background:#fff;transition:transform .3s,opacity .3s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
.top .brand{position:relative;z-index:3}
@media (max-width:1060px){
  .burger{display:flex}
  .top__in .nav{display:flex;position:fixed;inset:0;z-index:2;flex-direction:column;justify-content:center;align-items:center;gap:26px;background:rgba(9,9,10,.98);opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s}
  .top__in .nav.is-open{opacity:1;visibility:visible}
  .nav a{font-size:1rem}
  .top__in .nav .btn{margin:10px 0 0}
}

/* hero */
.hero h1{font-size:clamp(2.4rem,4.5vw,4.5rem)}
@media (min-width:861px){.hero h1 .mask{white-space:normal}}
.hero__lead{max-width:540px}

/* hechos */
.fact b{font-size:1.6rem}

/* tarjetas y secciones */
.cards4 .vc h3{font-size:1.35rem}
.cards--3{grid-template-columns:repeat(3,1fr)}
.cards--3 .vc h3{font-size:1.5rem}
.vc .val{display:block;margin-top:10px;font-size:.88rem;color:var(--ash)}
.vc .val s{color:#6c6b75}.vc .val em{font-family:var(--sans);font-style:normal;font-weight:700;letter-spacing:.1em;color:var(--bronze-hi)}
.vc small.t{display:block;margin-bottom:8px;font-family:var(--display);font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;color:var(--bronze-hi)}
.vc img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;margin-bottom:14px}
.cards--bonos{grid-template-columns:repeat(4,1fr)}
.tiles--3{grid-template-columns:repeat(3,1fr)}
.tiles--5{grid-template-columns:repeat(5,1fr)}
.tiles--5 .tile h3{font-size:1.15rem}
.tiles--topics .tile h3{font-size:1.02rem;line-height:1.22;letter-spacing:.02em}
.tile .sub{margin-top:12px;font-size:.95rem;max-width:none}
.tile .link-more{display:inline-block;margin-top:14px;font-family:var(--display);font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze-hi);text-decoration:none;border-bottom:1px solid var(--bronze)}
.tile--note{display:flex;align-items:center;background-color:rgba(138,99,217,.18)}
.tile--note p{font-family:var(--serif);font-style:italic;font-size:1.55rem;line-height:1.2;color:#fff}
.tile--note b{color:var(--bronze-hi);font-weight:500}
.sit__i{display:block;width:72px;height:72px;margin:0 0 22px 6px;overflow:hidden;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);background:#222}
.sit__i img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.tiles-t{margin:68px 0 0;font-size:clamp(1.5rem,2.4vw,2.1rem)}
.tiles-t+.tiles{margin-top:24px}

/* video */
.player--h{aspect-ratio:16/9}
.player--s{aspect-ratio:732/720;max-width:760px;margin-inline:auto}
.player--wide{height:auto;aspect-ratio:16/9}
.player--wide-c{max-width:960px;margin:52px auto 0}
.pair{display:flex;justify-content:center;gap:clamp(20px,4vw,56px);margin-top:52px}
.pair .player{width:min(300px,44vw)}
.pair .player+.player{margin-top:56px}
.escena .escena__vid{margin-top:52px}

/* videos de testimonio en horizontal */
.testi__grid--h{grid-template-columns:repeat(3,1fr)}
.tv h3{margin-top:22px;font-size:1.5rem}
.tv p{margin-top:8px;color:var(--ash);font-size:.98rem}
.gscore{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:40px;padding:18px 24px;border:1px solid var(--line);border-left:2px solid var(--bronze)}
.gscore .stars{display:flex;gap:3px;color:var(--bronze-hi);font-size:1rem}
.gscore b{color:#fff;font-weight:500}.gscore span{color:var(--ash);font-size:.92rem}
.gscore a{margin-left:auto;font-family:var(--display);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze-hi);text-decoration:none;border-bottom:1px solid var(--bronze)}
.revs{display:flex;gap:16px;margin-top:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 20px;scrollbar-width:thin;scrollbar-color:var(--bronze) transparent}
.revs .quote{flex:0 0 min(86vw,420px);scroll-snap-align:start;min-height:330px;justify-content:flex-start;gap:18px}
.revs .quote .stars{display:flex;gap:3px;color:var(--bronze-hi);font-size:.9rem;margin-top:34px;position:relative}
.revs .quote p{margin-top:0;font-family:var(--sans);font-style:normal;font-size:1rem;line-height:1.6;color:#e7e6eb;flex:1}
.revs .quote b{font-family:var(--display);font-weight:500;font-size:.88rem;letter-spacing:.14em;text-transform:uppercase;color:#fff}
.revs-ctl{display:flex;gap:12px;margin-top:8px}
.revs-ctl button{width:50px;height:50px;border:1px solid rgba(232,231,236,.4);display:grid;place-items:center;transform:skewX(-14deg);transition:background .3s,border-color .3s}
.revs-ctl button svg{transform:skewX(14deg)}
.revs-ctl button:first-child svg{transform:skewX(14deg) scaleX(-1)}
.revs-ctl button:hover{background:var(--bronze);border-color:var(--bronze)}
.quote--long p{font-size:clamp(1.5rem,2.3vw,2.1rem);line-height:1.25;margin-top:48px}
.quote--long .wd{color:rgba(255,255,255,.22);transition:color .5s}.quote--long .wd.on{color:#fff}
.quote--long .btn{margin-top:8px}

/* trayectoria */
.creds{grid-template-columns:1fr 1fr}
.creds li{align-items:flex-start}
.creds li svg{margin-top:2px}
.creds li span{display:block}.creds li small{display:block;margin-top:3px;font-weight:400;font-size:.86rem;color:var(--dark-soft)}
.creds-t{margin-top:30px;font-family:var(--display);font-size:.84rem;letter-spacing:.26em;text-transform:uppercase;color:var(--bronze-lo)}
.creds-t+.creds{margin-top:14px}
.book small{color:var(--bronze-hi)}
.timeline--s{margin-top:clamp(64px,8vw,110px)}
.auth__lead{margin-top:20px;font-family:var(--serif);font-style:italic;font-size:1.5rem;line-height:1.3;color:var(--dark-text)}
.auth__bio+.auth__bio{margin-top:16px}
.auth__q{margin-top:28px;padding-left:22px;border-left:2px solid var(--bronze-lo);font-family:var(--serif);font-style:italic;font-size:1.5rem;line-height:1.3;color:var(--dark-text)}
.frame--arch{border-radius:0}

/* cursos y preguntas */
.faq--wide{max-width:none}
.cdl{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;padding:0 0 30px}
.cdl dt{margin-bottom:10px;font-family:var(--display);font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;color:var(--bronze-hi)}
.cdl dd{margin:0;color:var(--ash);font-size:.96rem}
.cdl li{position:relative;padding:4px 0 4px 16px;line-height:1.45}
.cdl li::before{content:"";position:absolute;left:0;top:.8em;width:5px;height:5px;background:var(--bronze);transform:rotate(45deg)}
.sec--bone .faq summary{color:var(--dark-text)}
.sec--bone .faq,.sec--bone .faq details{border-color:rgba(23,23,26,.16)}
.sec--bone .faq details p{color:var(--dark-soft)}
.faq summary{font-size:1.2rem}

/* contacto */
.ctc__list{margin:34px 0 28px}
.ctc__list li{display:flex;align-items:center;gap:20px;padding:20px 0;border-top:1px solid var(--line)}
.ctc__list li:last-child{border-bottom:1px solid var(--line)}
.ctc__list .icon-box{margin:0 12px 0 8px;width:40px;height:40px}
.ctc__list small{display:block;font-family:var(--display);font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--bronze-hi)}
.ctc__list a:not(.lnk),.ctc__list div{color:#fff;font-size:1.1rem;text-decoration:none}
.lnk{margin-left:6px;font-family:var(--display);font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze-hi);text-decoration:none;border-bottom:1px solid var(--bronze)}
.soc{display:flex;gap:12px}
.soc a{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(232,231,236,.4);transform:skewX(-14deg);font-size:1.15rem;transition:background .3s,border-color .3s}
.soc a svg{transform:skewX(14deg)}
.soc a:hover{background:var(--bronze);border-color:var(--bronze)}
.form{display:grid;gap:22px;padding:clamp(28px,4vw,48px);background:rgba(26,27,30,.55);border:1px solid var(--line)}
.form h3{font-size:1.9rem}
.form__two{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.form label{display:grid;gap:4px;font-family:var(--display);font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ash)}
.form input,.form textarea{width:100%;padding:12px 0;border:0;border-bottom:1px solid rgba(232,231,236,.3);background:transparent;border-radius:0;color:#fff;font:400 1.05rem var(--sans);letter-spacing:0;text-transform:none}
.form input:focus,.form textarea:focus{outline:0;border-color:var(--bronze-hi)}
.form .btn{justify-self:start}
.form small{color:var(--ash);font-size:.86rem}

/* oferta */
.mock{width:100%;height:auto;margin-bottom:26px}
.stack{border-top:1px solid var(--line)}
.stack .step{padding:20px 0;grid-template-columns:64px 1fr}
.stack .step .icon-box{width:30px;height:30px;margin:0 16px}
.stack .step .icon-box svg{width:16px;height:16px}
.stack .step b{font-family:var(--sans);font-weight:500;font-size:1.02rem;letter-spacing:0;text-transform:none;line-height:1.4}
.stack .step p{font-size:.88rem;margin-top:3px}
.ticket{position:sticky;top:104px;padding:clamp(30px,3.6vw,50px);text-align:center;background:linear-gradient(165deg,#241b3c,#110e1a);border:1px solid rgba(184,163,242,.35);clip-path:polygon(0 0,100% 0,100% calc(50% - 16px),calc(100% - 16px) 50%,100% calc(50% + 16px),100% 100%,0 100%,0 calc(50% + 16px),16px 50%,0 calc(50% - 16px))}
.ticket__tag{display:inline-block;padding:7px 16px;background:rgba(138,99,217,.22);font-family:var(--display);font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze-hi);transform:skewX(-12deg)}
.ticket__old{margin-top:22px;color:var(--ash);font-size:.95rem}.ticket__old s{color:#6c6b75}
.ticket__now{margin:4px 0 8px;font-family:var(--display);font-weight:600;font-size:clamp(5.5rem,8vw,8rem);line-height:1;color:#fff}
.ticket__now sup{font-size:.36em;vertical-align:top;position:relative;top:.35em;margin-right:4px}
.ticket__now small{font-size:1.4rem;color:var(--ash);letter-spacing:.1em}
.ticket p{color:var(--ash);font-size:.95rem;margin-bottom:26px}
.ticket .btn{display:flex;width:100%;max-width:100%;white-space:normal;padding:16px 28px}
.ticket__sec{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 22px;margin-top:22px;font-size:.86rem;color:var(--ash)}
.ticket__sec span{display:inline-flex;align-items:center;gap:8px}.ticket__sec svg{color:var(--bronze-hi)}
.how--offer{grid-template-columns:1.1fr .9fr}
.pstep{width:92px;height:auto;object-fit:contain;filter:grayscale(1)}
.steps--img .step{grid-template-columns:92px 1fr}
.steps--img small{display:block;font-family:var(--display);font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;color:var(--bronze-hi)}
.steps--img .step p{color:#fff;font-size:1.05rem;margin-top:4px}
.guar{display:grid;grid-template-columns:auto 1fr;gap:clamp(28px,6vw,80px);align-items:center;padding:clamp(34px,5vw,64px);border:1px solid var(--line);background:rgba(26,27,30,.55)}
.guar img{width:min(300px,28vw);height:auto}
.guar h2{font-size:clamp(1.9rem,3.2vw,3rem);margin:8px 0 16px;max-width:22ch}
.guar p{color:var(--ash);max-width:60ch;margin-bottom:26px}

/* pie */
.foot .brand img{height:42px}
.foot small{margin-top:30px}
.foot p+p{margin-top:8px}
.foot .foot__legal{max-width:92ch;font-size:.86rem}

@media (max-width:1100px){
  .cards--bonos{grid-template-columns:repeat(2,1fr)}
  .tiles--5{grid-template-columns:repeat(3,1fr)}
  .cdl{grid-template-columns:1fr 1fr}
  .cards--3{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:960px){
  .how--offer{grid-template-columns:1fr}
  .ticket{position:relative;top:auto}
  .tiles--3{grid-template-columns:repeat(2,1fr)}
  .testi__grid--h{grid-template-columns:1fr}
  .ctc{grid-template-columns:1fr}
  .guar{grid-template-columns:1fr}.guar img{width:min(240px,70%)}
}
@media (max-width:700px){
  .cards--bonos,.cards--3,.tiles--3,.tiles--5{grid-template-columns:1fr}
  .cdl,.form__two,.creds{grid-template-columns:1fr}
  .pair{flex-direction:column;align-items:center}.pair .player+.player{margin-top:0}
  .pair .player{width:min(300px,100%)}
  .btn{padding:16px 30px;white-space:normal;text-align:center}
  .hero__cta .btn,.cta .btn,.close .btn,.form .btn{width:100%}
  .gscore a{margin-left:0}
}

@media (max-width:1024px){.hero__portrait::before{content:"VOZ"}.hero--sale .hero__portrait::before{content:"10"}}
.nav-lock{overflow:hidden}
.revs .quote::before{display:none}

/* ajustes de revisión */
.top__in .nav{gap:clamp(14px,1.6vw,26px)}
.nav a{font-size:.78rem;letter-spacing:.14em}
.btn--small{padding:11px 22px;font-size:.74rem;white-space:nowrap}
.top__in{gap:20px}
.hero h1{font-size:clamp(2.2rem,3.7vw,3.8rem);line-height:1.02}
.logos li{height:96px;padding:12px}
.logos li img{width:100%;height:100%;object-fit:contain}
.revs .quote{min-height:0}
@media (max-width:1180px){.top__in .nav a:nth-last-child(2){display:none}}
@media (max-width:700px){
  .hero h1{font-size:clamp(1.55rem,7.4vw,2.2rem)}
  .hero h1 .mask{white-space:normal}
}
.btn--small{padding:11px 30px;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}
.hero h1{font-size:clamp(2rem,3.1vw,3.2rem)}
.top__in .nav .btn{flex:none;margin-left:6px}
.top__in .nav{flex-wrap:nowrap;white-space:nowrap}
.hero__word{left:52%}
@media (max-width:700px){.hero h1{font-size:clamp(1.55rem,7.4vw,2.2rem)}}
.top .btn.btn--small{padding:12px 36px!important;clip-path:polygon(9px 0,100% 0,calc(100% - 9px) 100%,0 100%)}

/* ===== REFINADO: curvas, círculos, serif y menos repetición ===== */
:root{--r:26px}
/* botones curvos */
.btn,.btn--small,.top .btn.btn--small{clip-path:none!important;border-radius:999px;padding:16px 36px}
.top .btn.btn--small{padding:11px 26px!important}
.btn--line{background:transparent;border:1px solid rgba(232,231,236,.45);color:#fff}
.btn--line::before{display:none}
.btn--solid{background:linear-gradient(135deg,#9b78e6,#7a52cf);box-shadow:0 10px 30px -10px rgba(138,99,217,.7)}
.btn--solid::after{border-radius:999px}
.revs-ctl button,.soc a{transform:none;border-radius:50%}
.revs-ctl button svg,.soc a svg,.revs-ctl button:first-child svg{transform:none}
.revs-ctl button:first-child svg{transform:scaleX(-1)}
.ticket__tag{transform:none;border-radius:999px}
.ticket{clip-path:none;border-radius:32px}
/* sin efectos de Mónica */
.curtain,.cursor,.burst,.hero__word,.close__word,.cue,.seal{display:none!important}
.hero__portrait::before{display:none!important}
/* titulares en serif */
.h2,.hero h1,.close h2,.cp__body h3{font-family:var(--serif);text-transform:none;font-weight:600;letter-spacing:-.01em;line-height:1.04}
.hero h1{font-size:clamp(2.5rem,4.2vw,4.3rem)}
.h2{font-size:clamp(2.2rem,4vw,3.9rem)}
.close h2{font-size:clamp(2.4rem,4.6vw,4.6rem)}
@media (max-width:700px){.hero h1{font-size:clamp(1.9rem,8.4vw,2.6rem)}}
.h2 em,.hero h1 em,.close h2 em{font-style:italic}
/* etiquetas en pastilla */
.orn{display:inline-flex;padding:8px 18px;border:1px solid rgba(184,163,242,.35);border-radius:999px;font-size:.74rem;letter-spacing:.2em;background:rgba(138,99,217,.08)}
.orn::before{display:none}
.sec--bone .orn{border-color:rgba(90,62,168,.35);background:rgba(90,62,168,.06)}
.kicker::after{display:none}
/* iconos en círculo */
.icon-box,.cp__tab .ico-wrap{transform:none;border-radius:50%;animation:none}
.icon-box svg,.cp__tab .ico-wrap svg{transform:none}
.icon-box::before,.cp__tab .ico-wrap::before{border-radius:50%}
.icon-box{width:56px;height:56px;margin:0 0 26px}
.tile .icon-box{width:52px;height:52px;margin:0 0 24px}
.step .icon-box{margin:0}
.ctc__list .icon-box{margin:0 10px 0 0}
.sit__i{clip-path:none;border-radius:50%;margin-left:0}
/* tarjetas separadas y redondeadas */
.cards4,.tiles{gap:16px;background:none;border:0}
.vc,.tile{border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(180deg,rgba(30,31,36,.9),rgba(20,20,23,.9))}
.vc{padding:34px 28px 38px}
.vc::after{display:none}
.confs{gap:14px}
.cp{border-radius:30px}
.cp::after{display:none}
.player{border-radius:26px;outline:0}
.quote{border-radius:var(--r)}
.revs .quote{border-radius:var(--r)}
.gscore{border-radius:var(--r);border-left-width:1px}
.guar,.form{border-radius:32px}
.creds li{border-radius:16px}
.frame{border-radius:200px 200px 28px 28px;overflow:hidden}
.frame--arch{border-radius:200px 200px 28px 28px}
.logos{gap:14px}
.logos li{display:flex;align-items:center;justify-content:center;height:110px;aspect-ratio:auto;padding:16px 22px;border-radius:18px;overflow:hidden;background:#f1f0f4}
.logos li img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
/* franjas: barra de datos flotante y marquesina en pastillas */
.facts{margin:0 clamp(14px,3vw,40px) clamp(14px,2vw,26px);border:1px solid var(--line);border-radius:28px;background:rgba(14,14,18,.72)}
.fact:first-child{padding-left:22px}
.marquee{background:transparent;border:0;padding:22px 0}
.marquee__set span{margin:0 8px;padding:12px 26px;border:1px solid var(--line);border-radius:999px;font-size:.86rem;letter-spacing:.16em;background:rgba(26,27,30,.6)}
.marquee__set span::after{display:none}
.marquee--out{opacity:.8}
/* retrato en arco con halo, sin palabra gigante */
.hero__portrait{position:relative}
.hero__portrait::after{content:"";position:absolute;z-index:0;left:50%;bottom:0;width:92%;height:88%;transform:translateX(-50%);border-radius:999px 999px 0 0;background:radial-gradient(120% 90% at 50% 0%,rgba(138,99,217,.38),rgba(138,99,217,.06) 60%,transparent);border:1px solid rgba(184,163,242,.22);border-bottom:0}
.hero__portrait img{z-index:1}
/* secciones con borde superior curvo */
.sec{border-radius:44px 44px 0 0;margin-top:-44px}
.hero+.marquee,.marquee+.sec{margin-top:0}
.marquee+.sec,.marquee--out+.sec{border-radius:44px 44px 0 0}
.escena .player--wide-c,.player--wide{border-radius:30px}
.timeline .tl{border-radius:0}
.faq details{border-radius:18px;border:1px solid var(--line);margin-bottom:10px;padding:0 24px}
.sec--bone .faq details{border-color:rgba(23,23,26,.14)}
.faq summary{padding:22px 0;font-size:1.1rem}
.faq details[open]{background:rgba(138,99,217,.08)}
.faq summary i{border-radius:50%}
.tile--note{border-radius:var(--r)}
.fstep .n{font-family:var(--serif);font-style:italic}
.wa-float{border-radius:50%}
.pair .player,.testi__grid--h .player{border-radius:26px}

/* ===== v3: tipografía de Mónica restaurada, palabra gigante, sin arco, sin blanco quemado ===== */
.h2,.hero h1,.close h2,.cp__body h3{font-family:var(--display);text-transform:uppercase;font-weight:600;letter-spacing:.01em;line-height:1.04}
.hero h1{font-size:clamp(2rem,3.1vw,3.2rem)}
.h2{font-size:clamp(2rem,3.6vw,3.5rem)}
.close h2{font-size:clamp(2.2rem,4.2vw,4.2rem)}
.h2 em,.hero h1 em,.close h2 em{font-family:var(--serif);font-style:italic;text-transform:none;font-weight:500}
@media (max-width:700px){.hero h1{font-size:clamp(1.55rem,7.4vw,2.2rem)}}
.hero__word,.close__word{display:block!important}
.hero__word{left:46%;top:50%;font-size:clamp(8rem,21vw,21rem)}
.hero__portrait::after{content:"";position:absolute;z-index:2;inset:auto -6% 0 -6%;height:58%;border:0;border-radius:0;transform:none;width:auto;pointer-events:none;
  background:linear-gradient(0deg,#09090a 2%,rgba(9,9,10,.82) 28%,rgba(9,9,10,.35) 62%,transparent)}
.is-ready .hero__portrait img,.hero__portrait img{filter:grayscale(1) contrast(1.06) brightness(.8) drop-shadow(0 22px 34px rgba(0,0,0,.7))}
.is-ready .hero__portrait img{filter:grayscale(1) contrast(1.06) brightness(.8) drop-shadow(0 22px 34px rgba(0,0,0,.7))}
.hero--sale .hero__portrait img{filter:grayscale(1) contrast(1.06) brightness(.85) drop-shadow(0 22px 34px rgba(0,0,0,.7))}
@media (max-width:1024px){.hero__word{display:none!important}.hero__portrait::before{display:block!important;content:"ORADORA"}.hero--sale .hero__portrait::before{content:"10"}}
.hero__word{left:60%;top:48%;font-size:clamp(7rem,17vw,17rem);-webkit-text-stroke:1.5px rgba(184,163,242,.38);animation:none}
.close__word{-webkit-text-stroke:1.5px rgba(184,163,242,.3)}
@media (max-width:1024px){.hero__portrait::before{-webkit-text-stroke:1.5px rgba(184,163,242,.4)}}
.hero__word{left:64%;font-size:clamp(6rem,13.5vw,14rem)}
.hero__word{left:62%;top:50%;transform:translate(-50%,-50%);font-size:clamp(6rem,12.5vw,13.5rem)}
/* v4: sin caja de sombra sobre el retrato, sin franja detrás de la marquesina */
.hero__portrait::after{display:none!important}
.hero__portrait img,.is-ready .hero__portrait img,.hero--sale .hero__portrait img{-webkit-mask-image:linear-gradient(180deg,#000 55%,rgba(0,0,0,.6) 80%,transparent 99%);mask-image:linear-gradient(180deg,#000 55%,rgba(0,0,0,.6) 80%,transparent 99%);filter:grayscale(1) contrast(1.05) brightness(.82)}
.marquee{background:linear-gradient(180deg,var(--ink),var(--graphite));border:0;padding:20px 0 26px}
.marquee--out{background:var(--ink)}
.marquee+.sec,.marquee--out+.sec,.hero+.marquee{border-radius:0;margin-top:0}
.marquee+.sec::before{display:none}
/* v5: palabra de lado a lado y fondos con más violeta en secciones puntuales */
.hero__word{left:50%;top:50%;transform:translate(-50%,-50%);font-size:27vw;line-height:.8;-webkit-text-stroke:2px rgba(184,163,242,.34)}
.hero--sale .hero__word{font-size:22vw}
.hero{overflow:hidden}
@media (max-width:1024px){.hero__portrait::before{font-size:clamp(4rem,22vw,15rem)}.hero--sale .hero__portrait::before{content:"ORATORIA";font-size:clamp(3rem,17vw,12rem)}}
#problema,#servicios,#testimonios,#imagina,#resultados,#oferta{background-image:radial-gradient(ellipse 70% 60% at 12% 0%,rgba(138,99,217,.30),transparent 62%),radial-gradient(ellipse 60% 55% at 95% 100%,rgba(112,76,200,.22),transparent 60%)}
#problema,#imagina{background-image:radial-gradient(ellipse 75% 70% at 88% 10%,rgba(138,99,217,.30),transparent 62%),radial-gradient(ellipse 50% 50% at 5% 100%,rgba(112,76,200,.2),transparent 60%)}
#cierre{background-image:radial-gradient(ellipse 80% 80% at 50% 110%,rgba(138,99,217,.38),transparent 65%)}
.aud::before{opacity:1}
#situaciones .aud__bg.is-loaded,#para-quien .aud__bg.is-loaded{background:linear-gradient(180deg,rgba(40,24,84,.9),rgba(17,17,19,.92)),url("/assets/img/hero-escenario.webp") center/cover no-repeat}

/* v6: palabra más tenue, retrato móvil más chico, tarjetas que voltean */
.hero__word{-webkit-text-stroke:2px rgba(184,163,242,.14)}
@media (max-width:1024px){
  .hero__portrait::before{-webkit-text-stroke:1.5px rgba(184,163,242,.16)}
  .hero__portrait{width:min(84vw,400px)}
}
.vc--flip{padding:0;overflow:visible;background:none;border:0;perspective:1200px;cursor:pointer;min-height:330px;outline:0}
.vc--flip::before{display:none}
.vc__in{position:relative;width:100%;height:100%;min-height:330px;transition:transform .8s var(--ease);transform-style:preserve-3d}
.vc--flip.is-flipped .vc__in{transform:rotateY(180deg)}
.vc__f,.vc__b{position:absolute;inset:0;padding:32px 26px;border-radius:var(--r);border:1px solid var(--line);backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
.vc__f{background:linear-gradient(180deg,rgba(30,31,36,.92),rgba(20,20,23,.92))}
.vc__b{transform:rotateY(180deg);display:flex;flex-direction:column;justify-content:space-between;gap:14px;background:linear-gradient(160deg,#4a2f93,#2a1a5c 70%);border-color:rgba(184,163,242,.5)}
.vc__b h3{font-size:1.2rem;color:#fff}
.vc__b p{margin:0;font-size:.95rem;line-height:1.55;color:#ece6ff}
.vc__b .btn{align-self:flex-start;padding:10px 22px!important;font-size:.74rem}
.vc__hint{position:absolute;left:26px;bottom:22px;font-family:var(--display);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze-hi)}
.vc--flip:focus-visible .vc__f{border-color:var(--bronze-hi)}
@media (max-width:1100px){.vc--flip,.vc__in{min-height:360px}}
@media (hover:hover){.vc--flip:not(.is-flipped):hover .vc__f{border-color:rgba(184,163,242,.55)}}
.vc--flip,.vc__in{min-height:400px}
.vc__b{padding:28px 24px}
.vc__b p{font-size:.92rem;line-height:1.5}
@media (max-width:1024px){.hero__portrait::before{animation:none!important;-webkit-text-stroke:1.5px rgba(184,163,242,.15)}}
@media (max-width:700px){.vc--flip,.vc__in{min-height:380px}}
/* v6: palabra más translúcida, marquesina dentro del hero, tarjetas que giran */
.hero__word{-webkit-text-stroke:1.5px rgba(184,163,242,.15)}
.hero .marquee{position:relative;z-index:4;background:transparent;border:0;padding:4px 0 30px}
.hero .marquee__set span{background:rgba(20,20,26,.35)}
.hero+.sec{margin-top:0}
@media (max-width:1024px){
  .hero__portrait::before{-webkit-text-stroke:1.5px rgba(184,163,242,.16)}
  .hero__portrait{width:min(78vw,320px);margin-inline:auto}
}
.cards--flip{grid-template-columns:repeat(4,1fr)}
.vc.flip{padding:0;height:370px;overflow:visible;background:none;border:0;perspective:1400px;cursor:pointer;border-radius:var(--r)}
.vc.flip::before{display:none}
.flip__in{position:relative;width:100%;height:100%;transition:transform .85s var(--ease);transform-style:preserve-3d}
.vc.flip.is-flipped .flip__in{transform:rotateY(180deg)}
.flip__f,.flip__b{position:absolute;inset:0;padding:30px 26px;border-radius:var(--r);border:1px solid var(--line);backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;overflow:hidden}
.flip__f{background:linear-gradient(180deg,rgba(30,31,36,.92),rgba(20,20,23,.92))}
.flip__b{transform:rotateY(180deg);background:linear-gradient(160deg,#3a2680,#1b1236);border-color:rgba(184,163,242,.45);justify-content:center}
.flip__b h3{font-size:1.2rem;color:var(--bronze-hi);margin-bottom:12px}
.flip__b p{margin:0;font-size:.95rem;line-height:1.55;color:#ece8f7}
.flip__cta{align-self:flex-start;margin-top:16px;padding:9px 20px;border-radius:999px;border:1px solid rgba(184,163,242,.6);font-family:var(--display);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:#fff;text-decoration:none;transition:background .3s}
.flip__cta:hover{background:var(--bronze)}
.flip__hint{margin-top:auto;padding-top:14px;font-family:var(--display);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze-hi)}
.flip__hint::before{content:"↻ "}
.vc.flip:focus-visible{outline:2px solid var(--bronze-hi);outline-offset:4px}
@media (max-width:1100px){.cards--flip{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.cards--flip{grid-template-columns:1fr}.vc.flip{height:360px}}
@media (prefers-reduced-motion:reduce){.flip__in{transition:none}}
/* v7: sección recta bajo el hero, sin línea de luz */
body[data-page="home"] #problema{border-radius:0;margin-top:0}
body[data-page="home"] #problema::before,body[data-page="home"] .hero+.sec::before{display:none!important}

/* v8 quien soy */
body[data-page="home"] .chips{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px}
body[data-page="home"] .chip{display:inline-flex;align-items:center;gap:10px;padding:10px 18px 10px 12px;border-radius:999px;background:#fff;border:1px solid rgba(23,23,26,.12);font-weight:600;font-size:.92rem;line-height:1.25;color:var(--dark-text);max-width:100%;transition:transform .35s var(--ease),box-shadow .35s}
body[data-page="home"] .chip svg{width:22px;height:22px;flex:none}
body[data-page="home"] .chip:hover{transform:translateY(-3px);box-shadow:0 14px 28px -14px rgba(90,62,168,.55)}
body[data-page="home"] .chip--dk{background:linear-gradient(135deg,#3a2680,#1b1236);border-color:transparent;color:#f3effd}
body[data-page="home"] .chip--dk svg{color:#cdbcf7;stroke:#cdbcf7}
body[data-page="home"] .chip--big{border-radius:20px;padding:12px 18px 12px 14px}
body[data-page="home"] .impact{margin-top:clamp(48px,6vw,84px);display:grid;grid-template-columns:5fr 7fr;gap:14px;padding:14px;border-radius:32px;background:radial-gradient(120% 140% at 0% 0%,#4a3196 0%,#1b1236 60%,#120c26 100%);box-shadow:0 40px 80px -40px rgba(58,38,128,.7)}
body[data-page="home"] .impact__main{position:relative;overflow:hidden;border-radius:22px;padding:clamp(26px,3vw,40px);display:flex;flex-direction:column;justify-content:flex-end;min-height:300px;background:linear-gradient(160deg,rgba(184,163,242,.22),rgba(184,163,242,.05));border:1px solid rgba(184,163,242,.3)}
body[data-page="home"] .impact__k{position:absolute;top:26px;left:clamp(26px,3vw,40px);font-family:var(--display);font-size:.84rem;letter-spacing:.3em;text-transform:uppercase;color:#cdbcf7}
body[data-page="home"] .impact__big{font-family:var(--display);font-size:clamp(5rem,10vw,9rem);line-height:.9;color:transparent;-webkit-text-stroke:2px rgba(205,188,247,.75);letter-spacing:.02em}
body[data-page="home"] .impact__t{margin-top:14px;font-family:var(--serif);font-style:italic;font-size:clamp(1.25rem,1.7vw,1.6rem);line-height:1.3;color:#f3effd}
body[data-page="home"] .impact__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
body[data-page="home"] .im{display:flex;flex-direction:column;gap:12px;padding:20px;border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(184,163,242,.2);color:#e9e4f7;font-size:.93rem;line-height:1.4;transition:background .35s,transform .35s var(--ease)}
body[data-page="home"] .im:hover{background:rgba(255,255,255,.11);transform:translateY(-3px)}
body[data-page="home"] .im svg{width:34px;height:34px;padding:7px;border-radius:50%;background:rgba(184,163,242,.2);flex:none;color:#d8ccfa;stroke:#d8ccfa}
body[data-page="home"] .im--w{grid-column:1/-1;flex-direction:row;align-items:center;gap:16px}
body[data-page="home"] .hits{margin-top:clamp(48px,6vw,84px);display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
body[data-page="home"] .hit{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:26px;min-height:210px;border-radius:26px}
body[data-page="home"] .hit b{display:block;font-weight:700;font-size:1.05rem;line-height:1.25}
body[data-page="home"] .hit small{display:block;font-size:.88rem;opacity:.75}
body[data-page="home"] .hit--a{grid-column:span 2;background:linear-gradient(120deg,#5a3ea8,#2a1a5c);color:#fff}
body[data-page="home"] .hit__w{position:absolute;top:10px;left:22px;font-family:var(--display);font-size:clamp(3.4rem,8vw,6.6rem);line-height:1;text-transform:uppercase;color:rgba(255,255,255,.14)}
body[data-page="home"] .hit--b{background:#14141a;color:#f1eef9}
body[data-page="home"] .hit--b .hit__w{left:auto;right:18px;font-size:clamp(3.4rem,6vw,5rem);color:transparent;-webkit-text-stroke:1.5px rgba(184,163,242,.6)}
body[data-page="home"] .hit--c{background:#fff;border:1px solid rgba(23,23,26,.12);color:var(--dark-text)}
body[data-page="home"] .hit--c svg{position:absolute;top:22px;right:22px;width:44px;height:44px;opacity:.9}
body[data-page="home"] .hit--c .hit__y{font-family:var(--display);font-size:3.4rem;line-height:1;color:var(--bronze-lo);margin-bottom:6px}
body[data-page="home"] .hit--d{background:#e9e4f7;color:var(--dark-text);align-items:flex-start}
body[data-page="home"] .hit__ring{display:grid;place-items:center;width:96px;height:96px;margin-bottom:auto;border-radius:50%;border:2px dashed var(--bronze-lo);animation:spin 24s linear infinite}
body[data-page="home"] .hit__ring span{font-family:var(--display);font-size:1.7rem;color:var(--bronze-lo);animation:spin 24s linear infinite reverse}
body[data-page="home"] .hit--e{background:radial-gradient(100% 120% at 100% 0%,#8a63d9,#3a2680 70%);color:#fff;box-shadow:0 30px 50px -28px rgba(90,62,168,.8)}
body[data-page="home"] .hit--e .hit__y{font-family:var(--display);font-size:4.6rem;line-height:.95;margin-bottom:auto}
body[data-page="home"] .hit--f{grid-column:1/-1;min-height:0;flex-direction:row;align-items:center;flex-wrap:wrap;gap:6px 22px;padding:22px 30px;background:#fff;border:1px dashed rgba(90,62,168,.5);color:var(--dark-text)}
body[data-page="home"] .hit__tag{padding:6px 16px;border-radius:999px;background:var(--bronze-lo);color:#fff;font-family:var(--display);font-size:.8rem;letter-spacing:.24em;text-transform:uppercase}
body[data-page="home"] .hit--f b{font-family:var(--serif);font-style:italic;font-weight:500;font-size:1.6rem}
@keyframes spin{to{transform:rotate(360deg)}}
@media (max-width:900px){
body[data-page="home"] .impact{grid-template-columns:1fr}
body[data-page="home"] .impact__main{min-height:240px}
body[data-page="home"] .hits{grid-template-columns:1fr 1fr}
body[data-page="home"] .hit--a{grid-column:1/-1}
}
@media (max-width:560px){
body[data-page="home"] .impact__grid{grid-template-columns:1fr}
body[data-page="home"] .hits{grid-template-columns:1fr}
body[data-page="home"] .hit{min-height:170px}
}
@media (prefers-reduced-motion:reduce){body[data-page="home"] .hit__ring,body[data-page="home"] .hit__ring span{animation:none}}
body[data-page="home"] .chip--dk svg,body[data-page="home"] .chip--dk svg *,body[data-page="home"] .im svg,body[data-page="home"] .im svg *{stroke:#d8ccfa!important;color:#d8ccfa}
body[data-page="home"] .im svg{width:38px;height:38px;padding:8px;opacity:1}
body[data-page="home"] .hit--f{justify-content:flex-start}

/* v9 hero foto + valores */
body[data-page="home"] .hero__bg{background-image:url("/assets/img/hero-sala.webp");background-position:56% 40%;background-size:cover;background-repeat:no-repeat;inset:-3%}
@media (max-width:700px){body[data-page="home"] .hero__bg{background-image:url("/assets/img/hero-sala-m.webp");background-position:50% 40%}}
.vals{background:linear-gradient(180deg,#0e0c16,#17122a);padding:clamp(44px,6vw,76px) 0;border-block:1px solid rgba(184,163,242,.14)}
.vals__list{display:grid;grid-template-columns:repeat(5,1fr);list-style:none;margin:0 auto;padding:0}
.vals__list li{position:relative;display:flex;flex-direction:column;gap:6px;padding:6px clamp(14px,2vw,30px);border-left:1px solid rgba(184,163,242,.22)}
.vals__list li:first-child{border-left:0}
.vals__n{font-family:var(--display);font-size:.8rem;letter-spacing:.28em;color:#b8a3f2}
.vals__list b{font-family:var(--display);font-weight:500;font-size:clamp(1.5rem,2.5vw,2.3rem);letter-spacing:.05em;text-transform:uppercase;color:#f3effd;line-height:1.1}
.vals__list small{font-size:.92rem;line-height:1.4;color:#a9a3bd}
@media (max-width:900px){.vals__list{grid-template-columns:1fr 1fr;row-gap:28px}.vals__list li:nth-child(odd){border-left:0}.vals__list li:last-child{grid-column:1/-1;border-left:0}}
body[data-page="home"] .hero__bg{filter:grayscale(1) contrast(1.05) brightness(.62)!important}
/* v10 hero fondo mas oscuro, luces mas marcadas */
body[data-page="home"] .hero__bg{filter:grayscale(1) contrast(1.12) brightness(.44)!important}
body[data-page="home"] .hero__shade::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 70% at 78% 30%,rgba(138,99,217,.42),transparent 70%),radial-gradient(45% 55% at 8% 95%,rgba(90,62,168,.38),transparent 70%),radial-gradient(35% 40% at 52% 0%,rgba(184,163,242,.2),transparent 70%)}
body[data-page="home"] .hero__beam,body[data-page="home"] .hero__spot{filter:brightness(1.9) saturate(1.2)}
/* v11 izquierda mas oscura + paneo constante */
body[data-page="home"] .hero__shade::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(6,5,10,.82) 0%,rgba(6,5,10,.62) 32%,rgba(6,5,10,.25) 55%,transparent 72%)}
@keyframes heroPan{0%{transform:scale(1.08) translate3d(-1.8%,0,0)}50%{transform:scale(1.2) translate3d(0,-1.2%,0)}100%{transform:scale(1.08) translate3d(1.8%,0,0)}}
body[data-page="home"] .hero__bg{animation:heroPan 26s ease-in-out infinite!important;transform-origin:62% 40%;will-change:transform}
@media (prefers-reduced-motion:reduce){body[data-page="home"] .hero__bg{animation:none!important}}
/* v12 quien soy: chips uniformes, panel impacto neutro */
body[data-page="home"] .chip,body[data-page="home"] .chip--dk{background:#fff;border:1px solid rgba(23,23,26,.12);color:var(--dark-text)}
body[data-page="home"] .chip svg{width:30px;height:30px;padding:6px;border-radius:50%;background:rgba(138,99,217,.14);flex:none}
body[data-page="home"] .chip--dk svg,body[data-page="home"] .chip--dk svg *{stroke:var(--bronze-lo)!important;color:var(--bronze-lo)}
body[data-page="home"] .chip--big{border-radius:999px;padding:10px 18px 10px 12px}
body[data-page="home"] .impact{background:linear-gradient(180deg,#1b1b21,#121216);box-shadow:0 30px 60px -36px rgba(20,20,26,.6);border:1px solid rgba(255,255,255,.06)}
body[data-page="home"] .impact__main{background:radial-gradient(90% 80% at 0% 0%,rgba(138,99,217,.28),rgba(138,99,217,.04) 70%);border:1px solid rgba(184,163,242,.22)}
body[data-page="home"] .impact__big{-webkit-text-stroke:2px #a98bf0}
body[data-page="home"] .im{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#e6e3ee}
body[data-page="home"] .im:hover{background:rgba(255,255,255,.08)}

/* v13 cierre */
body[data-page="home"] .close{padding-top:clamp(56px,6vw,88px)}
body[data-page="home"] .close__word{font-size:clamp(7rem,20vw,19rem)}
body[data-page="home"] .close__img{width:min(100%,340px);margin-bottom:calc(-1 * clamp(60px,7vw,100px))}
body[data-page="home"] .close__img img{outline:0!important}
body[data-page="home"] .close__img::before{inset:-6% -40% 0;background:radial-gradient(closest-side,rgba(138,99,217,.38),transparent)}
body[data-page="home"] .close h2{font-size:clamp(2.1rem,3.9vw,3.9rem)}
body[data-page="home"] .close__k{margin-bottom:18px}
body[data-page="home"] .close__pts{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0;padding:0;list-style:none}
body[data-page="home"] .close__pts li{display:inline-flex;align-items:center;gap:8px;padding:8px 16px 8px 10px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(184,163,242,.28);color:#e6e3ee;font-size:.9rem;font-weight:500}
body[data-page="home"] .close__pts svg{width:24px;height:24px;padding:5px;border-radius:50%;background:rgba(138,99,217,.3);stroke:#d8ccfa!important}
body[data-page="home"] .close__pts svg *{stroke:#d8ccfa!important}
body[data-page="home"] .close__badge{position:absolute;left:-34px;bottom:34%;display:flex;flex-direction:column;padding:12px 18px;border-radius:18px;background:rgba(20,18,32,.72);backdrop-filter:blur(8px);border:1px solid rgba(184,163,242,.35);box-shadow:0 18px 40px -18px rgba(0,0,0,.7);animation:floaty 6s ease-in-out infinite}
body[data-page="home"] .close__badge b{font-family:var(--display);font-size:1.7rem;line-height:1;color:#fff}
body[data-page="home"] .close__badge span{font-size:.78rem;color:#b9b3cf;margin-top:3px}
body[data-page="home"] .close__badge--b{left:auto;right:-26px;bottom:62%;animation-delay:-3s}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media (max-width:860px){body[data-page="home"] .close__badge{left:2%}body[data-page="home"] .close__badge--b{right:2%;left:auto}body[data-page="home"] .close__img{width:min(70%,290px)}}
@media (prefers-reduced-motion:reduce){body[data-page="home"] .close__badge{animation:none}}
@media (max-width:860px){body[data-page="home"] .close__badge{bottom:12%}body[data-page="home"] .close__badge--b{bottom:34%}}
/* v14 cierre: foto pegada abajo y mas arriba */
body[data-page="home"] .close{padding-bottom:0!important}
body[data-page="home"] .close__grid{align-items:end}
body[data-page="home"] .close__grid>.reveal:first-child{padding-bottom:clamp(48px,5vw,72px)}
body[data-page="home"] .close__img{margin-bottom:0!important;width:min(100%,380px);line-height:0}
body[data-page="home"] .close__img img{display:block}
body[data-page="home"] .close__badge{bottom:38%}
body[data-page="home"] .close__badge--b{bottom:70%}
@media (max-width:860px){body[data-page="home"] .close__grid>.reveal:first-child{padding-bottom:28px}body[data-page="home"] .close__img{width:min(70%,300px)}body[data-page="home"] .close__badge{bottom:12%}body[data-page="home"] .close__badge--b{bottom:34%}}
body[data-page="home"] .close__badge{line-height:1.2}
body[data-page="home"] .close__badge b{line-height:1}

/* ===== v15 ORATORIA: venta directa ===== */
/* header solo con botón */
body[data-page="oratoria"] .top__in{display:flex;align-items:center;justify-content:space-between}
body[data-page="oratoria"] .top__cta{display:inline-flex}
body[data-page="oratoria"] .brand{display:inline-block;cursor:default}
/* hero igual que Home */
body[data-page="oratoria"] .hero__bg{background-image:url("/assets/img/hero-sala.webp");background-position:56% 40%;background-size:cover;background-repeat:no-repeat;inset:-3%;filter:grayscale(1) contrast(1.12) brightness(.44)!important;animation:heroPan 26s ease-in-out infinite!important;transform-origin:62% 40%;will-change:transform}
@media (max-width:700px){body[data-page="oratoria"] .hero__bg{background-image:url("/assets/img/hero-sala-m.webp");background-position:50% 40%}}
body[data-page="oratoria"] .hero__shade::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 70% at 78% 30%,rgba(138,99,217,.42),transparent 70%),radial-gradient(45% 55% at 8% 95%,rgba(90,62,168,.38),transparent 70%),radial-gradient(35% 40% at 52% 0%,rgba(184,163,242,.2),transparent 70%)}
body[data-page="oratoria"] .hero__shade::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(6,5,10,.82) 0%,rgba(6,5,10,.62) 32%,rgba(6,5,10,.25) 55%,transparent 72%)}
body[data-page="oratoria"] .hero__beam,body[data-page="oratoria"] .hero__spot{filter:brightness(1.9) saturate(1.2)}
body[data-page="oratoria"] .hero__portrait::before{display:none!important}
body[data-page="oratoria"] #situaciones{border-radius:0;margin-top:0}
body[data-page="oratoria"] #situaciones::before,body[data-page="oratoria"] .hero+.sec::before{display:none!important}
@media (prefers-reduced-motion:reduce){body[data-page="oratoria"] .hero__bg{animation:none!important}}
/* CTAs: aviso de precio debajo del botón */
body[data-page="oratoria"] .cta,body[data-page="oratoria"] .hero__cta{flex-direction:column;align-items:flex-start;gap:12px}
body[data-page="oratoria"] .cta--c{align-items:center;text-align:center}
/* dolores + video */
body[data-page="oratoria"] .sit{display:grid;grid-template-columns:1.3fr .7fr;gap:28px;margin-top:44px;align-items:stretch}
body[data-page="oratoria"] .sit .tiles{margin-top:0;grid-template-columns:1fr 1fr;gap:14px;background:none;border:0}
body[data-page="oratoria"] .sit .tile{border-radius:22px;border:1px solid rgba(184,163,242,.16);padding:26px 22px}
body[data-page="oratoria"] .sit__vid{display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:16px 16px 24px;border-radius:32px;background:linear-gradient(165deg,rgba(138,99,217,.3),rgba(18,16,28,.92) 70%);border:1px solid rgba(184,163,242,.32);box-shadow:0 40px 80px -44px rgba(112,76,200,.9)}
body[data-page="oratoria"] .sit__vid .player{max-width:none;width:100%;border-radius:22px;margin:0}
body[data-page="oratoria"] .sit__k{display:flex;align-items:center;gap:10px;margin:6px 6px 0;font-family:var(--display);font-size:.8rem;letter-spacing:.26em;text-transform:uppercase;color:#cdbcf7}
body[data-page="oratoria"] .sit__k svg{width:22px;height:22px}
body[data-page="oratoria"] .sit__t{margin:0 8px;font-family:var(--serif);font-style:italic;font-size:1.4rem;line-height:1.25;color:#f3effd}
body[data-page="oratoria"] .sit__t em{color:#b8a3f2}
@media (max-width:1000px){body[data-page="oratoria"] .sit{grid-template-columns:1fr}body[data-page="oratoria"] .sit__vid{max-width:560px;margin-inline:auto;width:100%}}
@media (max-width:560px){body[data-page="oratoria"] .sit .tiles{grid-template-columns:1fr}}
/* bonos con movimiento 3D */
body[data-page="oratoria"] .cards--bonos{perspective:1300px}
body[data-page="oratoria"] .cards--bonos .vc{transform-style:preserve-3d;will-change:transform;transition:transform .25s ease-out,box-shadow .4s,opacity 1s var(--ease)}
body[data-page="oratoria"] .cards--bonos .vc.is-in{transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
body[data-page="oratoria"] .cards--bonos .vc.is-tilt{transition:transform .08s linear,box-shadow .4s}
body[data-page="oratoria"] .cards--bonos .vc:hover{box-shadow:0 30px 60px -24px rgba(138,99,217,.7)}
body[data-page="oratoria"] .cards--bonos .vc img{animation:bonoFloat 5s ease-in-out infinite;transform-origin:50% 60%}
body[data-page="oratoria"] .cards--bonos .vc:nth-child(2) img{animation-delay:-1.2s}
body[data-page="oratoria"] .cards--bonos .vc:nth-child(3) img{animation-delay:-2.4s}
body[data-page="oratoria"] .cards--bonos .vc:nth-child(4) img{animation-delay:-3.6s}
body[data-page="oratoria"] .cards--bonos .vc .sheen{position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 40%,rgba(226,216,255,.22) 50%,transparent 60%);transform:translateX(-130%);animation:sheen 7s ease-in-out infinite}
body[data-page="oratoria"] .cards--bonos .vc:nth-child(2) .sheen{animation-delay:1.2s}
body[data-page="oratoria"] .cards--bonos .vc:nth-child(3) .sheen{animation-delay:2.4s}
body[data-page="oratoria"] .cards--bonos .vc:nth-child(4) .sheen{animation-delay:3.6s}
@keyframes bonoFloat{0%,100%{transform:translateY(0) rotate(-1.2deg) scale(1)}50%{transform:translateY(-10px) rotate(1.4deg) scale(1.04)}}
@keyframes sheen{0%,55%{transform:translateX(-130%)}85%,100%{transform:translateX(130%)}}
@media (prefers-reduced-motion:reduce){body[data-page="oratoria"] .cards--bonos .vc img,body[data-page="oratoria"] .cards--bonos .vc .sheen{animation:none}}
/* oferta */
body[data-page="oratoria"] .offer{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:start}
body[data-page="oratoria"] .offer__l .mock{margin:34px 0 0;filter:drop-shadow(0 30px 40px rgba(0,0,0,.5))}
body[data-page="oratoria"] .offer__r{margin:0;border-top:0;align-self:start;padding-top:6px}
body[data-page="oratoria"] .offer__r .step{padding:18px 0}
body[data-page="oratoria"] .deal{position:relative;overflow:hidden;margin-top:clamp(44px,5vw,72px);display:grid;grid-template-columns:auto 1fr;align-items:center;gap:clamp(28px,5vw,80px);padding:clamp(32px,4.4vw,62px) clamp(28px,5vw,72px);border-radius:40px;background:linear-gradient(120deg,#6a46c9 0%,#3a2680 48%,#1a1033 100%);border:1px solid rgba(205,188,247,.45);box-shadow:0 50px 100px -40px rgba(112,76,200,.95),inset 0 1px 0 rgba(255,255,255,.25)}
body[data-page="oratoria"] .deal__glow{position:absolute;inset:-40% auto auto -10%;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(205,188,247,.5),transparent);filter:blur(10px);animation:floaty 9s ease-in-out infinite;pointer-events:none}
body[data-page="oratoria"] .deal::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.12) 50%,transparent 58%);transform:translateX(-130%);animation:sheen 8s ease-in-out infinite;pointer-events:none}
body[data-page="oratoria"] .deal__p,body[data-page="oratoria"] .deal__c{position:relative;z-index:1}
body[data-page="oratoria"] .deal__tag{display:inline-block;padding:8px 18px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);font-family:var(--display);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:#fff}
body[data-page="oratoria"] .deal__old{margin-top:18px;color:#d8ccfa;font-size:1rem}
body[data-page="oratoria"] .deal__old s{color:#bfb2ea}
body[data-page="oratoria"] .deal__now{font-family:var(--display);font-weight:600;font-size:clamp(6rem,10vw,10rem);line-height:.95;color:#fff;text-shadow:0 10px 40px rgba(20,10,60,.6)}
body[data-page="oratoria"] .deal__now sup{font-size:.36em;vertical-align:top;position:relative;top:.3em;margin-right:6px}
body[data-page="oratoria"] .deal__now small{font-size:1.5rem;letter-spacing:.12em;color:#d8ccfa}
body[data-page="oratoria"] .deal__c p{color:#e6defb;font-size:1.05rem;max-width:46ch;margin:0 0 24px}
body[data-page="oratoria"] .deal .btn{background:#fff;color:#2a1a5c;box-shadow:0 18px 40px -14px rgba(0,0,0,.55);display:inline-flex;width:auto;white-space:normal}
body[data-page="oratoria"] .deal .btn:hover{background:#f3effd}
body[data-page="oratoria"] .deal .ticket__sec{justify-content:flex-start;margin-top:20px;color:#e6defb}
body[data-page="oratoria"] .deal .ticket__sec svg{color:#fff}
@media (max-width:900px){body[data-page="oratoria"] .offer{grid-template-columns:1fr}body[data-page="oratoria"] .deal{grid-template-columns:1fr;text-align:center}body[data-page="oratoria"] .deal .ticket__sec{justify-content:center}body[data-page="oratoria"] .deal__c p{margin-inline:auto}body[data-page="oratoria"] .deal .btn{width:100%}}
/* footer sin columna de páginas */
body[data-page="oratoria"] .foot__grid{justify-content:space-between}
/* cierre como en Home */
body[data-page="oratoria"] .close{padding-top:clamp(56px,6vw,88px);padding-bottom:0!important}
body[data-page="oratoria"] .close__word{font-size:clamp(9rem,26vw,26rem)}
body[data-page="oratoria"] .close h2{font-size:clamp(2.1rem,3.9vw,3.9rem)}
body[data-page="oratoria"] .close__k{margin-bottom:18px}
body[data-page="oratoria"] .close__grid{align-items:end}
body[data-page="oratoria"] .close__grid>.reveal:first-child{padding-bottom:clamp(48px,5vw,72px)}
body[data-page="oratoria"] .close__img{margin-bottom:0!important;width:min(100%,380px);line-height:0}
body[data-page="oratoria"] .close__img img{display:block;outline:0!important}
body[data-page="oratoria"] .close__img::before{inset:-6% -40% 0;background:radial-gradient(closest-side,rgba(138,99,217,.38),transparent)}
body[data-page="oratoria"] .close__pts{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0;padding:0;list-style:none}
body[data-page="oratoria"] .close__pts li{display:inline-flex;align-items:center;gap:8px;padding:8px 16px 8px 10px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(184,163,242,.28);color:#e6e3ee;font-size:.9rem;font-weight:500}
body[data-page="oratoria"] .close__pts svg,body[data-page="oratoria"] .close__pts svg *{stroke:#d8ccfa!important}
body[data-page="oratoria"] .close__pts svg{width:24px;height:24px;padding:5px;border-radius:50%;background:rgba(138,99,217,.3)}
body[data-page="oratoria"] .close__badge{position:absolute;left:-34px;bottom:38%;display:flex;flex-direction:column;padding:12px 18px;border-radius:18px;background:rgba(20,18,32,.72);backdrop-filter:blur(8px);border:1px solid rgba(184,163,242,.35);box-shadow:0 18px 40px -18px rgba(0,0,0,.7);animation:floaty 6s ease-in-out infinite;line-height:1.2}
body[data-page="oratoria"] .close__badge b{font-family:var(--display);font-size:1.7rem;line-height:1;color:#fff}
body[data-page="oratoria"] .close__badge span{font-size:.78rem;color:#b9b3cf;margin-top:3px}
body[data-page="oratoria"] .close__badge--b{left:auto;right:-26px;bottom:70%;animation-delay:-3s}
@media (max-width:860px){body[data-page="oratoria"] .close__grid>.reveal:first-child{padding-bottom:28px}body[data-page="oratoria"] .close__img{width:min(70%,300px)}body[data-page="oratoria"] .close__badge{left:2%;bottom:12%}body[data-page="oratoria"] .close__badge--b{right:2%;left:auto;bottom:34%}}
@media (prefers-reduced-motion:reduce){body[data-page="oratoria"] .close__badge,body[data-page="oratoria"] .deal__glow,body[data-page="oratoria"] .deal::after{animation:none}}
/* dolores: lista a la izquierda, video a la derecha con la misma altura */
body[data-page="oratoria"] .sit{grid-template-columns:1.05fr .95fr;gap:32px}
body[data-page="oratoria"] .sit .tiles{grid-template-columns:1fr;gap:12px}
body[data-page="oratoria"] .sit .tile{display:grid;grid-template-columns:72px 1fr;column-gap:20px;align-items:center;padding:20px 24px}
body[data-page="oratoria"] .sit .tile .sit__i{grid-row:1/3;margin:0}
body[data-page="oratoria"] .sit .tile h3{margin:0 0 4px;align-self:end}
body[data-page="oratoria"] .sit .tile .sub{margin:0;align-self:start;font-size:.95rem}
body[data-page="oratoria"] .sit .tile--note{display:flex;padding:22px 26px}
body[data-page="oratoria"] .sit__vid .player{flex:1 1 auto;aspect-ratio:auto;min-height:340px}
body[data-page="oratoria"] .sit__vid .player video{height:100%;object-fit:cover}
@media (max-width:1000px){body[data-page="oratoria"] .sit{grid-template-columns:1fr}body[data-page="oratoria"] .sit__vid .player{aspect-ratio:732/720;flex:none}}
@media (max-width:560px){body[data-page="oratoria"] .sit .tile{grid-template-columns:56px 1fr;column-gap:14px;padding:16px}body[data-page="oratoria"] .sit .sit__i{width:56px;height:56px}}

/* ===== v16 ORATORIA hero propio ===== */
body[data-page="oratoria"] .hero__bg{background-image:url("/assets/img/hero-escenario.webp");background-position:50% 50%;filter:grayscale(1) contrast(1.15) brightness(.62)!important;transform-origin:50% 50%}
@media (max-width:700px){body[data-page="oratoria"] .hero__bg{background-image:url("/assets/img/hero-escenario-m.webp");background-position:50% 30%}}
body[data-page="oratoria"] .hero__shade::before{background:radial-gradient(55% 70% at 74% 42%,rgba(124,86,214,.5),transparent 70%),radial-gradient(40% 50% at 6% 100%,rgba(70,46,140,.4),transparent 70%),radial-gradient(30% 35% at 50% 0%,rgba(184,163,242,.14),transparent 70%)}
body[data-page="oratoria"] .hero__shade::after{background:linear-gradient(90deg,rgba(4,3,8,.92) 0%,rgba(4,3,8,.74) 36%,rgba(4,3,8,.32) 60%,rgba(4,3,8,.1) 100%),linear-gradient(0deg,rgba(4,3,8,.7),transparent 30%)}
@media (min-width:1025px){
body[data-page="oratoria"] .hero__grid{grid-template-columns:1.1fr .9fr;align-items:center;padding-top:96px;padding-bottom:40px}
body[data-page="oratoria"] .hero__copy{padding-bottom:0}
body[data-page="oratoria"] .hero h1{font-size:clamp(2.8rem,5vw,5.2rem);line-height:1}
body[data-page="oratoria"] .hero h1 .mask{white-space:nowrap}
body[data-page="oratoria"] .hero__lead{max-width:600px;font-size:1.2rem;line-height:1.6;margin-top:28px}
body[data-page="oratoria"] .hero__cta .btn{padding:1.15em 2.2em;font-size:1.02rem}
body[data-page="oratoria"] .hero__portrait{width:min(100%,640px);align-self:center;justify-self:end}
body[data-page="oratoria"] .hero__portrait img{max-height:none;width:100%;aspect-ratio:1/1}
}
body[data-page="oratoria"] .hero__portrait img,body[data-page="oratoria"] .is-ready .hero__portrait img{filter:contrast(1.04) saturate(1.1) drop-shadow(0 30px 40px rgba(0,0,0,.55))!important}
@media (min-width:1025px){
body[data-page="oratoria"] .hero__grid{grid-template-columns:1.12fr .88fr}
body[data-page="oratoria"] .hero h1{font-size:clamp(2.6rem,4.3vw,4.4rem)}
body[data-page="oratoria"] .hero__lead{max-width:560px;font-size:1.14rem}
body[data-page="oratoria"] .hero__portrait{width:min(100%,680px)}
}
@media (max-width:1024px){body[data-page="oratoria"] .hero__portrait{width:min(100%,520px)}body[data-page="oratoria"] .hero__portrait::before{display:none!important}}

/* ===== v17 foto de cierre nueva ===== */
body[data-page="home"] .close__img,body[data-page="oratoria"] .close__img{width:min(100%,430px)}
body[data-page="home"] .close__img img,body[data-page="oratoria"] .close__img img{width:100%;height:auto;filter:drop-shadow(0 0 1px rgba(184,163,242,.7)) drop-shadow(0 24px 34px rgba(0,0,0,.55))}
body[data-page="home"] .close__badge,body[data-page="oratoria"] .close__badge{bottom:30%}
body[data-page="home"] .close__badge--b,body[data-page="oratoria"] .close__badge--b{bottom:60%}
@media (max-width:860px){body[data-page="home"] .close__img,body[data-page="oratoria"] .close__img{width:min(82%,360px)}body[data-page="home"] .close__badge,body[data-page="oratoria"] .close__badge{bottom:10%}body[data-page="home"] .close__badge--b,body[data-page="oratoria"] .close__badge--b{bottom:30%}}
