/* Portada (v1.3.0) · AppService Digital. Fuentes propias: Plus Jakarta Sans e Instrument Serif (licencia OFL). */
@font-face{font-family:"Plus Jakarta Sans";src:url("/static/fonts/plus-jakarta-sans-var.woff") format("woff");font-weight:400 800;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url("/static/fonts/instrument-serif-italic.woff") format("woff");font-weight:400;font-style:italic;font-display:swap}
:root{
  --bg:#0B0B0C; --strip:#0E0E10; --card:#151517; --line:rgba(255,255,255,.1);
  --text:#FFFFFF; --soft:#B8B8BC; --orange:#F5A524; --orange-d:#E08A12; --a-hi:#FFC56B;--a:#F5A524;--a-d:#E08A12;--on-a:#1A1204;--a-rgb:245,165,36;--a-rgb2:232,140,20; --wa:#25D366;
  --font:"Plus Jakarta Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  color-scheme:dark;
}
@media (prefers-color-scheme: light){:root:not([data-theme="dark"]){--bg:#F6F5F2;--strip:#FFFFFF;--card:#FFFFFF;--line:rgba(0,0,0,.09);--text:#141414;--soft:#5A5A5E;--orange:#C2410C;--a-hi:#FDBA74;--a:#FB923C;--a-d:#F97316;--on-a:#1A0B02;--a-rgb:251,146,60;--a-rgb2:249,115,22;color-scheme:light}}
:root[data-theme="light"]{--bg:#F6F5F2;--strip:#FFFFFF;--card:#FFFFFF;--line:rgba(0,0,0,.09);--text:#141414;--soft:#5A5A5E;--orange:#C2410C;--a-hi:#FDBA74;--a:#FB923C;--a-d:#F97316;--on-a:#1A0B02;--a-rgb:251,146,60;--a-rgb2:249,115,22;color-scheme:light}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none}
svg.i{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.wrap{max-width:1240px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
:focus-visible{outline:2px solid var(--a);outline-offset:3px;border-radius:8px}

/* ---------- PORTADA (siempre oscura: va sobre la foto) ---------- */
.hero{position:relative;min-height:min(100vh,900px);display:flex;flex-direction:column;color:#fff;isolation:isolate;overflow:hidden;padding-top:84px}
.photo{position:absolute;inset:0;z-index:-2;background-color:#2b2219;background-size:cover;background-position:var(--pos,center);
  background-image:var(--img,
    radial-gradient(ellipse 22% 30% at 30% 34%,#E2B58C 0%,rgba(226,181,140,0) 70%),
    radial-gradient(ellipse 30% 46% at 28% 60%,#B98A62 0%,rgba(185,138,98,0) 70%),
    radial-gradient(ellipse 18% 40% at 6% 30%,#4F6B3B 0%,rgba(79,107,59,0) 72%),
    radial-gradient(ellipse 30% 55% at 82% 45%,#8A9468 0%,rgba(138,148,104,0) 72%),
    radial-gradient(ellipse 22% 22% at 18% 8%,#F4D7A1 0%,rgba(244,215,161,0) 70%),
    radial-gradient(ellipse 50% 30% at 50% 100%,#3E3128 0%,rgba(62,49,40,0) 70%),
    linear-gradient(115deg,#3A2B20,#6E5642 42%,#55604A 75%,#3B4433));
  filter:blur(var(--blur,0px))}
.photo::after{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(8,8,9,var(--dark,.82)) 0%,rgba(8,8,9,calc(var(--dark,.82) - .22)) 48%,rgba(8,8,9,calc(var(--dark,.82) - .42)) 100%),
  linear-gradient(0deg,rgba(8,8,9,.85) 0%,transparent 30%),linear-gradient(180deg,rgba(8,8,9,.6) 0%,transparent 22%)}

.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.25rem;letter-spacing:-.02em}
.brand .mk{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--a),#EA580C);color:var(--on-a)}
.brand .mk svg.i{width:19px;height:19px;stroke-width:2.2}
.brand small{display:block;font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#cfcfcf;margin-top:-2px}

/* contenido */
.main{flex:1;display:grid;grid-template-columns:1.12fr .88fr;gap:56px;align-items:center;padding-block:36px 72px}
.badge{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;font-size:.8rem;font-weight:700;color:var(--a-hi);background:rgba(var(--a-rgb2),.14);border:1px solid rgba(var(--a-rgb2),.4)}
.badge svg.i{width:15px;height:15px}
h1{font-size:clamp(2.3rem,5vw,4rem);line-height:1.04;letter-spacing:-.035em;font-weight:800;margin:20px 0 0;text-wrap:balance}
.sub{font-size:clamp(1.3rem,2.5vw,2.05rem);font-weight:500;letter-spacing:-.02em;margin:12px 0 0;line-height:1.2;color:#f1f1f1}
.sub b{color:var(--a-hi);font-weight:700}
.lead{font-size:1.04rem;color:#D4D4D8;max-width:54ch;margin:22px 0 0}
.acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:54px;padding:0 28px;border-radius:999px;font-weight:700;font-size:.98rem;transition:transform .25s,box-shadow .25s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn-o{background:linear-gradient(180deg,var(--a-hi),var(--a));color:var(--on-a);box-shadow:0 0 0 4px rgba(var(--a-rgb),.18)}
.btn-o:hover{box-shadow:0 0 0 6px rgba(var(--a-rgb),.22),0 14px 30px -12px rgba(var(--a-rgb),.8)}
.btn-o svg.i{transition:transform .25s}
.btn-o:hover svg.i{transform:translateX(4px)}
.btn-w{background:var(--wa);color:#05290F}
.btn-w:hover{box-shadow:0 14px 30px -12px rgba(37,211,102,.8)}
.fine{display:flex;gap:10px;align-items:flex-start;font-size:.84rem;color:#C9C9CE;margin:18px 0 0;max-width:54ch}
.fine svg.i{width:17px;height:17px;color:#4ADE80;margin-top:2px}
.fine b{color:#fff}

/* asistente */
.agent{width:100%;max-width:420px;margin-left:auto;border-radius:26px;background:rgba(14,14,15,.9);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 40px 90px -30px rgba(0,0,0,.9);overflow:hidden}
.ah{position:relative;display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.av{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,var(--a-hi),var(--a-d));color:var(--on-a);box-shadow:0 0 0 4px rgba(var(--a-rgb2),.16)}
.av svg.i{width:21px;height:21px;stroke-width:2}
.ah b{display:block;font-size:.96rem}
.ah small{display:inline-flex;align-items:center;gap:6px;font-size:.76rem;color:var(--a-hi);font-weight:600}
.ah small::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--a);animation:blink 2s infinite}
@keyframes blink{50%{opacity:.35}}
.snd{margin-left:auto;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);background:transparent;color:#cfcfcf;cursor:pointer;transition:all .2s;flex-shrink:0}
.snd:hover{border-color:#fff;color:#fff}
.snd svg.i{width:17px;height:17px}
.snd.on{color:var(--on-a);background:var(--a);border-color:var(--a)}
.snd-tip{position:absolute;right:16px;top:64px;font-size:.72rem;background:#222;color:#eee;padding:6px 10px;border-radius:8px;opacity:0;transition:opacity .3s;pointer-events:none;white-space:nowrap}
.snd-tip.show{opacity:1}
.demo{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#bdbdbd;border:1px dashed rgba(255,255,255,.28);border-radius:99px;padding:4px 9px}
.body{height:372px;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;gap:12px;overflow:hidden}
.m{max-width:86%;padding:11px 15px;border-radius:16px;font-size:.86rem;line-height:1.45;animation:pop .4s cubic-bezier(.2,.9,.3,1.25) both}
.m.u{align-self:flex-end;background:#26262A;border:1px solid rgba(255,255,255,.1);border-bottom-right-radius:5px}
.m.a{align-self:flex-start;background:#1C1714;border:1px solid rgba(var(--a-rgb),.22);border-bottom-left-radius:5px}
.m.load{display:inline-flex;flex-direction:column;gap:6px;color:#d4d4d4}
.m.load svg.i{width:17px;height:17px;color:var(--a);animation:spin 1.1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.m.t{display:flex;gap:4px;padding:13px 15px}
.m.t i{width:6px;height:6px;border-radius:50%;background:#9a9a9a;animation:dot 1s infinite}
.m.t i:nth-child(2){animation-delay:.15s}.m.t i:nth-child(3){animation-delay:.3s}
@keyframes pop{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}
@keyframes dot{0%,80%,100%{opacity:.3}40%{opacity:1}}
.sum{display:grid;gap:8px;margin-top:8px}
.sum li{list-style:none;display:flex;gap:8px;align-items:center;font-size:.82rem}
.sum li svg.i{width:15px;height:15px;color:#4ADE80}
.sum ul{margin:0;padding:0;display:grid;gap:5px}
.plan{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;padding:10px;border-radius:13px;background:#0E0E0F;border:1px solid rgba(255,255,255,.08);margin-top:4px}
.plan .pi{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--a-hi),var(--a-d));color:var(--on-a)}
.plan .pi svg.i{width:19px;height:19px}
.plan b{display:block;font-size:.84rem}
.plan small{font-size:.74rem;color:#bdbdbd}
.plan em{font-style:normal;font-size:.76rem;font-weight:700;background:var(--a);color:var(--on-a);padding:8px 12px;border-radius:9px}
.af{display:flex;gap:10px;padding:14px 16px;border-top:1px solid rgba(255,255,255,.08)}
.af span{flex:1;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:12px 18px;font-size:.84rem;color:#8d8d92}
.af i{width:46px;height:46px;border-radius:50%;background:linear-gradient(180deg,var(--a-hi),var(--a-d));color:var(--on-a);display:grid;place-items:center;flex-shrink:0}
.af i svg.i{width:19px;height:19px}

/* franja de datos */
.strip{background:var(--strip);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{display:grid;justify-items:center;text-align:center;gap:8px;padding:30px 18px;border-right:1px solid var(--line);position:relative}
.stat:last-child{border-right:0}
.stat .ico{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;color:var(--orange);background:color-mix(in srgb,var(--a-d) 13%,transparent);border:1px solid color-mix(in srgb,var(--a-d) 30%,transparent);transition:transform .35s}
.stat:hover .ico{transform:translateY(-3px) rotate(-4deg)}
.stat .ico svg.i{width:22px;height:22px}
.stat b{font-size:clamp(1.3rem,2.2vw,1.75rem);font-weight:800;letter-spacing:-.02em;color:var(--orange)}
.stat span{font-size:.86rem;color:var(--soft);max-width:26ch}

/* botón flotante */
.float{position:fixed;right:max(20px,env(safe-area-inset-right,0px));bottom:max(20px,env(safe-area-inset-bottom,0px));z-index:50;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#141416;color:var(--a-hi);border:1px solid rgba(var(--a-rgb),.4);box-shadow:0 18px 40px -14px rgba(0,0,0,.8);cursor:pointer;transition:transform .25s}
.float:hover{transform:scale(1.06)}
.float svg.i{width:25px;height:25px}
.float::after{content:"";position:absolute;top:8px;right:8px;width:11px;height:11px;border-radius:50%;background:var(--a);border:2px solid #141416}

/* aparición */
.rise>*{animation:up .8s cubic-bezier(.2,.75,.2,1) both;animation-delay:calc(var(--i,0)*90ms)}
@keyframes up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

@media (max-width:960px){.main{grid-template-columns:1fr}.agent{margin:0;max-width:none}.stats{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media (max-width:560px){.stat b{font-size:1.08rem}.stat .ico{width:40px;height:40px}.stat span{font-size:.8rem}.btn{width:100%;justify-content:center}.body{height:330px}.stat{padding:24px 12px}.brand small{display:none}}

/* ---------- CÓMO TRABAJAMOS ---------- */
.how{padding-block:96px 104px;background:var(--bg)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font:600 .74rem ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--a-d)}
.how h2{font-size:clamp(2.1rem,5vw,3.6rem);font-weight:800;letter-spacing:-.045em;line-height:1.02;margin:18px 0 48px;text-wrap:balance}
.how h2 em{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.01em;color:var(--orange)}
.steps{display:grid;grid-template-columns:repeat(var(--n,4),1fr);border-top:1px solid var(--line)}
.st{padding:30px 26px 6px;border-right:1px solid var(--line);display:grid;gap:12px;align-content:start}
.st:first-child{padding-left:0}
.st:last-child{border-right:0}
.st .n{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:3.6rem;line-height:1;color:var(--orange);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.st:hover .n{transform:translateX(6px)}
.st h3{font-size:1.2rem;font-weight:700;letter-spacing:-.02em;margin:10px 0 0}
.st p{margin:0;color:var(--soft);font-size:.96rem;max-width:30ch}
@media (max-width:960px){.steps{grid-template-columns:1fr 1fr}.st:nth-child(2){border-right:0}.st:nth-child(3){padding-left:0}.st:nth-child(-n+2){border-bottom:1px solid var(--line);padding-bottom:28px}}
@media (max-width:560px){.how{padding-block:72px}.steps{grid-template-columns:1fr}.st{border-right:0;padding:24px 0;border-bottom:1px solid var(--line)}.st:last-child{border-bottom:0}.st .n{font-size:3rem}}

/* ---------- PLANES Y PRECIOS ---------- */
@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}
:root{--pr-bg:#0E0E10;--pc:#141416;--b1:#F5A524;--b2:#FFD58A;--b3:#B8620F;--ck:#F5A524;--ck3:#F5A524;--tag:#FFC56B;--tagbg:rgba(245,165,36,.13);--tag3:#FFC56B;--tagbg3:rgba(245,165,36,.13);--hi-a:#FFC56B;--hi-b:#E08A12;--hi-t:#1A1204;--lab:#F5A524;--glow:rgba(245,165,36,.35);--cta-a:#FFC56B;--cta-b:#F5A524}
@media (prefers-color-scheme: light){:root:not([data-theme="dark"]){--pr-bg:#F3F1EC;--pc:#FFFFFF;--b1:#F97316;--b2:#FDBA74;--b3:#6D28D9;--ck:#EA580C;--ck3:#6D28D9;--tag:#C2410C;--tagbg:#FFEDD5;--tag3:#5B21B6;--tagbg3:#EDE9FE;--hi-a:#F97316;--hi-b:#6D28D9;--hi-t:#FFFFFF;--lab:#C2410C;--glow:rgba(109,40,217,.22);--cta-a:#FDBA74;--cta-b:#FB923C}}
:root[data-theme="light"]{--pr-bg:#F3F1EC;--pc:#FFFFFF;--b1:#F97316;--b2:#FDBA74;--b3:#6D28D9;--ck:#EA580C;--ck3:#6D28D9;--tag:#C2410C;--tagbg:#FFEDD5;--tag3:#5B21B6;--tagbg3:#EDE9FE;--hi-a:#F97316;--hi-b:#6D28D9;--hi-t:#FFFFFF;--lab:#C2410C;--glow:rgba(109,40,217,.22);--cta-a:#FDBA74;--cta-b:#FB923C}
.prices{padding-block:96px 104px;background:var(--pr-bg);border-top:1px solid var(--line)}
.pr-head{text-align:center;max-width:820px;margin:0 auto 52px}
.pr-head .k{font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--lab)}
.pr-head h2{font-size:clamp(1.9rem,4.3vw,3.2rem);font-weight:800;letter-spacing:-.035em;line-height:1.12;margin:14px 0 0;text-wrap:balance}
.pr-head p{color:var(--soft);margin:18px 0 0;font-size:1.02rem}
.pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;max-width:1120px;margin:0 auto}
.pcard{position:relative;display:flex;flex-direction:column;padding:28px 26px 26px;border-radius:26px;border:1.5px solid transparent;
  background:linear-gradient(var(--pc),var(--pc)) padding-box,conic-gradient(from var(--ang),var(--b1),var(--b2),var(--b3),var(--b1)) border-box;
  animation:rot 8s linear infinite;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s;min-width:0}
.pcard:nth-child(3){animation-direction:reverse;animation-duration:10s}
.pcard:hover{transform:translateY(-6px)}
.pcard.hi{border-width:2.5px;animation-duration:5s;box-shadow:0 30px 70px -30px var(--glow);transform:translateY(-10px)}
.pcard.hi:hover{transform:translateY(-14px)}
@keyframes rot{to{--ang:360deg}}
.ptag{align-self:flex-start;display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--tag);background:var(--tagbg)}
.ptag svg.i{width:13px;height:13px;stroke-width:2.2}
.pcard.hi .ptag{background:linear-gradient(90deg,var(--hi-a),var(--hi-b));color:var(--hi-t)}
.pcard.t3 .ptag{color:var(--tag3);background:var(--tagbg3)}
.plab{margin-top:22px;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--soft)}
.pcard.hi .plab{color:var(--lab)}
.pcard h3{font-size:1.3rem;font-weight:700;letter-spacing:-.02em;margin:6px 0 0}
.amt{font-size:2.3rem;font-weight:800;letter-spacing:-.03em;margin:18px 0 0;line-height:1}
.pds{font-size:.82rem;color:var(--soft);margin:10px 0 0}
.pul{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:11px;font-size:.9rem}
.pul li{display:grid;grid-template-columns:18px 1fr;gap:10px}
.pul li svg.i{width:16px;height:16px;color:var(--ck);margin-top:3px;stroke-width:2.4}
.pcard.t3 .pul li svg.i{color:var(--ck3)}
.pul b{font-weight:700}
.pfoot{margin-top:auto;padding-top:30px;text-align:center}
.plink{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:.92rem;padding:12px 6px}
.plink svg.i{width:17px;height:17px;transition:transform .25s}
.plink:hover svg.i{transform:translateX(4px)}
.pcard.t3 .plink{color:var(--tag3)}
.pbtn{display:flex;justify-content:center;align-items:center;gap:8px;min-height:54px;border-radius:999px;font-weight:800;font-size:.95rem;color:var(--on-a);background:linear-gradient(180deg,var(--cta-a),var(--cta-b));box-shadow:0 0 0 5px color-mix(in srgb,var(--cta-b) 20%,transparent);transition:box-shadow .25s,transform .25s}
.pbtn:hover{box-shadow:0 0 0 7px color-mix(in srgb,var(--cta-b) 24%,transparent),0 16px 30px -14px var(--cta-b)}
.pbtn svg.i{width:17px;height:17px;transition:transform .25s}
.pbtn:hover svg.i{transform:translateX(4px)}
.pnote{text-align:center;color:var(--soft);font-size:.86rem;margin:40px auto 0;max-width:80ch}
.pnote a{color:var(--lab);font-weight:700;white-space:nowrap}
@media (max-width:960px){.pgrid{grid-template-columns:1fr;max-width:480px}.pcard.hi{transform:none}.pcard.hi:hover{transform:translateY(-4px)}}
@media (max-width:560px){.prices{padding-block:72px}}

/* ---------- DE FÁBRICA ---------- */
.fab{padding-block:92px 96px;background:var(--bg);border-top:1px solid var(--line);--g:#4ADE80;--p:#A78BFA;--fc:#151517}
@media (prefers-color-scheme: light){:root:not([data-theme="dark"]) .fab{--g:#15803D;--p:#6D28D9;--fc:#FFFFFF}}
:root[data-theme="light"] .fab{--g:#15803D;--p:#6D28D9;--fc:#FFFFFF}
.fab-head{text-align:center;max-width:820px;margin:0 auto 44px}
.fab-head .k{font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--orange)}
.fab-head h2{font-size:clamp(1.7rem,3.6vw,2.6rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;margin:12px 0 0;text-wrap:balance}
.fab-head p{color:var(--soft);margin:14px auto 0;max-width:62ch}
.fgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1120px;margin:0 auto}
.ft{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;padding:22px 20px;border-radius:20px;background:var(--fc);border:1px solid var(--line);transition:transform .3s,border-color .3s,box-shadow .3s}
.ft:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--c) 55%,transparent);box-shadow:0 18px 40px -26px color-mix(in srgb,var(--c) 70%,transparent)}
.ft svg.i{width:22px;height:22px;color:var(--c);margin-top:1px}
.ft b{display:block;font-size:.95rem;font-weight:700;letter-spacing:-.01em}
.ft span{display:block;font-size:.84rem;color:var(--soft);line-height:1.45;margin-top:3px}
.ft.o{--c:var(--orange)}.ft.g{--c:var(--g)}.ft.p{--c:var(--p)}
.fab-note{text-align:center;color:var(--soft);font-size:.82rem;margin:30px auto 0;max-width:88ch;opacity:.9}
@media (max-width:1000px){.fgrid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.fab{padding-block:72px}.fgrid{grid-template-columns:1fr}}

/* ---------- CARRUSEL DE RUBROS (v1.3.3: se mueve solo, flechas, arrastre y vista de muestra) ---------- */
.rubros{position:relative;white-space:nowrap;padding-block:16px;background:var(--strip);border-bottom:1px solid var(--line);display:flex;align-items:center}
.rubros .vp{flex:1;min-width:0;overflow:hidden;touch-action:pan-y;cursor:grab;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.rubros .vp.drag{cursor:grabbing}
.rubros .vp.drag .ri{pointer-events:none}
.rubros .tr{display:inline-flex;align-items:center;will-change:transform;user-select:none;-webkit-user-select:none}
.rubros .set{display:inline-flex;align-items:center}
.ri{display:inline-flex;align-items:center;gap:10px;margin:0;padding:6px 0;border:0;background:none;font:inherit;font-size:clamp(1.25rem,2.4vw,1.9rem);font-weight:700;letter-spacing:-.03em;color:var(--text);line-height:1.2;-webkit-user-drag:none}
.ri::after{content:"";width:9px;height:9px;border-radius:2px;background:var(--orange);transform:rotate(45deg);flex-shrink:0;margin:0 30px 0 30px}
.set .ri:nth-child(even){font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.01em;color:var(--soft)}
.ri svg.i{width:.62em;height:.62em;stroke-width:2.2;opacity:.55;transition:opacity .2s,transform .2s}
.ri.ok{cursor:pointer;transition:color .2s}
.ri.ok:hover,.ri.ok:focus-visible{color:var(--orange)}
.ri.ok:hover svg.i,.ri.ok:focus-visible svg.i{opacity:1;transform:translateY(-1px)}
.rb{flex-shrink:0;width:40px;height:40px;margin-inline:max(10px,env(safe-area-inset-left,0px));border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);background:var(--card);color:var(--text);cursor:pointer;transition:border-color .2s,color .2s,transform .2s;z-index:1}
.rb:hover{border-color:var(--orange);color:var(--orange)}
.rb:active{transform:scale(.94)}
@media (max-width:560px){.rb{width:34px;height:34px;margin-inline:6px}.rb svg.i{width:17px;height:17px}.ri::after{margin:0 20px}}

/* vista de la web de muestra */
.lb{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:clamp(10px,3vw,32px);background:rgba(6,6,7,.78);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:lbin .25s ease}
.lb[hidden]{display:none}
.lb-box{width:min(1100px,100%);max-height:100%;display:flex;flex-direction:column;background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 40px 90px -30px rgba(0,0,0,.7)}
.lb-h{display:flex;align-items:center;gap:12px;padding:12px 12px 12px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.lb-h b{font-size:1.05rem;letter-spacing:-.01em}
.lb-tag{font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);border:1px solid var(--line);border-radius:99px;padding:3px 9px}
.lb-go{margin-left:auto;display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:99px;font-weight:700;font-size:.88rem;color:var(--on-a);background:linear-gradient(135deg,var(--a-hi),var(--a) 55%,var(--a-d));box-shadow:0 10px 24px -12px rgba(var(--a-rgb),.8)}
.lb-go svg.i{width:16px;height:16px;stroke-width:2.2}
.lb-x{margin-left:auto;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;border:1px solid var(--line);background:transparent;color:var(--text);cursor:pointer;flex-shrink:0}
.lb-x:hover{border-color:var(--orange);color:var(--orange)}
.lb-go:not([hidden])+.lb-x{margin-left:0}
.lb-img{overflow:auto;overscroll-behavior:contain;background:#0d0d0f}
.lb-img img{display:block;width:100%;height:auto}
@keyframes lbin{from{opacity:0}}
@media (max-width:560px){.lb-h{padding:10px 10px 10px 14px;gap:8px}.lb-tag{display:none}.lb-go{padding:8px 12px;font-size:.8rem}}

/* ---------- SIGUIENTE PASO ---------- */
.next{padding-block:24px 96px;background:var(--bg)}
.cta{--cb:linear-gradient(120deg,#CDA45A 0%,#B48A43 25%,#94703A 50%,#B48A43 75%,#CDA45A 100%);--csh:rgba(180,138,67,.45);--ct:#17130B;--cs:rgba(23,19,11,.78);
  border-radius:34px;padding:clamp(34px,6vw,76px);background:var(--cb);background-size:300% 300%;animation:ctaflow 9s ease-in-out infinite;box-shadow:0 30px 70px -28px var(--csh),0 0 0 5px color-mix(in srgb,var(--csh) 35%,transparent);transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s;color:var(--ct);display:grid;grid-template-columns:1.4fr .6fr;gap:36px;align-items:end;position:relative;overflow:hidden;isolation:isolate}
@media (prefers-color-scheme: light){:root:not([data-theme="dark"]) .cta{--cb:linear-gradient(120deg,#FDBA74 0%,#FB923C 25%,#F98A2E 50%,#FB923C 75%,#FDBA74 100%);--csh:rgba(251,146,60,.5);--ct:#1B0F07;--cs:rgba(27,15,7,.8)}}
:root[data-theme="light"] .cta{--cb:linear-gradient(120deg,#FDBA74 0%,#FB923C 25%,#F98A2E 50%,#FB923C 75%,#FDBA74 100%);--csh:rgba(251,146,60,.5);--ct:#1B0F07;--cs:rgba(27,15,7,.8)}
.cta::after{content:"";position:absolute;width:420px;height:420px;right:-120px;top:-180px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),transparent 65%);z-index:-1}
.cta .k{display:inline-flex;align-items:center;gap:10px;font:600 .74rem ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase}
.cta .k::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--ct)}
.cta h2{font-size:clamp(2.1rem,5vw,4.2rem);font-weight:800;letter-spacing:-.045em;line-height:1.02;margin:18px 0 0;text-wrap:balance}
.cta h2 em{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.01em}
.cta p{color:var(--cs);font-size:1.06rem;max-width:52ch;margin:18px 0 0}
.cta .acts2{display:grid;gap:10px}
.cbtn{display:flex;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 22px;border-radius:999px;font-weight:700;font-size:.95rem;transition:transform .25s,box-shadow .25s}
.cbtn:hover{transform:translateY(-2px)}
.cbtn svg.i{width:18px;height:18px}
.cbtn.dk{background:#141414;color:#F5F3EE}
.cbtn.dk:hover{box-shadow:0 14px 28px -14px rgba(0,0,0,.7)}
.cbtn.wa{background:#128C4A;color:#FFFFFF}
.cbtn.wa:hover{box-shadow:0 14px 28px -14px rgba(6,46,22,.6)}
.cta small{text-align:center;font-size:.85rem;color:var(--cs)}
@keyframes ctaflow{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.cta:hover{transform:translateY(-4px);box-shadow:0 40px 80px -28px var(--csh),0 0 0 7px color-mix(in srgb,var(--csh) 40%,transparent)}
@media (max-width:860px){.cta{grid-template-columns:1fr}}

/* ---------- PIE DE PÁGINA ---------- */
.foot{background:var(--bg);border-top:1px solid var(--line);padding-block:64px 28px;color:var(--text)}
.fcols{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:28px}
.fbrand{display:grid;gap:14px;align-content:start}
.fbrand .brand{color:var(--text)}
.fbrand .brand small{color:var(--soft)}
.fbrand p{margin:0;color:var(--soft);font-size:.92rem;max-width:34ch}
.fcols h4{margin:0 0 12px;font:600 .72rem ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}
.fcols ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:.93rem}
.fcols a:hover{color:var(--orange)}
.bigmark{font-weight:800;font-size:clamp(3rem,13vw,11rem);letter-spacing:-.06em;line-height:1.08;padding:0 .04em .06em 0;margin:40px 0 0;color:var(--text);opacity:.06;white-space:nowrap;overflow:hidden;user-select:none}
.pay{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;border-top:1px solid var(--line);margin-top:22px;padding-top:22px}
.pay h4{margin:0 8px 0 0;font:600 .72rem ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}
.pm{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border-radius:10px;border:1px solid var(--line);background:var(--card);font-size:.84rem;font-weight:700;letter-spacing:-.01em}
.pm svg.i{width:16px;height:16px;color:var(--soft)}
.fbot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);margin-top:22px;padding-top:20px;font-size:.86rem;color:var(--soft)}
.libro{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1px solid var(--line);border-radius:999px;font-weight:700;font-size:.86rem;color:var(--text);transition:border-color .2s}
.libro:hover{border-color:var(--text)}
.libro svg.i{width:18px;height:18px}
@media (max-width:960px){.fcols{grid-template-columns:1fr 1fr}.fbrand{grid-column:1/-1}}
@media (max-width:340px){.fcols{grid-template-columns:1fr}}
@media (max-width:560px){.pay h4{width:100%}.foot{padding-bottom:96px}}

/* ---------- CABECERA FIJA ---------- */
.hdr{position:fixed;top:0;left:0;right:0;z-index:60;--h-bg:transparent;--h-t:#FFFFFF;--h-s:#D2D2D6;--h-line:rgba(255,255,255,.26);--h-hov:rgba(255,255,255,.12);--h-dd:rgba(16,16,18,.97);
  background:var(--h-bg);color:var(--h-t);border-bottom:1px solid transparent;transition:background .4s,border-color .4s,box-shadow .4s,transform .45s cubic-bezier(.2,.8,.2,1)}
.hdr.solid{--h-bg:color-mix(in srgb,var(--bg) 84%,transparent);--h-t:var(--text);--h-s:var(--soft);--h-line:var(--line);--h-hov:color-mix(in srgb,var(--text) 8%,transparent);--h-dd:var(--strip);
  backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);border-color:var(--line);box-shadow:0 10px 30px -22px rgba(0,0,0,.6)}
.hin{display:flex;align-items:center;gap:18px;min-height:84px;transition:min-height .4s cubic-bezier(.2,.8,.2,1)}
.hdr.solid .hin{min-height:66px}
.hbrand{display:flex;align-items:center;gap:11px;font-weight:800;font-size:1.06rem;letter-spacing:-.02em;white-space:nowrap}
.hbrand .mk{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--a-hi),var(--a-d));color:var(--on-a);transition:transform .4s}
.hdr.solid .hbrand .mk{transform:scale(.9)}
.hbrand .mk svg.i{width:19px;height:19px;stroke-width:2.2}
.hbrand small{display:block;font-size:.72rem;font-weight:500;letter-spacing:0;color:var(--h-s,#cfcfcf);margin-top:1px}
.hmenu{display:flex;align-items:center;gap:2px;list-style:none;margin:0 0 0 auto;padding:0}
.hmenu>li{position:relative}
.hl{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:999px;font:600 .92rem var(--font);color:var(--h-t);background:none;border:0;cursor:pointer;white-space:nowrap;transition:background .2s,color .2s}
.hl:hover,.hl.on{background:var(--h-hov)}
.hl.on{box-shadow:inset 0 -2px 0 var(--a)}
.hr{display:flex;align-items:center;gap:10px;margin-left:8px}
.hic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;border:1px solid var(--h-line);background:transparent;color:var(--h-t);cursor:pointer;transition:border-color .2s}
.hic:hover{border-color:var(--h-t)}
.hcta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-radius:14px;font-weight:800;font-size:.92rem;white-space:nowrap;color:var(--on-a);background:linear-gradient(180deg,var(--a-hi),var(--a));box-shadow:0 0 0 4px rgba(var(--a-rgb),.16);transition:box-shadow .25s,transform .25s}
.hcta:hover{transform:translateY(-1px);box-shadow:0 0 0 6px rgba(var(--a-rgb),.2),0 12px 24px -12px rgba(var(--a-rgb),.9)}
.hburger{display:none}
.hprog{position:absolute;left:0;bottom:-1px;height:2px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--a-hi),var(--a-d));opacity:0;transition:opacity .3s}
.hdr.solid .hprog{opacity:1}
.mnav{position:fixed;inset:0;z-index:80;background:var(--bg);color:var(--text);padding:calc(env(safe-area-inset-top,0px) + 14px) max(20px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 20px) max(20px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:10px;overflow-y:auto;--h-s:var(--soft);--h-t:var(--text);--h-line:var(--line)}
.mnav[hidden]{display:none}
.mrow{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.mlink{display:flex;justify-content:space-between;align-items:center;padding:16px 4px;border-bottom:1px solid var(--line);font-weight:700;font-size:1.02rem}
.mlink svg.i{width:18px;height:18px;color:var(--soft)}
.hcta.big{min-height:54px;margin-top:auto;font-size:1rem}
section[id],div[id="top"]{scroll-margin-top:72px}
@media (max-width:1180px){.hbrand small{display:none}.hl{padding:10px 11px}}
@media (max-width:1060px){.hmenu{display:none}.hburger{display:grid}.hr{margin-left:auto}}
@media (max-width:560px){.hdr .hcta{display:none}.hin{min-height:70px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* logos de medios de pago */
.pm img{height:22px;width:auto;display:block}
.pm.logo{padding:0 12px;background:#FFFFFF;border-color:var(--line)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hin>nav{margin-left:auto}
@media (max-width:560px){.ah{gap:8px;padding:14px}.av{width:36px;height:36px}.ah b{font-size:.88rem}.demo{padding:3px 7px;letter-spacing:.06em;font-size:.56rem}.snd{width:30px;height:30px}}
