
:root{--hbdur:1.9s;--hbamp:0.12;--bg:#08080c;--bg2:#0c0d14;--surface:#13141d;--surface2:#1a1c26;--line:rgba(255,255,255,.08);--line2:rgba(255,255,255,.16);
--ink:#f4f1e9;--ink-soft:#cdcbd6;--muted:#a2a4b4;--gold:#e3b341;--violet:#8a6dff;--grad:linear-gradient(120deg,var(--gold),var(--violet));--maxw:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
@view-transition{navigation:auto}
/* capsule card link + detail */
.card .cardgo{position:absolute;bottom:14px;right:14px;z-index:3;width:38px;height:38px;border-radius:50%;background:var(--grad);color:#15120a;display:grid;place-items:center;opacity:0;transform:translateY(8px);transition:.3s}
.card:hover .cardgo{opacity:1;transform:none}.card .cardgo svg{width:18px;height:18px}
.cap-hero{position:relative;min-height:92svh;display:flex;align-items:flex-end;overflow:hidden;border-bottom:1px solid var(--line)}
.cap-hero>img,.cap-hero>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cap-hero-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,8,12,.45),rgba(8,8,12,.92))}
.cap-hero::after{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(120% 80% at 50% 0%,transparent 38%,rgba(8,8,12,.62))}
.cap-hero-in{position:relative;z-index:2;padding-bottom:clamp(70px,12vh,140px);padding-top:120px}
.cap-hero-in h1{font-size:clamp(44px,8.5vw,118px);letter-spacing:-.03em;max-width:16ch;margin:18px 0 14px;text-shadow:0 4px 40px rgba(0,0,0,.4);opacity:0;animation:fadeUp .9s .18s forwards}.cap-hero-in p{color:var(--ink-soft);font-size:clamp(17px,2vw,21px);max-width:54ch;opacity:0;animation:fadeUp .8s .55s forwards}
.badge2{display:inline-block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--gold);border:1px solid var(--line2);padding:6px 13px;border-radius:100px}
.cap-body{max-width:820px;padding-top:clamp(54px,7vw,86px);padding-bottom:20px}.cap-bigdesc{margin-top:6px}
.cap-video{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;border:1px solid var(--line);margin-bottom:30px}
.cap-video iframe,.cap-video video{position:absolute;inset:0;width:100%;height:100%;border:0}
.cap-cta{margin-top:34px}
/* Partners · estreno cinematográfico */
.partners-cinema{position:relative;padding:clamp(70px,8vw,112px) 0;overflow:hidden;background:radial-gradient(90% 120% at 50% 0%,rgba(138,109,255,.13),transparent 58%),#05060a;border-block:1px solid var(--line)}
.partners-cinema::before,.partners-cinema::after{content:"";position:absolute;left:0;right:0;height:10px;z-index:2;background:repeating-linear-gradient(90deg,#030407 0 24px,rgba(227,179,65,.26) 24px 30px,#030407 30px 54px)}
.partners-cinema::before{top:0}.partners-cinema::after{bottom:0}
.partners-cinema .s-head{margin-bottom:34px}
.partners-reel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,22px);perspective:1100px}
.partner-link{display:block;min-width:0;color:inherit;text-decoration:none;border-radius:16px}
.partner-frame{--delay:0s;position:relative;aspect-ratio:16/10;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:linear-gradient(145deg,#111522,#07090e 65%);box-shadow:0 24px 55px rgba(0,0,0,.38),inset 0 0 0 1px rgba(255,255,255,.025);opacity:0;filter:blur(10px);transform:translateY(34px) rotateX(7deg) scale(.94);animation:partnerPremiere 1s cubic-bezier(.16,.84,.28,1) forwards;animation-delay:var(--delay);transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .4s,box-shadow .4s,opacity .4s}
@keyframes partnerPremiere{55%{filter:blur(1px)}to{opacity:1;filter:none;transform:none}}
.partner-frame::before{content:"";position:absolute;inset:-60% -35%;z-index:3;pointer-events:none;background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.18) 49%,transparent 60%);transform:translateX(-70%) rotate(6deg);animation:partnerSweep 4.8s ease-in-out infinite;animation-delay:calc(var(--delay) + 1s)}
@keyframes partnerSweep{0%,56%{transform:translateX(-70%) rotate(6deg)}82%,100%{transform:translateX(70%) rotate(6deg)}}
.partner-screen{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:clamp(26px,3vw,48px);background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.075),transparent 57%)}
.partner-screen img{display:block;width:82%;height:62%;max-width:82%;max-height:62%;margin:auto;object-fit:contain;object-position:center center;transform-origin:center center;filter:drop-shadow(0 8px 18px rgba(0,0,0,.38));transition:transform .5s cubic-bezier(.2,.8,.2,1),filter .4s}
.partner-screen img.partner-logo-compact{width:72%;height:72%;max-width:72%;max-height:72%}
.partner-caption{position:absolute;left:0;right:0;bottom:0;z-index:4;padding:34px 18px 14px;background:linear-gradient(transparent,rgba(3,4,7,.94));transform:translateY(calc(100% - 48px));transition:transform .38s cubic-bezier(.2,.8,.2,1)}
.partner-name{display:block;color:var(--ink);font-weight:750;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.partner-desc{margin:8px 0 0;color:var(--ink-soft);font-size:12px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.partner-link:hover .partner-frame,.partner-link:focus-visible .partner-frame{transform:translateY(-8px) scale(1.025);border-color:rgba(227,179,65,.7);box-shadow:0 30px 70px rgba(0,0,0,.52),0 0 38px rgba(227,179,65,.12)}
.partner-link:hover .partner-screen img,.partner-link:focus-visible .partner-screen img{transform:scale(1.055);filter:drop-shadow(0 12px 25px rgba(0,0,0,.55))}
.partner-link:hover .partner-caption,.partner-link:focus-visible .partner-caption{transform:none}
.partners-reel:has(.partner-link:hover) .partner-link:not(:hover){opacity:.58}
.partner-link:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
@media(max-width:900px){.partners-reel{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.partners-reel{grid-template-columns:1fr}.partner-frame{aspect-ratio:16/9}.partner-caption{transform:none}}
@media(prefers-reduced-motion:reduce){.partner-frame{animation:none;opacity:1;filter:none;transform:none}.partner-frame::before{animation:none}.partner-link:hover .partner-frame,.partner-link:focus-visible .partner-frame{transform:none}.partner-screen img{transition:none}}

body{margin:0;background:var(--bg);color:var(--ink);font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4,.dsp{font-family:'Space Grotesk','Inter',sans-serif;letter-spacing:-.02em;line-height:1.05;font-weight:600;margin:0}
p{margin:0 0 1em}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
main,section,article,.wrap,.s-head,.article-body,.form,.cinfo{min-width:0}
img,video,iframe,canvas{max-width:100%}
.article-body,.legal-body,.logo-desc,.partner-desc,.cinfo b{overflow-wrap:anywhere;word-break:normal}
.article-body pre{max-width:100%;overflow:auto;padding:16px;border:1px solid var(--line);border-radius:12px;background:#05060a;-webkit-overflow-scrolling:touch}
.article-body table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;-webkit-overflow-scrolling:touch}
.article-body th,.article-body td{padding:10px 12px;border:1px solid var(--line);min-width:120px}
.form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 26px}
.eyebrow{font-size:12px;letter-spacing:.26em;text-transform:uppercase;font-weight:600;color:var(--gold);display:inline-flex;align-items:center;gap:9px}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--gold)}
.grad-text{color:var(--gold)}@supports((-webkit-background-clip:text) or (background-clip:text)){.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}}
.ic{width:24px;height:24px}
.btn{display:inline-flex;align-items:center;gap:9px;padding:15px 28px;border-radius:100px;font-weight:600;font-size:15px;transition:.25s;border:1px solid transparent;cursor:pointer;font-family:inherit}
.btn svg{width:18px;height:18px}
.btn-primary{background:var(--grad);color:#15120a}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 14px 40px -10px var(--gold)}
.btn-glass{border-color:var(--line2);color:var(--ink);background:rgba(255,255,255,.05);backdrop-filter:blur(8px)}
.btn-glass:hover{border-color:var(--gold);color:var(--gold);background:rgba(227,179,65,.08)}
.btn-ghost{border-color:var(--line2);color:var(--ink)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}

/* header */
header.nav{position:fixed;inset:0 0 auto;z-index:60;transition:.35s}
header.nav .bar{display:flex;align-items:center;justify-content:space-between;height:74px;transition:.35s}
header.nav.scrolled{backdrop-filter:blur(16px);background:rgba(8,8,12,.72);border-bottom:1px solid var(--line)}
header.nav.scrolled .bar{height:60px}
.logo{display:flex;align-items:center;gap:11px;font-family:'Space Grotesk';font-weight:700;font-size:18px}
.pv3d{display:block;line-height:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.chip:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:4px}.skip{position:fixed;left:-9999px;top:0;z-index:200;background:var(--gold);color:#1a1400;padding:10px 16px;border-radius:0 0 12px 0;font-weight:700;text-decoration:none}.skip:focus{left:0}.pv3d-cv{display:block;width:100%;height:100%}
.cc-embed{position:relative}.cc-veil{position:absolute;inset:0;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;text-align:center;padding:24px;background:rgba(8,8,12,.9);color:var(--ink);border-radius:inherit;font-size:14px}.cc-embed.cc-on .cc-veil{display:none}.cc-allow{cursor:pointer;border:1px solid var(--line2);background:var(--gold);color:#1a1400;font-weight:700;padding:9px 16px;border-radius:999px;font-size:13px}.cc-allow:hover{filter:brightness(1.08)}
.codebg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;padding:24px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.7;letter-spacing:.02em;color:rgba(255,255,255,.038);white-space:pre-wrap;word-break:break-word;-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent)}
.codebg-inner{will-change:transform}
@media(prefers-reduced-motion:no-preference){.codebg-inner{animation:codeDrift 90s linear infinite}}
@keyframes codeDrift{from{transform:translateY(0)}to{transform:translateY(-25%)}}
header.nav,main,.ft{position:relative;z-index:1}
.logo img{height:46px;width:auto;transform-origin:center center;animation:pvHeart var(--hbdur,1.9s) ease-in-out infinite;will-change:transform,filter}
@keyframes pvHeart{0%{transform:scale(1);filter:none}10%{transform:scale(calc(1 + var(--hbamp,.12)));filter:drop-shadow(0 0 6px rgba(227,179,65,.45))}20%{transform:scale(calc(1 - var(--hbamp,.12)*.29))}30%{transform:scale(calc(1 + var(--hbamp,.12)*.67));filter:drop-shadow(0 0 4px rgba(227,179,65,.3))}42%{transform:scale(1);filter:none}100%{transform:scale(1);filter:none}}
.logo .ring{width:28px;height:28px;border-radius:50%;background:var(--grad);position:relative;flex:none}
.logo .ring::after{content:"";position:absolute;inset:5px;border-radius:50%;background:var(--bg)}
.menu{display:flex;gap:26px;align-items:center}
.menu a{color:var(--ink-soft);font-weight:500;font-size:15px;position:relative;padding:4px 0}
.menu a::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--grad);transition:.25s}
.menu a:hover::after,.menu a.active::after{width:100%}.menu a:hover{color:var(--ink)}
.langsw{display:flex;gap:2px;border:1px solid var(--line);border-radius:100px;padding:3px;margin-left:6px}
.langsw a,.langsw span{font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--muted);padding:5px 10px;border-radius:100px}
.langsw [aria-current="page"]{background:var(--grad);color:#15120a}
.burger{display:none;background:none;border:0;color:var(--ink);cursor:pointer}.burger svg{width:28px;height:28px}
.mobile{display:none}

/* video hero (3DVista-style) */
.vhero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden}
.vhero video,.vhero .vfallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.vhero .vfallback{background:
  radial-gradient(50% 60% at 25% 30%,var(--violet),transparent 70%),
  radial-gradient(50% 60% at 78% 25%,var(--gold),transparent 70%),
  radial-gradient(50% 60% at 55% 80%,#3b6fff,transparent 70%),var(--bg);
  filter:blur(40px);animation:auroraMove 16s ease-in-out infinite alternate}
@keyframes auroraMove{0%{transform:scale(1.05) translate(-2%,-1%)}100%{transform:scale(1.2) translate(3%,2%)}}
.vhero .scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(8,8,12,.55) 0%,rgba(8,8,12,.25) 35%,rgba(8,8,12,.85) 100%)}
.vhero .scrim2{position:absolute;inset:0;z-index:1;background:radial-gradient(120% 80% at 50% 0%,transparent 40%,rgba(8,8,12,.6))}
.vhero .wrap{position:relative;z-index:3;width:100%;padding-bottom:clamp(70px,12vh,140px);padding-top:120px}
.vhero h1{font-size:clamp(44px,8.5vw,118px);font-weight:700;letter-spacing:-.03em;max-width:16ch;margin:18px 0 0;text-shadow:0 4px 40px rgba(0,0,0,.4)}
.vhero h1 .word{display:inline-block;opacity:0;transform:translateY(40px);animation:wordUp .9s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes wordUp{to{opacity:1;transform:none}}
.vhero .lead{font-size:clamp(17px,2vw,21px);color:var(--ink-soft);max-width:50ch;margin:24px 0 0;opacity:0;animation:fadeUp .8s .7s forwards}
.vhero .ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px;opacity:0;animation:fadeUp .8s .9s forwards}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}

/* floating tour bar */
.tourbar{position:fixed;left:50%;bottom:calc(22px + var(--cookieh,0px));transform:translateX(-50%);z-index:50;transition:bottom .35s cubic-bezier(.2,.8,.2,1),opacity .3s,transform .3s;display:flex;align-items:center;gap:6px;
  background:rgba(8,8,12,.6);backdrop-filter:blur(14px);border:1px solid var(--line2);border-radius:100px;padding:7px 9px;transition:.4s}
.tourbar.hide{opacity:0;transform:translateX(-50%) translateY(20px);pointer-events:none}
.tourbar button{background:transparent;border:0;color:var(--ink-soft);width:38px;height:38px;border-radius:50%;display:grid;place-items:center;cursor:pointer;transition:.2s}
.tourbar button:hover{background:rgba(255,255,255,.08);color:var(--gold)}
.tourbar button svg{width:19px;height:19px}
.tourbar .sep{width:1px;height:22px;background:var(--line2);margin:0 3px}
.tourbar .scrolllbl{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);padding:0 12px}

/* marquee */
.marquee{border-block:1px solid var(--line);padding:20px 0;overflow:hidden;background:var(--bg2);white-space:nowrap}
.marquee .track{display:inline-flex;animation:scrollX 34s linear infinite}.marquee:hover .track{animation-play-state:paused}
.marquee span{font-family:'Space Grotesk';font-size:clamp(20px,3vw,32px);font-weight:600;padding:0 28px;color:rgba(244,241,233,.82);-webkit-text-stroke:0}
.marquee span.alt{color:var(--gold);-webkit-text-stroke:0}.marquee .sep{color:var(--gold);-webkit-text-stroke:0}
@keyframes scrollX{to{transform:translateX(-50%)}}

section.s{padding:clamp(72px,9vw,130px) 0;position:relative}
.s-head{max-width:700px;margin-bottom:52px}.s-head h2{font-size:clamp(30px,4.6vw,54px);margin:14px 0 12px}.s-head p{color:var(--muted);font-size:18px;margin:0}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;border-block:1px solid var(--line);padding:52px 0}
.stat .n{font-family:'Space Grotesk';font-weight:700;font-size:clamp(38px,5vw,60px);line-height:1}
.stat .l{color:var(--muted);font-size:14px;margin-top:8px;max-width:22ch}

.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.svc{position:relative;background:linear-gradient(180deg,var(--surface),var(--bg2));border:1px solid var(--line);border-radius:20px;padding:34px 30px;overflow:hidden;transition:.3s}
.svc::before{content:"";position:absolute;inset:0;border-radius:20px;padding:1px;background:var(--grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:.3s}
.svc:hover::before{opacity:1}.svc:hover{transform:translateY(-6px)}
.svc .ic-wrap{width:58px;height:58px;border-radius:15px;display:grid;place-items:center;background:rgba(227,179,65,.10);border:1px solid var(--line);color:var(--gold);margin-bottom:22px}
.svc .ic-wrap svg{width:28px;height:28px}.svc h3{font-size:22px;margin-bottom:10px}.svc p{color:var(--muted);font-size:15px;margin:0}
.svc .num{position:absolute;top:24px;right:28px;font-family:'Space Grotesk';font-size:14px;color:var(--muted);opacity:.5}

/* immersive video band */
.immersive{position:relative;min-height:78vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}
.immersive video,.immersive .vfallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.immersive .vfallback{background:radial-gradient(60% 80% at 50% 50%,var(--violet),var(--bg));filter:blur(50px);opacity:.7}
.immersive .scrim{position:absolute;inset:0;z-index:1;background:rgba(8,8,12,.62)}
.immersive .inner{position:relative;z-index:3;max-width:760px;padding:40px 26px}
.immersive h2{font-size:clamp(30px,5vw,58px);margin-bottom:18px}
.immersive p{color:var(--ink-soft);font-size:19px;margin-bottom:30px}
.playbtn{width:84px;height:84px;border-radius:50%;border:1px solid var(--line2);background:rgba(255,255,255,.08);backdrop-filter:blur(8px);color:#fff;display:grid;place-items:center;margin:0 auto 22px;cursor:pointer;position:relative;transition:.25s}
.playbtn svg{width:30px;height:30px}.playbtn:hover{background:var(--grad);color:#15120a;border-color:transparent;transform:scale(1.06)}
.playbtn::before{content:"";position:absolute;inset:-1px;border-radius:50%;border:1px solid var(--gold);animation:pulse 2.4s ease-out infinite}
@keyframes pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.5);opacity:0}}

.about{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.portal{position:relative;aspect-ratio:1;border-radius:50%;overflow:hidden;border:1px solid var(--line);max-width:460px;margin:0 auto;box-shadow:0 0 0 10px rgba(255,255,255,.02),0 30px 80px -30px var(--violet)}
.portal::before{content:"";position:absolute;inset:-2px;border-radius:50%;padding:2px;background:var(--grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spin 18s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}.portal img{width:100%;height:100%;object-fit:cover}.portal .ph{width:100%;height:100%;display:grid;place-items:center;background:var(--surface);color:var(--gold)}
.feats{margin-top:26px;display:grid;gap:16px}.feat{display:flex;gap:14px;align-items:flex-start}
.feat .dot{width:34px;height:34px;border-radius:10px;background:rgba(138,109,255,.12);border:1px solid var(--line);display:grid;place-items:center;color:var(--violet);flex:none;font-family:'Space Grotesk';font-weight:700;font-size:14px}
.feat b{display:block;font-size:16px}.feat span{color:var(--muted);font-size:14px}

.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:34px}
.chip{padding:9px 18px;border-radius:100px;border:1px solid var(--line);color:var(--muted);font-size:14px;font-weight:500;cursor:pointer;transition:.2s;background:transparent}
.chip:hover{color:var(--ink);border-color:var(--line2)}.chip.active{background:var(--grad);color:#15120a;border-color:transparent}
.port-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{position:relative;border-radius:20px;overflow:hidden;border:1px solid var(--line);background:var(--surface);display:block;transition:.35s;cursor:pointer}
.card:hover{transform:translateY(-6px);border-color:var(--line2)}
.card .media{aspect-ratio:4/3;overflow:hidden;position:relative;background:linear-gradient(135deg,rgba(138,109,255,.2),var(--surface))}
.card .media img{width:100%;height:100%;object-fit:cover;transition:.6s}.card:hover .media img{transform:scale(1.07)}
.card .media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,8,12,.85),transparent 55%)}
.card .badge{position:absolute;top:16px;left:16px;z-index:2;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gold);background:rgba(8,8,12,.7);border:1px solid var(--line);padding:6px 12px;border-radius:100px}
.card .vplay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;width:60px;height:60px;border-radius:50%;background:rgba(8,8,12,.5);backdrop-filter:blur(6px);border:1px solid var(--line2);display:grid;place-items:center;color:#fff;opacity:0;transition:.3s}
.card:hover .vplay{opacity:1}.card .vplay svg{width:26px;height:26px}
.card .info{padding:22px 24px}.card h3{font-size:21px;margin-bottom:8px}
.card p{color:var(--muted);font-size:14px;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.testi{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:30px}
.stars{display:flex;gap:3px;margin-bottom:16px}.star{width:17px;height:17px;fill:var(--line2)}.star.on{fill:var(--gold)}
.testi .q{font-size:16px;color:var(--ink-soft);margin-bottom:22px}.testi .who{display:flex;align-items:center;gap:13px}
.testi .who img{width:46px;height:46px;border-radius:50%;object-fit:cover}.testi .who .ph{width:46px;height:46px;border-radius:50%;background:var(--grad);display:grid;place-items:center;color:#15120a;font-weight:700;font-family:'Space Grotesk'}
.testi .who b{font-size:15px}.testi .who span{color:var(--muted);font-size:13px;display:block}

.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;transition:.3s}
.post:hover{transform:translateY(-6px);border-color:var(--line2)}
.post .media{aspect-ratio:16/10;overflow:hidden;background:var(--surface2)}.post .media img{width:100%;height:100%;object-fit:cover;transition:.5s}.post:hover .media img{transform:scale(1.06)}
.post .body{padding:24px;flex:1;display:flex;flex-direction:column}
.post h3{font-size:20px;margin:0 0 8px;line-height:1.25}.post p{color:var(--muted);font-size:14px;flex:1;margin-top:10px}
.post .read{color:var(--gold);font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:7px;margin-top:10px}.post .read svg{width:16px;height:16px;transition:.2s}.post:hover .read svg{transform:translateX(4px)}
.post .post-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.post .cat{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);font-weight:600}
.post .pmeta{color:var(--muted);font-size:12px;letter-spacing:.03em}
.post .post-meta .cat+.pmeta::before{content:'·';margin-right:8px;color:var(--muted)}
.blogtools{margin-bottom:30px}
.bt-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.bt-search{flex:1 1 240px;display:flex;align-items:center;gap:9px;background:var(--surface);border:1px solid var(--line);border-radius:100px;padding:9px 16px;transition:.2s}
.bt-search svg{width:17px;height:17px;color:var(--muted);flex:none}
.bt-search input{flex:1;background:transparent;border:0;color:var(--ink);font:inherit;font-size:14px;outline:none;min-width:0}
.bt-search input::-webkit-search-cancel-button{filter:invert(.6)}
.bt-bar select{background:var(--surface);border:1px solid var(--line);border-radius:100px;color:var(--ink);font:inherit;font-size:14px;padding:9px 15px;cursor:pointer;max-width:240px}
.bt-bar select:hover{border-color:var(--line2)}
.bt-search:focus-within{border-color:var(--gold)}
.bt-count{color:var(--muted);font-size:13px;margin-top:14px}
.barch{margin-top:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}
.barch>summary{cursor:pointer;padding:13px 18px;font-weight:600;font-size:14px;list-style:none;display:flex;align-items:center;gap:8px}
.barch>summary::-webkit-details-marker{display:none}
.barch>summary::after{content:'+';margin-left:auto;color:var(--gold);font-size:19px;line-height:1}
.barch[open]>summary::after{content:'–'}
.barch-in{padding:0 18px 14px}
.barch-y{border-top:1px solid var(--line);padding:12px 0}
.barch-y>summary{cursor:pointer;font-size:14px;color:var(--ink-soft);font-weight:600;list-style:none}
.barch-y>summary::-webkit-details-marker{display:none}
.barch-y>summary span{color:var(--muted);font-weight:400;font-size:12px}
.barch-m{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.bmchip{padding:6px 13px;border-radius:100px;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:13px;cursor:pointer;transition:.2s;display:inline-flex;align-items:center;gap:5px}
.bmchip:hover{color:var(--ink);border-color:var(--line2)}
.bmchip.active{background:var(--grad);color:#15120a;border-color:transparent}
.bmchip span{opacity:.65;font-size:11px}
.bempty{text-align:center;color:var(--muted);padding:60px 0}
.bmore-wrap{display:flex;justify-content:center;margin-top:38px}
@media(max-width:680px){.bt-bar select{max-width:none;flex:1 1 46%}.bt-bar .breset{flex:1 1 100%}}
.blog-layout{display:grid;grid-template-columns:280px 1fr;gap:34px;align-items:start}
.blog-layout.pos-right{grid-template-columns:1fr 280px}
.blog-layout.pos-right .blog-sidebar{order:2}
.blog-layout.pos-right .blog-main{order:1}
.blog-sidebar{position:sticky;top:104px}
.blog-main{min-width:0}
.blog-main .blog-grid{grid-template-columns:repeat(2,1fr)}
@media(max-width:680px){.blog-main .blog-grid{grid-template-columns:1fr}}
.blog-explore{display:flex;flex-direction:column;gap:26px;padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--surface)}
.blog-explore h2{font-size:18px;margin:0}
.explore-col h3{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 13px;font-weight:700}
.cat-cloud{display:flex;flex-wrap:wrap;gap:8px}
.cat-pill{padding:7px 15px;border-radius:100px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);font-size:13px;cursor:pointer;transition:.2s;line-height:1.3}
.cat-pill:hover{color:var(--ink);border-color:var(--gold)}
.cat-pill.active{background:var(--grad);color:#15120a;border-color:transparent}
.cat-pill span{opacity:.6;font-size:11px;margin-left:4px}
.cat-pill.t2{font-size:15px;font-weight:600}
.cat-pill.t3{font-size:17px;font-weight:700}
.explore-archive{display:flex;flex-direction:column;gap:2px}
.exp-year{border-top:1px solid var(--line);padding:10px 0}
.exp-year:first-child{border-top:0;padding-top:0}
.exp-year>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px}
.exp-year>summary::-webkit-details-marker{display:none}
.exp-year>summary::after{content:'+';margin-left:auto;color:var(--gold);font-size:16px}
.exp-year[open]>summary::after{content:'–'}
.eyear-btn{background:transparent;border:0;color:var(--ink-soft);font-size:14px;font-weight:600;cursor:pointer;padding:0}
.eyear-btn:hover{color:var(--gold)}
.exp-year summary span{color:var(--muted);font-weight:400;font-size:12px}
.exp-months{display:flex;flex-direction:column;gap:2px;margin-top:10px;padding-left:2px}
.emonth-btn{background:transparent;border:0;color:var(--muted);font-size:13px;cursor:pointer;padding:5px 0;text-align:left;display:flex;justify-content:space-between;gap:8px}
.emonth-btn:hover,.emonth-btn.active{color:var(--gold)}
.emonth-btn span{opacity:.7}
@media(max-width:980px){.blog-layout,.blog-layout.pos-right{grid-template-columns:1fr}.blog-layout.pos-right .blog-sidebar,.blog-layout.pos-right .blog-main{order:0}.blog-sidebar{position:static;top:auto}.blog-explore{flex-direction:row;flex-wrap:wrap;gap:24px 40px}.explore-col{flex:1 1 240px}}
@media(max-width:680px){.blog-explore{flex-direction:column}}

.article{max-width:760px;margin:0 auto;padding:130px 26px 60px}
.article .meta{color:var(--muted);font-size:14px;margin-bottom:14px;display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.article .meta .cat{color:var(--gold);font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:12px}
.article h1{font-size:clamp(30px,5vw,48px);margin-bottom:24px}.article .cover{border-radius:18px;overflow:hidden;margin:0 0 36px;border:1px solid var(--line)}
.article-body{font-size:17px;color:var(--ink-soft)}.article-body h1,.article-body h2,.article-body h3{color:var(--ink);margin:1.5em 0 .5em}
.article-body h1{font-size:28px}.article-body h3{font-size:22px}.article-body ul,.article-body ol{padding-left:1.2em;margin:0 0 1em}.article-body li{margin-bottom:.4em}
.article-body a{color:var(--gold);text-decoration:underline}.article-body blockquote{border-left:3px solid var(--gold);padding-left:18px;margin:1.4em 0;color:var(--ink);font-style:italic}
.back{display:inline-flex;align-items:center;gap:8px;color:var(--muted);margin-bottom:26px;font-size:14px}.back svg{width:16px;height:16px;transform:rotate(180deg)}.back:hover{color:var(--gold)}
.langnote{font-size:12px;color:var(--muted);border:1px dashed var(--line2);border-radius:8px;padding:6px 10px;display:inline-block;margin-bottom:18px}
/* ===== blog editorial (maquetacion tipo revista) ===== */
.rprog{position:fixed;top:0;left:0;right:0;height:3px;z-index:120;pointer-events:none}
.rprog i{display:block;height:100%;width:0;background:var(--grad);box-shadow:0 0 14px rgba(227,179,65,.5);transition:width .08s linear}
.article{max-width:812px;padding:130px 26px 40px}
.article .meta{gap:10px;font-size:13px;margin-bottom:18px;align-items:center}
.article .meta .cat{background:rgba(227,179,65,.12);border:1px solid rgba(227,179,65,.32);border-radius:100px;padding:4px 12px;font-size:11px}
.article .meta .sep{opacity:.35}
.article h1{letter-spacing:-.02em;line-height:1.1;margin-bottom:18px}
.article .cover{border-radius:22px;margin-bottom:44px}
.article-body{font-size:19px;line-height:1.78;color:var(--ink-soft);max-width:702px;margin-inline:auto;letter-spacing:.002em}
.article-body>p{margin:0 0 1.45em;text-wrap:pretty}
.article-body>p.lead{font-size:clamp(20px,2.2vw,23px);line-height:1.6;color:var(--ink);font-weight:500;margin-bottom:1.5em}
.article-body>p.lead::first-letter{float:left;font-family:Georgia,'Times New Roman',serif;font-size:4.05em;line-height:.82;font-weight:700;margin:.06em .12em 0 0;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.article-body strong,.article-body b{color:var(--ink);font-weight:650}
.article-body em{color:var(--ink)}
.article-body h2{position:relative;font-size:clamp(25px,3vw,31px);line-height:1.24;letter-spacing:-.015em;color:var(--ink);margin:2.5em 0 .75em;padding-top:26px}
.article-body h2::before{content:'';position:absolute;top:0;left:0;width:46px;height:3px;border-radius:3px;background:var(--grad)}
.article-body h2:first-child{margin-top:0}
.article-body h3{font-size:clamp(20px,2.2vw,23px);margin:2em 0 .6em;color:var(--ink);letter-spacing:-.01em}
.article-body blockquote{border:0;border-block:1px solid var(--line);margin:2.3em 0;padding:1.6em 0 1.6em 54px;color:var(--ink);font-style:normal;font-size:clamp(20px,2.3vw,24px);line-height:1.5;font-weight:500;position:relative}
.article-body blockquote::before{content:'“';position:absolute;left:0;top:.22em;font-family:Georgia,serif;font-size:74px;line-height:1;color:var(--gold);opacity:.55}
.article-body blockquote p{margin:0}
.article-body a{text-underline-offset:3px;text-decoration-thickness:1px}
.article-body a:hover{color:var(--ink)}
.article-body img{border-radius:16px;margin:1.8em 0}
.article-body ul,.article-body ol{margin:0 0 1.45em;padding-left:1.35em}
.article-body li{margin-bottom:.55em}
.article-body li::marker{color:var(--gold)}
.artend{display:flex;justify-content:center;gap:14px;margin:56px 0 44px}
.artend span{width:6px;height:6px;border-radius:50%;background:var(--gold);opacity:.55}
.artend span:nth-child(2){opacity:.8}
.authorbox{display:flex;gap:18px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:22px 24px}
.authorbox .ab-av{width:56px;height:56px;border-radius:50%;background:var(--grad);color:#15120a;display:grid;place-items:center;font-weight:800;font-size:20px;flex:none}
.authorbox small{display:block;color:var(--muted);font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:3px}
.authorbox b{font-size:17px;color:var(--ink)}
.authorbox p{color:var(--muted);font-size:14px;margin:5px 0 0}
.pnav{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px}
.pnav a{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px 20px;transition:.25s;display:block}
.pnav a:hover{border-color:var(--line2);transform:translateY(-3px)}
.pnav small{display:block;color:var(--gold);font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px}
.pnav b{font-size:15px;line-height:1.35;color:var(--ink);font-weight:600;display:block}
.pnav .nx{text-align:right}
.related{margin-top:64px}
.related>h2{font-size:clamp(22px,2.6vw,28px);margin-bottom:26px;letter-spacing:-.01em}
@media(max-width:680px){
 .article{padding:110px 20px 30px}
 .article-body{font-size:17.5px;line-height:1.72}
 .article-body>p.lead::first-letter{font-size:3.4em}
 .article-body blockquote{padding-left:40px}
 .article-body blockquote::before{font-size:56px}
 .pnav{grid-template-columns:1fr}
 .pnav .nx{text-align:left}
 .authorbox{flex-direction:column;align-items:flex-start;text-align:left}
}

.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.member{text-align:center}
.member .ph-wrap{aspect-ratio:1;border-radius:18px;overflow:hidden;border:1px solid var(--line);margin-bottom:16px;background:var(--surface)}.member .ph-wrap .mvid,.member .ph-wrap img{width:100%;height:100%;object-fit:cover;display:block}.member img{width:100%;height:100%;object-fit:cover}
.member .ph{width:100%;height:100%;display:grid;place-items:center;background:var(--grad);color:#15120a;font-family:'Space Grotesk';font-weight:700;font-size:34px}
.member b{font-size:17px}.member span{color:var(--gold);font-size:13px;display:block;margin-top:3px}.member p{color:var(--muted);font-size:13px;margin-top:8px}

.faq-list{max-width:820px;margin:0 auto;display:grid;gap:12px}
.q{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.q summary{padding:20px 24px;cursor:pointer;font-weight:600;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center}
.q summary::-webkit-details-marker{display:none}.q summary::after{content:"+";color:var(--gold);font-size:24px;font-family:'Space Grotesk';transition:.25s}.q[open] summary::after{transform:rotate(45deg)}
.q .a{padding:0 24px 22px;color:var(--muted);font-size:15px}

.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}
.price{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:34px 30px;position:relative}
.price.featured{border-color:transparent;background:linear-gradient(180deg,rgba(227,179,65,.10),var(--surface))}
.price.featured::before{content:"★";position:absolute;top:-12px;left:30px;background:var(--grad);color:#15120a;font-size:13px;font-weight:700;padding:5px 12px;border-radius:100px}
.price h3{font-size:23px;margin-bottom:6px}.price .p{font-family:'Space Grotesk';font-weight:700;font-size:22px;margin:10px 0;color:var(--gold)}.price .desc{color:var(--muted);font-size:14px;margin-bottom:18px}
.price ul{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:10px}.price li{font-size:14px;color:var(--ink-soft);display:flex;gap:10px}
.price li::before{content:"";width:18px;height:18px;flex:none;border-radius:50%;background:rgba(227,179,65,.15);background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23e3b341" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6 9 17l-5-5"/></svg>');background-size:12px;background-repeat:no-repeat;background-position:center}

.cta-band{position:relative;border-radius:28px;padding:clamp(48px,7vw,90px);overflow:hidden;text-align:center;border:1px solid var(--line);background:var(--bg2)}
.cta-band .vfallback{position:absolute;inset:-30%;background:radial-gradient(50% 60% at 30% 40%,var(--violet),transparent 70%),radial-gradient(50% 60% at 70% 60%,var(--gold),transparent 70%);filter:blur(60px);opacity:.4}
.cta-band .inner{position:relative;z-index:2}.cta-band h2{font-size:clamp(30px,5vw,56px);margin-bottom:18px}.cta-band p{color:var(--ink-soft);max-width:50ch;margin:0 auto 32px;font-size:18px}.cta-band .ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px}
.cinfo a,.cinfo .row{display:flex;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);color:var(--ink-soft)}.cinfo .row:last-child{border:0}
.cinfo .ic-wrap{width:44px;height:44px;border-radius:12px;background:rgba(227,179,65,.1);border:1px solid var(--line);display:grid;place-items:center;color:var(--gold);flex:none}.cinfo .ic-wrap svg{width:20px;height:20px}
.cinfo small{color:var(--muted);display:block;font-size:12px}.cinfo b{font-size:15px;font-weight:600}
.cmap{margin-top:26px;border-radius:16px;overflow:hidden;border:1px solid var(--line)}.cmap iframe{width:100%;height:260px;border:0;display:block;filter:grayscale(.3) invert(.92) hue-rotate(180deg)}
.form{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:32px}
.form label{display:block;font-size:13px;font-weight:600;margin:14px 0 6px}.form input,.form textarea,.form select{width:100%;background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:13px 15px;color:var(--ink);font-family:inherit;font-size:15px;outline:none;transition:.2s}
.form input:focus,.form textarea:focus,.form select:focus{border-color:var(--gold)}.form textarea{min-height:130px;resize:vertical}
.form .form-consent{display:flex;align-items:flex-start;gap:10px;margin-top:16px;color:var(--ink-soft);font-weight:400;line-height:1.5}.form .form-consent input{width:18px;height:18px;flex:0 0 18px;margin-top:2px;accent-color:var(--gold)}.form .form-consent a{color:var(--gold);text-decoration:underline}

footer.ft{border-top:1px solid var(--line);background:var(--bg2);padding:64px 0 30px;margin-top:30px}
.ft-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:34px;margin-bottom:46px}.ft .logo{margin-bottom:16px}.ft .tag{color:var(--muted);font-size:15px;max-width:34ch}
.ft h5{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}.ft ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.ft ul a{color:var(--ink-soft);font-size:15px}.ft ul a:hover{color:var(--gold)}
.ft-soc{display:flex;gap:12px;margin-top:18px}.ft-soc a{width:40px;height:40px;border-radius:11px;border:1px solid var(--line);display:grid;place-items:center;color:var(--ink-soft);transition:.25s}.ft-soc a:hover{color:var(--gold);border-color:var(--gold);transform:translateY(-3px)}.ft-soc svg{width:19px;height:19px}
.ft-bottom{border-top:1px solid var(--line);padding-top:24px;color:var(--muted);font-size:13px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
.rmark{font-size:.5em;vertical-align:super;opacity:.75;margin-left:1px;font-weight:600}
.ft-legalnote{border-top:1px solid var(--line);margin-top:16px;padding-top:16px;color:var(--muted);font-size:11.5px;line-height:1.6;opacity:.8}
.ft-legalnote p{margin:0 0 6px}

.page-hero{position:relative;min-height:92svh;display:flex;align-items:flex-end;padding:0;overflow:hidden;border-bottom:1px solid var(--line)}
.page-hero .vfallback{position:absolute;inset:0;background:radial-gradient(60% 80% at 30% 20%,var(--violet),transparent 70%),radial-gradient(50% 60% at 80% 30%,var(--gold),transparent 70%);filter:blur(60px);opacity:.3}
.page-hero::after{content:"";position:absolute;inset:0;z-index:2;background:radial-gradient(120% 80% at 50% 0%,transparent 38%,rgba(8,8,12,.62));pointer-events:none}
.page-hero .wrap{position:relative;z-index:3;width:100%;padding-top:120px;padding-bottom:clamp(70px,12vh,140px)}
.page-hero h1{font-size:clamp(44px,8.5vw,118px);letter-spacing:-.03em;max-width:16ch;margin:18px 0 14px;text-shadow:0 4px 40px rgba(0,0,0,.4);opacity:0;animation:fadeUp .9s .18s forwards}.page-hero p{color:var(--ink-soft);font-size:clamp(17px,2vw,21px);max-width:54ch;opacity:0;animation:fadeUp .8s .55s forwards}.page-hero .eyebrow{opacity:0;animation:fadeUp .8s .08s forwards}

/* lightbox */
.lightbox{position:fixed;inset:0;z-index:90;background:rgba(5,5,8,.92);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;padding:30px}
.lightbox.open{display:flex}
.lightbox .frame{width:min(1000px,100%);aspect-ratio:16/9;background:#000;border-radius:14px;overflow:hidden;border:1px solid var(--line2)}
.lightbox iframe,.lightbox video{width:100%;height:100%;border:0}
.lightbox .x{position:absolute;top:22px;right:26px;background:rgba(255,255,255,.08);border:1px solid var(--line2);color:#fff;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;cursor:pointer}
.lightbox .x svg{width:22px;height:22px}

/* manifesto */
.manifesto{padding:clamp(80px,13vw,170px) 0;text-align:center;position:relative;overflow:hidden}
.manifesto .vfallback{position:absolute;inset:-30%;background:radial-gradient(45% 55% at 30% 40%,var(--violet),transparent 70%),radial-gradient(45% 55% at 72% 60%,var(--gold),transparent 70%);filter:blur(70px);opacity:.22}
.manifesto .inner{position:relative;z-index:2}
.manifesto .q{font-family:'Space Grotesk';font-weight:600;font-size:clamp(26px,4vw,50px);line-height:1.22;max-width:900px;margin:20px auto 0;color:#fff}

/* parallax (Insta360 / 3DVista style) */
.parallax{position:relative}
.px-stage{position:sticky;top:8vh;height:72vh;overflow:hidden}
.px-img{position:absolute;inset:-22% 0;width:100%;height:144%;object-fit:cover;will-change:transform}
.px-scrim{position:absolute;inset:0;background:radial-gradient(70% 75% at 50% 50%,transparent 30%,rgba(8,8,12,var(--ov,.7))),linear-gradient(180deg,rgba(8,8,12,calc(var(--ov,.7) * .8)),rgba(8,8,12,.2) 30%,rgba(8,8,12,.2) 70%,rgba(8,8,12,var(--ov,.7)))}

/* efectos opcionales (controlables) */
body.fx-grain::after{content:"";position:fixed;inset:0;z-index:80;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.cursor-glow{position:fixed;width:480px;height:480px;border-radius:50%;pointer-events:none;z-index:1;transform:translate(-50%,-50%);
  background:radial-gradient(circle,rgba(227,179,65,.07),transparent 60%);opacity:0;transition:opacity .4s;left:-999px}
body.fx-glow .cursor-glow{opacity:1}
@media(max-width:680px){.cursor-glow{display:none}.px-title{top:6%;padding:0 14px}.px-panel{left:5%!important;right:5%!important;max-width:none;top:auto!important;bottom:14%}}
.px-title{position:absolute;top:9%;left:0;right:0;z-index:3;text-align:center}
.px-panels{position:absolute;inset:0;z-index:3;pointer-events:none}
.px-panel{position:absolute;max-width:330px;background:rgba(8,8,12,.5);backdrop-filter:blur(12px);border:1px solid var(--line2);border-radius:18px;padding:24px 26px;opacity:0;transition:opacity .6s cubic-bezier(.2,.8,.2,1),transform .6s cubic-bezier(.2,.8,.2,1)}
.px-panel.left{left:6%;transform:translateX(-40px)}
.px-panel.right{right:6%;text-align:right;transform:translateX(40px)}
.px-panel.show{opacity:1;transform:none}
.px-panel .eyebrow{margin-bottom:6px}.px-panel.right .eyebrow{flex-direction:row-reverse}.px-panel.right .eyebrow::before{display:none}
.px-panel h3{font-size:23px;margin:6px 0 8px}.px-panel p{color:var(--ink-soft);font-size:15px;margin:0}
@media(max-width:680px){.px-panel{max-width:none;left:5%!important;right:5%!important;text-align:left!important}.px-panel.right{text-align:left}}

.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1;transform:none}.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.vhero h1 .word{opacity:1;transform:none}.logo-cell{opacity:1;transform:none}}
@media(max-width:980px){.svc-grid,.port-grid,.testi-grid,.blog-grid{grid-template-columns:repeat(2,1fr)}.team-grid{grid-template-columns:repeat(2,1fr)}.price-grid{grid-template-columns:1fr}.about,.contact-grid{grid-template-columns:1fr;gap:40px}.stats{grid-template-columns:repeat(2,1fr);gap:34px}.ft-top{grid-template-columns:1fr 1fr}}
@media(max-width:1100px){.menu{display:none}.burger{display:block}.mobile.open{display:block;position:fixed;inset:74px 0 auto;max-height:calc(100svh - 74px - var(--cookieh,0px));overflow-y:auto;background:var(--bg2);border-bottom:1px solid var(--line);padding:18px 26px calc(24px + env(safe-area-inset-bottom));z-index:95}.mobile.open a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-size:17px;font-weight:600}.mobile.open .langsw{display:inline-flex;gap:4px;border:1px solid var(--line);border-radius:100px;padding:4px;margin-top:16px}.mobile.open .langsw a,.mobile.open .langsw span{display:inline-flex;border-bottom:0;padding:8px 16px;font-size:13px}.mobile.open .langsw [aria-current="page"]{background:var(--grad);color:#15120a;border-radius:100px}.mobile.open a:last-child{border:0}}
body.menu-open{overflow:hidden}body.menu-open .ang,body.menu-open .pvp,body.menu-open .tourbar{opacity:0;pointer-events:none}
@media(max-width:680px){.svc-grid,.port-grid,.testi-grid,.blog-grid,.team-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.ft-top{grid-template-columns:1fr}.tourbar .scrolllbl{display:none}.form-row{grid-template-columns:1fr}.btn{white-space:normal;text-align:center;justify-content:center}.tourbar{max-width:calc(100vw - 24px)}.cinfo a,.cinfo .row{align-items:flex-start}}

/* ===== IMMERSIVE UPGRADE · Pacoverso v01 (estetica 3DVista) ===== */
a,.btn,.card,.svc,.post,.logo-cell,.member .ph-wrap{transition-timing-function:cubic-bezier(.2,.8,.2,1)}
/* HERO a pantalla completa con ken burns + indicador de scroll */
.vhero video,.vhero .vfallback{animation:kenburns 24s ease-out infinite alternate}
@keyframes kenburns{from{transform:scale(1.06)}to{transform:scale(1.18)}}
.vhero h1{font-size:clamp(48px,9.2vw,132px);line-height:.96}
.vhero .lead{font-size:clamp(18px,2.1vw,23px);max-width:46ch}
.vhero .ctas .btn{padding:17px 34px;font-size:16px}
.vhero::after{content:"";position:absolute;left:50%;bottom:24px;z-index:4;width:25px;height:40px;border:2px solid rgba(255,255,255,.55);border-radius:14px;transform:translateX(-50%)}
.vhero::before{content:"";position:absolute;left:50%;bottom:48px;z-index:5;width:4px;height:8px;border-radius:3px;background:#fff;transform:translateX(-50%);animation:scrolldot 1.8s ease-in-out infinite}
@keyframes scrolldot{0%{opacity:0;transform:translate(-50%,-6px)}40%{opacity:1}100%{opacity:0;transform:translate(-50%,13px)}}
/* heroes interiores mas inmersivos */
.page-hero{padding:clamp(150px,24vh,250px) 0 clamp(56px,9vh,100px);min-height:64vh;display:flex;align-items:flex-end}
.page-hero h1{font-size:clamp(44px,7.5vw,96px);line-height:1}
.page-hero .vfallback{animation:auroraMove 18s ease-in-out infinite alternate}
.cap-hero{min-height:84vh}
.cap-hero>img{animation:kenburns 26s ease-out infinite alternate}
/* titulares de seccion mas grandes (texto minimo, imagen protagonista) */
.s-head{margin-bottom:64px}.s-head h2{font-size:clamp(34px,5.4vw,64px)}
.immersive h2{font-size:clamp(34px,5.6vw,66px)}
.immersive{min-height:86vh}
/* CAPSULAS como PORTALES "Entra a la experiencia" */
.port-grid{gap:26px}
.card{border-radius:24px;min-height:clamp(300px,30vw,430px);display:flex;flex-direction:column}
.card .media{position:absolute;inset:0;aspect-ratio:auto;width:100%;height:100%;border-radius:24px}
.card .media::after{background:linear-gradient(to top,rgba(8,8,12,.94) 6%,rgba(8,8,12,.30) 50%,transparent 78%)}
.card:hover .media img{transform:scale(1.12)}
.card .info{position:relative;z-index:3;margin-top:auto;padding:26px 28px 30px;width:100%}
.card .info h3{font-size:clamp(22px,1.9vw,28px);margin-bottom:10px}
.card .info p{color:var(--ink-soft);opacity:0;max-height:0;transform:translateY(10px);transition:.45s;overflow:hidden;margin:0}
.card:hover .info p{opacity:1;max-height:150px;transform:none}
.card .cardgo{width:46px;height:46px;top:18px;right:18px;bottom:auto;box-shadow:0 10px 34px -8px var(--gold)}
.card:hover{transform:translateY(-8px);box-shadow:0 30px 70px -30px rgba(0,0,0,.8)}
/* blog con mas foto */
.post .media{aspect-ratio:16/11}.post:hover .media img{transform:scale(1.06)}
/* barra de progreso de scroll */
#scrollprog{position:fixed;top:0;left:0;height:3px;width:0;z-index:99;background:var(--grad);box-shadow:0 0 12px var(--gold);transition:width .08s linear}
@media(min-width:981px){.card{min-height:clamp(330px,24vw,400px)}}
@media(max-width:680px){.card{min-height:300px}.vhero::after,.vhero::before{display:none}}
/* ENTRA AL METAVERSO · tour 3D embebido */
.tour{position:relative;min-height:88vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;border-block:1px solid var(--line);background:radial-gradient(60% 80% at 50% 28%,rgba(138,109,255,.16),var(--bg))}
.tour .tour-bg{position:absolute;inset:-20%;background:radial-gradient(45% 55% at 30% 40%,var(--violet),transparent 70%),radial-gradient(45% 55% at 72% 60%,var(--gold),transparent 70%);filter:blur(80px);opacity:.26;animation:auroraMove 18s ease-in-out infinite alternate}
.tour .tour-in{position:relative;z-index:2;max-width:780px;padding:60px 26px}
.tour h2{font-size:clamp(34px,5.6vw,70px);margin:14px 0 16px;line-height:1.02}
.tour p{color:var(--ink-soft);font-size:clamp(17px,1.9vw,20px);margin-bottom:32px}
.tour-enter{display:inline-flex;align-items:center;gap:12px;padding:18px 34px;border-radius:100px;border:1px solid var(--line2);background:rgba(255,255,255,.06);backdrop-filter:blur(8px);color:#fff;font-weight:600;font-size:16px;cursor:pointer;font-family:inherit;transition:.25s}
.tour-enter svg{width:22px;height:22px}
.tour-enter:hover{background:var(--grad);color:#15120a;border-color:transparent;transform:translateY(-3px);box-shadow:0 16px 50px -16px var(--gold)}
.tour.live{min-height:92vh;padding:0}.tour.live .tour-in,.tour.live .tour-bg{display:none}
.tour .tour-frame{position:absolute;inset:0;z-index:3;display:none;width:100%;height:100%}
.tour.live .tour-frame{display:block}.tour .tour-frame iframe{width:100%;height:100%;border:0;display:block}
.tour .tour-exit{position:absolute;top:18px;right:18px;z-index:5;background:rgba(8,8,12,.6);border:1px solid var(--line2);color:#fff;width:46px;height:46px;border-radius:50%;display:none;place-items:center;cursor:pointer}
.tour.live .tour-exit{display:grid}.tour .tour-exit svg{width:22px;height:22px}
/* heroes de paginas interiores con video de fondo (estilo portada) */
.page-hero .ph-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;animation:kenburns 24s ease-out infinite alternate}
.page-hero .ph-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(8,8,12,.5),rgba(8,8,12,.25) 38%,rgba(8,8,12,.92))}
.page-hero .wrap{position:relative;z-index:2}
/* cookies + legal */
.cookiebar{position:fixed;left:0;right:0;bottom:0;z-index:96;background:rgba(12,13,17,.97);backdrop-filter:blur(10px);border-top:1px solid var(--line2);padding:15px 20px;transform:translateY(115%);transition:transform .4s cubic-bezier(.2,.8,.2,1);display:none}
.cookiebar.show{display:block;transform:none}
.cookiebar-in{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:space-between}
.cookiebar p{margin:0;color:var(--ink-soft);font-size:13.5px;max-width:72ch;line-height:1.5}
.cookiebar-btns{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.cookiebar-more{color:var(--gold);font-size:13px;text-decoration:underline;white-space:nowrap}
.cookiebar button{border-radius:100px;padding:10px 22px;font-weight:600;font-size:14px;cursor:pointer;border:1px solid var(--line2);font-family:inherit}
.cookiebar .ck-rej{background:transparent;color:var(--ink)}.cookiebar .ck-rej:hover{border-color:var(--gold);color:var(--gold)}
.cookiebar .ck-acc{background:var(--grad);color:#15120a;border-color:transparent}.cookiebar .ck-acc:hover{transform:translateY(-2px)}
.legal-body h3{color:var(--ink);margin:1.5em 0 .4em;font-size:19px}.legal-body h2{font-size:24px;margin:1.2em 0 .5em}
.legal-body p{margin:0 0 1em}.legal-body ul{padding-left:1.2em;margin:.2em 0 1.2em}.legal-body li{margin:.35em 0}
.legal-body a{color:var(--gold);text-decoration:underline}.legal-body .upd{color:var(--muted);font-size:13px}
/* IA Responsable (WOW) */
.ia-hero{min-height:70vh}.ia-hero .ia-hero-label{display:block;color:#fff;font-size:clamp(30px,5vw,72px);font-weight:800;line-height:.95;letter-spacing:.04em;text-transform:uppercase;text-shadow:0 4px 32px rgba(0,0,0,.5);margin:0 0 16px;opacity:0;animation:fadeUp .9s .08s forwards}.ia-hero h1{font-size:clamp(44px,8vw,104px)}
.ia-aurora{position:absolute;inset:-25%;z-index:0;pointer-events:none;opacity:.4;mix-blend-mode:screen;filter:blur(80px);background:conic-gradient(from 0deg at 50% 50%,rgba(227,179,65,0),rgba(227,179,65,.55),rgba(138,109,255,.55),rgba(227,179,65,0));animation:auroraSpin 26s linear infinite}
.ia-claim{position:relative;text-align:center;padding:clamp(54px,10vw,120px) 0;overflow:hidden;border-block:1px solid var(--line)}
.ia-claim::before{content:'';position:absolute;inset:-30%;background:radial-gradient(45% 55% at 30% 40%,var(--violet),transparent 70%),radial-gradient(45% 55% at 72% 60%,var(--gold),transparent 70%);filter:blur(80px);opacity:.22;animation:auroraMove 18s ease-in-out infinite alternate;pointer-events:none}
.ia-claim .q{position:relative;font-family:'Space Grotesk';font-weight:600;font-size:clamp(30px,5.4vw,64px);line-height:1.08;max-width:18ch;margin:0 auto;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.ia-body .lead{font-size:clamp(18px,2vw,22px);color:var(--ink);margin-bottom:1.4em}
.ia-body h3{font-size:clamp(22px,3vw,32px);margin:1.7em 0 .5em;display:block;color:var(--gold);-webkit-text-fill-color:var(--gold)}
.ia-body p{color:var(--ink-soft)}
.ia-body .callout{border:1px solid var(--gold);background:rgba(227,179,65,.08);border-radius:18px;padding:22px 26px;margin:1.6em 0}.ia-body .callout p{margin:0;color:var(--ink);font-size:17px}
.ia-body ul.do{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:1.3em 0}
.ia-body ul.do li{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px 22px;color:var(--ink-soft);font-size:15px;transition:.25s}
.ia-body ul.do li:hover{border-color:var(--gold);transform:translateY(-4px)}.ia-body ul.do li b{display:block;color:var(--ink);font-size:16px;margin-bottom:5px}
.ia-closing{text-align:center;color:var(--gold);font-family:'Space Grotesk';font-weight:600;font-size:clamp(15px,2vw,19px);margin:44px auto 0;max-width:60ch}
/* donaciones + galería cápsula */
.donate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:30px 0 16px}
.donate-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:22px 16px;border-radius:16px;border:1px solid var(--line2);background:linear-gradient(180deg,var(--surface),var(--bg2));text-align:center;transition:.25s}
.donate-btn:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:0 18px 50px -22px var(--gold)}
.donate-amt{font-family:'Space Grotesk';font-weight:700;font-size:26px;color:var(--gold)}.donate-lbl{font-size:13px;color:var(--muted)}
.donate-note{color:var(--muted);font-size:13px;margin-top:6px}
.cap-donwrap{margin-top:16px;text-align:center}
.cap-donbadge{display:inline-block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--gold);border:1px solid var(--line2);padding:6px 13px;border-radius:100px}
.cap-donnote{color:var(--muted);font-size:13px;margin:10px auto 0;max-width:62ch}
.donate-this{box-shadow:0 12px 34px -12px var(--gold)}
.dlbtns{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0 8px}
.dlbtn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:16px 26px;border-radius:16px;border:1px solid var(--line2);background:linear-gradient(135deg,rgba(227,179,65,.14),rgba(138,109,255,.16));color:var(--ink);font-weight:600;min-width:112px;transition:.25s}
.dlbtn:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 18px 50px -22px var(--gold)}
.dlbtn .dlres{font-family:'Space Grotesk';font-weight:700;font-size:24px;color:var(--gold)}.dlbtn .dllbl{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}
/* ===== FX premium (WOW) ===== */
.vhero .aurora{position:absolute;inset:-25%;z-index:1;pointer-events:none;opacity:.4;mix-blend-mode:screen;filter:blur(70px);background:conic-gradient(from 0deg at 50% 50%,rgba(227,179,65,0),rgba(227,179,65,.55),rgba(138,109,255,.55),rgba(227,179,65,0));animation:auroraSpin 24s linear infinite}
@keyframes auroraSpin{to{transform:rotate(360deg)}}
.fx-shine .grad-text{background-size:220% 100%;animation:gradShift 7s ease-in-out infinite}
@keyframes gradShift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
.fx-tilt .port-grid .card{transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s;transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
.fx-tilt .port-grid .card:hover{box-shadow:0 44px 90px -38px rgba(0,0,0,.9)}
.fx-tilt .port-grid .card .media::before{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(300px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.18),transparent 62%);opacity:0;transition:opacity .3s}
.fx-tilt .port-grid .card:hover .media::before{opacity:1}
.fx-shine .port-grid .card .media img{transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .6s}
.fx-shine .port-grid .card:hover .media img{filter:saturate(1.12) contrast(1.04)}
@media(prefers-reduced-motion:reduce){.vhero .aurora{animation:none}.fx-shine .grad-text{animation:none}.fx-tilt .port-grid .card{transform:none}}
/* ===== MP3 player ===== */
.pvp{position:fixed;right:18px;bottom:calc(18px + var(--cookieh,0px));z-index:97;transition:bottom .35s cubic-bezier(.2,.8,.2,1)}.pvp-fab{width:56px;height:56px;border-radius:50%;border:1px solid var(--line2);background:var(--grad);color:#15120a;display:grid;place-items:center;cursor:pointer;box-shadow:0 14px 34px -10px var(--gold)}.pvp-fab svg{width:24px;height:24px}.pvp.playing .pvp-disc{display:inline-grid;animation:spin 4s linear infinite}
.pvp-panel{position:absolute;right:0;bottom:66px;width:312px;max-width:84vw;background:rgba(12,13,17,.96);backdrop-filter:blur(14px);border:1px solid var(--line2);border-radius:20px;padding:16px;display:none;box-shadow:0 30px 70px -28px #000}.pvp[data-on='1'] .pvp-panel{display:block;animation:fadeUp .3s both}
.pvp-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.pvp-name{font-weight:700;font-size:14px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.pvp-x{background:none;border:0;color:var(--muted);cursor:pointer}.pvp-x svg{width:18px;height:18px}
.pvp-pl,.pvp-sp{width:100%;background:var(--bg2);border:1px solid var(--line);color:var(--ink);border-radius:10px;padding:9px;margin-bottom:10px;font-size:13px;cursor:pointer;font-family:inherit}.pvp-sp{font-weight:600}
.pvp-now{font-size:13px;color:var(--gold);margin-bottom:8px;min-height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pvp-seek{height:6px;background:var(--surface2);border-radius:6px;overflow:hidden;cursor:pointer;margin-bottom:12px}.pvp-seek i{display:block;height:100%;width:0;background:var(--grad)}
.pvp-ctr{display:flex;gap:10px;justify-content:center;align-items:center;margin-bottom:10px}.pvp-ctr button{background:var(--surface);border:1px solid var(--line);color:var(--ink);width:42px;height:42px;border-radius:50%;cursor:pointer;font-size:14px}.pvp-prev::before{content:'⏮'}.pvp-next::before{content:'⏭'}.pvp-play{background:var(--grad)!important;color:#15120a!important;border-color:transparent!important;font-size:15px}
.pvp-list{list-style:none;margin:0;padding:0;max-height:168px;overflow:auto}.pvp-list li{padding:8px 10px;border-radius:8px;font-size:13px;color:var(--ink-soft);cursor:pointer}.pvp-list li:hover{background:var(--surface)}.pvp-list li.on{background:rgba(227,179,65,.14);color:var(--gold)}
/* ===== Asistente Ángel ===== */
.ang{position:fixed;left:18px;bottom:calc(18px + var(--cookieh,0px));z-index:97;transition:bottom .35s cubic-bezier(.2,.8,.2,1)}.ang-fab{width:60px;height:60px;border-radius:50%;border:2px solid var(--ang,#e3b341);background:rgba(12,13,17,.85);backdrop-filter:blur(8px);cursor:pointer;display:grid;place-items:center;font-size:30px;box-shadow:0 14px 34px -10px var(--ang,#e3b341);overflow:hidden;padding:0}.ang-fab img{width:100%;height:100%;object-fit:cover}
.ang-panel{position:absolute;left:0;bottom:72px;width:342px;max-width:88vw;height:460px;max-height:72vh;background:rgba(12,13,17,.97);backdrop-filter:blur(14px);border:1px solid var(--line2);border-radius:20px;display:none;flex-direction:column;overflow:hidden;box-shadow:0 30px 70px -28px #000}.ang[data-on='1'] .ang-panel{display:flex;animation:fadeUp .3s both}
.ang-top{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);background:linear-gradient(120deg,rgba(227,179,65,.16),transparent)}.ang-av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:20px;background:rgba(255,255,255,.06);overflow:hidden}.ang-av img{width:100%;height:100%;object-fit:cover}.ang-top b{flex:1;font-size:15px}.ang-x{background:none;border:0;color:var(--muted);cursor:pointer}.ang-x svg{width:18px;height:18px}.ang-home{background:none;border:0;color:var(--muted);cursor:pointer;display:grid;place-items:center;text-decoration:none}.ang-home svg{width:18px;height:18px}.ang-home:hover{color:var(--gold)}
.ang-msgs{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:14px;display:flex;flex-direction:column;gap:8px}.ang-b{max-width:85%;padding:10px 13px;border-radius:14px;font-size:14px;line-height:1.5}.ang-b.ai{background:var(--surface);border:1px solid var(--line);align-self:flex-start;border-bottom-left-radius:4px}.ang-b.me{background:var(--ang,#e3b341);color:#15120a;align-self:flex-end;border-bottom-right-radius:4px}
.ang-sug{display:flex;flex-wrap:wrap;gap:6px;padding:12px;flex:0 0 auto;max-height:42%;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border-top:1px solid var(--line)}.ang-chip.ang-more{font-weight:800;min-width:40px;justify-content:center;color:var(--ang,#e3b341)}.ang-chip{background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--ink-soft);border-radius:100px;padding:6px 12px;font-size:12px;cursor:pointer;font-family:inherit}.ang-chip:hover{border-color:var(--ang,#e3b341);color:var(--ink)}
.ang-form{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}.ang-in{flex:1;background:var(--bg2);border:1px solid var(--line);border-radius:100px;padding:10px 14px;color:var(--ink);font-size:14px;outline:none}.ang-in:focus{border-color:var(--ang,#e3b341)}.ang-send{width:42px;height:42px;border-radius:50%;border:0;background:var(--ang,#e3b341);color:#15120a;cursor:pointer;display:grid;place-items:center}.ang-send svg{width:18px;height:18px}
.ang-b a{color:var(--gold);text-decoration:underline;font-weight:600}.ang-b.me a{color:#15120a}
@media(max-width:680px){.ang-panel,.pvp-panel{max-width:90vw}}
@media(max-width:480px){.pvp-fab,.ang-fab{width:50px;height:50px}.ang-fab{font-size:26px}.pvp,.ang{bottom:calc(14px + var(--cookieh,0px))}.ang-panel{height:62vh}}
.btn-buy{background:var(--grad);color:#15120a;border-color:transparent;font-weight:700}.btn-buy:hover{transform:translateY(-2px);box-shadow:0 14px 40px -12px var(--gold)}
.card-lock{position:absolute;top:14px;right:14px;z-index:4;width:42px;height:42px;border-radius:50%;background:rgba(8,8,12,.72);backdrop-filter:blur(6px);border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;box-shadow:0 6px 18px -6px rgba(0,0,0,.6)}
.card-lock svg{width:21px;height:21px}
.btn-pay{background:#2b2f3b;color:#fff;opacity:.55;pointer-events:none}
.cap-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin:30px 0}
.cap-gitem{border-radius:14px;overflow:hidden;border:1px solid var(--line);background:var(--surface);aspect-ratio:4/3}
.cap-gitem img{width:100%;height:100%;object-fit:cover;display:block}
.cap-gitem.cap-gvid{aspect-ratio:16/9;grid-column:1/-1}.cap-gvid iframe,.cap-gvid video{width:100%;height:100%;border:0}
/* boton Ayudanos animado */
.nav-help{margin-left:8px;padding:8px 16px;border-radius:100px;font-weight:700;font-size:14px;color:#15120a;background:linear-gradient(120deg,var(--gold),var(--violet),var(--gold));background-size:220% 100%;animation:helpShine 3s linear infinite,helpVibe 3.4s ease-in-out infinite;box-shadow:0 6px 22px -8px var(--gold)}
.nav-help:hover{filter:brightness(1.08);transform:translateY(-1px)}
@keyframes helpShine{to{background-position:220% 0}}
@keyframes helpVibe{0%,90%,100%{transform:translateY(0) rotate(0)}91%{transform:translate(-2px,-1px) rotate(-2deg)}93%{transform:translate(2px,1px) rotate(2deg)}95%{transform:translate(-2px,0) rotate(-1.5deg)}97%{transform:translate(1px,-1px) rotate(1deg)}}
.nav-help-m{display:inline-block;margin:14px 0 4px;text-align:center}
/* ventajas (Sobre) */
.adv-list{display:grid;gap:12px;max-width:880px;margin:0 auto}
.adv{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.3s}
.adv[open]{border-color:var(--line2);background:linear-gradient(180deg,rgba(227,179,65,.06),var(--surface))}
.adv summary{display:flex;align-items:center;gap:16px;padding:20px 22px;cursor:pointer;list-style:none}.adv summary::-webkit-details-marker{display:none}
.adv-ic{width:46px;height:46px;flex:none;border-radius:12px;display:grid;place-items:center;background:rgba(227,179,65,.12);border:1px solid var(--line);color:var(--gold)}.adv-ic svg{width:24px;height:24px}
.adv-t{font-family:'Space Grotesk';font-weight:600;font-size:19px;flex:1}
.adv-x{color:var(--muted);transition:.3s}.adv-x svg{width:20px;height:20px;transform:rotate(90deg)}.adv[open] .adv-x{transform:rotate(180deg);color:var(--gold)}
.adv-d{padding:0 22px 22px 84px;color:var(--ink-soft);font-size:15px}@media(max-width:680px){.adv-d{padding-left:22px}}
/* entidades (iconos) */
.ent-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;max-width:980px;margin:0 auto}
.ent{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:26px 16px;border:1px solid var(--line);border-radius:18px;background:var(--surface);transition:.3s}
.ent:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:0 16px 40px -22px var(--gold)}
.ent-ic{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;background:rgba(227,179,65,.12);border:1px solid var(--line);color:var(--gold)}.ent-ic svg{width:26px;height:26px}
.ent span{font-weight:600;font-size:15px;color:var(--ink-soft)}
/* banner infinito de logos */
.logobar{overflow:hidden;border-block:1px solid var(--line);background:var(--bg2);padding:26px 0;-webkit-mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.logobar .ltrack{display:inline-flex;align-items:center;gap:64px;white-space:nowrap;animation:scrollX 45s linear infinite}.logobar:hover .ltrack{animation-play-state:paused}
.logobar .litem{height:46px;display:inline-flex;align-items:center}
.logobar .litem img{height:100%;width:auto;object-fit:contain;filter:grayscale(1) brightness(1.8);opacity:.6;transition:.35s}.logobar .litem:hover img{filter:none;opacity:1}
.logobar .litem>span{color:var(--muted);font-family:'Space Grotesk';font-weight:700;font-size:19px}
/* Pacoverso Studios */
.studios-card{max-width:840px;margin:0 auto;text-align:center;background:linear-gradient(180deg,rgba(138,109,255,.08),var(--surface));border:1px solid var(--line2);border-radius:24px;padding:clamp(34px,5vw,60px)}
.studios-card h2{font-size:clamp(28px,4vw,44px);margin:12px 0 18px}
.studios-text{color:var(--ink-soft);font-size:16px;text-align:left;max-width:62ch;margin:0 auto}
.studios-text strong{color:var(--ink)}
.ft-credit{color:var(--muted);font-size:12.5px;max-width:46ch;text-align:center}

/* Accesibilidad y lectura móvil nativa */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media(max-width:680px){
  body{font-size:17px;line-height:1.72}
  .wrap{padding-inline:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
  .page-hero,.cap-hero{min-height:82svh}
  .page-hero .wrap,.cap-hero-in{padding-top:104px;padding-bottom:clamp(62px,10vh,96px)}
  .page-hero h1,.cap-hero-in h1{font-size:clamp(38px,11.5vw,62px);line-height:1.02;max-width:100%;overflow-wrap:anywhere;hyphens:auto}
  .page-hero p,.cap-hero-in p,.vhero .lead{font-size:18px;line-height:1.62;max-width:38ch}
  .article{width:100%;max-width:760px;padding:58px 18px 64px}
  .article-body{font-size:18px;line-height:1.8}
  .article-body h2{font-size:clamp(25px,7.5vw,32px);line-height:1.2}
  .article-body h3{font-size:clamp(21px,6.4vw,27px);line-height:1.25}
  .article-body p,.article-body li{max-width:68ch}
  .article-body ul,.article-body ol{padding-left:1.35em}
  .article-body blockquote{margin-inline:0;padding:4px 0 4px 16px}
  .post .body{padding:22px 20px}.post h3{font-size:22px;line-height:1.25}.post p{font-size:16px;line-height:1.65}
  .blog-grid,.port-grid,.svc-grid,.testi-grid,.team-grid{gap:18px}
  .form input,.form select,.form textarea{font-size:16px;min-height:48px}
  .form textarea{min-height:150px}
  .btn,.burger,.mobile.open a,.faq-list summary,.adv summary{min-height:44px}
  .faq-list summary,.adv summary{display:flex;align-items:center;line-height:1.35}
  .lightbox{padding:8px}.lightbox .frame{border-radius:10px}
  .cookiebar{padding:14px max(16px,env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
  .cookiebar-btns{width:100%}.cookiebar-btns .btn{flex:1 1 130px}
  .ang-panel,.pvp-panel{width:calc(100vw - 36px);max-width:none}
  .cap-gallery{grid-template-columns:1fr}
  .cta-band{padding:38px 20px}.cta-band .ctas{align-items:stretch}.cta-band .btn{width:100%}
  .ft{padding-bottom:calc(30px + env(safe-area-inset-bottom))}
}
@media(max-width:380px){
  .stats{grid-template-columns:1fr}
  .partners-reel{grid-template-columns:1fr}
  .page-hero h1,.cap-hero-in h1{font-size:clamp(34px,11vw,46px)}
}
@media(max-height:520px) and (orientation:landscape){
  .page-hero,.cap-hero,.vhero{min-height:100svh}
  .page-hero .wrap,.cap-hero-in,.vhero .wrap{padding-top:92px;padding-bottom:44px}
}
@media(prefers-contrast:more){
  :root{--muted:#c5c7d1;--ink-soft:#f0edf0;--line:rgba(255,255,255,.28);--line2:rgba(255,255,255,.5)}
  .btn,.card,.post,.svc,.form input,.form select,.form textarea{border-width:2px}
}
@media(forced-colors:active){
  .btn,.card,.post,.svc,.partner-frame{forced-color-adjust:auto}
  .grad-text{background:none;-webkit-text-fill-color:currentColor}
}

/* Sistema visual común: portada como patrón para todas las páginas */
:root{--page-title:var(--ink);--page-text:var(--ink-soft);--page-kicker:var(--gold)}
.page-hero,.cap-hero{min-height:100svh;display:flex;align-items:flex-end;padding:0}
.page-hero .ph-scrim,.cap-hero-scrim{background:linear-gradient(180deg,rgba(8,8,12,.55) 0%,rgba(8,8,12,.25) 35%,rgba(8,8,12,.88) 82%,rgba(8,8,12,.96) 100%)}
.page-hero .ph-vid,.cap-hero>img,.cap-hero>video{animation:kenburns 24s ease-out infinite alternate}
.page-hero .wrap,.cap-hero-in,.vhero .wrap{width:100%;padding-top:120px;padding-bottom:clamp(70px,12vh,140px);display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.page-hero .eyebrow,.cap-hero-in .eyebrow,.cap-hero-in .badge2{color:var(--page-kicker)}
.page-hero h1,.cap-hero-in h1{order:initial;color:var(--page-title)!important;background:none!important;-webkit-text-fill-color:currentColor!important;font-size:clamp(48px,9.2vw,132px);font-weight:700;line-height:.96;letter-spacing:-.03em;max-width:16ch;margin:18px 0 0;text-align:left}
.page-hero p,.cap-hero-in p{order:initial;color:var(--page-text)!important;font-size:clamp(18px,2.1vw,23px)!important;line-height:1.55;max-width:46ch!important;margin:24px 0 0;text-align:left}
.s-head{display:block;max-width:700px;text-align:left!important;margin-left:0!important;margin-right:0!important}
.s-head>*{float:none;position:static}
.s-head .eyebrow{display:inline-flex;justify-content:flex-start!important;color:var(--page-kicker)}
.s-head h2,.article-body h2,.article-body h3,.article-body h4{color:var(--page-title)}
.s-head p,.article-body p,.article-body li{color:var(--page-text)}
.article-body h2,.article-body h3,.article-body h4{display:block;width:100%;clear:both}
@media(max-width:680px){
  .page-hero,.cap-hero,.vhero{min-height:100svh}
  .page-hero .wrap,.cap-hero-in,.vhero .wrap{padding-top:104px;padding-bottom:clamp(62px,10vh,96px)}
  .page-hero h1,.cap-hero-in h1,.vhero h1{font-size:clamp(38px,11.5vw,62px);line-height:1.02;max-width:100%}
  .page-hero p,.cap-hero-in p,.vhero .lead{font-size:18px!important;line-height:1.62;max-width:38ch!important}
  .s-head{max-width:100%}
}
@media(prefers-reduced-motion:reduce){
  .page-hero .ph-vid,.cap-hero>img,.cap-hero>video{animation:none}
}
/* ====== EXPERIENCIA MOVIL TIPO APP: barra inferior + panel lateral + modo lectura ====== */
.appbar{display:none}
@media(max-width:680px){
  :root{--appbarh:calc(58px + env(safe-area-inset-bottom))}
  body{padding-bottom:var(--appbarh)}
  .burger{display:none}
  header.nav{transition:transform .32s ease,background .35s,height .35s,border-color .35s}
  header.nav.hd-hidden{transform:translateY(-102%)}
  .appbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:80;padding-bottom:env(safe-area-inset-bottom);background:rgba(10,10,14,.86);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border-top:1px solid var(--line);box-shadow:0 -10px 34px rgba(0,0,0,.45)}
  .ab-tab{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;height:58px;background:none;border:0;cursor:pointer;color:var(--ink-soft);text-decoration:none;font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:10.5px;line-height:1;position:relative;-webkit-tap-highlight-color:transparent;transition:color .2s,transform .12s}
  .ab-tab .ab-ic{width:23px;height:23px;stroke-width:1.7;transition:transform .2s}
  .ab-tab span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:.2px}
  .ab-tab:active{transform:scale(.9)}
  .ab-tab.active{color:var(--accent)}
  .ab-tab.active .ab-ic{transform:translateY(-1px) scale(1.08)}
  .ab-tab.active::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:26px;height:3px;border-radius:0 0 5px 5px;background:var(--grad)}
  .mobile.open{inset:0 0 0 auto!important;left:auto!important;width:min(86vw,360px)!important;height:100svh!important;max-height:100svh!important;overflow-y:auto;padding:calc(22px + env(safe-area-inset-top)) 24px calc(28px + var(--appbarh)) 26px!important;background:linear-gradient(180deg,var(--bg2),var(--bg))!important;border-left:1px solid var(--line);border-bottom:0!important;box-shadow:-24px 0 70px rgba(0,0,0,.55);animation:sheetIn .28s cubic-bezier(.22,.61,.36,1)}
  @keyframes sheetIn{from{transform:translateX(100%)}to{transform:translateX(0)}}
  body.menu-open::after{content:"";position:fixed;inset:0;z-index:94;background:rgba(0,0,0,.55);animation:mfade .28s ease}
  @keyframes mfade{from{opacity:0}to{opacity:1}}
  .pvp,.ang{bottom:calc(14px + var(--cookieh,0px) + var(--appbarh))!important}
  #tourbar,.tourbar{bottom:calc(16px + var(--appbarh))!important}
  #cookiebar,.cookiebar{bottom:var(--appbarh)!important}
  #scrollprog{height:3px}
  .article-body{font-size:1.14rem;line-height:1.78;letter-spacing:.003em}
  .article-body p{margin:0 0 1.25em}
  .article-body li{margin:0 0 .55em;line-height:1.7}
  .article-body h2{font-size:1.52rem;line-height:1.22;margin:1.9em 0 .5em}
  .article-body h3{font-size:1.24rem;line-height:1.3;margin:1.6em 0 .4em}
  .article-body img{border-radius:14px;margin:1.4em 0}
  .article-body blockquote{font-size:1.16rem;line-height:1.6}
}
@media(max-width:680px) and (prefers-reduced-motion:reduce){
  .mobile.open{animation:none}
  header.nav.hd-hidden{transform:none}
}

