/* Variante 1: Negro y dorado (solo variables + textura). Se carga con ?v=1 */
:root{--navy:#0d0d0d;--navy2:#1a1a1a;--cream:#f6efe2;--paper:#fffaf1;--ink:#151412;--muted:#4b463d;--gold:#c9a55a;--gold2:#e6cc8a;--line:#e7dcc6}
.dark,.goal,.foot{color:#e9e4da}.dark .fine,.ph{color:#b3ab9c}.hero p{color:#e9e4da;opacity:.92}
.top.scrolled{background:color-mix(in srgb,#0d0d0d 88%,transparent)}
.foot{background:#070707}.foot a,.credit,.credit a,.credit .acu img{opacity:1}
body .dark{background-color:var(--navy);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' seed='1' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .10 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"),radial-gradient(900px 520px at 85% 0%,rgba(201,165,90,.09),transparent 70%),radial-gradient(800px 600px at 5% 100%,rgba(201,165,90,.05),transparent 70%),radial-gradient(1200px 600px at 50% -10%,#262219 0,var(--navy) 60%);background-repeat:repeat,no-repeat,no-repeat,no-repeat;background-size:240px 240px,auto,auto,auto}
body .cream{background-color:var(--cream);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' seed='1' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"),radial-gradient(900px 500px at 15% 0%,rgba(201,165,90,.07),transparent 70%);background-repeat:repeat,repeat,no-repeat;background-size:240px 240px,240px 240px,auto}
/* testimonios pro */
.testi .grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;align-items:stretch}
.testi .card{position:relative;display:flex;flex-direction:column;height:100%;color:#e9e4d8;background-color:#141310;background-image:var(--grain-w),radial-gradient(380px 220px at 50% 0%,rgba(201,165,90,.12),transparent 70%),linear-gradient(170deg,#1c1a15,#0c0c0b);background-size:240px 240px,auto,auto;background-repeat:repeat,no-repeat,no-repeat;border:1px solid rgba(230,204,138,.28);border-radius:20px;padding:16px 16px 22px;box-shadow:0 24px 50px -30px #000}
.testi .card:hover{transform:translateY(-6px);border-color:rgba(230,204,138,.55);box-shadow:0 30px 60px -28px #000,0 0 34px -8px rgba(201,165,90,.35)}
.testi .media.vert{position:relative;width:100%;max-height:none;border-radius:14px;margin-bottom:22px;background:#000;box-shadow:0 0 0 1px rgba(230,204,138,.18)}
.testi .media.vert video{border-radius:14px}
.tplay{position:absolute;inset:0;z-index:2;margin:auto;width:68px;height:68px;border:0;border-radius:50%;cursor:pointer;background:linear-gradient(135deg,var(--gold2),var(--gold));box-shadow:0 10px 30px -6px rgba(0,0,0,.7),0 0 0 8px rgba(230,204,138,.18);transition:transform .3s,box-shadow .3s}
.tplay::after{content:"";position:absolute;left:27px;top:22px;border-style:solid;border-width:12px 0 12px 19px;border-color:transparent transparent transparent #0d0d0d}
.tplay:hover{transform:scale(1.08);box-shadow:0 10px 30px -6px #000,0 0 0 12px rgba(230,204,138,.22)}
.media.playing .tplay{display:none}
.testi .card h3{position:relative;color:#fff;font-size:1.12rem;line-height:1.3;margin:0 0 10px;padding-top:26px}
.testi .card h3::before{content:"\201C";position:absolute;top:-18px;left:-2px;font:600 3.6rem/1 "Cormorant Garamond",serif;color:var(--gold)}
.testi .card p{color:#bdb6a6;font-size:.95rem;line-height:1.6}
.testi .who{margin-top:auto!important;padding-top:14px;border-top:1px solid rgba(230,204,138,.15);font-style:normal}
.testi .who b{display:block;color:var(--gold2);font-weight:700;font-size:.98rem;letter-spacing:.02em}.testi .who span{color:#9a9384;font-size:.82rem}
.testi .kicker{color:var(--gold2)}.testi h2{color:#fff}.testi .center p{color:#c9c2b2}
@media(max-width:1000px){.testi .grid4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.testi .grid4{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -20px;padding:6px 20px 18px;scrollbar-width:none}.testi .grid4::-webkit-scrollbar{display:none}.testi .card{flex:0 0 82%;scroll-snap-align:center}.testi .card:hover{transform:none}}
/* capturas pro */
.testi .shots{columns:2 150px;column-gap:16px;margin:48px 0 10px}
@media(min-width:900px){.testi .shots{columns:4}}@media(min-width:1200px){.testi .shots{columns:5}}
.testi .shot{padding:8px;margin-bottom:16px;border-radius:16px;background-color:#141310;background-image:var(--grain-w),linear-gradient(170deg,#1c1a15,#0c0c0b);background-size:240px 240px,auto;border:1px solid rgba(230,204,138,.28);box-shadow:0 18px 40px -26px #000}
.testi .shot img{border-radius:10px}
.testi .shot:hover{transform:translateY(-5px);border-color:rgba(230,204,138,.55);box-shadow:0 26px 50px -24px #000,0 0 28px -8px rgba(201,165,90,.35)}
.lb{background:rgba(6,6,5,.94)}.lb img{box-shadow:0 0 0 1px rgba(230,204,138,.35),0 30px 80px -20px #000}
/* animaciones tarjetas video */
@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}
.testi .card::after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;background:conic-gradient(from var(--ang),transparent 0 70%,rgba(230,204,138,.9) 80%,transparent 90%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:tshim 7s linear infinite;opacity:.8}
@keyframes tshim{to{--ang:360deg}}
.tplay::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid rgba(230,204,138,.7);animation:tring 2.8s cubic-bezier(.2,.8,.2,1) infinite}
@keyframes tring{0%{transform:scale(1);opacity:.8}70%,100%{transform:scale(1.7);opacity:0}}
.testi .card.is-playing::after{animation-play-state:paused;opacity:.35}
@media(prefers-reduced-motion:reduce){.testi .card::after,.tplay::before{animation:none}.testi .card::after{opacity:.4}}
/* capturas: orden por filas + animación de carga */
.testi .shots{columns:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:14px;align-items:start}
@media(min-width:900px){.testi .shots{grid-template-columns:repeat(4,1fr);gap:16px}}@media(min-width:1200px){.testi .shots{grid-template-columns:repeat(5,1fr)}}
.testi .shot{margin:0}
.js .testi .shot.reveal{transform:translateY(30px) scale(.94);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1),border-color .4s,box-shadow .4s;transition-delay:calc(var(--d,0)*120ms)}
.js .testi .shot.reveal.in{transform:none}
.js .testi .shot.reveal.in:hover{transform:translateY(-5px);transition-delay:0s}
@media(prefers-reduced-motion:reduce){.js .testi .shot.reveal{opacity:1!important;transform:none!important;transition:none}}
/* ===== animaciones generales ===== */
@property --ang2{syntax:"<angle>";inherits:false;initial-value:0deg}
.hero,.sec.dark,.sec.cream,#metodo,.foot{position:relative;isolation:isolate;overflow:clip}
.hero::before,.sec.dark::before,.sec.cream::before,#metodo::before,.foot::before{content:"";position:absolute;z-index:-1;width:60vmax;height:60vmax;left:50%;top:-20vmax;margin-left:-30vmax;border-radius:50%;background:radial-gradient(closest-side,rgba(201,165,90,.10),transparent);pointer-events:none;animation:glowDrift 22s ease-in-out infinite alternate;will-change:transform}
.sec.cream::before,#metodo::before{background:radial-gradient(closest-side,rgba(201,165,90,.09),transparent)}
@keyframes glowDrift{0%{transform:translate3d(-22vw,0,0) scale(1)}50%{transform:translate3d(10vw,8vh,0) scale(1.12)}100%{transform:translate3d(24vw,-2vh,0) scale(.95)}}
/* shimmer en dorados */
h1 em,.agenda-q,.kicker{background:linear-gradient(100deg,var(--gold) 0%,var(--gold2) 35%,#fff6dc 50%,var(--gold2) 65%,var(--gold) 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:goldSweep 6s ease-in-out infinite}
@keyframes goldSweep{0%,20%{background-position:100% 0}60%,100%{background-position:0 0}}
/* halo en botones */
.btn{position:relative;isolation:isolate}
.btn::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;box-shadow:0 0 0 0 rgba(230,204,138,.55);animation:btnHalo 3.2s cubic-bezier(.2,.8,.2,1) infinite;pointer-events:none}
@keyframes btnHalo{0%{box-shadow:0 0 0 0 rgba(230,204,138,.5)}70%,100%{box-shadow:0 0 0 14px rgba(230,204,138,0)}}
/* borde dorado con brillo, parejo en los 4 lados */
.goal,.agenda,.cv-body,.vsl,#para-quien .card,.steps li{position:relative}
.goal::after,.agenda::after,.cv-body::after,.vsl::after,#para-quien .card::after,.steps li::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:3;background:conic-gradient(from var(--ang2),rgba(230,204,138,.22) 0 68%,rgba(230,204,138,.95) 78%,rgba(230,204,138,.22) 88%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:bShim 9s linear infinite}
.steps li:nth-child(2)::after{animation-delay:-3s}.steps li:nth-child(3)::after{animation-delay:-6s}#para-quien .no::after{animation-delay:-4.5s}
@keyframes bShim{to{--ang2:360deg}}
/* iconos */
.steps span{animation:floatY 4.5s ease-in-out infinite}.steps li:nth-child(2) span{animation-delay:-1.5s}.steps li:nth-child(3) span{animation-delay:-3s}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.yes li::before,.no li::before{transition:transform .5s cubic-bezier(.2,.8,.2,1)}.yes li:hover::before,.no li:hover::before{transform:rotate(-12deg) scale(1.12)}
.agenda .qs li::before{animation:floatY 5s ease-in-out infinite}.agenda .qs li:nth-child(2n)::before{animation-delay:-2.5s}
.cv summary::after{display:inline-block;transition:transform .4s}.cv[open] summary::after{transform:rotate(180deg)}
/* entradas escalonadas de listas */
.js .rv{opacity:0;transform:translateY(22px) scale(.97);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d,0)*110ms)}
.js .rv.in{opacity:1;transform:none}
.cv-body>*{animation:cvItem .6s cubic-bezier(.2,.8,.2,1) both}.cv-body>*:nth-child(2){animation-delay:.06s}.cv-body>*:nth-child(3){animation-delay:.12s}.cv-body>*:nth-child(4){animation-delay:.18s}.cv-body>*:nth-child(5){animation-delay:.24s}.cv-body>*:nth-child(n+6){animation-delay:.3s}
@keyframes cvItem{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.foot .credit .acu img{animation:floatY 6s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.hero::before,.sec.dark::before,.sec.cream::before,#metodo::before,.foot::before,h1 em,.agenda-q,.kicker,.btn::after,.steps span,.agenda .qs li::before,.cv-body>*,.foot .credit .acu img,.goal::after,.agenda::after,.cv-body::after,.vsl::after,#para-quien .card::after,.steps li::after{animation:none!important}.js .rv{opacity:1!important;transform:none!important}}
