/* Onest (SIL Open Font License, ver ../fonts/OFL.txt), servida desde este mismo dominio. */
@font-face{font-family:"Onest";font-style:normal;font-weight:400 800;font-display:swap;
  src:url("../fonts/onest-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Onest";font-style:normal;font-weight:400 800;font-display:swap;
  src:url("../fonts/onest-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

  :root{
    --ink:#0b0b12;
    --ink-2:#2a2a36;
    --muted:#6b6b7b;
    --muted-2:#8a8a99;
    --line:#ececf2;
    --bg:#fbfbfd;
    --card:#f7f7fb;
    --violet:#6d4dff;
    --violet-2:#8b6cff;
    --violet-soft:#efeaff;
    --violet-ink:#5a3fe0;
    --panel:#15151c;
    --panel-2:#1d1d26;
    --panel-line:#2b2b36;
    --radius:22px;
    --shadow-card:0 1px 0 #fff inset, 0 20px 50px -30px rgba(40,30,90,.18);
    --font:"Onest", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    font-family:var(--font);
    color:var(--ink);
    background:var(--bg);
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  a{color:inherit;text-decoration:none}
  img{display:block;max-width:100%}
  .wrap{max-width:1480px;margin:0 auto;padding:0 clamp(16px,5.5vw,96px)}

  /* ---------- Logo ---------- */
  .logo-mark{width:44px;height:44px;flex:none;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(91,61,245,.35))}
  .beta{
    font-size:12px;font-weight:600;letter-spacing:.06em;
    color:var(--violet-ink);background:var(--violet-soft);
    padding:5px 11px;border-radius:999px;
  }

  /* ---------- Chrome icon ---------- */
  .chrome{
    width:26px;height:26px;border-radius:50%;flex:none;position:relative;
    background:conic-gradient(from -60deg,#ea4335 0 120deg,#fbbc05 120deg 240deg,#34a853 240deg 360deg);
  }
  .chrome::after{
    content:"";position:absolute;inset:26%;border-radius:50%;
    background:#1a73e8;box-shadow:0 0 0 2.5px #fff;
  }

  /* ---------- Nav ---------- */
  header{position:sticky;top:0;z-index:50;background:rgba(251,251,253,.8);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:88px}
  .brand{display:flex;align-items:center;gap:13px;white-space:nowrap;font-weight:600;font-size:21px;letter-spacing:-.01em}
  .brand .beta{margin-left:4px}
  .links{display:flex;gap:42px;font-size:17px;font-weight:500;color:var(--ink-2)}
  .links a{position:relative;padding:6px 0}
  .links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:var(--violet);transform:scaleX(0);transition:transform .25s ease}
  .links a:hover::after{transform:scaleX(1)}
  .btn{
    display:inline-flex;align-items:center;gap:14px;border-radius:999px;
    font-family:inherit;font-weight:600;font-size:17px;cursor:pointer;border:0;white-space:nowrap;
    transition:transform .2s ease, box-shadow .2s ease, background-color .2s ease;
  }
  .btn-dark{background:var(--ink);color:#fff;padding:15px 27px 15px 22px}
  .btn-dark:hover{transform:translateY(-2px);box-shadow:0 14px 30px -12px rgba(11,11,18,.55)}
  .btn-ghost{background:#fff;color:var(--ink);padding:17px 38px;border:1.5px solid #d9d9e2}
  .btn-ghost:hover{border-color:var(--ink);transform:translateY(-2px)}
  .btn-lg{font-size:18px;padding:20px 36px}
  .btn .arrow{transition:transform .2s ease}
  .btn:hover .arrow{transform:translateX(4px)}

  /* ---------- Hero ---------- */
  .hero{position:relative;padding:72px 0 40px}
  .hero::before{
    content:"";position:absolute;right:-10%;top:-10%;width:65%;height:120%;z-index:-1;
    background:radial-gradient(closest-side,rgba(139,108,255,.20),rgba(139,108,255,0) 70%);
    filter:blur(10px);
  }
  .hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;align-items:center}
  .eyebrow{font-size:13px;letter-spacing:.22em;color:var(--muted);font-weight:500;text-transform:uppercase}
  h1{
    margin-top:26px;
    font-size:clamp(40px,4.6vw,80px);line-height:.98;letter-spacing:-.045em;font-weight:700;
  }
  h1 .soft{color:#5e5b6e}
  h1 .ln{display:block;white-space:nowrap}
  .lead{margin-top:30px;font-size:clamp(18px,1.55vw,23px);line-height:1.45;color:#56566a;max-width:620px}
  .lead b{color:var(--ink);font-weight:600}
  .cta{display:flex;gap:18px;margin-top:38px;flex-wrap:wrap}
  .made{display:flex;align-items:center;gap:22px;margin-top:28px;padding-left:26px}
  .made .aurex-logo{width:48px;height:48px;flex:none;object-fit:contain}
  .made small{display:block;font-size:15px;color:var(--muted)}
  .made strong{display:block;margin-top:6px;font-weight:500;font-size:17px}

  /* Mockup */
  .stage{position:relative;height:560px;perspective:1600px}
  .shot{
    position:absolute;border-radius:18px;overflow:hidden;
    background-size:cover;background-position:center;
    box-shadow:0 30px 60px -25px rgba(30,20,70,.45);
    border:4px solid rgba(255,255,255,.9);
  }
  .shot .tag{
    position:absolute;left:12px;bottom:14px;font-size:14px;font-weight:500;color:#fff;
    padding:6px 13px;border-radius:999px;background:rgba(20,20,28,.55);backdrop-filter:blur(8px);
    border:1px solid rgba(255,255,255,.25);
  }
  .shot-l{
    left:-10px;top:150px;width:220px;height:300px;transform:rotateY(18deg) rotateZ(-3deg);
    background-image:url("../img/cabin.jpg"),
                     
                     linear-gradient(180deg,#7a82a8,#2b2a38 60%,#b86b2d);
  }
  .shot-r{
    right:-30px;top:140px;width:220px;height:320px;transform:rotateY(-18deg) rotateZ(3deg);
    background-image:url("../img/lake.jpg"),
                     linear-gradient(180deg,#a8b6d6,#415064 55%,#1d2530);
  }
  .shot-r .tag{left:auto;right:auto;left:22px}
  .play{
    position:absolute;left:50%;top:44%;translate:-50% -50%;width:66px;height:66px;border-radius:50%;
    background:rgba(15,15,20,.55);backdrop-filter:blur(6px);display:grid;place-items:center;
    border:1px solid rgba(255,255,255,.25);
  }
  .play svg{width:26px;height:26px;margin-left:4px}

  .panel{
    position:absolute;left:50%;top:20px;width:min(460px,66%);
    transform:translateX(-46%) rotateY(-9deg) rotateX(3deg) rotateZ(-1.5deg);
    background:linear-gradient(180deg,#1b1b23,#111118);
    border-radius:26px;padding:26px 24px 28px;color:#e9e9f2;
    border:1px solid #2e2e3a;
    box-shadow:
      0 0 0 6px rgba(255,255,255,.05),
      0 60px 90px -30px rgba(60,40,160,.55),
      0 30px 60px -30px rgba(0,0,0,.6),
      inset 0 1px 0 rgba(255,255,255,.08);
    animation:float 7s ease-in-out infinite;
  }
  @keyframes float{
    0%,100%{transform:translateX(-46%) rotateY(-9deg) rotateX(3deg) rotateZ(-1.5deg) translateY(0)}
    50%{transform:translateX(-46%) rotateY(-9deg) rotateX(3deg) rotateZ(-1.5deg) translateY(-10px)}
  }
  .panel-top{display:flex;justify-content:flex-end;gap:18px;color:#8d8d9c;margin-top:-8px}
  .panel-top svg{width:15px;height:15px}
  .panel-head{display:flex;align-items:center;gap:12px;margin-top:8px}
  .panel-head .logo-mark{width:42px;height:42px;filter:none}
  .panel-head b{font-size:20px;font-weight:600;white-space:nowrap}
  .panel-head .beta{background:#2c2a45;color:#b8a9ff;font-size:10px;padding:4px 8px}
  .tabs{display:grid;grid-template-columns:1fr 1fr;margin-top:22px;padding:5px;border-radius:14px;background:#191921;border:1px solid var(--panel-line)}
  .tabs button{
    font:inherit;font-size:16px;color:#a2a2b3;background:transparent;border:0;border-radius:10px;padding:11px;cursor:pointer;
    transition:background-color .2s ease,color .2s ease;
  }
  .tabs button.on{background:linear-gradient(180deg,#3b3363,#2b2650);color:#fff;border:1px solid #5b4bb0}
  .field{margin-top:14px;border-radius:14px;background:#1a1a22;border:1px solid var(--panel-line);padding:14px 14px 16px}
  .field label,.field .label-like{display:flex;align-items:center;gap:7px;font-size:13px;color:#cfcfdb}
  .field label svg,.field .label-like svg{width:13px;height:13px}
  .prompt{
    margin-top:10px;display:flex;justify-content:space-between;gap:10px;min-height:88px;
    border-radius:12px;background:#15151c;border:1px solid #262631;padding:14px;font-size:14px;color:#dcdce6;
  }
  .prompt .caret{display:inline-block;width:1px;height:1em;background:#b8a9ff;vertical-align:-2px;margin-left:2px;animation:blink 1s steps(2) infinite}
  @keyframes blink{50%{opacity:0}}
  .ibtn{width:36px;height:36px;border-radius:9px;background:#23232d;display:grid;place-items:center;flex:none;color:#aaa}
  .ibtn svg{width:17px;height:17px}
  .upload{display:flex;align-items:center;gap:16px;margin-top:12px;border-radius:14px;background:#1a1a22;border:1px solid var(--panel-line);padding:14px;font-size:14px;color:#dcdce6}
  .upload .ibtn{border-radius:50%}
  .gen{
    margin-top:18px;width:100%;display:flex;align-items:center;justify-content:center;gap:12px;
    padding:17px;border:0;border-radius:14px;font:inherit;font-size:18px;font-weight:500;color:#fff;cursor:pointer;
    background:linear-gradient(90deg,#6a4cff,#9a82ff);
    box-shadow:0 12px 30px -10px rgba(122,92,255,.7), inset 0 1px 0 rgba(255,255,255,.3);
    transition:filter .2s ease;
  }
  .gen:hover{filter:brightness(1.08)}
  .gen svg{width:16px;height:16px}

  /* Stats strip */
  .strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:56px;padding:26px 0}
  .strip-item{display:flex;align-items:center;gap:20px;padding:0 22px}
  .strip-item + .strip-item{border-left:1px solid var(--line)}
  .strip-item:first-child{padding-left:4px}
  .ico{
    width:58px;height:58px;border-radius:50%;flex:none;display:grid;place-items:center;
    background:#fff;border:1px solid #e6e6ee;box-shadow:0 8px 20px -14px rgba(0,0,0,.25)
  }
  .ico.sq{border-radius:14px}
  .ico svg{width:26px;height:26px}
  .strip-item b{display:block;font-size:18px;font-weight:600}
  .strip-item div span{display:block;margin-top:6px;color:var(--muted-2);font-size:16px}

  /* ---------- Funciones ---------- */
  .features{padding:110px 0 120px;background:linear-gradient(180deg,var(--bg),#f6f6fa)}
  .center{text-align:center}
  .pill{
    display:inline-block;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
    color:var(--violet-ink);background:var(--violet-soft);padding:9px 16px;border-radius:999px;
  }
  h2{
    margin-top:26px;font-size:clamp(38px,4.4vw,66px);line-height:1;letter-spacing:-.045em;font-weight:700;
  }
  h2 .soft{color:#6d6a7c}
  .sub{margin:26px auto 0;max-width:840px;font-size:clamp(17px,1.4vw,21px);line-height:1.45;color:#6b6b7b}

  .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px}
  .card{
    position:relative;background:linear-gradient(180deg,#fcfcfe,#f5f5f9);border:1px solid #ededf3;border-radius:var(--radius);
    padding:24px 24px 26px;box-shadow:var(--shadow-card);overflow:hidden;
    transition:transform .3s ease, box-shadow .3s ease;
  }
  .card:hover{transform:translateY(-4px);box-shadow:0 30px 60px -30px rgba(60,40,160,.28)}
  .card-head{display:flex;gap:20px;align-items:flex-start}
  .fi{width:60px;height:60px;border-radius:15px;background:var(--violet-soft);display:grid;place-items:center;flex:none;color:var(--violet)}
  .fi svg{width:28px;height:28px}
  .card h3{font-size:21px;font-weight:600;letter-spacing:-.015em;margin-top:6px}
  .card p{margin-top:8px;font-size:16px;line-height:1.45;color:#767687}
  .visual{margin-top:30px;height:200px;position:relative}

  /* card 1 */
  .ph{position:absolute;border-radius:14px;background-size:cover;background-position:center}
  .v1 .side{top:28px;bottom:32px;width:72px;filter:saturate(.9)}
  .v1 .side.l{left:-10px;background-image:url("../img/river.jpg"),linear-gradient(#9fb0cc,#324257)}
  .v1 .side.r{right:-10px;background-image:url("../img/mountains.jpg"),linear-gradient(#c8b8d8,#435070)}
  .v1 .main{left:14%;right:14%;top:0;bottom:0;border-radius:18px;
    background-image:url("../img/cabin.jpg"),linear-gradient(#1f2433,#0f1016 60%,#6e3f17);
    box-shadow:0 20px 40px -20px rgba(0,0,0,.5)}
  .promptbar{
    position:absolute;left:3%;right:3%;bottom:6px;display:flex;align-items:center;gap:12px;
    background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-radius:14px;padding:11px 12px 11px 14px;
    font-size:13px;color:#2a2a36;box-shadow:0 14px 30px -12px rgba(0,0,0,.35)
  }
  .promptbar svg.i{width:20px;height:20px;color:var(--violet)}
  .promptbar .go{margin-left:auto;width:30px;height:30px;border-radius:50%;background:var(--violet);display:grid;place-items:center;color:#fff}
  .promptbar .go svg{width:16px;height:16px}

  /* card 2 */
  .v2 .main{inset:0;border-radius:16px;
    background-image:url("../img/peaks.jpg"),linear-gradient(#b6c1d6,#34405a 55%,#101318)}
  .v2 .main::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.55))}
  .v2 .play{top:50%;width:62px;height:62px;z-index:1}
  .v2 .bar{position:absolute;left:18px;right:18px;bottom:14px;z-index:1;color:#fff;font-size:13px}
  .v2 .bar .row{display:flex;justify-content:space-between;align-items:center}
  .v2 .bar svg{width:16px;height:16px}
  .v2 .track{margin-top:8px;height:3px;border-radius:3px;background:rgba(255,255,255,.3);overflow:hidden}
  .v2 .track i{display:block;height:100%;width:4%;background:#fff;animation:prog 8s linear infinite}
  @keyframes prog{to{width:100%}}

  /* card 3 */
  .win{position:absolute;inset:0 -8px 0 -8px;background:#fff;border:1px solid #e8e8ef;border-radius:14px;box-shadow:0 20px 40px -26px rgba(0,0,0,.3);overflow:hidden;display:grid;grid-template-columns:130px 1fr;grid-template-rows:30px 1fr}
  .dots{grid-column:1/-1;display:flex;gap:6px;align-items:center;padding:0 12px;border-bottom:1px solid #f0f0f4}
  .dots i{width:9px;height:9px;border-radius:50%}
  .side-nav{border-right:1px solid #f0f0f4;padding:12px 8px;font-size:11px;color:#3b3b48}
  .side-nav div{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:7px;margin-bottom:3px}
  .side-nav div.on{background:var(--violet-soft);color:var(--violet-ink)}
  .side-nav svg{width:14px;height:14px}
  .files{padding:14px}
  .crumb{font-size:13px;color:#3b3b48;display:flex;gap:10px;align-items:center}
  .thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:16px}
  .thumbs figure{text-align:center;font-size:10.5px;color:#5c5c6c}
  .thumbs .t{aspect-ratio:1;border-radius:7px;background-size:cover;background-position:center;margin-bottom:7px;
    background-image:url("../img/cabin.jpg"),linear-gradient(#20263a,#0e0f14 60%,#8a4e1c)}
  .thumbs figure:nth-child(2) .t{background-position:30% center}
  .thumbs figure:nth-child(3) .t{background-position:60% center}
  .thumbs figure:nth-child(4) .t{background-position:80% center}
  .thumbs figure:nth-child(5) .t{background-position:100% center}

  /* card 4 */
  .v4{display:flex;flex-direction:column;justify-content:center}
  .scenes{display:flex;align-items:center;gap:12px}
  .scenes .s{flex:1;aspect-ratio:1.6;border-radius:10px;background-size:cover;background-position:center;box-shadow:0 10px 20px -12px rgba(0,0,0,.45)}
  .scenes .s1{background-image:url("../img/cabin.jpg"),linear-gradient(#20263a,#8a4e1c)}
  .scenes .s2{background-image:url("../img/lake.jpg"),linear-gradient(#a8b6d6,#1d2530)}
  .scenes .s3{background-image:url("../img/valley.jpg"),linear-gradient(#8d8a9a,#2d2b36)}
  .scenes svg{width:16px;height:16px;flex:none;color:#2a2a36}
  .scenes .more{font-weight:700;letter-spacing:2px;color:#2a2a36}
  .progress{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:40px}
  .progress i{height:6px;border-radius:6px;background:#e3e3ea}
  .progress i:first-child{background:var(--violet)}

  /* card 5 */
  .v5{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px}
  .cmp{border-radius:16px;background:#f0f0f5;text-align:center;padding:22px 10px}
  .cmp small{display:block;font-size:16px;color:#3b3b48}
  .cmp strong{display:block;font-size:46px;font-weight:600;letter-spacing:-.03em;margin:8px 0 6px}
  .cmp span{font-size:16px;color:#5c5c6c}
  .cmp.now{background:var(--violet-soft)}
  .cmp.now small,.cmp.now strong,.cmp.now span{color:var(--violet)}
  .v5 > svg{width:18px;height:18px;color:var(--violet)}

  /* card 6 */
  .v6{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px}
  .socials{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
  .soc{width:52px;height:52px;border-radius:14px;background:#fff;border:1px solid #ececf2;display:grid;place-items:center;box-shadow:0 8px 18px -14px rgba(0,0,0,.3)}
  .soc svg{width:27px;height:27px}
  .soc.add{background:#f0f0f5;color:#9a9aab;font-size:26px;font-weight:300;border-color:transparent;box-shadow:none}
  .soon{display:inline-flex;align-items:center;gap:10px;background:var(--violet-soft);color:#2a2a36;font-size:14px;padding:9px 18px;border-radius:999px}
  .soon i{width:9px;height:9px;border-radius:50%;background:var(--violet);animation:pulse 1.8s ease-in-out infinite}
  @keyframes pulse{50%{box-shadow:0 0 0 6px rgba(109,77,255,.15)}}

  /* ---------- Equipo / CTA ---------- */
  .team{padding:40px 0 110px;background:#f6f6fa}
  .cta-box{
    position:relative;overflow:hidden;border-radius:30px;background:var(--panel);color:#fff;
    padding:clamp(40px,6vw,80px);display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center;
  }
  .cta-box::before{content:"";position:absolute;right:-10%;top:-40%;width:60%;height:180%;background:radial-gradient(closest-side,rgba(139,108,255,.45),transparent);pointer-events:none}
  .cta-box h2{margin-top:18px;color:#fff}
  .cta-box h2 .soft{color:#a39cc6}
  .cta-box p{margin-top:20px;color:#b3b3c2;font-size:18px;line-height:1.5;max-width:520px}
  .cta-box .pill{background:#2c2a45;color:#c3b7ff}
  .agency{position:relative;justify-self:end;display:flex;flex-direction:column;align-items:flex-start;gap:22px}
  .agency .row{display:flex;align-items:center;gap:18px}
  .agency .mark{width:64px;height:64px;border-radius:18px;background:#1f1f29;border:1px solid #33333f;display:grid;place-items:center}
  .agency .mark img{width:40px;height:40px;object-fit:contain;filter:invert(1)}
  .agency small{color:#9d9daf;font-size:15px}
  .agency strong{display:block;font-size:22px;font-weight:600;margin-top:4px}
  .btn-light{background:#fff;color:var(--ink);padding:18px 30px 18px 22px}
  .btn-light:hover{transform:translateY(-2px);box-shadow:0 14px 30px -12px rgba(255,255,255,.35)}

  footer{border-top:1px solid var(--line);padding:30px 0;color:var(--muted);font-size:14px;background:var(--bg)}
  footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
  footer .brand{font-size:16px}
  footer .brand .logo-mark{width:32px;height:32px}

  /* ---------- Reveal ---------- */
  .rv{opacity:0;transform:translateY(22px);transition:opacity .8s ease, transform .8s cubic-bezier(.2,.7,.2,1)}
  .rv.in{opacity:1;transform:none}
  @media (prefers-reduced-motion:reduce){
    .rv{opacity:1;transform:none;transition:none}
    .panel,.prompt .caret,.v2 .track i,.soon i{animation:none}
  }

  /* ---------- Responsive ---------- */
  @media (max-width:1180px){
    .hero-grid{grid-template-columns:1fr}
    .stage{height:540px;max-width:720px;width:100%;margin:10px auto 0}
    .grid{grid-template-columns:repeat(2,1fr)}
    .strip{grid-template-columns:repeat(2,1fr);row-gap:30px}
    .strip-item:nth-child(3){border-left:0;padding-left:4px}
    .cta-box{grid-template-columns:1fr}
    .agency{justify-self:start}
  }
  @media (max-width:760px){
    .links{display:none}
    .hero-grid > *{min-width:0}
    h1 .ln{white-space:normal}
    .nav .beta{display:none}
    .nav .btn-dark .chrome{display:none}
    .nav{height:72px}
    .nav .btn-dark{padding:11px 16px;font-size:14px;gap:10px}
    .nav .btn-dark .chrome{width:20px;height:20px}
    .brand{font-size:16px;gap:10px}
    .nav .logo-mark{width:38px;height:38px}
    .hero{padding-top:40px}
    .cta .btn{width:100%;justify-content:center}
    .made{padding-left:0}
    .stage{height:470px}
    .panel{width:88%;padding:20px 16px 20px;transform:translateX(-50%);animation:none}
    .shot{display:none}
    .strip{grid-template-columns:1fr}
    .strip-item{border-left:0 !important;padding-left:4px}
    .grid{grid-template-columns:1fr}
    .features{padding:80px 0}
    .win{grid-template-columns:100px 1fr}
    .thumbs{grid-template-columns:repeat(3,1fr)}
    .thumbs figure:nth-child(n+4){display:none}
  }

/* ---------- Utilidades (sustituyen a los style="" en línea, bloqueados por la CSP) ---------- */
.sr-defs{position:absolute;width:0;height:0;overflow:hidden}
.c-white{color:#fff}
.c-violet{color:var(--violet)}
.ml-auto{margin-left:auto}
.rel{position:relative}
.dots .d1{background:#ff5f57}.dots .d2{background:#febc2e}.dots .d3{background:#28c840}
a:focus-visible,button:focus-visible{outline:3px solid var(--violet);outline-offset:3px;border-radius:12px}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:10px}
.skip:focus{left:16px}

/* ---------- Precios ---------- */
.pricing{padding:110px 0 60px;background:#f6f6fa}
.plans{display:grid;grid-template-columns:repeat(2,minmax(0,440px));justify-content:center;gap:24px;margin-top:56px}
.plan{position:relative;border-radius:var(--radius);background:#fff;border:1px solid #e6e6ee;padding:32px 30px 30px;box-shadow:var(--shadow-card);display:flex;flex-direction:column}
.plan.pro{background:var(--panel);color:#fff;border-color:#2e2e3a}
.plan h3{font-size:22px;font-weight:600}
.plan .price{margin-top:14px;font-size:52px;font-weight:700;letter-spacing:-.04em}
.plan .price small{font-size:17px;font-weight:500;color:var(--muted);letter-spacing:0;margin-left:6px}
.plan.pro .price small{color:#a8a8ba}
.plan ul{list-style:none;margin:22px 0 28px;display:grid;gap:12px;font-size:16px;line-height:1.4;color:#4a4a5c}
.plan.pro ul{color:#d6d6e2}
.plan li{display:flex;gap:10px;align-items:flex-start}
.plan li::before{content:"";flex:none;width:18px;height:18px;margin-top:1px;border-radius:50%;background:var(--violet-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236d4dff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/12px no-repeat}
.plan .btn{margin-top:auto;justify-content:center}
.plan .tagline{position:absolute;top:22px;right:22px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#c3b7ff;background:#2c2a45;padding:5px 11px;border-radius:999px}
.fine{margin:28px auto 0;max-width:760px;text-align:center;font-size:14px;line-height:1.55;color:var(--muted)}
.fine a{text-decoration:underline;text-underline-offset:2px}

/* ---------- Footer legal ---------- */
.foot-links{display:flex;gap:22px;flex-wrap:wrap}
.foot-links a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.disclaimer{max-width:1480px;margin:18px auto 0;padding:0 clamp(16px,5.5vw,96px);font-size:12.5px;line-height:1.5;color:var(--muted-2)}

/* ---------- Páginas de texto (legal) ---------- */
.doc{max-width:780px;margin:0 auto;padding:56px clamp(16px,5vw,32px) 96px;color:#2a2a36}
.doc h1{margin-top:0;font-size:clamp(34px,4vw,48px);line-height:1.05}
.doc .updated{margin-top:14px;color:var(--muted);font-size:15px}
.doc h2{margin-top:44px;font-size:24px;letter-spacing:-.02em;line-height:1.2}
.doc h3{margin-top:26px;font-size:18px;font-weight:600}
.doc p,.doc li{font-size:17px;line-height:1.65;color:#3d3d4d}
.doc p{margin-top:14px}
.doc ul{margin:12px 0 0 22px;display:grid;gap:8px}
.doc a{color:var(--violet-ink);text-decoration:underline;text-underline-offset:2px}
.doc table{width:100%;border-collapse:collapse;margin-top:16px;font-size:15px}
.doc th,.doc td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line);line-height:1.5}
.doc th{font-weight:600;background:var(--card)}
.table-wrap{overflow-x:auto}

/* ---------- Páginas de estado (instalar / premium / 404) ---------- */
.status{min-height:calc(100vh - 88px - 90px);display:grid;place-items:center;padding:48px 16px}
.status-card{max-width:560px;text-align:center}
.status-card .logo-mark{width:72px;height:72px;margin:0 auto}
.status-card h1{margin-top:24px;font-size:clamp(30px,4vw,42px);line-height:1.1}
.status-card p{margin-top:16px;font-size:18px;line-height:1.55;color:#56566a}
.status-card .cta{justify-content:center}

@media (max-width:760px){
  .plans{grid-template-columns:1fr}
  .pricing{padding:80px 0 40px}
  footer .wrap{flex-direction:column;align-items:flex-start}
  .doc table{font-size:14px}
}
.pro-tag{display:inline-block;vertical-align:middle;margin-left:6px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--violet-ink);background:var(--violet-soft);padding:3px 8px;border-radius:999px}
.gen{cursor:default}
