
body{margin:0;background:#0C0504}
a{color:#FF4A1C}a:hover{color:#FFB38A}
*{box-sizing:border-box}
input,textarea,button{font:inherit}
.gx{background:linear-gradient(90deg,#FFD36B 0%,#FF8A1F 35%,#FF3D2E 68%,#E0103A 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.mq{animation:mq 38s linear infinite}
@keyframes fk{0%,100%{transform:scaleY(1) skewX(0)}25%{transform:scaleY(1.05) skewX(-1.5deg)}50%{transform:scaleY(0.97) skewX(1deg)}75%{transform:scaleY(1.04) skewX(-0.5deg)}}
.fl{transform-origin:260px 210px;animation:fk 1.6s ease-in-out infinite}
@keyframes up{0%{transform:translateY(0) scale(1);opacity:0}15%{opacity:1}100%{transform:translateY(-260px) scale(0.3);opacity:0}}
.em{position:absolute;z-index:4;bottom:200px;width:5px;height:5px;border-radius:50%;background:#FFB347;box-shadow:0 0 8px #FF6A1F;animation:up 3.6s ease-out infinite}
@keyframes lv{0%,100%{opacity:var(--o);transform:translateY(0)}50%{opacity:1;transform:translateY(-5px)}}
@keyframes lvg{0%,100%{filter:drop-shadow(0 0 4px rgba(255,138,31,0.45))}50%{filter:drop-shadow(0 0 16px rgba(255,138,31,0.95))}}
@keyframes lgf{0%,100%{filter:drop-shadow(0 18px 40px rgba(255,74,28,0.25))}50%{filter:drop-shadow(0 18px 60px rgba(255,74,28,0.5))}}
.lv{transform-box:fill-box;transform-origin:center;animation:lv 2.6s ease-in-out infinite}
.lv1{--o:.45}.lv2{--o:.75;animation-delay:.35s}.lv3{--o:1;animation:lv 2.6s ease-in-out .7s infinite,lvg 2.6s ease-in-out .7s infinite}
.lg{animation:lgf 2.6s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.lv,.lg{animation:none}.lv1{opacity:.45}.lv2{opacity:.75}}
.st img{transition:transform .18s ease,box-shadow .18s ease}.st:hover img{transform:scale(1.14)}
.stc{transition:transform .18s ease,background .18s ease}.stc:hover{transform:translateY(-3px);background:rgba(255,255,255,0.08)}
html{scroll-behavior:smooth}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}.bob{animation:bob 1.4s ease-in-out infinite}
.lay{will-change:opacity,transform}
@keyframes tw{0%,100%{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.25)}}
.tw{position:absolute;border-radius:50%;background:#FFB347;box-shadow:0 0 6px #FF6A1F;animation:tw 2.8s ease-in-out infinite}
@keyframes buA{0%{transform:translate(0,0) scale(1);opacity:1}100%{transform:translate(var(--bx),var(--by)) scale(.15);opacity:0}}
@keyframes buB{0%{transform:translate(0,0) scale(1);opacity:1}100%{transform:translate(var(--bx),var(--by)) scale(.15);opacity:0}}
.bu span{position:absolute;left:-3px;top:-3px;width:6px;height:6px;border-radius:50%;background:#FFD36B;box-shadow:0 0 10px #FF6A1F,0 0 20px rgba(255,74,28,.7);opacity:0}
.bu.a span{animation:buA 1s cubic-bezier(.15,.7,.3,1) forwards}
.bu.b span{animation:buB 1s cubic-bezier(.15,.7,.3,1) forwards}
@keyframes pg{0%,100%{filter:drop-shadow(0 0 4px rgba(255,138,31,.5))}50%{filter:drop-shadow(0 0 18px rgba(255,138,31,1))}}
.pg{animation:pg 2.4s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.tw,.bu span,.pg{animation:none}.lay{filter:none!important}}
@keyframes skr{0%{transform:translate(0,0) scale(1);opacity:0}12%{opacity:1}100%{transform:translate(var(--dx,0px),var(--h,-80px)) scale(.15);opacity:0}}
.sk{position:absolute;bottom:var(--bt,20%);width:var(--sz,3px);height:var(--sz,3px);border-radius:50%;background:#FFD36B;box-shadow:0 0 6px #FF8A1F,0 0 14px rgba(255,74,28,.65);opacity:0;pointer-events:none;animation:skr var(--d,2.4s) ease-out var(--dl,0s) infinite}
@keyframes ft{0%,100%{text-shadow:0 0 6px rgba(255,138,31,.18),0 0 18px rgba(255,74,28,.08)}50%{text-shadow:0 0 14px rgba(255,160,60,.5),0 0 40px rgba(255,74,28,.28)}}
.ft{animation:ft 3.4s ease-in-out calc(var(--i,0) * -0.55s) infinite}
@keyframes gxflow{0%{background-position:0% 50%}100%{background-position:100% 50%}}
.gx{background-size:220% 100%;animation:gxflow 4.5s ease-in-out infinite alternate}
@keyframes emb{0%,100%{box-shadow:0 0 0 rgba(255,74,28,0)}50%{box-shadow:0 0 34px rgba(255,74,28,.28),inset 0 -1px 0 rgba(255,138,31,.35)}}
.emb{animation:emb 3.8s ease-in-out calc(var(--i,0) * -0.7s) infinite}
@media (prefers-reduced-motion: reduce){.sk,.ft,.gx,.emb{animation:none}.sk{display:none}}
@keyframes ldout{to{opacity:0;transform:scale(1.04);visibility:hidden}}
.ld{position:fixed;inset:0;z-index:100;background:#0C0504;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#FFF4EC;animation:ldout .6s ease-in 2.2s forwards}
@keyframes ldbar{to{transform:scaleX(1)}}
.ld-bar{transform:scaleX(0);transform-origin:60px 112px;animation:ldbar .5s cubic-bezier(.2,.8,.2,1) .15s forwards}
@keyframes ldc{55%{opacity:1}to{opacity:1;transform:translateY(0)}}
.ld-c{opacity:0;transform:translateY(46px);animation:ldc .55s cubic-bezier(.2,.9,.3,1.2) forwards}
.ld-c1{animation-delay:.5s}.ld-c2{animation-delay:.78s}.ld-c3{animation-delay:1.06s}
.ld-g{animation:pg 1.3s ease-in-out 1.2s infinite}
@keyframes ldw{to{clip-path:inset(0 0 0 0)}}
.ld-w{clip-path:inset(100% 0 0 0);animation:ldw .7s ease-out 1.25s forwards}
@keyframes lde{0%{top:100%;opacity:0}15%{opacity:1}85%{opacity:1}100%{top:0;opacity:0}}
.ld-e{position:absolute;left:-4%;width:108%;height:8px;top:100%;margin-top:-4px;border-radius:8px;background:linear-gradient(90deg,rgba(255,243,207,0),#FFF3CF 22%,#FF8A1F 50%,#FFF3CF 78%,rgba(255,243,207,0));filter:blur(1.5px);box-shadow:0 0 24px #FF6A1F;opacity:0;animation:lde .7s ease-out 1.25s forwards}
@keyframes ldt{to{opacity:1;letter-spacing:.32em}}
.ld-t{opacity:0;letter-spacing:.08em;animation:ldt .7s ease-out 1.75s forwards}
@keyframes ldp{to{width:100%}}
.ld-p{position:absolute;left:0;bottom:0;height:3px;width:0;background:linear-gradient(90deg,#FFD36B,#FF4A1C,#C8102E);box-shadow:0 0 14px #FF6A1F;animation:ldp 2.1s cubic-bezier(.4,0,.2,1) forwards}
.ldb span{position:absolute;left:-3px;top:-3px;width:6px;height:6px;border-radius:50%;background:#FFD36B;box-shadow:0 0 10px #FF6A1F,0 0 20px rgba(255,74,28,.7);opacity:0;animation:buA 1s cubic-bezier(.15,.7,.3,1) forwards}
@media (prefers-reduced-motion: reduce){.ld,.ld *{animation-duration:.01s!important;animation-delay:0s!important}}
/* aparición al cargar / al hacer scroll */
.w{display:inline-block;opacity:0;transform:translateY(.55em) rotate(3deg);filter:blur(8px);transition:opacity .55s ease calc(var(--k,0)*42ms),transform .75s cubic-bezier(.2,.8,.2,1) calc(var(--k,0)*42ms),filter .55s ease calc(var(--k,0)*42ms)}
.in .w{opacity:1;transform:none;filter:blur(0)}
.rv{opacity:0;transform:translateY(34px) scale(.985);transition:opacity .8s cubic-bezier(.2,.7,.2,1) calc(var(--k,0)*90ms),transform .9s cubic-bezier(.2,.7,.2,1) calc(var(--k,0)*90ms)}
.rv.in{opacity:1;transform:none}
@keyframes rvf{0%{box-shadow:0 0 0 rgba(255,74,28,0)}35%{box-shadow:0 0 36px rgba(255,138,31,.45)}100%{box-shadow:0 0 0 rgba(255,74,28,0)}}
.rv.in.emb{animation:emb 3.8s ease-in-out calc(var(--i,0) * -0.7s) infinite,rvf 1.2s ease-out}
@media (prefers-reduced-motion: reduce){.w,.rv{opacity:1;transform:none;filter:none;transition:none}}
@keyframes pr{0%{transform:scale(.6);opacity:.9}100%{transform:scale(2.6);opacity:0}}
.pr{transform-box:fill-box;transform-origin:center;animation:pr 2.4s ease-out infinite}.pr2{animation-delay:1.2s}
.chp{transition:background .18s ease,transform .18s ease}.chp:hover{background:rgba(255,74,28,.22);transform:translateY(-2px)}
.eq{display:flex;align-items:flex-end;gap:2px;height:18px;flex:none;padding:0 2px}
.eq i{display:block;width:3px;height:6px;border-radius:2px;background:linear-gradient(180deg,#FFD36B,#FF4A1C);animation:eqb 1.1s ease-in-out infinite}
.eq i:nth-child(2){animation-duration:.9s;animation-delay:-.2s}.eq i:nth-child(3){animation-duration:1.3s;animation-delay:-.5s}.eq i:nth-child(4){animation-duration:.8s;animation-delay:-.1s}.eq i:nth-child(5){animation-duration:1.2s;animation-delay:-.7s}
@keyframes eqb{0%,100%{height:5px}50%{height:18px}}
@keyframes dotp{0%,100%{opacity:1}50%{opacity:.35}}.dot{animation:dotp 1.4s ease-in-out infinite}
/* nuevas secciones */
.tilt{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}.tilt:hover{transform:translateY(-6px) rotate3d(1,0,0,2deg)}
@keyframes mq2{from{transform:translateX(0)}to{transform:translateX(-50%)}}.mq2{animation:mq2 46s linear infinite}.mq2:hover{animation-play-state:paused}
.mt img{transition:transform .6s ease}.mt:hover img{transform:scale(1.08)}
@keyframes playp{0%,100%{box-shadow:0 0 0 10px rgba(255,74,28,.25),0 20px 50px rgba(0,0,0,.5)}50%{box-shadow:0 0 0 22px rgba(255,74,28,.08),0 20px 50px rgba(0,0,0,.5)}}.play{animation:playp 2s ease-in-out infinite}
.tcard{transition:transform .6s cubic-bezier(.2,.7,.2,1),border-color .6s ease,box-shadow .6s ease}.tcard.tact{transform:translateY(-6px) scale(1.02);border-color:rgba(255,74,28,.55)!important;box-shadow:0 0 40px rgba(255,74,28,.28)}
.draw{stroke-dashoffset:1200;stroke-dasharray:1200;transition:stroke-dashoffset 2.2s ease .2s}.in .draw{stroke-dashoffset:0}
.stn{transition:transform .4s cubic-bezier(.2,.8,.2,1)}.tilt:hover .stn{transform:scale(1.08) rotate(-6deg)}
.chev.on{transform:rotate(180deg)}
@keyframes fa{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.fa{animation:fa .35s ease}
@media (prefers-reduced-motion: reduce){.mq2,.play{animation:none}.tilt,.tcard,.draw{transition:none}.draw{stroke-dashoffset:0}}
@media (prefers-reduced-motion: reduce){.mq,.fl,.em,.bob,.pr,.eq i,.dot{animation:none}}
@keyframes xf4{0%{opacity:0}5%{opacity:1}25%{opacity:1}31%{opacity:0}100%{opacity:0}}
@keyframes kb{0%{transform:scale(1.06) translate3d(0,0,0)}100%{transform:scale(1.2) translate3d(-2%,-3%,0)}}
@keyframes fl2{0%,100%{filter:brightness(1) saturate(1.15)}18%{filter:brightness(1.22) saturate(1.3)}40%{filter:brightness(.9) saturate(1.05)}62%{filter:brightness(1.15) saturate(1.25)}80%{filter:brightness(.97) saturate(1.1)}}
.bgs{position:absolute;inset:0;opacity:0;animation:xf4 28s linear infinite}
.bgs img{width:100%;height:100%;object-fit:cover;animation:kb 14s ease-in-out infinite alternate,fl2 2.4s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.bgs,.bgs img{animation:none}.bgs:first-child{opacity:1}}

@keyframes xf{0%{opacity:0}6%{opacity:.75}33%{opacity:.75}40%{opacity:0}100%{opacity:0}}
.xf1{opacity:0;animation:flick 2.6s ease-in-out infinite,xf 21s linear infinite 0s}
.xf2{opacity:0;animation:flick 2.9s ease-in-out infinite,xf 21s linear infinite 7s}
.xf3{opacity:0;animation:flick 2.3s ease-in-out infinite,xf 21s linear infinite 14s}
@keyframes drift{0%,100%{transform:scale(1.08) translate3d(0,0,0)}50%{transform:scale(1.14) translate3d(-1.5%,-2%,0)}}
.bgv{animation:drift 14s ease-in-out infinite,flick 3.1s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.xf1,.xf2,.xf3,.bgv{animation:none}.xf1{opacity:.7}}

@keyframes rise{0%{transform:translate3d(0,0,0) scale(1);opacity:0}12%{opacity:var(--o,1)}100%{transform:translate3d(var(--dx),var(--dy),0) scale(0.05);opacity:0}}
.fire{position:absolute;filter:blur(2px) saturate(1.2)}
.fp{position:absolute;bottom:0;border-radius:50%;mix-blend-mode:screen;opacity:0;background:radial-gradient(circle,#FFF1B8 0%,#FFB238 18%,#FF5A14 38%,rgba(225,16,46,0.6) 55%,rgba(200,16,46,0) 72%);animation:rise 1.3s cubic-bezier(.3,0,.6,1) infinite}
.fp.r{background:radial-gradient(circle,#FF7A2A 0%,#E8231C 35%,rgba(160,10,30,0.5) 55%,rgba(120,0,20,0) 72%)}
@keyframes flick{0%,100%{filter:brightness(1) saturate(1.1);transform:scale(1.04)}20%{filter:brightness(1.18) saturate(1.25);transform:scale(1.05)}45%{filter:brightness(0.92) saturate(1.05);transform:scale(1.035)}70%{filter:brightness(1.12) saturate(1.2);transform:scale(1.05)}}
.ph{animation:flick 2.6s ease-in-out infinite;transform-origin:60% 60%}
@keyframes heat{0%,100%{opacity:.55}50%{opacity:.85}}
.heat{animation:heat 1.8s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.fp,.ph,.heat{animation:none}.fp{opacity:.6}}

@keyframes ashA{0%{transform:translate3d(0,0,0) rotate(0);opacity:0}10%{opacity:var(--o)}50%{transform:translate3d(40px,-50vh,0) rotate(180deg)}90%{opacity:var(--o)}100%{transform:translate3d(-20px,-105vh,0) rotate(360deg);opacity:0}}
@keyframes ashB{0%{transform:translate3d(0,0,0) rotate(0);opacity:0}10%{opacity:var(--o)}50%{transform:translate3d(-50px,-55vh,0) rotate(-160deg)}90%{opacity:var(--o)}100%{transform:translate3d(30px,-105vh,0) rotate(-320deg);opacity:0}}
@keyframes glowp{0%,100%{box-shadow:0 0 4px #FF6A1F}50%{box-shadow:0 0 10px #FFB347}}
.ash{position:absolute;bottom:-20px;border-radius:2px 6px 3px 7px;animation-timing-function:linear;animation-iteration-count:infinite}
.ash.e{border-radius:50%;background:#FFB347}
@media (prefers-reduced-motion: reduce){.ash{animation:none;opacity:0}}


.dc-if{display:contents}.dc-if.off{display:none}
