/* Northway Digital — shared stylesheet. Mobile first. */
:root{
  --blue:#0B6EF5;--blue-hover:#0A5FD6;--black:#0A0A0A;--surface:#10131C;--line:#1E2330;
  --white:#FFFFFF;--light:#EEF4FF;--gray:#5B6370;--border:#E5E9F0;
  --font:'Plus Jakarta Sans',Helvetica,Arial,sans-serif;--serif:'Instrument Serif',Georgia,serif;
  --r-btn:14px;--r-card:20px;--r-lg:28px;--r-xl:32px;
  --shadow-soft:0 20px 60px rgba(11,110,245,.08);--shadow-btn:0 16px 40px rgba(11,110,245,.35);
  --wrap:1200px;--pad:20px;--sec:72px;
  --chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='%23ffffff' fill-opacity='0.045'%3E%3Cpolygon points='40,26 50,35 45,35 40,30 35,35 30,35'/%3E%3Cpolygon points='40,38 50,47 45,47 40,42 35,47 30,47'/%3E%3C/g%3E%3C/svg%3E");
}
@media (min-width:900px){:root{--pad:24px;--sec:112px}}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--black);font-family:var(--font);font-weight:500;line-height:1.6;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:var(--blue);text-decoration:none}a:hover{color:var(--blue-hover)}
h1,h2,h3,h4,p,ul{margin:0}ul{padding:0;list-style:none}
button,input,textarea,select{font:inherit;color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.sec{padding:var(--sec) 0;position:relative;overflow:hidden}
.sec-light{background:var(--light)}.sec-dark{background:var(--black);color:#fff;background-image:var(--chev)}
.sec-dark .muted{color:rgba(255,255,255,.7)}
.eyebrow{color:var(--blue);font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px;display:flex;align-items:center;gap:8px}
.h1{font-size:clamp(36px,8vw,72px);line-height:1.02;font-weight:800;letter-spacing:-.03em;text-wrap:balance}
.h2{font-size:clamp(30px,4vw,46px);line-height:1.08;font-weight:800;letter-spacing:-.03em;text-wrap:balance}
.h3{font-size:22px;line-height:1.2;font-weight:800;letter-spacing:-.02em}
.em{font:inherit}
.lead{font-size:clamp(17px,1.6vw,20px);line-height:1.55;color:var(--gray)}
.sec-dark .lead{color:rgba(255,255,255,.72)}
.muted{color:var(--gray)}.center{text-align:center}
.head{max-width:680px;margin:0 auto 48px;text-align:center}.head-left{max-width:680px;margin-bottom:48px}
.small{font-size:13px;font-weight:600}
.tip{font-size:12px;color:var(--gray);font-weight:600;margin-top:10px}
.sec-dark .tip{color:rgba(255,255,255,.55)}
.chev{width:14px;height:17px;flex:none}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:16px;padding:16px 26px;border-radius:var(--r-btn);border:0;cursor:pointer;transition:background .2s,transform .2s,border-color .2s;white-space:nowrap}
.btn-primary{background:var(--blue);color:#fff;box-shadow:var(--shadow-btn)}.btn-primary:hover{background:var(--blue-hover);color:#fff;transform:translateY(-1px)}
.btn-white{background:#fff;color:var(--black)}.btn-white:hover{background:var(--light);color:var(--black)}
.btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.2)}.btn-ghost:hover{border-color:#fff;color:#fff}
.btn-outline{background:#fff;color:var(--black);border:1px solid var(--border)}.btn-outline:hover{border-color:var(--black);color:var(--black)}
.btn-lg{font-size:18px;padding:19px 32px}.btn-block{width:100%}
.arrow{width:18px;height:18px}
.link{font-weight:700;color:var(--blue);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}

/* Header (como la base: logo · menú · botón azul · idioma) */
.nav{position:absolute;top:0;left:0;right:0;z-index:50}
.nav-bar{padding:18px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:var(--wrap);margin:0 auto}
.nav-logo img{height:44px;width:auto}
.nav-menu{display:none;align-items:center;gap:30px}
.nav-menu a{color:#fff;font-size:14px;font-weight:600}.nav-menu a:hover,.nav-menu a[aria-current]{color:var(--blue)}
.nav-right{display:none;align-items:center;gap:14px}
.nav .btn{padding:12px 20px;font-size:14px;border-radius:12px;box-shadow:none}
.lang{display:flex;gap:2px;font-size:12px;font-weight:700;color:rgba(255,255,255,.45)}
.lang a{color:rgba(255,255,255,.45);padding:4px 5px;border-radius:6px}.lang a:hover{color:#fff}.lang a[aria-current]{color:#fff;background:rgba(255,255,255,.08)}
.burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;background:transparent;border:0;cursor:pointer;padding:10px}
.burger span{display:block;height:2px;background:#fff;border-radius:2px;transition:transform .25s,opacity .25s}
.nav.open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav.open .burger span:nth-child(2){opacity:0}.nav.open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav-drawer{display:none;background:var(--surface);border:1px solid var(--line);border-radius:24px;margin:0 var(--pad);padding:20px;flex-direction:column;gap:6px}
.nav.open .nav-drawer{display:flex}
.nav-drawer a{color:#fff;font-weight:600;font-size:18px;padding:12px 8px;border-radius:12px}.nav-drawer a:hover{background:rgba(255,255,255,.05);color:#fff}
.nav-drawer .btn{margin-top:10px;font-size:16px;padding:16px}
.nav-drawer .lang{justify-content:center;margin-top:12px;font-size:14px}
@media (min-width:900px){.nav-bar{padding:22px var(--pad)}.nav-menu,.nav-right{display:flex}.burger,.nav-drawer{display:none!important}.nav-logo img{height:52px}}

/* Hero base (split: texto izquierda · mockup derecha) */
.hero-split{position:relative;overflow:hidden;background:var(--black);color:#fff;padding:120px 0 72px;background-image:var(--chev)}
.hero-split::before{content:"";position:absolute;width:720px;height:720px;border-radius:50%;background:radial-gradient(circle,rgba(11,110,245,.35) 0%,rgba(11,110,245,0) 70%);top:-200px;right:-160px;pointer-events:none}
.hero-split .wrap{position:relative;z-index:1}
.hero-grid{display:grid;gap:48px;align-items:center}
.hero-split .h1{font-size:clamp(38px,5.2vw,64px)}
.hero-split .h1 .price-line{display:block;color:var(--blue)}
.hero-split .lead{margin-top:22px;max-width:520px;color:rgba(255,255,255,.72)}
.hero-actions{display:flex;flex-direction:column;gap:12px;margin-top:32px}
.hero-bullets{display:flex;gap:20px;flex-wrap:wrap;margin-top:28px;color:rgba(255,255,255,.6);font-size:14px;font-weight:600}
.hero-bullets span{display:flex;align-items:center;gap:8px}.hero-bullets i{width:6px;height:6px;border-radius:50%;background:var(--blue)}
.pill{display:inline-flex;align-items:center;gap:10px;background:rgba(11,110,245,.14);border:1px solid rgba(11,110,245,.4);font-size:13px;font-weight:600;padding:8px 14px;border-radius:999px;margin-bottom:24px}
.mock{position:relative;margin:40px auto 0;max-width:560px;padding:24px 0 40px 0}
.mock-3d{position:relative}
.mock .browser-body{aspect-ratio:16/10}
.phone{position:absolute;left:-6px;bottom:0;width:clamp(104px,13vw,150px);background:var(--black);border-radius:24px;padding:7px;box-shadow:0 30px 60px rgba(0,0,0,.6)}
.phone div{border-radius:18px;overflow:hidden;aspect-ratio:9/17.5;background:#fff}.phone img{width:100%;height:100%;object-fit:cover;object-position:top}
.pricecard{position:absolute;top:-4px;right:-8px;background:#fff;color:var(--black);border-radius:14px;padding:12px 16px;box-shadow:0 20px 50px rgba(0,0,0,.45);display:flex;align-items:center;gap:12px}
.pricecard .ic{width:36px;height:36px;border-radius:10px;background:var(--light);display:flex;align-items:center;justify-content:center}
.pricecard .t{font-size:11px;color:var(--gray);font-weight:600}.pricecard .v{font-size:16px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.mock .float-card{min-width:0;padding:10px 12px;gap:10px}.mock .float-card .ic{width:32px;height:32px}.mock .float-card .v{font-size:13px}.mock .float-card .t{font-size:10px}
.mock .f1{left:-6%;top:44%;transform:rotate(-3deg)}.mock .f2{right:-4%;top:58%;transform:rotate(3deg)}.mock .f3{left:auto;right:6%;bottom:-4%;display:flex;transform:rotate(2deg)}
.mock .f1,.mock .f2{display:none}
@media (min-width:600px){.hero-actions{flex-direction:row;align-items:center}}
@media (min-width:900px){.hero-split{padding:168px 0 120px}.hero-grid{grid-template-columns:1.05fr 1fr;gap:56px}.mock{margin:0;max-width:none;padding:24px 0 48px 40px}.phone{left:0}}
/* Burbujas estáticas (proceso) */
.head-row{display:flex;flex-direction:column;gap:28px;margin-bottom:56px}
.bubbles{display:flex;flex-wrap:wrap;gap:12px}
.bubbles .float-card{position:static;display:flex;transform:rotate(-2deg);animation:float 7s ease-in-out infinite;box-shadow:0 20px 50px rgba(11,110,245,.15);border:1px solid var(--border);padding:10px 14px;gap:10px;min-width:0}
.bubbles .float-card .ic{width:32px;height:32px}.bubbles .float-card .v{font-size:13px;white-space:nowrap}.bubbles .float-card .t{font-size:10px;white-space:nowrap}.bubbles .mini-chart{width:48px;height:18px}
.bubbles .b2{transform:rotate(2deg);animation-delay:1.5s}.bubbles .b3{transform:rotate(-1deg);animation-delay:3s}
@media (min-width:900px){.head-row{flex-direction:row;justify-content:space-between;align-items:flex-end}.bubbles{flex:none;flex-wrap:nowrap;justify-content:flex-end}}
.about-logo{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1;max-width:460px;margin:0 auto;width:100%}

/* Galería tipo pop.site */
.pop{background:#fff;padding-bottom:calc(var(--sec) + 24px);overflow:hidden}
.pop-head{text-align:center;max-width:900px;margin:0 auto}
.pop-badge{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:999px;padding:8px 16px;font-size:13px;font-weight:600;color:var(--gray);margin-bottom:28px}
.pop-h2{font-size:clamp(38px,7.2vw,96px);line-height:.98;font-weight:800;letter-spacing:-.05em;text-wrap:balance;color:var(--black)}
.pop-head .lead{margin-top:22px}
.pop-phones{display:flex;justify-content:center;align-items:flex-end;gap:0;margin:64px auto 0;padding:24px var(--pad) 0;max-width:1200px}
.pphone{flex:0 0 auto;width:clamp(120px,19vw,240px);aspect-ratio:9/19;background:var(--black);border-radius:36px;padding:8px;box-shadow:0 30px 60px rgba(10,10,10,.16);position:relative;transition:transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .6s;will-change:transform}
.pphone:hover{transform:translateY(-16px) scale(1.03)!important;box-shadow:0 40px 80px rgba(11,110,245,.22);z-index:5}
.pphone::before{content:"";position:absolute;top:14px;left:50%;translate:-50% 0;width:32%;height:22px;background:var(--black);border-radius:12px;z-index:2}
.pphone img{width:100%;height:100%;object-fit:cover;object-position:50% 0;border-radius:28px;display:block}
.p1{transform:rotate(-8deg) translate(34px,26px);z-index:1}.p2{transform:rotate(-4deg) translate(18px,8px);z-index:2}.p3{z-index:3;transform:translateY(-10px)}.p4{transform:rotate(4deg) translate(-18px,8px);z-index:2}.p5{transform:rotate(8deg) translate(-34px,26px);z-index:1}
.pop-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:88px;padding:0 var(--pad);max-width:1400px;margin-left:auto;margin-right:auto}
.pop-card{background:var(--light);border-radius:22px;padding:28px 0 0 28px;overflow:hidden;position:relative;min-height:360px;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.pop-card:hover{transform:translateY(-6px)}
.pop-browser{background:#fff;border-radius:16px 0 0 0;border:1px solid var(--border);border-right:0;border-bottom:0;overflow:hidden;height:100%;display:flex;flex-direction:column;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.pop-card:hover .pop-browser{transform:translate(-10px,-10px)}
.pop-shot{flex:1;min-height:0;overflow:hidden}.pop-shot img{width:100%;height:140%;object-fit:cover;object-position:top;display:block;transition:transform 4s ease}
.pop-card:hover .pop-shot img{transform:translateY(-22%)}
.pop-cap{position:absolute;left:28px;bottom:16px;font-size:13px;font-weight:700;color:var(--black);background:#fff;padding:6px 12px;border-radius:999px;border:1px solid var(--border)}
/* Entrada por scroll (solo CSS) */
@keyframes fan-in{from{opacity:0;transform:translateY(80px) rotate(0) scale(.9)}}
@keyframes rise{from{opacity:0;transform:translateY(60px)}}
@supports (animation-timeline: view()){
  .pphone{animation:fan-in 1s cubic-bezier(.2,.7,.2,1) both;animation-timeline:view();animation-range:entry 0% entry 70%}
  .p1{animation-range:entry 10% entry 80%}.p5{animation-range:entry 10% entry 80%}.p2,.p4{animation-range:entry 5% entry 75%}
  .pop-card{animation:rise 1s cubic-bezier(.2,.7,.2,1) both;animation-timeline:view();animation-range:entry 0% entry 55%}
  .pop-card:nth-child(2){animation-range:entry 10% entry 65%}.pop-card:nth-child(3){animation-range:entry 20% entry 75%}
  .pop-head>*{animation:rise 1s cubic-bezier(.2,.7,.2,1) both;animation-timeline:view();animation-range:entry 0% entry 60%}
  .pop-card:hover{animation:none;transform:translateY(-6px)}
}
@media (max-width:899px){.pop-phones{margin-top:40px}.p1,.p5{display:none}.pop-row{grid-template-columns:1fr;gap:12px;margin-top:48px}.pop-card,.pop-card:first-child,.pop-card:last-child{border-radius:22px;min-height:0;height:300px}}
@media (prefers-reduced-motion:reduce){.pphone,.pop-browser,.pop-card,.pop-shot img{transition:none;animation:none}}

/* Reseñas en arco sobre portátil */
.reviews{background:#fff;padding-bottom:0;overflow:visible;z-index:2}
.reviews+.sec,.reviews+.sec-light,.reviews+section{padding-top:170px}
@media (max-width:899px){.reviews+.sec,.reviews+.sec-light,.reviews+section{padding-top:64px}}
.reviews .head{margin-bottom:24px}
.rstage{position:relative;max-width:1400px;margin:0 auto;padding:40px var(--pad) 0}
.laptop{position:relative;z-index:2;width:min(640px,92%);margin:0 auto}
.laptop-screen{position:relative;background:var(--black);border-radius:22px 22px 8px 8px;padding:12px 12px 0;aspect-ratio:16/10;overflow:hidden;box-shadow:0 40px 90px rgba(10,10,10,.25)}
.laptop-screen::before{content:"";position:absolute;inset:12px 12px 0;background:radial-gradient(ellipse 70% 60% at 50% 30%,rgba(11,110,245,.16),rgba(11,110,245,0) 70%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='%230B6EF5' fill-opacity='0.06'%3E%3Cpolygon points='40,26 50,35 45,35 40,30 35,35 30,35'/%3E%3Cpolygon points='40,38 50,47 45,47 40,42 35,47 30,47'/%3E%3C/g%3E%3C/svg%3E"),#F5F8FF;border-radius:12px 12px 0 0}
.laptop-base{height:16px;background:linear-gradient(#e6e9ef,#c9ced8);border-radius:0 0 18px 18px;width:118%;margin-left:-9%;box-shadow:0 30px 60px rgba(10,10,10,.18)}
.laptop-base::after{content:"";display:block;width:16%;height:5px;background:#b7bdc8;border-radius:0 0 6px 6px;margin:0 auto}
.rclaim{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:800;font-size:clamp(17px,2.4vw,26px);line-height:1.2;letter-spacing:-.02em;color:var(--black);z-index:2;padding:0 18%}
.rcards{position:absolute;inset:0;pointer-events:none}
.rcard{position:absolute;width:clamp(210px,20vw,270px);background:#fff;border:1px solid var(--border);border-radius:18px;padding:16px 16px 12px;display:flex;flex-direction:column;gap:10px;box-shadow:0 30px 70px rgba(10,10,10,.14);pointer-events:auto;animation:drift 7s ease-in-out infinite;transition:transform .5s}
.rcard:hover{z-index:9;transform:rotate(0) translateY(-6px)!important;box-shadow:0 40px 90px rgba(11,110,245,.2)}
.rlogo{width:14px;height:17px;margin-left:auto;flex:none}
.r1{left:0;top:18%;transform:rotate(-8deg);z-index:3}.r4{right:0;top:18%;transform:rotate(8deg);z-index:3;animation-delay:3.6s}
.r2{left:12%;top:52%;transform:rotate(-3deg);z-index:3;animation-delay:1.2s}.r3{right:12%;top:52%;transform:rotate(3deg);z-index:3;animation-delay:2.4s}
.r5{left:50%;top:auto;bottom:-56px;translate:-50% 0;transform:rotate(0);z-index:4;animation-name:drift-c;animation-delay:1.8s}
@keyframes drift{0%,100%{translate:0 0}50%{translate:0 -10px}}
@keyframes drift-c{0%,100%{translate:-50% 0}50%{translate:-50% -10px}}
@media (min-width:900px) and (max-width:1200px){
  .rstage{padding-top:20px;min-height:460px}
  .laptop{width:min(460px,50%)}
  .rcard{width:min(200px,calc(25vw - 40px))}
  .r1,.r4{display:none}
  .r2{left:12px;top:30%;bottom:auto;transform:rotate(-4deg);z-index:3}.r3{right:12px;top:30%;bottom:auto;transform:rotate(4deg);z-index:3}
  .r5{bottom:-130px}
}
@media (max-width:899px){.rstage{padding-bottom:0}.rcards{position:static;display:grid;gap:12px;padding:0 0 32px}.rcard{position:static;transform:none!important;width:100%;animation:none;translate:0}.r5{translate:0}.laptop{width:100%}}
.tweet-head{display:flex;align-items:center;gap:10px}
.tweet-avatar{width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;overflow:hidden;flex:none}
.tweet-avatar img{width:74%;height:74%;object-fit:contain}
.tweet-name{font-weight:800;font-size:14px;line-height:1.2}.tweet-meta{font-size:11px;color:var(--gray);font-weight:600}
.tweet-stars{color:#F5B301;letter-spacing:2px;font-size:13px}
.tweet-body{font-size:13.5px;line-height:1.45;color:var(--black);font-weight:500;text-wrap:pretty}
.tweet-foot{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--gray);font-weight:600;border-top:1px solid var(--border);padding-top:10px}
.tweet-foot a{color:var(--blue);font-weight:700}
@media (prefers-reduced-motion:reduce){.rcard,.scr-sweep,.scr-pill,.scr-line,.scr-area,.blob{animation:none}}
.about-logo img{width:100%;max-width:360px;height:auto;animation-duration:1.4s}
#problemas .h2,.sec-light .head .h2{font-size:clamp(28px,3.4vw,40px)}
.head{max-width:760px}
/* Gráfica caso destacado */
.tile-split{flex-direction:row;align-items:stretch;gap:20px}
.tile-text{display:flex;flex-direction:column;justify-content:space-between;gap:16px;flex:1;min-width:0}
.tile-phone{flex:none;width:34%;display:flex;align-items:flex-end;justify-content:center}
.tile-phone .phone{width:100%;max-width:170px;box-shadow:0 30px 60px rgba(0,0,0,.5);border:1px solid var(--line)}
.tile-phone .phone div{aspect-ratio:9/16}
@media (max-width:699px){.tile-split{flex-direction:column}.tile-phone{width:100%}.tile-phone .phone{max-width:150px}}
@media (min-width:700px) and (max-width:999px){.tile-split,.bento .span-2{grid-column:1/-1}}
.tile.star{margin-top:16px;display:grid;gap:24px}
@media (min-width:900px){.tile.star{grid-template-columns:1.2fr 1fr;align-items:center}}
.star .star-nums{margin-top:0}
.star-nums{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.star-nums .num{font-size:clamp(34px,3.5vw,44px)}
.star .browser{color:var(--black);box-shadow:0 30px 70px rgba(0,0,0,.5);border:1px solid var(--line)}
.case-media{display:grid;gap:20px}
.shot{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 30px 70px rgba(11,110,245,.12)}
.shot .slot{border-radius:0}
.shot-sm{max-width:78%;justify-self:end;border:0;box-shadow:none;overflow:visible;position:relative;padding-bottom:28px}
.shot-sm .phone{left:-40px;bottom:0;width:clamp(90px,10vw,120px);box-shadow:0 24px 50px rgba(10,10,10,.3)}
.shot-sm .browser{box-shadow:0 20px 50px rgba(10,10,10,.14);border:1px solid var(--border)}
.chart svg{width:100%;height:140px;overflow:visible}
.shot img{width:100%;display:block}
.phone img{object-position:50% 0}
.chart{margin-top:32px;max-width:440px}
.chart svg{width:100%;height:120px;overflow:visible}
.chart .line{fill:none;stroke:var(--blue);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:500;stroke-dashoffset:500;animation:draw 1.6s ease-out .2s forwards}
.chart .area{fill:url(#sparkFill);opacity:0;animation:fadein 1s ease-out 1s forwards}
.chart circle{fill:#fff;stroke:var(--blue);stroke-width:3}
.chart-labels{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;color:var(--gray);font-weight:600}
.chart-labels span{display:grid;text-align:center}.chart-labels span:first-child{text-align:left}.chart-labels span:last-child{text-align:right}
.chart-labels b{font-size:18px;color:var(--black);font-weight:800;letter-spacing:-.02em}
.tile .chart{max-width:none;margin-top:8px}.tile .chart svg{height:140px}
.tile .chart circle{fill:var(--surface)}
.tile .chart-labels{color:rgba(255,255,255,.6)}.tile .chart-labels b{color:#fff}

/* Upsell + CTA fijo móvil */
.upsell{margin-top:24px;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;color:rgba(255,255,255,.8)}
.upsell b{color:#fff}.upsell a{font-weight:700}.upsell .chev{margin-top:3px}
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:rgba(10,10,10,.92);backdrop-filter:blur(10px);color:#fff}
.sticky-cta span{font-weight:800;font-size:18px;letter-spacing:-.02em;line-height:1.1}.sticky-cta small{display:block;font-size:11px;color:rgba(255,255,255,.6);font-weight:600}
.sticky-cta .btn{flex:1;padding:14px 16px;font-size:15px;box-shadow:none;white-space:normal}
body:has(.sticky-cta){padding-bottom:84px}
@media (min-width:900px){.sticky-cta{display:none}body:has(.sticky-cta){padding-bottom:0}}

/* Hero centrado (otras páginas) */
.hero{position:relative;overflow:hidden;background:var(--black);color:#fff;min-height:100svh;display:flex;align-items:center;padding:120px 0 72px}
.hero .wrap{position:relative;z-index:2;width:100%}
.hero-video{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-video video{width:100%;height:100%;object-fit:cover}
.swirl{position:absolute;inset:-25%;z-index:0;pointer-events:none;filter:blur(60px)}
.swirl span{position:absolute;inset:0;border-radius:50%;will-change:transform}
.swirl .s1{background:radial-gradient(ellipse 45% 35% at 30% 40%,rgba(11,110,245,.22),transparent 70%);animation:spin 70s linear infinite}
.swirl .s2{background:radial-gradient(ellipse 40% 45% at 70% 60%,rgba(42,47,58,.9),transparent 70%);animation:spin 90s linear infinite reverse}
.swirl .s3{background:radial-gradient(ellipse 35% 30% at 55% 30%,rgba(11,110,245,.16),transparent 70%);animation:spin 50s linear infinite reverse}
.swirl .s4{background:radial-gradient(ellipse 50% 30% at 40% 75%,rgba(42,47,58,.7),transparent 70%);animation:spin 40s linear infinite}
.vignette{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse 70% 60% at 50% 45%,transparent 30%,rgba(10,10,10,.85) 100%),var(--chev);pointer-events:none}
@keyframes spin{to{transform:rotate(360deg)}}
.hero-inner{text-align:center;max-width:900px;margin:0 auto}
.hero-inner .lead{margin:22px auto 0;max-width:640px}
.hero-cta{margin-top:32px;display:flex;flex-direction:column;align-items:center;gap:12px}
.hero-cta .tip{color:rgba(255,255,255,.6);margin:0}
.hero-cta .btn{width:100%;max-width:360px}
@media (min-width:600px){.hero-cta .btn{width:auto}}

/* Floating scene */
.scene{position:relative;max-width:820px;margin:56px auto 0;padding:0}
.browser{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 50px 100px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.08);color:var(--black)}
.browser-bar{display:flex;align-items:center;gap:8px;padding:12px 14px;background:#F3F5F9;border-bottom:1px solid var(--border)}
.browser-bar i{width:10px;height:10px;border-radius:50%;background:#D9DEE7}
.browser-bar .url{margin-left:8px;flex:1;height:22px;border-radius:6px;background:#fff;border:1px solid var(--border);font-size:11px;color:var(--gray);display:flex;align-items:center;padding:0 10px;font-weight:600}
.browser-body{aspect-ratio:16/9.5;position:relative;overflow:hidden;background:#fff}
.browser-body img{width:100%;height:100%;object-fit:cover;object-position:top}
.slot{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,#E3ECFB 0 12px,#EEF4FF 12px 24px);color:var(--gray);font-size:12px;font-weight:700;text-align:center;padding:12px;width:100%;height:100%}
.build .browser-body>*{animation:build .5s cubic-bezier(.2,.7,.2,1) both}
.build .browser-bar{animation:build .4s both}
.build .b1{animation-delay:.15s}.build .b2{animation-delay:.4s}.build .b3{animation-delay:.65s}.build .b4{animation-delay:.9s}
@keyframes build{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.skeleton{position:absolute;inset:0;padding:6%;display:grid;grid-template-rows:auto 1fr auto;gap:5%}
.skeleton .b1{height:8%;background:var(--light);border-radius:8px;width:40%}
.skeleton .b2{display:grid;grid-template-columns:1.2fr 1fr;gap:6%}
.skeleton .b2 i{display:block;background:var(--light);border-radius:12px}
.skeleton .b2 i:first-child{background:linear-gradient(var(--light),var(--light)) 0 0/100% 18% no-repeat,linear-gradient(var(--light),var(--light)) 0 30%/80% 18% no-repeat,linear-gradient(var(--blue),var(--blue)) 0 100%/34% 22% no-repeat;border-radius:8px}
.skeleton .b3{height:14%;display:grid;grid-template-columns:repeat(3,1fr);gap:4%}
.skeleton .b3 i{display:block;background:var(--light);border-radius:10px}
.float-card{position:absolute;background:#fff;color:var(--black);border-radius:18px;padding:14px 16px;box-shadow:0 30px 60px rgba(0,0,0,.45);display:none;gap:12px;align-items:center;min-width:180px}
.float-card .ic{width:40px;height:40px;border-radius:12px;background:var(--light);display:flex;align-items:center;justify-content:center;flex:none;color:var(--blue)}
.float-card .t{font-size:11px;color:var(--gray);font-weight:600}.float-card .v{font-size:15px;font-weight:800;letter-spacing:-.02em;line-height:1.2}
.stars{color:var(--blue);font-size:12px;letter-spacing:1px}
.f1{left:-8%;top:18%;transform:rotate(-4deg);animation:float 7s ease-in-out infinite}
.f2{right:-8%;top:40%;transform:rotate(3deg);animation:float 8s ease-in-out infinite 1.5s}
.f3{left:-4%;bottom:-6%;transform:rotate(2deg);animation:float 6.5s ease-in-out infinite 3s}
@keyframes float{0%,100%{translate:0 0}50%{translate:0 -14px}}
@media (min-width:900px){.float-card{display:flex}}
.mini-chart{width:64px;height:24px}
.mini-chart path{stroke:var(--blue);stroke-width:2;fill:none;stroke-linecap:round}

/* Logo marquee */
.logos{background:#fff;border-bottom:1px solid #EEF1F6;padding:32px 0;overflow:hidden}
.logos .label{font-size:12px;font-weight:700;color:var(--gray);letter-spacing:.1em;text-transform:uppercase;text-align:center;margin-bottom:22px}
.marquee{display:flex;gap:56px;width:max-content;animation:marquee 40s linear infinite}
.marquee:hover{animation-play-state:paused}
.marquee .logo{flex:none;height:48px;display:flex;align-items:center;justify-content:center;opacity:.9;transition:opacity .3s,transform .3s}.marquee .logo:hover{opacity:1;transform:scale(1.05)}
.marquee .logo img{height:44px;width:auto;max-width:180px;object-fit:contain}
.marquee .logo-text{color:#9AA3B2;font-weight:800;font-size:17px;letter-spacing:-.02em;padding:0 8px}
@keyframes marquee{to{transform:translateX(-50%)}}

/* Cards */
.grid{display:grid;gap:20px}
@media (min-width:700px){.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:900px){.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.card{background:#fff;border-radius:var(--r-lg);padding:32px 28px;box-shadow:var(--shadow-soft)}
.card-line{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:32px 28px}
.icon-box{width:56px;height:56px;border-radius:16px;background:var(--light);display:flex;align-items:center;justify-content:center;color:var(--blue);margin-bottom:22px}
.icon-box svg{width:26px;height:26px;stroke:currentColor;stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.card .h3,.card-line .h3{margin-bottom:10px}
.panel{border-radius:var(--r-xl);padding:36px 28px}
@media (min-width:900px){.panel{padding:48px 44px}}
.panel-dark{background:var(--black);color:#fff;background-image:var(--chev);position:relative;overflow:hidden}
.panel-dark::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(11,110,245,.4),transparent 70%);pointer-events:none}
.panel-dark>*{position:relative;z-index:1}
.panel-line{background:#fff;border:1px solid var(--border)}
.list{display:grid;gap:16px}
.list li{display:flex;gap:12px;align-items:flex-start;font-weight:600;font-size:16px;line-height:1.45}
.list .chev{margin-top:3px}
.rows>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-top:1px solid #EEF1F6;font-weight:600}
.rows>div:last-child{border-bottom:1px solid #EEF1F6}
.rows b{color:var(--blue);white-space:nowrap;font-weight:800}
.blob{position:absolute;border-radius:46% 54% 60% 40%/50% 40% 60% 50%;background:rgba(11,110,245,.07);pointer-events:none}
.sec>.wrap{position:relative;z-index:1}

/* Bento */
.bento{display:grid;gap:16px;grid-template-columns:1fr}
@media (min-width:700px){.bento{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.bento{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(200px,auto)}.span-2{grid-column:span 2}.row-2{grid-row:span 2}}
.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:28px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;color:#fff}
.tile .tag{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.tile .h3{font-size:20px}
.tile p{color:rgba(255,255,255,.7);font-size:15px}
.tile a.link{color:var(--blue)}
.num{font-size:clamp(44px,5vw,64px);font-weight:800;letter-spacing:-.04em;line-height:1}
.num b{color:var(--blue);font-weight:800}
.num-label{font-size:13px;font-weight:600;color:rgba(255,255,255,.6);margin-top:6px}
.num-label.muted{color:var(--gray)}
.spark{width:100%;height:56px;overflow:visible}
.spark path{fill:none;stroke:var(--blue);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:400;stroke-dashoffset:400;animation:draw 1.6s ease-out .2s forwards}
.spark .area{fill:url(#sparkFill);stroke:none;opacity:0;animation:fadein 1s ease-out 1s forwards}
.bars{display:flex;align-items:flex-end;gap:6px;height:56px}
.bars i{flex:1;background:var(--blue);border-radius:4px 4px 0 0;transform-origin:bottom;animation:grow 1s cubic-bezier(.2,.7,.2,1) both}
.bars i:nth-child(2){animation-delay:.1s;opacity:.85}.bars i:nth-child(3){animation-delay:.2s}.bars i:nth-child(4){animation-delay:.3s;opacity:.85}.bars i:nth-child(5){animation-delay:.4s}.bars i:nth-child(6){animation-delay:.5s}
@keyframes draw{to{stroke-dashoffset:0}}@keyframes fadein{to{opacity:1}}@keyframes grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@supports (animation-timeline: view()){
  .spark path{animation:draw 1s linear both;animation-timeline:view();animation-range:entry 10% entry 70%}
  .spark .area{animation:fadein 1s linear both;animation-timeline:view();animation-range:entry 40% entry 80%}
  .bars i{animation:grow 1s linear both;animation-timeline:view();animation-range:entry 10% entry 60%}
}

/* Featured case */
.case{display:grid;gap:40px;align-items:center}
@media (min-width:900px){.case{grid-template-columns:1fr 1.1fr;gap:64px}}
.metrics{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}
.metrics .num{font-size:clamp(40px,4.5vw,60px)}
.tilt{perspective:1400px}
.tilt .browser{transform:rotateY(-10deg) rotateX(4deg);transition:transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .6s;box-shadow:0 40px 100px rgba(11,110,245,.28),0 0 0 1px rgba(255,255,255,.08)}
.tilt:hover .browser{transform:none;box-shadow:0 30px 80px rgba(11,110,245,.4)}

/* Pricing */
.plans{display:grid;gap:20px;align-items:stretch}
@media (min-width:900px){.plans{grid-template-columns:repeat(3,minmax(0,1fr))}}
.plan .btn,.plan-mini .btn,.panel .btn,.cta .btn{white-space:normal;text-align:center}
.plan{background:#fff;border:1px solid var(--border);border-radius:var(--r-xl);padding:36px 30px;display:flex;flex-direction:column;position:relative}
.plan-featured{background:var(--black);color:#fff;border-color:var(--black);background-image:var(--chev);box-shadow:0 40px 90px rgba(10,10,10,.25)}
.plan-featured .muted{color:rgba(255,255,255,.65)}
.plan .badge{position:absolute;top:-14px;left:30px;background:var(--blue);color:#fff;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:7px 14px;border-radius:999px}
.plan .h3{font-size:20px}
.price{margin:24px 0 20px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.price strong{font-size:clamp(40px,4vw,52px);font-weight:800;letter-spacing:-.04em;line-height:1}
.price .was{text-decoration:line-through;color:var(--gray);font-weight:600;font-size:15px}
.plan-featured .price .was{color:rgba(255,255,255,.5)}
.plan .list{flex:1}.plan .list li{font-size:15px}
.plan .btn{margin-top:28px}
.plan-mini{margin-top:20px;display:flex;flex-wrap:wrap;gap:16px 24px;justify-content:space-between;align-items:center;background:var(--light);border-radius:var(--r-lg);padding:24px 28px}
.plan-mini .h3{font-size:18px}.plan-mini strong{font-size:28px;letter-spacing:-.03em;font-weight:800}
.plan-mini .btn{padding:14px 22px;font-size:15px}
.sec-light .plan-mini{background:#fff;border:1px solid var(--border)}

/* Steps */
.steps{display:grid;gap:16px}
@media (min-width:700px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1000px){.steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.step{background:var(--light);border-radius:var(--r-lg);padding:28px 26px}
.step-dark{background:var(--black);color:#fff;background-image:var(--chev)}
.step .n{display:flex;align-items:center;gap:8px;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.1em;margin-bottom:18px}
.step .h3{font-size:19px;margin-bottom:8px}.step p{font-size:15px;color:var(--gray)}
.step-dark p{color:rgba(255,255,255,.7)}.step .day{margin-top:16px;font-size:13px;font-weight:700;color:inherit}

/* About / Contact */
.about{display:grid;gap:40px;align-items:center}
@media (min-width:900px){.about{grid-template-columns:1.1fr 1fr;gap:64px}}
.abstract{aspect-ratio:1;max-width:420px;margin:0 auto;position:relative;border-radius:var(--r-xl);background:var(--light);overflow:hidden}
.abstract i{position:absolute;border-radius:50%;background:rgba(11,110,245,.12)}
.abstract svg{position:absolute;inset:0;width:100%;height:100%}
.facts{display:grid;gap:12px;margin-top:28px}
.facts div{display:flex;gap:12px;align-items:flex-start;font-weight:600;font-size:15px}
.contact{display:grid;gap:24px}
@media (min-width:900px){.contact{grid-template-columns:1.2fr .8fr}}
.form{display:grid;gap:14px}
.form label{display:grid;gap:6px;font-size:13px;font-weight:700}
.form input,.form textarea,.form select{border:1px solid var(--border);border-radius:12px;padding:14px 16px;background:#fff;width:100%;font-weight:500}
.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid var(--blue);outline-offset:0;border-color:var(--blue)}
.form textarea{min-height:120px;resize:vertical}
.contact-side{display:grid;gap:14px;align-content:start}
.contact-card{background:var(--light);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:6px}
.contact-card .t{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gray)}
.contact-card a{font-weight:800;font-size:18px;letter-spacing:-.02em;color:var(--black)}.contact-card a:hover{color:var(--blue)}

/* FAQ */
.faq{max-width:820px;margin:0 auto;display:grid;gap:12px}
.faq details{border:1px solid var(--border);border-radius:20px;background:#fff;overflow:hidden}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;font-size:17px;font-weight:700;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{flex:none;width:32px;height:32px;border-radius:50%;background:var(--light);display:flex;align-items:center;justify-content:center;color:var(--blue);font-style:normal;font-size:20px;line-height:1;transition:transform .25s}
.faq details[open] summary i{transform:rotate(45deg)}
.faq details p{padding:0 22px 22px;color:var(--gray);font-size:15px}

/* CTA + footer */
.cta{text-align:center}.cta .h2{font-size:clamp(34px,4.8vw,56px)}
.cta .btn{margin-top:32px}
.footer{background:var(--black);color:#fff;padding:56px 0 32px;background-image:var(--chev)}
.footer-top{display:flex;flex-direction:column;gap:28px}
@media (min-width:900px){.footer-top{flex-direction:row;justify-content:space-between;align-items:flex-start}}
.footer-top img{height:44px;width:auto}
.footer p{color:rgba(255,255,255,.6);font-size:14px;margin-top:12px}
.footer-cols{display:grid;gap:24px;grid-template-columns:1fr 1fr}
@media (min-width:600px){.footer-cols{grid-template-columns:repeat(3,auto);gap:48px}}
.footer-cols b{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:12px}
.footer-cols a{display:block;color:rgba(255,255,255,.8);font-size:14px;font-weight:600;padding:5px 0}.footer-cols a:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:36px;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;color:rgba(255,255,255,.5);font-size:13px}
.footer .lang{font-size:13px}

/* Legal / thanks */
.prose{max-width:760px;margin:0 auto}
.prose h2{font-size:22px;font-weight:800;letter-spacing:-.02em;margin:40px 0 12px}
.prose p{color:var(--gray);margin-bottom:14px}
.page-head{background:var(--black);color:#fff;padding:150px 0 72px;background-image:var(--chev)}
.page-head .h1{font-size:clamp(34px,5vw,56px)}

/* Reveal */
.reveal{animation:reveal .8s cubic-bezier(.2,.7,.2,1) both}
.d1{animation-delay:.1s}.d2{animation-delay:.2s}.d3{animation-delay:.3s}
@keyframes reveal{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .swirl span,.float-card,.phone{animation:none!important}
  .spark path,.chart .line{stroke-dashoffset:0}.spark .area,.chart .area{opacity:1}.bars i{transform:none}
}

/* Trabajos */
.works-viewport{overflow:hidden;padding:4px 0 24px}
.works{display:flex;gap:24px;width:max-content;animation:marquee 60s linear infinite}
.works:hover{animation-play-state:paused}
.work{flex:0 0 300px}
@media (min-width:700px){.work{flex-basis:360px}}
@media (min-width:1000px){.work{flex-basis:384px}}
.work-shot{aspect-ratio:16/9.5;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:0 12px 40px rgba(10,10,10,.06)}
.work-shot img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.work .h3{font-size:24px;margin-top:20px}

/* Showcase: capturas completas en columnas */
.showcase{padding-bottom:0;overflow:hidden}
.wrap-wide{max-width:1400px}
.strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;height:620px;position:relative;max-width:1200px;margin:0 auto}
.strip::after{content:"";position:absolute;left:0;right:0;bottom:0;height:160px;background:linear-gradient(rgba(255,255,255,0),#fff);pointer-events:none}
.strip-item{margin:0;overflow:hidden;border:1px solid var(--border);border-radius:8px 8px 0 0;background:#fff;box-shadow:0 12px 40px rgba(10,10,10,.06)}
.strip-item img{width:100%;height:auto;display:block}
@media (max-width:899px){.strip{grid-template-columns:repeat(3,minmax(0,1fr));height:460px;gap:12px}.strip-item:nth-child(n+4){display:none}}
@media (max-width:599px){.strip{grid-template-columns:repeat(2,minmax(0,1fr));height:380px}.strip-item:nth-child(n+3){display:none}}

/* Pricing: pack destacado más grande + tienda como tarjeta */
@media (min-width:900px){.plans{align-items:center}.plan-featured{transform:scale(1.06);padding:44px 36px;z-index:1}.plan-featured .price strong{font-size:60px}}
.plan-wide{margin-top:28px;display:grid;gap:20px;align-items:center}
@media (min-width:900px){.plan-wide{grid-template-columns:1.4fr auto auto;gap:40px;padding:32px 36px}}
.plan-wide .btn{white-space:nowrap}

/* CTA final con animación */
.cta-split{text-align:left}
.cta-grid{display:grid;gap:40px;align-items:center}
@media (min-width:900px){.cta-grid{grid-template-columns:1.1fr 1fr;gap:56px}}
.rive-wrap{display:flex;justify-content:center}
.rive-wrap canvas{width:100%;max-width:520px;height:auto;aspect-ratio:1}
@media (prefers-reduced-motion:reduce){.works{animation:none!important}}

/* Órbitas alrededor del logo */
.about-logo .orbit-logo{position:relative;z-index:2;width:54%;max-width:none;height:auto;background:#fff;border-radius:24px;padding:20px;box-shadow:var(--shadow-soft)}
.orbit{position:absolute;inset:0;border-radius:50%;border:1px dashed rgba(11,110,245,.25);animation:spin 40s linear infinite}
.orbit-b{inset:13%;animation-duration:28s;animation-direction:reverse}
.sat{position:absolute;width:48px;height:48px;margin:-24px;border-radius:14px;background:#fff;color:var(--blue);display:flex;align-items:center;justify-content:center;box-shadow:0 14px 34px rgba(11,110,245,.16);border:1px solid var(--border);animation:spin 40s linear infinite reverse}
.orbit-b .sat{animation-duration:28s;animation-direction:normal}
.sat svg{width:22px;height:22px}
.s1{top:50%;left:0}.s2{top:6.7%;left:75%}.s3{top:93.3%;left:75%}
.s4{top:0;left:50%}.s5{top:75%;left:6.7%}.s6{top:75%;left:93.3%}
@media (prefers-reduced-motion:reduce){.orbit,.sat{animation:none!important}}

/* Reserva de llamada */
.booking{display:grid;gap:0;background:#fff;border:1px solid var(--border);border-radius:24px;overflow:hidden;box-shadow:var(--shadow-soft)}
@media (min-width:900px){.booking{grid-template-columns:260px 1fr 240px}}
.bk-side{padding:28px;display:flex;flex-direction:column;gap:10px;border-bottom:1px solid var(--border)}
.bk-logo{width:100%;max-width:170px;height:auto;display:block;margin-bottom:8px}
.bk-host{font-size:13px;font-weight:700;color:var(--gray)}
.bk-meta{display:grid;gap:10px;margin-top:10px}
.bk-meta li{display:flex;align-items:center;gap:10px;font-weight:600;font-size:15px}
.bk-meta svg{width:18px;height:18px;stroke:var(--blue);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.bk-cal,.bk-slots{padding:28px}
.bk-slots{border-top:1px solid var(--border)}
@media (min-width:900px){.bk-side{border-bottom:0;border-right:1px solid var(--border)}.bk-slots{border-top:0;border-left:1px solid var(--border)}}
.cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:17px;letter-spacing:-.01em}
.cal-nav{display:flex;gap:6px}.cal-nav button{width:32px;height:32px;border-radius:10px;border:1px solid var(--border);background:#fff;cursor:pointer;font-size:18px;line-height:1}.cal-nav button:hover{border-color:var(--blue);color:var(--blue)}
.seg{display:flex;border:1px solid var(--border);border-radius:10px;overflow:hidden;font-size:12px;font-weight:700}.seg span{padding:6px 10px}.seg .on{background:var(--black);color:#fff}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal-w{font-size:11px;font-weight:700;color:var(--gray);text-align:center;padding-bottom:6px;letter-spacing:.06em}
.cal-d{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:12px;font-weight:700;font-size:15px;position:relative}
.cal-d.past,.cal-d.off{color:#B4BAC6;font-weight:600}
.cal-d.free{background:var(--light);color:var(--black);cursor:pointer;transition:background .2s,color .2s}.cal-d.free:hover{background:var(--blue);color:#fff}
.cal-d.today::after{content:"";position:absolute;bottom:6px;width:4px;height:4px;border-radius:50%;background:var(--blue)}
.cal-d.sel{background:var(--black);color:#fff}
.slots{display:grid;gap:8px;max-height:320px;overflow:auto;padding-right:4px}
.slot{border:1px solid var(--border);border-radius:12px;padding:12px;text-align:center;font-weight:700;font-size:15px;cursor:pointer;transition:border-color .2s,color .2s}
.slot:hover{border-color:var(--blue);color:var(--blue)}.slot.sel{background:var(--black);color:#fff;border-color:var(--black)}
/* Formulario mejorado */
.contact-alt{display:grid;gap:24px}
@media (min-width:900px){.contact-alt{grid-template-columns:1.3fr .7fr}}
.form-pro{background:#fff;border:1px solid var(--border);border-radius:24px;padding:36px;gap:20px;box-shadow:var(--shadow-soft)}
.form-head{display:grid;gap:6px;margin-bottom:6px}
.form-row{display:grid;gap:18px}@media (min-width:600px){.form-row{grid-template-columns:1fr 1fr}}
.form-pro label{gap:8px}.form-pro label span{font-size:13px;font-weight:700;color:var(--black);display:flex;align-items:center;gap:8px}.form-pro label span::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--blue);flex:none}
.form-pro input,.form-pro textarea{background:var(--light);border:1px solid transparent;border-radius:14px;padding:15px 16px;font-size:15px;transition:background .2s,border-color .2s}
.form-pro input::placeholder,.form-pro textarea::placeholder{color:#8A94A6}
.form-pro input:hover,.form-pro textarea:hover{border-color:var(--border)}
.form-pro input:focus,.form-pro textarea:focus{background:#fff;border-color:var(--blue);outline:none;box-shadow:0 0 0 4px rgba(11,110,245,.14)}
.form-pro textarea{min-height:140px}
.form-foot{display:flex;flex-direction:column;gap:10px;margin-top:4px}
@media (min-width:600px){.form-foot{flex-direction:row;align-items:center;justify-content:space-between}.form-foot .tip{margin:0}}
.contact-link{color:var(--black);background:#fff;border:1px solid var(--border);transition:transform .3s,box-shadow .3s,border-color .3s}
.contact-link strong{font-size:18px;letter-spacing:-.02em;font-weight:800}
.contact-link:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft);border-color:var(--blue);color:var(--black)}

.offices ul{display:grid;gap:10px;margin-top:6px}
.offices li{display:grid;gap:2px;font-size:14px}.offices li b{font-weight:800}.offices li span{color:var(--gray);font-weight:500;font-size:13px}

/* Pantalla del portátil: escena dinámica */
.scr-scene{position:absolute;inset:12px 12px 0;overflow:hidden;border-radius:12px 12px 0 0;z-index:1}
.scr-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(11,110,245,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(11,110,245,.08) 1px,transparent 1px);background-size:40px 40px;mask-image:radial-gradient(ellipse at 50% 60%,#000 30%,transparent 80%)}
.scr-chart{position:absolute;left:0;right:0;bottom:0;width:100%;height:62%}
.scr-line{stroke-dasharray:1200;stroke-dashoffset:1200;animation:scrDraw 3.2s cubic-bezier(.2,.7,.2,1) .4s forwards;filter:drop-shadow(0 6px 12px rgba(11,110,245,.35))}
.scr-area{opacity:0;animation:fadein 1.4s ease 2.4s forwards}
@keyframes scrDraw{to{stroke-dashoffset:0}}
.scr-sweep{position:absolute;top:-20%;bottom:-20%;width:38%;left:-40%;background:linear-gradient(90deg,transparent,rgba(11,110,245,.07),transparent);transform:skewX(-14deg);animation:sweep 7s ease-in-out infinite 1s}
@keyframes sweep{0%{left:-40%}60%,100%{left:120%}}
.scr-pill{position:absolute;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid rgba(11,110,245,.18);color:var(--black);font-size:clamp(9px,1.1vw,12px);font-weight:700;padding:7px 11px;border-radius:999px;box-shadow:0 14px 30px rgba(11,110,245,.18);opacity:0;animation:pillIn .8s cubic-bezier(.2,.7,.2,1) forwards,drift 6s ease-in-out infinite 1.2s;white-space:nowrap}
.scr-pill i{width:8px;height:8px;border-radius:50%;background:var(--blue);flex:none;box-shadow:0 0 0 3px rgba(11,110,245,.25)}
.scr-pill.p1{left:6%;top:14%;animation-delay:.8s,1.6s}.scr-pill.p2{right:6%;top:20%;animation-delay:1.4s,2.2s}
.scr-pill.p3{left:8%;bottom:30%;animation-delay:2s,2.8s}.scr-pill.p4{right:8%;bottom:22%;animation-delay:2.6s,3.4s}
@keyframes pillIn{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}
.rclaim{padding:0 22% 12%;align-items:center}
.scr-pill.p1{left:5%;top:8%}.scr-pill.p2{right:5%;top:8%}
@media (min-width:900px) and (max-width:1200px){.scr-pill.p2{display:none}.scr-pill.p3{bottom:24%}.scr-pill.p4{bottom:16%}}
@media (max-width:899px){.scr-pill.p3,.scr-pill.p4{display:none}}

/* CTA final con fondo dinámico */
.cta-glow{background:var(--light);overflow:hidden}
.cta-glow .h2{color:var(--black)}
.cta-bg{position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='%230B6EF5' fill-opacity='0.06'%3E%3Cpolygon points='40,26 50,35 45,35 40,30 35,35 30,35'/%3E%3Cpolygon points='40,38 50,47 45,47 40,42 35,47 30,47'/%3E%3C/g%3E%3C/svg%3E")}
.blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;animation:blobMove 18s ease-in-out infinite alternate}
.blob.b1{width:520px;height:520px;left:-160px;top:-200px;background:rgba(11,110,245,.35)}
.blob.b2{width:460px;height:460px;right:-140px;bottom:-220px;background:rgba(11,110,245,.28);animation-duration:22s;animation-delay:-6s}
.blob.b3{width:320px;height:320px;left:50%;top:60%;background:rgba(255,255,255,.9);animation-duration:26s;animation-delay:-12s}
@keyframes blobMove{from{transform:translate(0,0) scale(1)}to{transform:translate(60px,-40px) scale(1.15)}}
.cta-glow .btn-primary{box-shadow:0 24px 60px rgba(11,110,245,.4)}
.cta-glow .tip{color:var(--gray)}

/* Formulario oscuro de alto contraste */
.form-dark{background:var(--black);border-color:var(--black);background-image:var(--chev);color:#fff;box-shadow:0 40px 90px rgba(10,10,10,.25)}
.form-dark label span{color:rgba(255,255,255,.85)}
.form-dark input,.form-dark textarea{background:#fff;color:var(--black);border:1px solid transparent}
.form-dark input::placeholder,.form-dark textarea::placeholder{color:#8A94A6}
.form-dark input:hover,.form-dark textarea:hover{border-color:rgba(11,110,245,.5)}
.form-dark input:focus,.form-dark textarea:focus{background:#fff;border-color:var(--blue);box-shadow:0 0 0 4px rgba(11,110,245,.35)}
.form-dark .tip{color:rgba(255,255,255,.6)}
.form-dark .btn-primary{box-shadow:0 16px 40px rgba(11,110,245,.5)}
.contact-link{background:var(--light);border-color:transparent}
.contact-link .t{color:var(--blue)}
.offices{background:#fff;border:1px solid var(--border)}

.form-dark{border:1px solid rgba(11,110,245,.35);position:relative}
.form-dark::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--blue);border-radius:24px 24px 0 0}
.form-dark label span{color:#fff;display:flex;align-items:center;gap:6px}
.form-dark label span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue)}
.form-dark input,.form-dark textarea{border:2px solid transparent}
.form-dark input:hover,.form-dark textarea:hover{border-color:var(--blue)}
.form-dark .form-foot{border-top:1px solid rgba(255,255,255,.12);padding-top:20px}
.form-dark .tip{color:rgba(255,255,255,.75)}
.offices{background:var(--black);color:#fff;border:0;background-image:var(--chev)}
.offices .t{color:var(--blue)}
.offices li span{color:rgba(255,255,255,.7)}
.offices li{padding-left:14px;border-left:2px solid var(--blue)}
.contact-link{background:#fff;border:1px solid var(--border)}
.contact-link .t{color:var(--blue)}
.contact-link strong{color:var(--black)}
.contact-link:hover{border-color:var(--blue);background:var(--light)}

.cal-d{border:0;background:transparent;font-family:inherit;color:var(--black)}
.cal-d.past{color:#B4BAC6;cursor:default}
.cal-d.empty{visibility:hidden}
.cal-nav button:disabled{opacity:.35;cursor:default;border-color:var(--border);color:var(--gray)}
.slot{background:#fff;font-family:inherit}
.slots:empty::before{content:"Selecciona un día del calendario para ver las horas disponibles.";display:block;color:var(--gray);font-size:13px;font-weight:600;padding:8px 0}
#cal-confirm[aria-disabled="true"]{opacity:.45;pointer-events:auto;cursor:not-allowed;box-shadow:none}
/* Dónde estamos: alto contraste */
.offices{background:#fff;color:var(--black);border:1px solid var(--border);background-image:none}
.offices .t{color:var(--gray)}
.offices li{padding-left:14px;border-left:3px solid var(--blue)}
.offices li b{color:var(--black);font-size:15px}
.offices li span{color:#3E4654;font-weight:600;font-size:13.5px}

.rive-box{width:100%;aspect-ratio:14/9;border-radius:18px;background:var(--light);overflow:hidden;margin-bottom:24px;display:flex;align-items:center;justify-content:center}
.rive-box canvas{width:100%;height:100%;display:block}

.phone .phone-anim{background:#0F1522;display:flex;align-items:center;justify-content:center;background-image:radial-gradient(ellipse 80% 60% at 50% 30%,rgba(11,110,245,.5),rgba(11,110,245,0) 70%)}
.phone .phone-anim canvas{width:100%;height:100%;display:block}



.rive-box video{width:100%;height:100%;object-fit:cover;display:block}


.rive-corner{position:absolute;right:calc(var(--pad) - 60px);top:-40px;width:260px;height:195px;z-index:3;pointer-events:auto}
.rive-corner canvas{width:100%;height:100%;display:block;mix-blend-mode:multiply;filter:brightness(1.07) contrast(1.05)}
@media (max-width:1200px){.rive-corner{width:170px;height:128px;top:-72px;right:calc(var(--pad) - 24px)}}
@media (max-width:900px){.rive-corner{position:static;width:180px;height:135px;margin:-20px auto 8px}}



/* Cabecera de contacto con CTA lateral */
.head-split{display:grid;gap:32px;margin-bottom:48px;align-items:center}
@media (min-width:900px){.head-split{grid-template-columns:1.1fr .9fr;gap:48px}}
.head-cta{background:#fff;border:1px solid var(--border);border-left:4px solid var(--blue);border-radius:20px;padding:26px 28px;display:grid;gap:10px;box-shadow:var(--shadow-soft)}
.head-cta .t{font-size:18px;font-weight:800;letter-spacing:-.02em}
.quick{display:grid;gap:8px;margin-top:6px}
.quick-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:var(--light);color:var(--black);transition:background .25s,transform .25s}
.quick-item:hover{background:#E1EBFD;transform:translateX(3px);color:var(--black)}
.quick-item .qi{flex:none;width:38px;height:38px;border-radius:11px;background:#fff;color:var(--blue);display:flex;align-items:center;justify-content:center;border:1px solid var(--border)}
.quick-item .qi svg{width:18px;height:18px}
.quick-item b{display:block;font-size:14px;font-weight:800}
.quick-item small{display:block;font-size:12px;color:var(--gray);font-weight:600}
/* Separador fuerte entre FAQ y CTA final */
.cta{position:relative;border-top:6px solid var(--blue)}
.cta::before{content:"";position:absolute;left:50%;top:-6px;transform:translateX(-50%);width:160px;height:6px;background:var(--black)}

.head-anim{width:100%;max-width:300px;aspect-ratio:1;justify-self:end;margin:-70px 0 -110px}
.head-anim canvas{width:100%;height:100%;display:block}
@media (max-width:900px){.head-anim{max-width:200px;justify-self:center;margin:-30px 0 -60px}}

.contact-card .t{display:flex;align-items:center;gap:10px}
.cc-ic{flex:none;width:32px;height:32px;border-radius:10px;background:#fff;color:var(--blue);display:flex;align-items:center;justify-content:center;border:1px solid var(--border)}
.cc-ic svg{width:16px;height:16px}
.offices .cc-ic{background:var(--light)}







.seo-box{max-width:480px;justify-self:end;width:100%}
.seo-box .list{gap:16px}
.seo-box .list li{font-size:17px}
@media (max-width:900px){.seo-box{max-width:none;justify-self:stretch}}




/* Onboarding (gracias.html) */
.wrap-narrow{max-width:880px}
.ob-timeline{display:flex;align-items:center;justify-content:center;gap:10px;margin:32px auto 0;flex-wrap:wrap}
.ob-timeline span{display:grid;gap:2px;font-size:12px;font-weight:600;color:var(--gray);text-align:center;min-width:88px}
.ob-timeline span b{color:var(--black);font-size:13px}
.ob-timeline i{width:40px;height:2px;background:var(--blue);opacity:.5;border-radius:2px}
@media (max-width:600px){.ob-timeline i{display:none}.ob-timeline{gap:16px}}
.ob-form{gap:18px;padding:40px}
@media (max-width:600px){.ob-form{padding:24px 18px}}
.ob-step{display:flex;gap:16px;align-items:flex-start;padding-top:28px;margin-top:10px;border-top:1px solid var(--border)}
.ob-step:first-child{border-top:0;padding-top:0;margin-top:0}
.ob-step .h3{font-size:20px;margin-bottom:4px}
.ob-num{flex:none;width:40px;height:40px;border-radius:12px;background:var(--black);color:#fff;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;letter-spacing:.04em}
.form-pro label .hint{font-size:12px;color:var(--gray);font-weight:500;display:block}
.form-pro label .hint::before{display:none}
.form-pro select{background:var(--light);border:1px solid transparent;border-radius:14px;padding:15px 16px;font-size:15px}
.chk-grid{display:grid;gap:10px;grid-template-columns:1fr}
@media (min-width:600px){.chk-grid{grid-template-columns:1fr 1fr}}
.chk-col{display:grid;gap:10px}
.chk{display:flex;gap:12px;align-items:flex-start;background:var(--light);border:1px solid transparent;border-radius:14px;padding:14px 16px;cursor:pointer;transition:border-color .2s,background .2s;font-weight:600}
.chk:hover{border-color:var(--border)}
.chk input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--blue);flex:none}
.chk span{display:grid;gap:2px;font-size:14px}
.chk span::before{display:none}
.chk span b{font-weight:700;color:var(--black)}
.chk span small{font-size:12px;color:var(--gray);font-weight:500}
.chk:has(input:checked){background:#fff;border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,110,245,.12)}
.chk-inline{background:transparent;padding:6px 0}
.chk-inline:hover{border-color:transparent}
.chk-inline:has(input:checked){box-shadow:none;border-color:transparent}
.chk-inline a{color:var(--blue);text-decoration:underline}
.drop{display:block;cursor:pointer}
.drop input{position:absolute;width:1px;height:1px;opacity:0}
.drop-in{display:grid;justify-items:center;gap:6px;text-align:center;border:2px dashed var(--border);border-radius:18px;padding:32px 20px;background:var(--light);transition:border-color .2s,background .2s;color:var(--gray)}
.drop-in svg{width:28px;height:28px;color:var(--blue)}
.drop-in b{color:var(--black);font-size:15px}
.drop-in small{font-size:12px}
.drop:hover .drop-in,.drop:focus-within .drop-in{border-color:var(--blue);background:#fff}
.ob-foot{border-top:1px solid var(--border);padding-top:24px;margin-top:6px}
.ob-foot .tip a{color:var(--blue);font-weight:700}

/* Onboarding: specificity fixes */
.page-head .ob-timeline span{color:rgba(255,255,255,.8)}
.page-head .ob-timeline span b{color:#fff}
.page-head .ob-timeline i{opacity:.9}
.form-pro label.chk{display:flex;gap:12px;align-items:flex-start}
.form-pro label.chk span{display:grid;gap:2px;align-items:start}
.form-pro label.chk span::before{display:none}
.form-pro label.chk-inline{display:flex}
.form-pro label.drop{display:block;position:relative}
.form-pro label.drop .drop-in{display:grid;justify-items:center;gap:6px}
.form-pro label.drop .drop-in::before{display:none}
.form-pro label .chk-grid,.form-pro label .chk-col{margin-top:2px}

/* Responsive fixes */
html,body{overflow-x:hidden}
.rstage{overflow:visible}
@media (max-width:899px){
  .laptop{width:min(640px,86%)}
  .scr-pill{font-size:11px;padding:6px 10px}
  .scr-pill.p2,.scr-pill.p4{display:none}
  .h1{font-size:clamp(32px,9.5vw,44px)}
  .h2{font-size:clamp(26px,7.5vw,36px)}
  .price strong{font-size:44px!important}
  .btn-lg{width:100%;justify-content:center}
  .hero-actions{display:grid;gap:10px}
  .hero-actions .btn{width:100%;justify-content:center}
  .hero-bullets{gap:8px 14px}
  .footer-cols{grid-template-columns:1fr 1fr}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr}
  .bento{grid-template-columns:1fr}.bento .span-2,.bento .tile{grid-column:auto}
  .tile .num{font-size:40px}
  .metrics{grid-template-columns:1fr 1fr}
  table,.rows div{font-size:14px}
  .rows div{gap:12px}.rows div b{white-space:nowrap}
  .ob-timeline span{min-width:70px}
}
@media (max-width:480px){
  .footer-cols{grid-template-columns:1fr}
  .metrics{grid-template-columns:1fr}
  .rows div{flex-wrap:wrap}
}
img,svg,video,canvas{max-width:100%}
.browser img,.phone img{max-width:none;width:100%}

/* Separación clara entre reseñas y la sección siguiente */
.reviews{position:relative;padding-bottom:0}
.reviews .rstage{padding-bottom:0}
@media (min-width:900px){.reviews .rstage{min-height:520px}}

/* WhatsApp flotante: icono redondo, saludo en gif dentro del círculo */
.wa-wrap{position:fixed;right:22px;bottom:22px;z-index:60;width:60px;height:60px}
.wa-wrap .wa-float{position:relative;display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:#25D366;color:#fff;box-shadow:0 14px 40px rgba(37,211,102,.35);overflow:hidden;isolation:isolate;transition:transform .25s,box-shadow .25s,background .3s}
.wa-wrap .wa-float:hover{transform:scale(1.08);color:#fff}
.wa-float svg{width:32px;height:32px;flex:none;position:relative;z-index:2;transition:opacity .3s,transform .3s}
.wa-float span{display:none}
.wa-float .wa-gif{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;border-radius:50%;opacity:0;transform:scale(.7);transition:opacity .3s,transform .3s;z-index:1}
.wa-wrap.say-hi .wa-float{background:#fff;box-shadow:0 0 0 3px #25D366,0 14px 40px rgba(37,211,102,.35)}
.wa-wrap.say-hi .wa-float svg{opacity:0;transform:scale(.6)}
.wa-wrap.say-hi .wa-gif{opacity:1;transform:scale(1)}
.wa-wrap .wa-bubble{position:absolute;right:72px;bottom:12px;background:#0A0A0A;color:#fff;font-size:13px;font-weight:700;padding:10px 14px;border-radius:14px 14px 4px 14px;white-space:nowrap;opacity:0;transform:translateX(8px);transition:opacity .3s,transform .3s;pointer-events:none}
.wa-wrap.say-hi .wa-bubble{opacity:1;transform:none}
@media (max-width:899px){.wa-wrap{bottom:calc(76px + env(safe-area-inset-bottom));right:14px;width:54px;height:54px}.wa-wrap .wa-float{width:54px;height:54px}.wa-float svg{width:28px;height:28px}.wa-wrap .wa-bubble{display:none}}
@media (prefers-reduced-motion:reduce){.wa-float,.wa-float svg,.wa-float .wa-gif,.wa-wrap .wa-bubble{transition:none}}
.page-head+.sec{padding-top:64px}


/* SEO pillar (LandPress content-generator layout) */
.nav-light .nav-menu a{color:var(--black)}
.lp-hero .em,.sec .h2 .em,.lp-faq .em,.lp-testi .em{color:var(--blue)}.lp-dark .em{color:var(--blue)}
.nav-light .burger span{background:var(--black)}
.lp-hero{background:#fff;color:var(--black);padding:150px 0 96px;position:relative;overflow:hidden}
.lp-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:46%;background:var(--light);z-index:0}
.lp-hero .wrap{position:relative;z-index:1}
.lp-hero .hero-inner{text-align:center;max-width:820px;margin:0 auto}
.lp-hero .h1{font-size:clamp(36px,5.2vw,60px)}
.lp-hero .lead{color:var(--gray);margin:20px auto 0;max-width:560px}
.lp-checks{list-style:none;display:flex;justify-content:center;gap:22px;flex-wrap:wrap;margin:22px 0 0;padding:0;font-size:14px;font-weight:600;color:var(--gray)}
.lp-checks li{display:flex;align-items:center;gap:8px}
.ok{width:18px;height:18px;border-radius:50%;background:var(--blue);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:none}.ok svg{width:11px;height:11px}
.lp-shot{max-width:1040px;margin:56px auto 0}
.lp-shot-frame{background:var(--black);border-radius:24px;padding:14px;box-shadow:0 40px 100px rgba(10,10,10,.28)}
.lp-shot .browser{border-radius:14px;overflow:hidden}
.lp-shot .browser-bar{background:#F3F5F9}
.lp-shot .browser-body img{width:100%;height:auto;display:block}
.pill-tag{display:inline-flex;align-items:center;background:#fff;color:var(--blue);border:1px solid var(--border);font-size:12px;font-weight:700;letter-spacing:.04em;padding:6px 14px;border-radius:999px;margin-bottom:16px}
.pill-dark{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:#fff}
.sec-light .pill-tag{background:#fff}
.lp-tabs{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff}
.lp-tabs .wrap{display:flex;justify-content:center;gap:0}
.lp-tabs a{flex:1;text-align:center;padding:18px 12px;font-size:14px;font-weight:700;color:var(--black);border-right:1px solid var(--border);display:flex;justify-content:center;align-items:center;gap:8px}
.lp-tabs a:last-child{border-right:0}.lp-tabs a:hover{color:var(--blue)}
.lp-tabs .new{font-size:10px;background:var(--blue);color:#fff;padding:2px 6px;border-radius:6px;letter-spacing:.06em}
.feat{display:grid;gap:36px;align-items:center}
@media (min-width:900px){.feat{grid-template-columns:1fr 1.1fr;gap:72px}.feat-rev .feat-text{order:2}.feat-rev .feat-media{order:1}}
.lp-list{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px;font-weight:600}
.lp-list li{display:flex;gap:12px;align-items:flex-start}.lp-list .chev{flex:none;margin-top:4px;width:12px;height:14px}
.lp-frame{position:relative;background:var(--light);border-radius:28px;padding:40px 0 40px 40px;overflow:hidden}
.sec-light .lp-frame{background:#fff}
.lp-frame .browser{border-radius:14px 0 0 14px;box-shadow:0 30px 70px rgba(11,110,245,.14);border:1px solid var(--border);border-right:0}
.lp-frame .browser-body img{width:100%;height:auto;display:block;max-height:380px;object-fit:cover;object-position:top}
.lp-frame-img{padding:0;background:var(--light)}
.lp-frame-img>img{width:100%;height:100%;display:block;object-fit:cover;aspect-ratio:16/10;border-radius:28px}
.lp-frame-img .lp-float{left:auto;right:16px;bottom:16px}
.lp-float{position:absolute;left:16px;bottom:16px}
.lp-menu{position:absolute;left:-8px;bottom:24px;background:#fff;border-radius:16px;box-shadow:0 24px 60px rgba(10,10,10,.16);padding:8px;display:grid;gap:2px;width:min(240px,62%)}
.lp-menu-item{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:12px}.lp-menu-item:hover{background:var(--light)}
.lp-menu-item .ic{width:36px;height:36px;border-radius:10px;background:var(--black);display:flex;align-items:center;justify-content:center;flex:none}.lp-menu-item .ic .chev{width:14px;height:16px}
.lp-menu-item b{display:block;font-size:14px}.lp-menu-item small{color:var(--gray);font-weight:600;font-size:12px}
@media (max-width:899px){.lp-menu{position:static;transform:none;width:auto;margin:16px 16px 0 0}.lp-float{display:none}.lp-frame{padding:24px 0 24px 24px}}
.lp-dark{position:relative;background:var(--black);color:#fff;padding:40px 0 var(--sec);background-image:var(--chev);margin-top:110px}
.lp-wave{position:absolute;left:0;right:0;top:0;width:100%;height:90px;transform:translateY(-100%);display:block}
.lp-arrow{display:inline-block;width:88px;height:44px;vertical-align:middle;margin-left:10px}
@media (max-width:899px){.lp-arrow{display:none}}
.lp-dark .h2{color:#fff}
.lp-success{display:grid;gap:40px;align-items:center;padding-top:24px}
@media (min-width:900px){.lp-success{grid-template-columns:1fr 1.1fr;gap:72px}}
.lp-facts{display:grid;gap:14px}
.lp-fact{display:flex;gap:16px;align-items:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:18px 20px;font-weight:600;font-size:15px;line-height:1.4}
.lp-fact .ok{width:28px;height:28px;background:#fff;color:var(--black)}.lp-fact .ok svg{width:14px;height:14px}
.lp-fact b{color:#fff;font-weight:800}
.lp-testi{display:grid;gap:40px;align-items:center}
@media (min-width:900px){.lp-testi{grid-template-columns:1fr 1fr;gap:72px}}
.lp-testi-track{position:relative;min-height:300px}
.lp-testi-card{position:absolute;inset:0;background:#fff;border:1px solid var(--border);border-radius:24px;padding:40px 36px;text-align:center;box-shadow:0 30px 80px rgba(11,110,245,.10);opacity:0;transform:translateY(12px);transition:opacity .5s,transform .5s;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}
.lp-testi-card.on{opacity:1;transform:none;pointer-events:auto;position:relative}
.lp-testi-card .tweet-avatar{width:64px;height:64px;margin-bottom:10px}
.lp-testi-card p{margin-top:12px;font-size:16px;line-height:1.55;font-weight:500;text-wrap:pretty}
.lp-dots{display:flex;gap:8px;margin-top:28px}
.lp-dots button{width:8px;height:8px;border-radius:50%;border:0;background:#C9D8F3;cursor:pointer;padding:0;transition:width .3s,background .3s}
.lp-dots button.on{width:26px;border-radius:999px;background:var(--blue)}
.lp-faq{display:grid;gap:40px;align-items:start}
@media (min-width:900px){.lp-faq{grid-template-columns:1fr 1.4fr;gap:72px}}
.lp-faq .faq{max-width:none;margin:0}



.lp-frame-lottie{padding:0;background:var(--light);aspect-ratio:16/10;display:flex;align-items:center;justify-content:center}
.lp-frame-lottie .lottie{width:100%;height:100%}
.lp-frame-lottie .lottie svg{display:block}

/* Hero SEO: fondo dinámico */
.lp-deco{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.lp-hero>.wrap{position:relative;z-index:1}
.lp-grid{position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='%230B6EF5' fill-opacity='.07'%3E%3Cpolygon points='32,20 40,27 36,27 32,23 28,27 24,27'/%3E%3Cpolygon points='32,30 40,37 36,37 32,33 28,37 24,37'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 35%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 50% 35%,#000 20%,transparent 75%);animation:lpGrid 24s linear infinite}
@keyframes lpGrid{to{background-position:0 -128px}}
.lp-ch{position:absolute;display:block;opacity:.0;animation:lpRise 9s ease-in-out infinite}
.lp-ch svg{width:100%;height:auto;display:block}
.c1{left:8%;top:62%;width:34px;animation-delay:0s}
.c2{left:16%;top:30%;width:22px;animation-delay:2.2s}
.c3{left:5%;top:14%;width:18px;animation-delay:4.5s}
.c4{right:9%;top:58%;width:40px;animation-delay:1.2s}
.c5{right:17%;top:24%;width:20px;animation-delay:3.4s}
.c6{right:5%;top:10%;width:26px;animation-delay:5.6s}
@keyframes lpRise{0%{opacity:0;transform:translateY(40px)}20%{opacity:.55}70%{opacity:.35}100%{opacity:0;transform:translateY(-80px)}}
.lp-trend{position:absolute;width:200px;opacity:.16}
.lp-trend path{stroke-dasharray:320;stroke-dashoffset:320;animation:lpDraw 6s ease-in-out infinite}
.lp-trend.t1{left:3%;top:40%}
.lp-trend.t2{right:3%;top:34%;transform:scaleX(1)}
.lp-trend.t2 path{animation-delay:3s}
@keyframes lpDraw{0%{stroke-dashoffset:320}45%,70%{stroke-dashoffset:0}100%{stroke-dashoffset:-320}}
@media (max-width:899px){.lp-trend,.c2,.c3,.c5{display:none}.c1{left:4%;top:70%}.c4{right:4%;top:66%}}
@media (prefers-reduced-motion:reduce){.lp-grid,.lp-ch,.lp-trend path{animation:none}.lp-ch{opacity:.3}.lp-trend path{stroke-dashoffset:0}}

/* Áreas táctiles ≥44px en móvil */
@media (max-width:899px){
  .cal-nav button{width:44px;height:44px}
  .cal-grid{gap:4px}
  .cal-d{min-height:44px}
  .slot{min-height:44px}
}

/* SEO para IA */
.ai-stage{position:relative;padding-bottom:40px}
.ai-logos{position:absolute;left:50%;bottom:0;transform:translateX(-50%);display:flex;gap:12px}
.ai-chip{width:120px;height:56px;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 14px 34px rgba(10,10,10,.08);display:flex;align-items:center;justify-content:center;padding:10px 14px}
.ai-chip img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.ai-claude{gap:8px;padding:8px 14px}.ai-claude b{font-size:17px;font-weight:700;letter-spacing:-.01em;color:#141413}.ai-claude-mark{width:46px;height:31px;flex:none;display:block}
.ai-claude-mark svg{width:100%!important;height:100%!important}
@media (max-width:599px){.ai-logos{gap:8px}.ai-chip{width:96px;height:48px;padding:8px 10px}}

.ai-chat{background:#fff;border:1px solid var(--border);border-radius:24px;box-shadow:0 40px 100px rgba(11,110,245,.16);padding:18px 20px 26px;display:grid;gap:14px}
.ai-chat-top{display:flex;align-items:center;gap:6px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.ai-dot{width:9px;height:9px;border-radius:50%;background:#D9DEE7}
.ai-tag{margin-left:auto;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gray)}
.ai-msg{font-size:15px;line-height:1.5;border-radius:18px;padding:12px 16px;max-width:88%}
.ai-user{justify-self:end;background:var(--black);color:#fff;border-bottom-right-radius:6px}
.ai-bot{background:var(--light);color:var(--black);border-bottom-left-radius:6px;display:grid;gap:10px;max-width:100%}
.ai-bot p{margin:0}
.ai-pick{background:#fff;border-radius:14px;padding:12px 14px;display:grid;gap:4px;border:2px solid var(--blue);box-shadow:0 10px 26px rgba(11,110,245,.15)}
.ai-pick b{font-weight:800}.ai-pick span{color:var(--gray);font-size:14px}
.ai-src{font-size:12px;font-weight:700;color:var(--blue)}
.ai-dim{border-color:transparent;box-shadow:none;opacity:.55}

/* Chat IA en vivo */
.ai-chat-top{gap:10px}
.ai-brand{width:26px;height:26px;border-radius:7px;display:block}
.ai-brand-name{font-size:15px;font-weight:700;letter-spacing:-.01em}
.ai-thread{display:grid;gap:14px;min-height:300px;align-content:start}
.ai-row{display:flex;gap:10px;align-items:flex-start}
.ai-avatar{width:28px;height:28px;border-radius:50%;flex:none;margin-top:4px}
.ai-row .ai-bot{flex:1}
.ai-user,.ai-row{opacity:0;transform:translateY(10px);transition:opacity .35s,transform .35s}
.ai-user.in,.ai-row.in{opacity:1;transform:none}
.ai-rev{display:none;opacity:0;transform:translateY(6px);transition:opacity .4s,transform .4s}
.ai-rev.in{display:grid;opacity:1;transform:none;animation:aiIn .4s ease}
p.ai-rev.in{display:block}
@keyframes aiIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.ai-typing{display:none;gap:5px;padding:4px 0}
.ai-typing.in{display:flex}
.ai-typing i{width:7px;height:7px;border-radius:50%;background:#8A94A6;animation:aiDot 1s infinite ease-in-out}
.ai-typing i:nth-child(2){animation-delay:.15s}.ai-typing i:nth-child(3){animation-delay:.3s}
@keyframes aiDot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.ai-type.caret::after{content:"";display:inline-block;width:2px;height:1em;background:currentColor;margin-left:2px;vertical-align:-2px;animation:aiCaret .8s steps(1) infinite}
@keyframes aiCaret{50%{opacity:0}}
.ai-input{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border);border-radius:999px;padding:10px 10px 10px 18px;font-size:14px;color:#8A94A6}
.ai-input i{width:30px;height:30px;border-radius:50%;background:var(--black);position:relative}
.ai-input i::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;border-left:2px solid #fff;border-top:2px solid #fff;transform:translate(-50%,-30%) rotate(45deg)}
.ai-done .ai-user,.ai-done .ai-row{opacity:1;transform:none}
.ai-done .ai-rev{display:grid;opacity:1;transform:none}.ai-done p.ai-rev{display:block}
@media (max-width:599px){.ai-thread{min-height:340px}.ai-msg{font-size:14px}}

.ai-feats{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.ai-feat{display:inline-flex;align-items:center;gap:8px;background:var(--light);color:var(--black);font-weight:700;font-size:14px;padding:10px 14px;border-radius:999px}
.ai-feat svg{width:18px;height:18px;color:var(--blue);flex:none}
#seo-ia .feat-text .h2{max-width:460px;text-wrap:balance}
#seo-ia .feat-text .lead{max-width:480px}

/* Marquesina de logos y franjas: siempre en movimiento (petición del cliente) */
@media (prefers-reduced-motion:reduce){
  .marquee{animation:marquee 40s linear infinite!important}
  .works{animation:marquee 60s linear infinite!important}
}

.lp-dots{display:flex;gap:8px;align-items:center}
.lp-dots button{position:relative;width:8px;height:8px;padding:0;border:0;border-radius:999px;background:#C9D8F3;cursor:pointer;transition:width .3s,background .3s;box-sizing:border-box;flex:none}
.lp-dots button.on{width:24px;background:var(--blue)}
.lp-dots button::after{content:"";position:absolute;inset:-18px -6px}

/* Mensaje de estado de formularios */
.form-msg{margin:0;padding:14px 16px;border-radius:12px;font-weight:700;font-size:14px;background:#EEF4FF;color:#0A0A0A}
.form-msg:empty{display:none}
.form-msg.ok{background:#E8F7EE;color:#0F6B3A}
.form-msg.err{background:#FDECEC;color:#9B1C1C}

/* ===== Blog ===== */
.page-blog .nav,.page-article .nav{background:rgba(255,255,255,.92);backdrop-filter:blur(12px)}
.bl-hero{padding:150px 0 40px;position:relative;overflow:hidden;background:#fff}
.bl-hero::before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='%230B6EF5' fill-opacity='.06'%3E%3Cpolygon points='32,20 40,27 36,27 32,23 28,27 24,27'/%3E%3Cpolygon points='32,30 40,37 36,37 32,33 28,37 24,37'/%3E%3C/g%3E%3C/svg%3E");-webkit-mask-image:linear-gradient(#000,transparent);mask-image:linear-gradient(#000,transparent);pointer-events:none}
.bl-hero .wrap{position:relative}
.bl-hero .h1{max-width:820px;margin-top:10px}
.bl-hero .lead{max-width:600px;margin-top:18px}
.bl-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}
.bl-chip{border:1px solid var(--border);background:#fff;color:var(--black);font-weight:700;font-size:14px;padding:10px 16px;border-radius:999px;cursor:pointer;min-height:44px;transition:background .2s,color .2s,border-color .2s}
.bl-chip:hover{border-color:var(--blue)}
.bl-chip.on{background:var(--black);border-color:var(--black);color:#fff}
.bl-list{padding-top:24px}
.bl-cover{position:relative;aspect-ratio:16/10;border-radius:20px;overflow:hidden;background:#0A0A0A var(--chev);display:flex;align-items:center;justify-content:center}
.bl-cover::before{content:"";position:absolute;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(11,110,245,.55),rgba(11,110,245,0) 70%);transition:transform .6s}
.bl-cover[data-cat="web"],.bl-cover[data-cat="ads"]{background-color:#EEF4FF;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='%230B6EF5' fill-opacity='.10'%3E%3Cpolygon points='32,20 40,27 36,27 32,23 28,27 24,27'/%3E%3Cpolygon points='32,30 40,37 36,37 32,33 28,37 24,37'/%3E%3C/g%3E%3C/svg%3E")}
.bl-cover[data-cat="web"]::before,.bl-cover[data-cat="ads"]::before{background:radial-gradient(circle,rgba(11,110,245,.22),rgba(11,110,245,0) 70%)}
.bl-cover-ic{position:relative;width:76px;height:76px;border-radius:22px;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 20px 50px rgba(11,110,245,.45);transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.bl-cover-ic svg{width:36px;height:36px}
.bl-cover-lg .bl-cover-ic{width:104px;height:104px;border-radius:28px}.bl-cover-lg .bl-cover-ic svg{width:48px;height:48px}
.bl-featured{display:grid;gap:28px;align-items:center;color:var(--black);background:#fff;border:1px solid var(--border);border-radius:28px;padding:16px;margin-bottom:28px;transition:box-shadow .3s,transform .3s}
.bl-featured:hover,.bl-card:hover{color:var(--black);box-shadow:0 30px 70px rgba(11,110,245,.14);transform:translateY(-3px)}
.bl-featured:hover .bl-cover-ic,.bl-card:hover .bl-cover-ic{transform:translateY(-6px) rotate(-6deg)}
.bl-featured:hover .bl-cover::before,.bl-card:hover .bl-cover::before{transform:scale(1.15)}
@media (min-width:900px){.bl-featured{grid-template-columns:1.2fr 1fr;padding:18px 40px 18px 18px;gap:48px}}
.bl-featured .bl-body{padding:8px 8px 16px;display:grid;gap:12px;align-content:center}
.bl-featured .h2{font-size:clamp(26px,3vw,38px)}
.bl-badge{justify-self:start;background:var(--black);color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px}
.bl-read{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--blue)}
.bl-read .arrow{width:18px;height:18px;transition:transform .3s}.bl-featured:hover .bl-read .arrow{transform:translateX(4px)}
.bl-grid{display:grid;gap:24px;grid-template-columns:1fr}
@media (min-width:640px){.bl-grid{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.bl-grid{grid-template-columns:repeat(3,1fr)}}
.bl-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:24px;padding:12px;color:var(--black);transition:box-shadow .3s,transform .3s}
.bl-card[hidden],.bl-featured[hidden]{display:none}
.bl-card .bl-body{padding:18px 10px 12px;display:flex;flex-direction:column;gap:10px;flex:1}
.bl-card .h3{font-size:19px;line-height:1.3}
.bl-card .muted{font-size:15px}
.bl-cat{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.bl-meta{margin-top:auto;font-size:13px;font-weight:600;color:var(--gray)}
.bl-empty{text-align:center;padding:40px 0}
.bl-cta-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:32px}
/* Artículo */
.ar-hero{padding:140px 0 0;background:#fff}
.ar-narrow{max-width:860px}
.ar-crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;font-weight:600;color:var(--gray);margin-bottom:22px}.ar-crumbs a{color:var(--gray)}.ar-crumbs a:hover{color:var(--blue)}
.ar-hero .h1{font-size:clamp(34px,5vw,58px);margin-top:10px}
.ar-hero .lead{margin-top:18px}
.ar-meta{display:flex;align-items:center;gap:12px;margin-top:28px}
.ar-av{width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--border);object-fit:contain;padding:6px}
.ar-meta b{display:block;font-size:15px}.ar-meta small{display:block;font-size:13px;color:var(--gray);font-weight:600}
.ar-cover-wrap{margin-top:40px;max-width:1100px}.ar-cover-wrap .bl-cover{aspect-ratio:21/9;border-radius:28px}
.ar-layout{display:grid;gap:40px;padding:56px var(--pad) var(--sec);max-width:1100px}
@media (min-width:1000px){.ar-layout{grid-template-columns:260px 1fr;gap:64px}}
.ar-toc{align-self:start}
@media (min-width:1000px){.ar-toc{position:sticky;top:100px}}
.ar-toc-t{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gray);margin:0 0 12px}
.ar-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:4px;border-left:2px solid var(--border)}
.ar-toc a{display:block;padding:8px 14px;margin-left:-2px;border-left:2px solid transparent;color:var(--gray);font-weight:600;font-size:14px}
.ar-toc a:hover{color:var(--black)}.ar-toc a.on{color:var(--blue);border-color:var(--blue)}
.ar-side-cta{margin-top:28px;background:var(--light);border-radius:20px;padding:20px;display:grid;gap:6px}.ar-side-cta p{margin:0}.ar-side-cta .btn{margin-top:10px;font-size:14px;padding:12px 16px}
@media (max-width:999px){.ar-side-cta{display:none}}
.prose{font-size:18px;line-height:1.75;color:#1F2430;max-width:720px}
.prose>*+*{margin-top:1.1em}
.prose h2{font-size:clamp(26px,3vw,32px);line-height:1.2;letter-spacing:-.02em;color:var(--black);margin-top:2em;scroll-margin-top:100px}
.prose h3{font-size:21px;color:var(--black);margin-top:1.6em}
.prose ol{padding-left:1.2em}.prose ol li+li{margin-top:.4em}.prose ol li::marker{color:var(--blue);font-weight:800}
.prose a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.prose blockquote{margin:1.8em 0;padding:4px 0 4px 24px;border-left:4px solid var(--blue);font-size:22px;line-height:1.5;font-weight:700;color:var(--black)}.prose blockquote p{margin:0}
.ar-key{background:var(--light);border-radius:20px;padding:22px 24px}.ar-key-t{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin:0 0 10px}.ar-key .list{gap:10px}.ar-key .list li{font-size:16px}
.ar-fig{margin:1.8em 0}.ar-fig-ph{aspect-ratio:16/9;border-radius:18px;background:repeating-linear-gradient(135deg,#E3ECFB 0 12px,#EEF4FF 12px 24px);display:flex;align-items:center;justify-content:center;font:600 13px ui-monospace,Menlo,monospace;color:var(--gray)}
.ar-fig figcaption{font-size:14px;color:var(--gray);margin-top:10px;text-align:center}
.ar-inline-cta{margin:2em 0;background:var(--black) var(--chev);color:#fff;border-radius:22px;padding:24px;display:grid;gap:16px;align-items:center}
.ar-inline-cta p{margin:0;color:rgba(255,255,255,.8);font-size:16px;line-height:1.5}
.ar-inline-cta .btn{text-decoration:none;justify-self:start}
@media (min-width:700px){.ar-inline-cta{grid-template-columns:1fr auto;padding:28px 32px}}
.ar-share{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:3em;padding-top:24px;border-top:1px solid var(--border);font-size:14px;font-weight:700}
.ar-share span{color:var(--gray);margin-right:4px}
.ar-share a{text-decoration:none;color:var(--black);border:1px solid var(--border);border-radius:999px;padding:10px 16px;min-height:44px;display:inline-flex;align-items:center}.ar-share a:hover{border-color:var(--blue);color:var(--blue)}
.ar-progress{position:fixed;left:0;right:0;top:0;height:3px;background:var(--blue);transform-origin:0 50%;transform:scaleX(0);z-index:80}

.bl-hero .em,.ar-hero .em,.h1 .em{color:var(--blue)}

/* CTAs del blog */
[data-cta="web"] .cta-v:not([data-v="web"]),[data-cta="seo"] .cta-v:not([data-v="seo"]),[data-cta="contacto"] .cta-v:not([data-v="contacto"]){display:none!important}
.ar-toc .ar-side-cta{margin-top:28px;background:var(--black) var(--chev);color:#fff;border-radius:22px;padding:22px;display:grid;gap:8px;position:relative;overflow:hidden;box-shadow:0 24px 60px rgba(10,10,10,.18)}
.ar-toc .ar-side-cta::before{content:"";position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(11,110,245,.55),transparent 70%)}
.ar-toc .ar-side-cta>*{position:relative}
.ar-side-t{margin:0;font-size:18px;font-weight:800;letter-spacing:-.01em;color:#fff}
.ar-side-d{margin:0;font-size:14px;line-height:1.5;color:rgba(255,255,255,.72)}
.ar-toc .ar-side-cta .btn{margin:10px 0 0;padding:13px 16px;font-size:14px;color:#fff;border-left:0;justify-content:center;display:inline-flex;gap:8px;white-space:nowrap}
.ar-toc .ar-side-cta .btn:hover{color:#fff}
.ar-toc .ar-side-cta .btn .arrow{width:16px;height:16px}
.ar-inline-cta{box-shadow:0 24px 60px rgba(10,10,10,.18);position:relative;overflow:hidden}
.ar-inline-cta::before{content:"";position:absolute;left:-60px;bottom:-80px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(11,110,245,.5),transparent 70%)}
.ar-inline-cta>*{position:relative}
.ar-inline-cta .btn{color:#fff;white-space:nowrap;display:inline-flex;gap:8px}.ar-inline-cta .btn .arrow{width:16px;height:16px}
.cta .tip a{color:var(--blue);font-weight:700}
.bl-read-sm{font-size:14px;white-space:nowrap;margin-top:4px}
.bl-read-sm .arrow{width:16px;height:16px;transition:transform .3s}
.bl-card:hover .bl-read-sm .arrow{transform:translateX(4px)}
.bl-card .h3{transition:color .2s}.bl-card:hover .h3{color:var(--blue)}
