
:root{--ink:#15141A;--ink2:#23222B;--cream:#F4EEE4;--cream2:#EAE1D2;--red:#E24D57;--red2:#C93B45;--gold:#C7A56A;--mute:#6E6A73;--line:rgba(21,20,26,.1);--wa:#25D366;--r:18px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{overflow-x:hidden}
body{font-family:Manrope,sans-serif;color:var(--ink);background:var(--cream);line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
.w{max-width:1200px;margin:0 auto;padding:0 24px}
.f{font-family:Fraunces,serif;font-optical-sizing:auto}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:800;font-size:15px;border-radius:999px;padding:16px 26px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;cursor:pointer;border:0;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn-main{background:var(--red);color:#fff;box-shadow:0 14px 30px -10px rgba(226,77,87,.7)}
.btn-main:hover{background:var(--red2)}
.btn-ghost{border:1.5px solid currentColor}
.btn-wa{background:var(--wa);color:#0b2c17;box-shadow:0 14px 30px -10px rgba(37,211,102,.7)}
.arrow{transition:transform .2s}.btn:hover .arrow{transform:translateX(4px)}

/* nav */
header{position:fixed;inset:0 0 auto;z-index:50;transition:background .3s,box-shadow .3s}
header.sc{background:rgba(244,238,228,.88);backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--line)}
.nv{display:flex;align-items:center;height:76px;gap:28px}
.logo{display:flex;align-items:center;gap:10px;font-weight:700}
.logo img{width:52px;height:52px;object-fit:contain}
.logo span{font-family:Fraunces,serif;font-size:21px}
.nv nav{display:flex;gap:26px;margin-left:auto;font-size:14px;font-weight:600;color:#45434c}
.nv nav a{transition:color .2s}.nv nav a:hover{color:var(--red)}
.nv .btn{padding:12px 20px;font-size:14px}


.burger{display:none;margin-left:auto;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer;position:relative}
.burger i{position:absolute;left:13px;right:13px;height:2px;background:var(--ink);border-radius:2px;transition:transform .3s,opacity .2s,top .3s}
.burger i:nth-child(1){top:16px}.burger i:nth-child(2){top:22px}.burger i:nth-child(3){top:28px}
.menu-open .burger i:nth-child(1){top:22px;transform:rotate(45deg)}
.menu-open .burger i:nth-child(2){opacity:0}
.menu-open .burger i:nth-child(3){top:22px;transform:rotate(-45deg)}
.mnav{position:fixed;inset:76px 0 auto;z-index:49;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 20px 40px -20px rgba(21,20,26,.3);padding:10px 24px 24px;display:flex;flex-direction:column;transform:translateY(-12px);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}
.menu-open .mnav{opacity:1;transform:none;pointer-events:auto}
.mnav a{font-family:Fraunces,serif;font-size:24px;font-weight:600;padding:14px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}
.mnav a span{color:var(--red)}
.mnav .btn{margin-top:18px;font-family:Manrope,sans-serif;font-size:16px;border:0;justify-content:center}
.menu-open header{background:var(--cream)}

/* hero */
.hero{padding:130px 0 70px;position:relative;overflow:hidden}
.hero .g{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center}
.pill{display:inline-flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 14px 7px 8px;font-size:13px;font-weight:700}
.pill i{background:var(--red);color:#fff;font-style:normal;border-radius:999px;padding:3px 9px;font-size:11px;letter-spacing:.08em}
h1{font-family:Fraunces,serif;font-weight:600;font-size:76px;line-height:.98;letter-spacing:-.02em;margin:22px 0 22px}
h1 em{font-style:italic;color:var(--red);font-weight:500}
.lead{font-size:19px;color:#3d3b44;max-width:520px}
.ctas{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
.chan{display:flex;align-items:center;gap:16px;margin-top:34px;color:var(--mute);font-size:13px;font-weight:600}
.chan .ics{display:flex;gap:8px}
.chan .ics span{width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid var(--line);display:grid;place-items:center}

.stage{position:relative;height:580px}
.cov{position:absolute;border-radius:20px;overflow:hidden;box-shadow:0 30px 60px -20px rgba(21,20,26,.45);background:#ddd}
.cov .cap{position:absolute;inset:auto 0 0;padding:18px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.75))}
.cov .cap small{font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#f3d9a8}
.cov .cap b{display:block;font-family:Fraunces,serif;font-size:19px;line-height:1.15;font-weight:600;margin-top:4px}
.c1{width:300px;height:420px;left:22%;top:40px;z-index:3;animation:fl 7s ease-in-out infinite}
.c2{width:230px;height:320px;left:0;top:190px;transform:rotate(-7deg);z-index:2;animation:fl2 8s ease-in-out infinite}
.c3{width:230px;height:320px;right:0;top:0;transform:rotate(6deg);z-index:1;animation:fl2 9s ease-in-out infinite reverse}
@keyframes fl{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes fl2{0%,100%{translate:0 0}50%{translate:0 10px}}
.badge{position:absolute;z-index:5;background:#fff;border-radius:16px;box-shadow:0 20px 40px -14px rgba(21,20,26,.35);padding:14px 16px;display:flex;gap:12px;align-items:center}
.b1{right:2%;bottom:70px;border:2px dashed var(--red)}
.b1 .sq{width:46px;height:46px;border-radius:12px;background:var(--cream2);display:grid;place-items:center;font-family:Fraunces,serif;font-weight:700;color:var(--red);font-size:20px}
.b1 b{display:block;font-size:15px}.b1 small{color:var(--mute);font-size:12.5px}
.b2{left:6%;top:30px}
.b2 .dot{width:10px;height:10px;border-radius:50%;background:var(--wa);box-shadow:0 0 0 0 rgba(37,211,102,.6);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 12px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}
.b2 b{font-size:13.5px}

/* marquee */
.mq{background:var(--ink);color:var(--cream);overflow:hidden;padding:20px 0;border-block:1px solid #000}
.mq .tr{display:flex;gap:48px;width:max-content;animation:mq 30s linear infinite;font-family:Fraunces,serif;font-size:30px;font-style:italic}
.mq .tr span{display:flex;align-items:center;gap:48px}
.mq .tr span:after{content:"✦";font-style:normal;color:var(--gold);font-size:18px}
@keyframes mq{to{transform:translateX(-50%)}}

section.blk{padding:110px 0}
h2{font-family:Fraunces,serif;font-weight:600;font-size:54px;line-height:1.02;letter-spacing:-.015em}
h2 em{font-style:italic;color:var(--red);font-weight:500}
.sub{font-size:18px;color:#4a4751;max-width:560px;margin-top:18px}

/* why */
.why{display:grid;grid-template-columns:1fr 1.25fr;gap:70px;align-items:start}
.why .sticky{position:sticky;top:120px}
.rs{display:flex;flex-direction:column}
.r{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:30px 0;border-top:1px solid var(--line)}
.r:last-child{border-bottom:1px solid var(--line)}
.r .n{font-family:Fraunces,serif;font-size:40px;color:var(--gold);line-height:1}
.r h3{font-size:22px;font-weight:800;letter-spacing:-.01em}
.r p{color:#4a4751;margin-top:6px}

/* formats tabs */
.dark{background:var(--ink);color:var(--cream)}
.dark .sub{color:#b9b3bd}
.tabs{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;margin-top:50px;align-items:center}
.tl{display:flex;flex-direction:column;gap:10px}
.tb{text-align:left;background:transparent;border:1px solid #34323d;color:var(--cream);border-radius:16px;padding:20px 22px;cursor:pointer;transition:background .25s,border-color .25s;font:inherit}
.tb b{display:flex;align-items:center;justify-content:space-between;font-size:18px}
.tb p{color:#a9a3ad;font-size:14.5px;max-height:0;overflow:hidden;transition:max-height .35s ease,margin .35s}
.tb.on{background:#211f28;border-color:var(--red)}
.tb.on p{max-height:120px;margin-top:8px}
.tb .k{font-size:12px;color:var(--gold);font-weight:800;letter-spacing:.12em}
.pv{position:relative;height:520px;border-radius:24px;background:#1d1b23;border:1px solid #2e2c36;overflow:hidden}
.pane{position:absolute;inset:0;display:grid;place-items:center;opacity:0;transform:scale(.97);transition:opacity .4s,transform .4s;pointer-events:none;padding:30px}
.pane.on{opacity:1;transform:none;pointer-events:auto}
.art{width:100%;max-width:470px;background:#fff;color:var(--ink);border-radius:16px;overflow:hidden;box-shadow:0 30px 60px -20px #000}
.art .im{height:230px}
.art .bd{padding:20px 22px}
.art .sp{font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--red)}
.art h4{font-family:Fraunces,serif;font-size:24px;line-height:1.15;margin:6px 0 8px}
.art p{font-size:14px;color:#55525c}
.art .lk{display:flex;gap:8px;margin-top:14px}
.art .lk span{font-size:12.5px;font-weight:700;border-radius:999px;padding:7px 12px;background:var(--cream)}
.yt{width:100%;max-width:520px;border-radius:14px;overflow:hidden;position:relative;aspect-ratio:16/9;box-shadow:0 30px 60px -20px #000}
.yt .pl{position:absolute;inset:0;display:grid;place-items:center}
.yt .pl span{width:74px;height:52px;border-radius:14px;background:#f00;display:grid;place-items:center}
.yt .tt{position:absolute;left:0;right:0;bottom:0;padding:16px;background:linear-gradient(transparent,rgba(0,0,0,.85));color:#fff;font-weight:700}
.yt .tt small{display:block;font-weight:500;opacity:.8;font-size:12px}
.bn{height:100%;max-height:460px;border-radius:14px;overflow:hidden;box-shadow:0 30px 60px -20px #000}
.bn img{width:auto;height:100%}
.ph{width:250px;height:470px;border-radius:38px;background:#000;padding:10px;box-shadow:0 30px 60px -20px #000}
.ph .sc{position:relative;height:100%;border-radius:30px;overflow:hidden}
.ph .bar{position:absolute;top:12px;left:12px;right:12px;display:flex;gap:4px}
.ph .bar i{flex:1;height:3px;border-radius:3px;background:rgba(255,255,255,.4)}.ph .bar i:first-child{background:#fff}
.ph .who{position:absolute;top:24px;left:12px;display:flex;align-items:center;gap:8px;color:#fff;font-size:12px;font-weight:700}
.ph .who img{width:28px;height:28px;border-radius:50%;background:#fff;object-fit:contain}
.ph .sw{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);background:#fff;color:var(--ink);font-weight:800;font-size:13px;border-radius:999px;padding:10px 16px;white-space:nowrap}

/* audience */
.aud{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:50px}
.st{background:#fff;border-radius:var(--r);padding:28px;border:1px solid var(--line)}
.st b{font-family:Fraunces,serif;font-size:46px;font-weight:600;line-height:1;display:block}
.st span{color:var(--mute);font-size:14px;font-weight:600}
.st.fill b{color:var(--red)}
.note{margin-top:14px;font-size:13px;color:var(--mute)}

/* sections picker */
.secs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:50px}
.sec{position:relative;height:340px;border-radius:var(--r);overflow:hidden;color:#fff;display:block}
.sec img{transition:transform .8s ease}
.sec:hover img{transform:scale(1.07)}
.sec .ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 30%,rgba(15,14,20,.88));display:flex;flex-direction:column;justify-content:flex-end;padding:24px}
.sec h3{font-family:Fraunces,serif;font-size:28px;font-weight:600;line-height:1.05}
.sec p{font-size:14px;opacity:.85;margin-top:6px}
.sec .go{margin-top:12px;font-size:13px;font-weight:800;color:#fff;display:inline-flex;gap:6px;align-items:center;opacity:0;transform:translateY(6px);transition:.3s}
.sec:hover .go{opacity:1;transform:none}

/* plans */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:54px;align-items:stretch}
.pl{background:#fff;border-radius:22px;padding:32px;border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.pl:hover{transform:translateY(-6px);box-shadow:0 30px 50px -30px rgba(21,20,26,.4)}
.pl.hot{background:var(--ink);color:var(--cream);border-color:var(--ink);transform:translateY(-14px)}
.pl.hot:hover{transform:translateY(-20px)}
.pl .tg{align-self:flex-start;font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:5px 11px;background:var(--cream);color:var(--ink)}
.pl.hot .tg{background:var(--red);color:#fff}
.pl h3{font-family:Fraunces,serif;font-size:30px;font-weight:600;margin-top:18px;line-height:1.05}
.pl .fo{color:var(--mute);font-size:14.5px;margin-top:8px}
.pl.hot .fo{color:#b9b3bd}
.pr{display:flex;align-items:baseline;gap:6px;margin:24px 0 20px}
.pr small{font-size:13px;color:var(--mute)}.pl.hot .pr small{color:#b9b3bd}
.pr b{font-family:Fraunces,serif;font-size:46px;font-weight:600;letter-spacing:-.02em}
.pl ul{list-style:none;display:flex;flex-direction:column;gap:11px;font-size:14.5px;margin-bottom:28px}
.pl li{display:flex;gap:10px}
.pl li:before{content:"";flex:none;width:18px;height:18px;border-radius:50%;margin-top:2px;background:var(--cream2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E24D57' stroke-width='4'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/11px no-repeat}
.pl.hot li:before{background-color:#2c2a33}
.pl .btn{margin-top:auto;width:100%}
.scar{margin-top:40px;display:flex;align-items:center;gap:14px;justify-content:center;font-weight:700;font-size:15px}
.scar i{width:10px;height:10px;border-radius:50%;background:var(--red);animation:pulse2 2s infinite}
@keyframes pulse2{70%{box-shadow:0 0 0 10px rgba(226,77,87,0)}0%{box-shadow:0 0 0 0 rgba(226,77,87,.6)}}

/* brands + steps */
.brands{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:36px;align-items:start}
.brands img{height:auto}
@media (max-width:700px){.brands{grid-template-columns:1fr}}
.brands div{border-radius:var(--r);overflow:hidden;background:#fff;border:1px solid var(--line);filter:grayscale(.2);transition:filter .3s}
.brands div:hover{filter:none}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:50px;counter-reset:s}
.step{background:#fff;border-radius:var(--r);padding:30px;border:1px solid var(--line);position:relative}
.step:before{counter-increment:s;content:"0" counter(s);font-family:Fraunces,serif;font-size:56px;color:var(--cream2);position:absolute;right:22px;top:14px;line-height:1}
.step h3{font-size:20px;font-weight:800;margin-top:6px;position:relative}
.step p{color:#4a4751;margin-top:8px;position:relative}
.step .ic{width:48px;height:48px;border-radius:14px;background:var(--red);display:grid;place-items:center;position:relative}

/* faq */
.faq{max-width:820px;margin:44px auto 0}
.q{border-bottom:1px solid var(--line)}
.q button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;background:none;border:0;font:inherit;font-size:19px;font-weight:700;text-align:left;padding:24px 0;cursor:pointer;color:var(--ink)}
.q button span{width:34px;height:34px;flex:none;border-radius:50%;border:1.5px solid var(--ink);display:grid;place-items:center;transition:transform .3s,background .3s}
.q.on button span{transform:rotate(45deg);background:var(--ink);color:var(--cream)}
.q .a{max-height:0;overflow:hidden;transition:max-height .35s ease;color:#4a4751}
.q .a p{padding-bottom:22px}
.q.on .a{max-height:200px}

/* final */
.final{background:var(--red);color:#fff;border-radius:32px;padding:80px 60px;position:relative;overflow:hidden;text-align:center}
.final:before,.final:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.25)}
.final:before{width:520px;height:520px;left:-200px;top:-260px}
.final:after{width:420px;height:420px;right:-160px;bottom:-240px}
.final h2{font-size:64px;color:#fff;max-width:880px;margin:14px auto 0;position:relative}
.final h2 em{color:#FFE2C2}
.final p{font-size:19px;max-width:600px;margin:20px auto 0;opacity:.92;position:relative}
.final .ctas{justify-content:center;position:relative}
.final .btn-wa{font-size:17px;padding:19px 30px;background:#fff;color:var(--ink);box-shadow:0 20px 40px -14px rgba(0,0,0,.4)}
.final .btn-ghost{color:#fff}
.final small{display:block;margin-top:20px;opacity:.85;position:relative;font-size:14px}

footer{padding:60px 0 40px;font-size:14px;color:var(--mute)}
.ft{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:30px}
.soc{display:flex;gap:10px}
.ftinfo{display:flex;flex-direction:column;gap:4px;line-height:1.5}
.ftinfo a{text-decoration:underline;text-underline-offset:3px;transition:color .2s}.ftinfo a:hover{color:var(--red)}
.soc a{width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid var(--line);display:grid;place-items:center;transition:background .2s,transform .2s}
.soc a:hover{background:var(--ink);transform:translateY(-2px)}.soc a:hover svg{fill:#fff;stroke:#fff}


/* gastro showcase */
.gs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.gc{display:block;border-radius:var(--r);overflow:hidden;background:#fff;border:1px solid var(--line);transition:transform .25s,box-shadow .25s}
.gc:hover{transform:translateY(-5px);box-shadow:0 26px 44px -26px rgba(21,20,26,.45)}
.gc .im{aspect-ratio:1/1;overflow:hidden}
.gc .im img{transition:transform .7s ease}
.gc:hover .im img{transform:scale(1.06)}
.gc .bd{padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.gc h3{font-family:Fraunces,serif;font-size:26px;font-weight:600;line-height:1}
.gc small{display:block;color:var(--mute);font-size:13px;margin-top:6px}
.gc .ar{width:40px;height:40px;flex:none;border-radius:50%;background:var(--cream);display:grid;place-items:center;transition:background .2s,color .2s}
.gc:hover .ar{background:var(--red);color:#fff}
.gcta{margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:var(--ink);color:var(--cream);border-radius:var(--r);padding:24px 28px}
.gcta b{font-family:Fraunces,serif;font-size:24px;font-weight:600}
.gcta span{color:#b9b3bd;font-size:15px;display:block;margin-top:4px}
/* floating whatsapp */
.fab{position:fixed;right:24px;bottom:24px;z-index:70;display:flex;align-items:center;gap:12px}
.fab .tip{background:#fff;color:var(--ink);font-weight:700;font-size:14px;padding:11px 15px;border-radius:14px;box-shadow:0 14px 30px -12px rgba(0,0,0,.35);opacity:0;transform:translateX(8px);transition:.3s;pointer-events:none}
.fab:hover .tip,.fab.show .tip{opacity:1;transform:none}
.fab .ic{width:62px;height:62px;border-radius:50%;background:var(--wa);display:grid;place-items:center;box-shadow:0 14px 28px -8px rgba(37,211,102,.7);animation:ring 2.6s infinite;transition:transform .2s}
.fab:hover .ic{transform:scale(1.07)}
@keyframes ring{0%{box-shadow:0 0 0 0 rgba(37,211,102,.55),0 14px 28px -8px rgba(37,211,102,.7)}70%{box-shadow:0 0 0 16px rgba(37,211,102,0),0 14px 28px -8px rgba(37,211,102,.7)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0),0 14px 28px -8px rgba(37,211,102,.7)}}
.mbar{display:none}
.rv{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.rv.vis{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}

@media (max-width:960px){
 .nv nav,.nv .btn{display:none}.burger{display:block}
 h1{font-size:50px}h2{font-size:38px}.final h2{font-size:40px}
 .hero{padding-top:110px}.hero .g,.why,.tabs{grid-template-columns:1fr}
 .stage{height:460px;margin-top:10px}.c1{width:230px;height:330px;left:50%;margin-left:-115px}.c2,.c3{width:170px;height:240px}.c2{top:180px}
 .b1{right:0;bottom:10px}.b2{left:0;top:0}
 .why .sticky{position:static}
 .aud{grid-template-columns:1fr 1fr}.secs,.plans,.steps,.brands{grid-template-columns:1fr}
 .pl.hot{transform:none}.pv{height:480px}
 section.blk{padding:80px 0}.final{padding:60px 24px;border-radius:24px}
 .st{padding:20px}.st b{font-size:32px}.aud>*{min-width:0}.stage{max-width:100%;overflow:visible}.c3{right:0}
 .gs{grid-template-columns:1fr}.fab{bottom:86px;right:16px}.fab .tip{display:none}
 .mbar{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:60;gap:10px}
 .mbar a{flex:1;padding:15px}
 body{padding-bottom:80px}
}

/* ===== Publicidad Gridloop ===== */
.gl-wrap{padding:90px 0 20px}
.gl-ban{position:relative;background:#01050E;color:#fff;border-radius:28px;overflow:hidden;display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:center;padding:56px 56px 56px 60px;box-shadow:0 40px 80px -36px rgba(1,5,14,.75)}
.gl-ban:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,205,245,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(0,205,245,.09) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse 70% 90% at 75% 50%,#000 0%,transparent 75%);mask-image:radial-gradient(ellipse 70% 90% at 75% 50%,#000 0%,transparent 75%);pointer-events:none}
.gl-ad{position:absolute;top:18px;right:22px;z-index:3;font-size:10.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#8d94a6;border:1px solid #2a3042;border-radius:999px;padding:5px 11px}
.gl-l,.gl-r{position:relative;z-index:2}
.gl-brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.14em;font-size:13px;text-transform:uppercase;color:#00CDF5}
.gl-brand svg{width:34px;height:34px}
.gl-ban h3{font-family:Fraunces,serif;font-weight:600;font-size:clamp(34px,4.2vw,56px);line-height:1.02;letter-spacing:-.02em;margin:22px 0 20px}
.gl-ban h3 em{font-style:italic;font-weight:500;color:#00CDF5}
.gl-ban p.gl-p{font-size:17.5px;color:rgba(255,255,255,.72);max-width:520px}
.gl-chips{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0}
.gl-chips span{font-size:13.5px;font-weight:700;border:1px solid #2a3042;border-radius:999px;padding:9px 15px;color:#e9ecf4;background:rgba(255,255,255,.03)}
.gl-chips b{color:#00CDF5}
.gl-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.gl-b1{background:#00CDF5;color:#01050E;box-shadow:0 14px 34px -12px rgba(0,205,245,.7)}
.gl-b1:hover{background:#3ddcff}
.gl-b2{color:#fff;border:1.5px solid #3a4157}
.gl-b2:hover{border-color:#00CDF5;color:#00CDF5}
.gl-win{position:relative;width:100%;max-width:440px;margin:0 auto;background:#0C0F1A;border:1px solid #232838;border-radius:18px;box-shadow:0 30px 60px -24px #000,0 0 0 1px rgba(0,205,245,.12),0 0 80px -20px rgba(0,205,245,.35);transform:rotate(2.5deg);transition:transform .5s ease}
.gl-ban:hover .gl-win{transform:rotate(0)}
.gl-bar{display:flex;align-items:center;gap:7px;padding:12px 14px;border-bottom:1px solid #1E212C}
.gl-bar i{width:9px;height:9px;border-radius:50%;background:#2a3042}
.gl-url{margin-left:10px;flex:1;background:#151927;border-radius:999px;padding:6px 12px;font-size:12px;color:#aab1c3;display:flex;align-items:center;gap:7px}
.gl-url svg{flex:none}
.gl-pg{padding:18px 18px 22px;height:340px;overflow:hidden;position:relative}
.gl-nav{display:flex;align-items:center;gap:10px;margin-bottom:22px;transform-origin:left;animation:ge1 12s infinite}
.gl-nav b{width:22px;height:22px;border-radius:7px;background:#00CDF5}
.gl-nav u{flex:1}
.gl-nav span{display:block;height:6px;width:34px;border-radius:4px;background:#232838;margin-left:auto}
.gl-nav span+span{margin-left:0}
.gl-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;align-items:center}
.gl-hero h4{font-family:Fraunces,serif;font-weight:600;font-size:27px;line-height:1.02;letter-spacing:-.01em;color:#fff;animation:ge2 12s infinite}
.gl-hero h4 em{font-style:italic;font-weight:500;color:#00CDF5}
.gl-ln{height:7px;border-radius:4px;background:#232838;margin-top:10px;animation:ge2 12s infinite}
.gl-ln.s{width:70%}
.gl-wa{display:inline-flex;align-items:center;gap:7px;margin-top:16px;background:#25D366;color:#06301a;font-size:12px;font-weight:800;border-radius:999px;padding:9px 13px;animation:ge4 12s infinite}
.gl-ph2{aspect-ratio:1/1.05;border-radius:14px;background:linear-gradient(135deg,#00CDF5 0 50%,#5B3BC0 50% 100%);position:relative;overflow:hidden;animation:ge3 12s infinite}
.gl-ph2:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(1,5,14,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(1,5,14,.25) 1px,transparent 1px);background-size:18px 18px}
.gl-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}
.gl-row span{height:58px;border-radius:10px;background:#151927;border:1px solid #1E212C;animation:ge3 12s infinite}
.gl-row span:nth-child(2){animation-delay:.12s}.gl-row span:nth-child(3){animation-delay:.24s}
.gl-g{position:absolute;z-index:4;left:-34px;bottom:-28px;width:250px;background:#fff;color:#1b1d27;border-radius:14px;padding:13px 15px;box-shadow:0 24px 50px -16px #000;animation:ge5 12s infinite}
.gl-g small{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#6E6A73}
.gl-g u{display:block;text-decoration:none;font-size:11.5px;color:#4a4751;margin-top:5px}
.gl-g b{display:block;font-size:15px;color:#1a5fd0;font-weight:700;line-height:1.25;margin-top:2px}
.gl-g p{font-size:12px;color:#55525c;margin-top:3px;line-height:1.35}
@keyframes ge1{0%,3%{opacity:0;transform:scaleX(.3)}10%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
@keyframes ge2{0%,12%{opacity:0;transform:translateY(10px)}20%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
@keyframes ge3{0%,24%{opacity:0;transform:scale(.92)}32%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
@keyframes ge4{0%,38%{opacity:0;transform:scale(.8)}46%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
@keyframes ge5{0%,56%{opacity:0;transform:translateY(16px)}64%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
.gl-ring{position:absolute;z-index:1;right:-120px;bottom:-140px;width:420px;height:420px;opacity:.5;pointer-events:none}
.gl-ring path{stroke-dasharray:14 12;animation:glr 40s linear infinite}
@keyframes glr{to{stroke-dashoffset:-520}}
@media (max-width:900px){.gl-ban{grid-template-columns:1fr;padding:64px 26px 40px}.gl-win{transform:none}.gl-g{left:-6px}.gl-wrap{padding:60px 0 10px}}
@media (prefers-reduced-motion:reduce){.gl-nav,.gl-hero h4,.gl-ln,.gl-wa,.gl-ph2,.gl-row span,.gl-g{animation:none;opacity:1;transform:none}.gl-ring path{animation:none}.gl-win{transform:none}}
/* gl-light */
.gl-ban{background:#fff;color:#15141A;border:1px solid rgba(21,20,26,.08);box-shadow:0 40px 80px -44px rgba(21,20,26,.35)}
.gl-ban:before{background-image:linear-gradient(rgba(91,59,192,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(91,59,192,.07) 1px,transparent 1px)}
.gl-ad{color:#8a8791;border-color:rgba(21,20,26,.14)}
.gl-brand{color:#15141A}
.gl-brand svg{stroke:#00A9CC}
.gl-ban h3 em{color:#5B3BC0}
.gl-ban p.gl-p{color:#4a4751}
.gl-chips span{background:#F4EEE4;border-color:rgba(21,20,26,.08);color:#15141A}
.gl-chips b{color:#5B3BC0}
.gl-b1{background:#00CDF5;color:#01050E;box-shadow:0 14px 30px -12px rgba(0,169,204,.7)}
.gl-b1:hover{background:#2bd9fb}
.gl-b2{color:#15141A;border-color:rgba(21,20,26,.25)}
.gl-b2:hover{border-color:#5B3BC0;color:#5B3BC0}
.gl-win{box-shadow:0 34px 60px -26px rgba(1,5,14,.55),0 0 0 6px rgba(0,205,245,.12)}
.gl-g{box-shadow:0 24px 44px -18px rgba(21,20,26,.45);border:1px solid rgba(21,20,26,.06)}
.gl-ring path{stroke:#5B3BC0}
.gl-ring{opacity:.16}

/* ===== multipágina ===== */
.nv nav{gap:18px;font-size:13.5px;white-space:nowrap}
.nv nav a.on{color:var(--red)}
@media (max-width:1180px){.nv nav,.nv .btn{display:none}.burger{display:block}}
.pg-hero{padding:140px 0 60px}
.pg-hero .g{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.pg-hero.solo .g{grid-template-columns:1fr}
.pg-hero h1{font-size:64px;margin:16px 0 18px}
.pg-im{border-radius:24px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 30px 60px -28px rgba(21,20,26,.45);background:var(--cream2)}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.chips span{font-size:13.5px;font-weight:700;border:1px solid var(--line);border-radius:999px;padding:9px 15px;background:#fff}
.chips b{color:var(--red)}
.sh{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:34px;flex-wrap:wrap}
.sh h2{font-size:44px}
.nts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.nt{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.nt:hover{transform:translateY(-5px);box-shadow:0 30px 50px -30px rgba(21,20,26,.4)}
.nt-im{aspect-ratio:16/10;background:var(--cream2);overflow:hidden}
.nt-im img{transition:transform .8s ease}.nt:hover .nt-im img{transform:scale(1.05)}
.nt-bd{padding:26px;display:flex;flex-direction:column;gap:8px;flex:1}
.nt .tg{font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.nt h3{font-family:Fraunces,serif;font-size:26px;line-height:1.1;font-weight:600}
.nt .au{font-size:13px;color:var(--mute);font-weight:700}
.nt p{color:#4a4751;font-size:15.5px}
.nt ul{margin:4px 0 0 18px;color:#4a4751;font-size:15.5px}
.nt .lk{margin-top:auto;padding-top:12px;font-weight:800;font-size:14px;display:inline-flex;gap:6px;transition:color .2s}
.nt .lk:hover{color:var(--red)}
.nt .lk+.lk{padding-top:4px;margin-top:0}
.nt.big{grid-column:1/-1;flex-direction:row}
.nt.big .nt-im{flex:1.1;aspect-ratio:auto;min-height:340px}
.nt.big .nt-bd{flex:1;padding:44px;justify-content:center}
.nt.big h3{font-size:38px}
.nt.txt{border-top:4px solid var(--red)}
.nt.wide{grid-column:span 2}
.nt.hide-im .nt-im{display:none}
.adhead{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.adtag{font-size:10.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--mute);border:1px solid var(--line);border-radius:999px;padding:5px 11px;background:#fff}
.adc{border-radius:22px;overflow:hidden;background:#fff;border:1px solid var(--line);margin-top:16px}
.adc img{height:auto}
.adc .cap{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:20px 26px}
.adc .cap b{font-family:Fraunces,serif;font-size:22px;font-weight:600;display:block}
.adc .cap span{color:var(--mute);font-size:14px}
.adslot{border:2px dashed var(--red);border-radius:22px;padding:40px;display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;background:rgba(226,77,87,.04);margin-top:16px}
.adslot h3{font-family:Fraunces,serif;font-size:32px;line-height:1.05;font-weight:600}
.adslot p{color:#4a4751;margin-top:8px;max-width:560px}
.others{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.others a{border:1px solid var(--line);background:#fff;border-radius:999px;padding:11px 18px;font-weight:700;font-size:14px;transition:background .2s,color .2s,transform .2s}
.others a:hover{background:var(--ink);color:var(--cream);transform:translateY(-2px)}
.ct{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start}
.form{background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px}
.form label{display:block;font-weight:700;font-size:14px;margin:0 0 6px}
.form input,.form select,.form textarea{width:100%;font:inherit;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--cream);margin-bottom:18px;transition:border-color .2s,box-shadow .2s}
.form input:focus,.form select:focus,.form textarea:focus{outline:0;border-color:var(--red);box-shadow:0 0 0 4px rgba(226,77,87,.15)}
.form textarea{min-height:130px;resize:vertical}
.form .two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form .btn{width:100%}
.form small{display:block;margin-top:12px;color:var(--mute);font-size:13px}
.info{background:var(--ink);color:var(--cream);border-radius:22px;padding:38px}
.info h3{font-family:Fraunces,serif;font-size:30px;font-weight:600;margin-bottom:18px}
.info .row{padding:16px 0;border-top:1px solid #34323d}
.info .row small{display:block;font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.info .row a,.info .row span{font-size:17px;font-weight:600}
.info .row a:hover{color:var(--red)}
@media (max-width:960px){.pg-hero .g,.ct{grid-template-columns:1fr}.pg-hero h1{font-size:44px}.pg-hero{padding-top:110px}.nts{grid-template-columns:1fr}.nt.big{flex-direction:column}.nt.big .nt-im{min-height:240px}.nt.big .nt-bd{padding:28px}.nt.wide{grid-column:auto}.adslot{grid-template-columns:1fr;padding:28px}.sh h2{font-size:34px}.form .two{grid-template-columns:1fr;gap:0}}
.nt.fullw{grid-column:1/-1}
.nt h4{font-family:Fraunces,serif;font-size:21px;font-weight:600;margin-top:14px}
.nt .hs{color:var(--red);font-weight:700;font-size:13px}
.nt.big .nt-bd p{margin-bottom:6px}
.nt.big{align-items:center}
.nt.big .nt-im{flex:0 0 340px;min-height:0;aspect-ratio:1/1;max-height:340px}
.nt.big .nt-im img{object-fit:cover;object-position:top}
.nt.big .nt-bd{padding:36px}
.nt.big h3{font-size:32px}
.nt-im{max-height:240px}
.adc{max-width:640px;margin-left:auto;margin-right:auto}
.bi-head{padding:150px 0 10px}.bi-head h1{font-family:Fraunces,serif;font-size:clamp(38px,5vw,60px);font-weight:600;line-height:1}.bi-head em{color:var(--red);font-style:italic}
.bi-wrap{display:flex;flex-direction:column;gap:56px;max-width:1040px}
.bi{display:grid;grid-template-columns:260px 1fr;gap:40px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:22px;padding:36px}
.bi.rev{grid-template-columns:1fr 260px}.bi.rev aside{order:2}
.bi:not(:has(aside>*)){grid-template-columns:1fr}.bi aside:empty{display:none}
.bi aside{position:sticky;top:100px}.bi-im{border-radius:16px;overflow:hidden}.bi-im img{width:100%;height:auto;display:block}
.bi-cr{margin-top:14px;display:flex;flex-direction:column;gap:3px;font-size:14px}.bi-cr b{font-family:Fraunces,serif;font-size:19px}.bi-cr span{color:var(--mute)}.bi-cr a{color:var(--red);font-weight:700}
.bi h2{font-family:Fraunces,serif;font-size:clamp(26px,3vw,36px);line-height:1.12;font-weight:600;margin-bottom:10px}
.bi-sub{font-weight:700;color:var(--red);margin-bottom:14px!important}
.bi-tx p{color:#4a4751;font-size:16px;line-height:1.7;margin-bottom:14px}.bi-tx ol{margin:0 0 14px 20px;color:#4a4751;line-height:1.7}.bi-tx h4{font-family:Fraunces,serif;font-size:21px;margin:18px 0 8px}
.bi-tx .hs{color:var(--red);font-weight:700;font-size:13px}.bi-more a{color:var(--red);font-weight:700}
.bi-spec h3{font-family:Fraunces,serif;font-size:30px;margin-bottom:18px}
.specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.spc{border-radius:22px;overflow:hidden;background:#fff;border:1px solid var(--line);max-width:300px;margin:0 auto}
.spc img{width:100%;height:auto;display:block}
@media (max-width:960px){.nt.big .nt-im{flex:none;width:100%;aspect-ratio:16/10;max-height:240px}.nt.fullw .nt-bd{padding:28px}}
@media (max-width:860px){.bi,.bi.rev{grid-template-columns:1fr;padding:24px;gap:22px}.bi.rev aside{order:0}.bi aside{position:static;max-width:260px}.spc{max-width:340px}}
.nv .btn{white-space:nowrap}.logo span{white-space:nowrap}
@media (max-width:1500px){.nv{gap:20px}.nv nav{gap:18px;font-size:13.5px}.nv .btn{display:none}.logo span{font-size:19px}}
@media (max-width:1240px){.nv nav{gap:14px;font-size:13px}}
@media (max-width:1300px){.nv nav{display:none}.burger{display:block}}

.wimg{border-radius:22px;overflow:hidden;background:var(--cream2);max-height:440px}
.wimg img{width:100%;height:440px;object-fit:cover;display:block}
.bi-ad{display:block!important;grid-template-columns:1fr!important}.bi-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
.bi-tag{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:6px}
.bi-tx .btn{margin-top:6px}.bi-tx .lk{font-weight:800;color:var(--red)}
.bi .nts,.bi-wrap .nts{grid-template-columns:repeat(3,1fr)}
@media (max-width:860px){.wimg img{height:240px}.bi-wrap .nts{grid-template-columns:1fr}}

/* velocidad: lo que esta arriba de todo se ve de entrada (mejora LCP) */
.hero .rv,.pg-hero .rv{opacity:1;transform:none;transition:none}
/* velocidad: en celular no se espera al script para mostrar el contenido */
@media(max-width:760px){.rv{opacity:1;transform:none;transition:none}}
