
    /* ── 0. RESET & BASE ─────────────────────────── */
    *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
    html{
      scroll-behavior:smooth;
      text-rendering:optimizeLegibility;
      -webkit-font-smoothing:antialiased;
      -moz-osx-font-smoothing:grayscale;
      font-size:16px;
    }
    body{
      font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
      background:#F8FAFC;
      color:#0F172A;
      line-height:1.6;
      min-height:100vh;
    }
    img,svg{display:block;max-width:100%}
    a{color:inherit;text-decoration:none}
    button{cursor:pointer;font-family:inherit;border:none;background:none}
    ul,ol{list-style:none}
    input,textarea,select{font-family:inherit}
    :focus-visible{outline:3px solid var(--sky);outline-offset:2px;border-radius:4px}

    /* ── 1. CSS VARIABLES ────────────────────────── */
    :root{
      --navy:     #0D3E7C;
      --blue:     --navy;
      --sky:      #2370B8;
      --emerald:  #689F38;
      --lime:     #7CB342;
      --slate-bg: #F8FAFC;
      --dark:     #0F172A;
      --muted:    #64748B;
      --white:    #ffffff;
      --border:   #E2E8F0;
      --r-xl:     1rem;
      --r-2xl:    1.25rem;
      --r-3xl:    1.5rem;
      --shadow-sm:0 1px 3px rgba(0,0,0,.08);
      --shadow-md:0 4px 16px rgba(0,0,0,.1);
      --shadow-lg:0 20px 40px rgba(11,31,72,.14);
    }

    /* ── 2. LAYOUT ───────────────────────────────── */
    .container{
      width:100%;
      max-width:1280px;
      margin-left:auto;
      margin-right:auto;
      padding-left:1rem;
      padding-right:1rem;
    }
    @media(min-width:640px){.container{padding-left:1.5rem;padding-right:1.5rem}}
    @media(min-width:1024px){.container{padding-left:2rem;padding-right:2rem}}

    .grid-2{display:grid;gap:1.5rem}
    .grid-3{display:grid;gap:1.5rem}
    .grid-4{display:grid;gap:1.5rem}
    @media(min-width:640px){.grid-2{grid-template-columns:repeat(2,1fr)}}
    @media(min-width:768px){.grid-3{grid-template-columns:repeat(3,1fr)}}
    @media(min-width:640px){.grid-4{grid-template-columns:repeat(2,1fr)}}
    @media(min-width:1024px){.grid-4{grid-template-columns:repeat(4,1fr)}}

    .flex{display:flex}
    .flex-col{flex-direction:column}
    .items-center{align-items:center}
    .justify-center{justify-content:center}
    .justify-between{justify-content:space-between}
    .flex-wrap{flex-wrap:wrap}
    .gap-1{gap:.25rem}
    .gap-2{gap:.5rem}
    .gap-3{gap:.75rem}
    .gap-4{gap:1rem}
    .gap-5{gap:1.25rem}
    .gap-6{gap:1.5rem}
    .gap-8{gap:2rem}
    .gap-10{gap:2.5rem}
    .gap-12{gap:3rem}
    .shrink-0{flex-shrink:0}
    .grow{flex-grow:1}
    .text-center{text-align:center}
    .text-left{text-align:left}
    .mx-auto{margin-left:auto;margin-right:auto}
    .ml-auto{margin-left:auto}
    .mb-2{margin-bottom:.5rem}
    .mb-3{margin-bottom:.75rem}
    .mb-4{margin-bottom:1rem}
    .mb-5{margin-bottom:1.25rem}
    .mb-6{margin-bottom:1.5rem}
    .mb-8{margin-bottom:2rem}
    .mb-10{margin-bottom:2.5rem}
    .mb-12{margin-bottom:3rem}
    .mb-14{margin-bottom:3.5rem}
    .mb-16{margin-bottom:4rem}
    .mt-3{margin-top:.75rem}
    .mt-6{margin-top:1.5rem}
    .mt-8{margin-top:2rem}
    .pt-1{padding-top:.25rem}
    .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
    .hidden{display:none!important}
    .block{display:block}
    .inline-flex{display:inline-flex}
    .relative{position:relative}
    .absolute{position:absolute}
    .fixed{position:fixed}
    .inset-x-0{left:0;right:0}
    .top-0{top:0}
    .bottom-0{bottom:0}
    .left-0{left:0}
    .right-0{right:0}
    .z-50{z-index:50}
    .overflow-hidden{overflow:hidden}
    .w-full{width:100%}
    .max-w-xl{max-width:36rem}
    .max-w-2xl{max-width:42rem}
    .max-w-3xl{max-width:48rem}
    .max-w-4xl{max-width:56rem}
    .max-w-sm{max-width:24rem}

    /* ── 3. TYPOGRAPHY ───────────────────────────── */
    .text-xs{font-size:.75rem;line-height:1.4}
    .text-sm{font-size:.875rem;line-height:1.5}
    .text-base{font-size:1rem;line-height:1.6}
    .text-lg{font-size:1.125rem;line-height:1.7}
    .text-xl{font-size:1.25rem;line-height:1.5}
    .text-2xl{font-size:1.5rem;line-height:1.3}
    .text-3xl{font-size:1.875rem;line-height:1.2}
    .text-4xl{font-size:2.25rem;line-height:1.15}
    .text-5xl{font-size:3rem;line-height:1.1}
    .text-6xl{font-size:3.75rem;line-height:1.05}
    @media(min-width:640px){
      .sm\:text-xl{font-size:1.25rem}
      .sm\:text-3xl{font-size:1.875rem;line-height:1.2}
      .sm\:text-4xl{font-size:2.25rem;line-height:1.15}
      .sm\:text-5xl{font-size:3rem;line-height:1.1}
    }
    @media(min-width:1024px){
      .lg\:text-5xl{font-size:3rem;line-height:1.05}
      .lg\:text-6xl{font-size:3.75rem;line-height:1.05}
    }
    .font-medium{font-weight:500}
    .font-semibold{font-weight:600}
    .font-bold{font-weight:700}
    .font-extrabold{font-weight:800}
    .font-black{font-weight:900}
    .tracking-wide{letter-spacing:.025em}
    .tracking-wider{letter-spacing:.05em}
    .tracking-widest{letter-spacing:.1em}
    .leading-snug{line-height:1.375}
    .leading-tight{line-height:1.25}
    .leading-relaxed{line-height:1.7}
    .leading-none{line-height:1}
    .uppercase{text-transform:uppercase}

    /* Colors */
    .text-white{color:#fff}
    .text-dark{color:#0F172A}
    .text-muted{color:#64748B}
    .text-navy{color:#0D3E7C}
    .text-sky{color:#2370B8}
    .text-emerald{color:#689F38}
    .text-lime{color:#7CB342}
    .text-slate-300{color:#CBD5E1}
    .text-slate-400{color:#94A3B8}
    .text-slate-500{color:#64748B}
    .text-slate-600{color:#475569}
    .text-emerald-300{color:#A7F3D0}
    .text-emerald-400{color:#7CB342}
    .text-orange-500{color:#F97316}
    .text-purple-600{color:#9333EA}

    /* ── 4. BACKGROUNDS ──────────────────────────── */
    .bg-white{background-color:#fff}
    .bg-dark{background-color:#0F172A}
    .bg-navy{background-color:#0D3E7C}
    .bg-slate-50{background-color:#F8FAFC}
    .bg-slate-100{background-color:#F1F5F9}
    .bg-blue-50{background-color:#EFF6FF}
    .bg-emerald-50{background-color:#ECFDF5}
    .bg-orange-50{background-color:#FFF7ED}
    .bg-purple-50{background-color:#FAF5FF}
    .bg-white-10{background-color:rgba(255,255,255,.1)}
    .bg-white-5{background-color:rgba(255,255,255,.05)}

    /* ── 5. BORDERS ──────────────────────────────── */
    .border{border:1px solid #E2E8F0}
    .border-slate-100{border-color:#F1F5F9}
    .border-slate-200{border-color:#E2E8F0}
    .border-white-10{border-color:rgba(255,255,255,.1)}
    .border-white-15{border-color:rgba(255,255,255,.15)}
    .border-white-20{border-color:rgba(255,255,255,.2)}
    .rounded-xl{border-radius:var(--r-xl)}
    .rounded-2xl{border-radius:var(--r-2xl)}
    .rounded-3xl{border-radius:var(--r-3xl)}
    .rounded-full{border-radius:9999px}

    /* ── 6. SHADOWS ──────────────────────────────── */
    .shadow-sm{box-shadow:var(--shadow-sm)}
    .shadow-md{box-shadow:var(--shadow-md)}
    .shadow-lg{box-shadow:var(--shadow-lg)}
    .shadow-xl{box-shadow:0 25px 50px -12px rgba(0,0,0,.18)}
    .shadow-2xl{box-shadow:0 40px 80px -16px rgba(0,0,0,.2)}

    /* ── 7. ANIMATIONS & KEYFRAMES ───────────────── */
    @keyframes fadeUp{
      from{opacity:0;transform:translateY(24px)}
      to  {opacity:1;transform:translateY(0)}
    }
    @keyframes shimmer{
      from{background-position:200% center}
      to  {background-position:-200% center}
    }
    @keyframes pulseCta{
      0%,100%{box-shadow:0 0 0 0 rgba(16,185,129,.45)}
      50%    {box-shadow:0 0 0 12px rgba(16,185,129,0)}
    }
    @keyframes bounce{
      0%,100%{transform:translateY(0)}
      50%    {transform:translateY(-8px)}
    }
    @keyframes growBar{
      from{width:0}
      to  {width:var(--bw,0%)}
    }
    @keyframes countUp{
      from{opacity:.3;transform:scale(.9)}
      to  {opacity:1;transform:scale(1)}
    }
    .anim-fade-up{animation:fadeUp .7s ease-out both}
    .anim-fade-up-d2{animation:fadeUp .7s .2s ease-out both}
    .anim-bounce{animation:bounce 2s ease-in-out infinite}
    .anim-pulse-cta{animation:pulseCta 2s ease-in-out infinite}

    /* ── 8. GRADIENT TEXT ────────────────────────── */
    .gradient-text{
      background:linear-gradient(90deg,#7CB342,#2370B8,#7CB342);
      background-size:200% auto;
      -webkit-background-clip:text;
      -webkit-text-fill-color:transparent;
      background-clip:text;
      animation:shimmer 3.5s linear infinite;
    }

    /* ── 9. NAV ──────────────────────────────────── */
    #site-header{
      position:fixed;top:0;left:0;right:0;z-index:50;
    }
    .nav-inner{
      background:rgba(11,31,72,.96);
      backdrop-filter:blur(12px);
      -webkit-backdrop-filter:blur(12px);
      border-bottom:1px solid rgba(255,255,255,.1);
    }
    .nav-bar{
      display:flex;
      align-items:center;
      justify-content:space-between;
      height:64px;
    }
    .nav-logo{display:flex;align-items:center;gap:.75rem;flex-shrink:0;text-decoration:none}
    .nav-logo-text .line1{display:block;color:#fff;font-weight:700;font-size:.8rem;letter-spacing:.08em;line-height:1.2}
    .nav-logo-text .line2{display:block;color:var(--lime);font-weight:600;font-size:.7rem;letter-spacing:.15em}
    .nav-links{display:none}
    @media(min-width:1024px){
      .nav-links{
        display:flex;align-items:center;gap:2rem;
      }
      .burger-btn{display:none!important}
    }
    .nav-link{
      color:#CBD5E1;font-size:.875rem;font-weight:500;
      text-decoration:none;transition:color .2s;
      padding-bottom:2px;border-bottom:2px solid transparent;
      transition:color .2s,border-color .2s;
    }
    .nav-link:hover{color:#fff;border-bottom-color:var(--lime)}
    .nav-cta{
      display:inline-flex;align-items:center;gap:.5rem;
      background:var(--emerald);color:#fff;font-size:.875rem;font-weight:700;
      padding:.625rem 1.25rem;border-radius:.75rem;
      transition:background .2s,transform .15s;
      text-decoration:none;margin-left:.5rem;
    }
    .nav-cta:hover{background:var(--lime);transform:scale(1.04)}
    .nav-cta:active{transform:scale(.96)}
    .burger-btn{
      background:none;border:none;color:#fff;padding:.5rem;
      border-radius:.5rem;transition:background .2s;
      display:flex;align-items:center;justify-content:center;
    }
    .burger-btn:hover{background:rgba(255,255,255,.1)}
    #mobile-menu{
      max-height:0;overflow:hidden;
      transition:max-height .35s cubic-bezier(.4,0,.2,1);
    }
    #mobile-menu.open{max-height:480px}
    .mobile-nav{padding:.5rem 1rem 1rem;border-top:1px solid rgba(255,255,255,.1)}
    .mobile-link{
      display:block;color:#CBD5E1;padding:.75rem 1rem;
      border-radius:.5rem;font-size:.875rem;font-weight:500;
      text-decoration:none;transition:color .2s,background .2s;
    }
    .mobile-link:hover{color:#fff;background:rgba(255,255,255,.08)}
    .mobile-cta{
      display:block;background:var(--emerald);color:#fff;
      padding:.75rem 1rem;border-radius:.75rem;
      font-size:.875rem;font-weight:700;text-align:center;
      margin-top:.75rem;text-decoration:none;transition:background .2s;
    }
    .mobile-cta:hover{background:var(--lime)}

    /* ── 10. HERO ─────────────────────────────────── */
    #inicio{
      min-height:100vh;
      display:flex;
      align-items:center;
      padding-top:64px;
      background:linear-gradient(135deg,#0D3E7C 0%,#2370B8 55%,#3A8AD3 100%);
      position:relative;
      overflow:hidden;
    }
    .hero-bg-deco{position:absolute;inset:0;pointer-events:none;overflow:hidden}
    .hero-blob-1{
      position:absolute;top:-10rem;right:-10rem;width:24rem;height:24rem;
      background:rgba(37,99,235,.2);border-radius:50%;filter:blur(64px);
    }
    .hero-blob-2{
      position:absolute;bottom:-5rem;left:-5rem;width:20rem;height:20rem;
      background:rgba(5,150,105,.15);border-radius:50%;filter:blur(64px);
    }
    .hero-grid{
      position:absolute;inset:0;width:100%;height:100%;opacity:.05;
    }
    .hero-content{position:relative;width:100%;padding:6rem 0}
    .hero-grid-layout{
      display:grid;
      gap:4rem;
      align-items:center;
    }
    @media(min-width:1024px){
      .hero-grid-layout{grid-template-columns:1fr 1fr}
    }
    .hero-badge{
      display:inline-flex;align-items:center;gap:.5rem;
      background:rgba(16,185,129,.15);
      border:1px solid rgba(52,211,153,.3);
      color:#6EE7B7;font-size:.75rem;font-weight:700;
      padding:.5rem 1rem;border-radius:9999px;margin-bottom:2rem;
      letter-spacing:.06em;
    }
    .hero-h1{
      font-size:2.5rem;font-weight:800;color:#fff;
      line-height:1.1;letter-spacing:-.02em;margin-bottom:1.5rem;
    }
    @media(min-width:640px){.hero-h1{font-size:3rem}}
    @media(min-width:1024px){.hero-h1{font-size:3.5rem}}
    .hero-sub{
      font-size:1.125rem;color:#CBD5E1;line-height:1.7;
      margin-bottom:2.5rem;max-width:38rem;
    }
    .hero-ctas{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:3.5rem}
    .btn-primary{
      display:inline-flex;align-items:center;gap:.625rem;
      background:var(--emerald);color:#fff;font-weight:700;font-size:1rem;
      padding:1rem 1.75rem;border-radius:1rem;
      transition:background .2s,transform .15s,box-shadow .2s;
      box-shadow:0 8px 24px rgba(5,150,105,.35);
      text-decoration:none;
    }
    .btn-primary:hover{background:var(--lime);transform:scale(1.04);box-shadow:0 12px 32px rgba(16,185,129,.45)}
    .btn-primary:active{transform:scale(.96)}
    .btn-secondary{
      display:inline-flex;align-items:center;gap:.625rem;
      background:rgba(255,255,255,.1);
      border:1px solid rgba(255,255,255,.2);
      color:#fff;font-weight:600;font-size:1rem;
      padding:1rem 1.75rem;border-radius:1rem;
      backdrop-filter:blur(8px);
      transition:background .2s;
      text-decoration:none;
    }
    .btn-secondary:hover{background:rgba(255,255,255,.18)}
    .trust-list{display:flex;flex-wrap:wrap;gap:1.5rem}
    .trust-item{display:flex;align-items:center;gap:.5rem;color:#94A3B8;font-size:.875rem}
    .hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
    .stat-card{
      background:rgba(255,255,255,.1);
      border:1px solid rgba(255,255,255,.15);
      border-radius:1rem;padding:1.5rem;text-align:center;
      transition:background .2s;
    }
    .stat-card:hover{background:rgba(255,255,255,.15)}
    .stat-num{
      font-size:2.5rem;font-weight:900;color:#fff;
      line-height:1;font-variant-numeric:tabular-nums;
    }
    .stat-unit{color:var(--lime);font-weight:700;font-size:.875rem;margin-bottom:.25rem}
    .stat-label{color:#94A3B8;font-size:.75rem;line-height:1.4}
    .scroll-hint{
      position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);
      color:rgba(255,255,255,.35);
    }

    /* ── 11. BRAND STRIP ─────────────────────────── */
    #brand-strip{background:#fff;border-top:1px solid #F1F5F9;border-bottom:1px solid #F1F5F9;padding:2.5rem 0}
    .strip-label{text-align:center;font-size:.7rem;font-weight:700;color:#94A3B8;letter-spacing:.12em;text-transform:uppercase;margin-bottom:2rem}
    .strip-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:3rem}
    .strip-logo-link{display:flex;align-items:center;gap:.75rem;text-decoration:none}
    .strip-brand-name{font-weight:700;font-size:1rem;color:var(--navy);transition:color .2s}
    .strip-logo-link:hover .strip-brand-name{color:var(--sky)}
    .strip-divider{width:1px;height:2.5rem;background:#E2E8F0}
    .strip-badge{display:flex;align-items:center;gap:.5rem;opacity:.6}
    .strip-badge-text{font-size:.875rem;font-weight:500;color:#64748B}
    @media(max-width:639px){.strip-divider{display:none}}

    /* ── 12. SERVICES SECTION ────────────────────── */
    #servicios{padding:6rem 0;background:#F8FAFC}
    .section-label{
      display:inline-block;color:var(--emerald);font-size:.75rem;
      font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:1rem;
    }
    .section-h2{
      font-size:2rem;font-weight:800;color:#0F172A;
      line-height:1.2;margin-bottom:1.25rem;
    }
    @media(min-width:640px){.section-h2{font-size:2.5rem}}
    @media(min-width:1024px){.section-h2{font-size:2.75rem}}
    .section-sub{color:#64748B;font-size:1.125rem;max-width:42rem;margin:0 auto;line-height:1.7}
    .section-header{text-align:center;margin-bottom:4rem}
    .service-card{
      background:#fff;
      border:1px solid #F1F5F9;
      border-radius:1.25rem;
      padding:2rem;
      transition:transform .25s ease,box-shadow .25s ease;
    }
    .service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
    .service-icon{
      width:3.5rem;height:3.5rem;border-radius:1rem;
      display:flex;align-items:center;justify-content:center;
      margin-bottom:1.5rem;
    }
    .service-h3{font-size:1.125rem;font-weight:700;color:#0F172A;margin-bottom:.75rem}
    .service-desc{font-size:.875rem;color:#64748B;line-height:1.7;margin-bottom:1.5rem}
    .check-list{display:flex;flex-direction:column;gap:.5rem}
    .check-item{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;color:#475569}

        /* ── 13. RANKING ESCALATOR ───────────────────── */
    #simulador{
      padding:6rem 0;
      background:linear-gradient(135deg,#0F172A 0%,#0D3E7C 60%,#0a2d5e 100%);
      position:relative;overflow:hidden;
    }
    .rk-blob-1{
      position:absolute;top:0;right:0;width:28rem;height:28rem;
      background:rgba(124,179,66,.12);border-radius:50%;
      transform:translate(40%,-40%);filter:blur(64px);pointer-events:none;
    }
    .rk-blob-2{
      position:absolute;bottom:0;left:0;width:22rem;height:22rem;
      background:rgba(35,112,184,.15);border-radius:50%;
      transform:translate(-40%,40%);filter:blur(64px);pointer-events:none;
    }
    #simulador .section-h2{ color:#fff }
    #simulador .section-sub{ color:#94A3B8 }
    .rk-title-accent{
      color:var(--lime);display:block;
    }
    /* Counters */
    .rk-counters{
      display:grid;grid-template-columns:1fr;gap:0;
      background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
      border-radius:1.25rem;overflow:hidden;margin-bottom:4rem;
    }
    @media(min-width:640px){
      .rk-counters{grid-template-columns:repeat(2,1fr)}
    }
    @media(min-width:1024px){
      .rk-counters{grid-template-columns:repeat(4,1fr)}
    }
    .rk-counter-item{
      padding:2rem 1.5rem;text-align:center;position:relative;
    }
    .rk-counter-divider{
      display:none;
    }
    @media(min-width:1024px){
      .rk-counter-item+.rk-counter-item{ border-left:1px solid rgba(255,255,255,.08) }
    }
    @media(min-width:640px) and (max-width:1023px){
      .rk-counter-item:nth-child(odd)+.rk-counter-item{ border-left:1px solid rgba(255,255,255,.08) }
      .rk-counter-item:nth-child(n+3){ border-top:1px solid rgba(255,255,255,.08) }
    }
    @media(max-width:639px){
      .rk-counter-item+.rk-counter-item{ border-top:1px solid rgba(255,255,255,.08) }
    }
    .rk-counter-number{
      font-size:2.25rem;font-weight:900;color:var(--lime);line-height:1;
      font-variant-numeric:tabular-nums;margin-bottom:.5rem;
    }
    @media(min-width:768px){
      .rk-counter-number{ font-size:3.25rem; }
    }
    .rk-counter-number::after{ content:''; }
    .rk-counter-number.rk-pct::after{ content:'%'; }
    .rk-counter-label{
      font-size:.8rem;color:#94A3B8;line-height:1.5;
    }
    .rk-counter-label strong{ color:#fff }
    /* SERP Cards */
    .rk-cards{
      display:grid;grid-template-columns:1fr;gap:1.5rem;
      align-items:center;margin:0 auto 3rem;
      max-width:960px;
    }
    @media(min-width:1024px){
      .rk-cards{grid-template-columns:1fr auto 1fr}
    }
    .rk-card{
      background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);
      border-radius:1.25rem;padding:1.75rem;
    }
    .rk-card-after{
      background:rgba(124,179,66,.08);border-color:rgba(124,179,66,.35);
      box-shadow:0 0 40px rgba(124,179,66,.12);
    }
    .rk-card-tag{
      display:inline-block;font-size:.65rem;font-weight:800;
      text-transform:uppercase;letter-spacing:.1em;border-radius:9999px;
      padding:.25rem .75rem;margin-bottom:1.25rem;
    }
    .rk-tag-before{ background:rgba(239,68,68,.15); color:#F87171 }
    .rk-tag-after{ background:rgba(124,179,66,.2); color:var(--lime) }
    .rk-serp-list{ display:flex;flex-direction:column;gap:.75rem }
    .rk-serp-item{
      display:flex;align-items:center;gap:.75rem;
      padding:.625rem .75rem;border-radius:.625rem;
      background:rgba(255,255,255,.04);
    }
    .rk-pos{
      font-size:.8rem;font-weight:900;min-width:2rem;
      text-align:center;
    }
    .rk-grey{ color:#64748B }
    .rk-green{ color:var(--lime); font-size:1rem }
    .rk-serp-info{ flex:1;overflow:hidden }
    .rk-serp-title{
      display:block;font-size:.8rem;font-weight:600;color:#CBD5E1;
      white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    }
    .rk-title-bold{ color:#fff!important; font-weight:800!important }
    .rk-serp-url{
      display:block;font-size:.68rem;color:#8ba3c7;
      white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    }
    .rk-serp-badge{
      font-size:.65rem;font-weight:700;border-radius:9999px;
      padding:.2rem .6rem;flex-shrink:0;
    }
    .rk-badge-invisible{ background:rgba(239,68,68,.15);color:#F87171 }
    .rk-badge-top3{ background:rgba(124,179,66,.2);color:var(--lime) }
    .rk-yours{ background:rgba(255,255,255,.08)!important }
    .rk-dim{ opacity:.7 }
    .rk-top{
      background:rgba(124,179,66,.1)!important;
      border:1px solid rgba(124,179,66,.25);
      animation:glowPulse 2.5s ease-in-out infinite;
    }
    .rk-faded{ opacity:.45 }
    @keyframes glowPulse{
      0%,100%{box-shadow:0 0 0 0 rgba(124,179,66,0)}
      50%{box-shadow:0 0 16px 4px rgba(124,179,66,.25)}
    }
    .rk-card-footnote{
      margin-top:1.25rem;font-size:.75rem;color:#64748B;text-align:center;
    }
    .rk-footnote-green{ color:var(--lime) }
    .rk-arrow-col{
      display:none;
    }
    @media(min-width:1024px){
      .rk-arrow-col{
        display:flex;align-items:center;justify-content:center;
      }
    }
    .rk-arrow-wrap{
      display:flex;flex-direction:column;align-items:center;gap:.5rem;
      color:var(--lime);
    }
    .rk-arrow-label{
      font-size:.65rem;font-weight:700;text-transform:uppercase;
      letter-spacing:.08em;color:var(--lime);white-space:nowrap;
    }
    /* Pills */
    .rk-pills{
      display:flex;flex-wrap:wrap;gap:.75rem;
      justify-content:center;margin:0 auto 3rem;
      max-width:900px;
    }
    .rk-pill{
      display:inline-flex;align-items:center;gap:.5rem;
      background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
      border-radius:9999px;padding:.5rem 1rem;
      font-size:.8rem;font-weight:600;color:#CBD5E1;
      transition:background .2s,border-color .2s,color .2s;
    }
    .rk-pill svg{ color:var(--lime);flex-shrink:0 }
    .rk-pill:hover{
      background:rgba(124,179,66,.1);border-color:rgba(124,179,66,.35);color:#fff;
    }
    /* CTA */
    .rk-cta-wrap{ text-align:center }
    .rk-cta-sub{
      margin-top:1rem;font-size:.8rem;color:#64748B;
    }
/* ── 14. METHODOLOGY ─────────────────────────── */
    #metodologia{padding:6rem 0;background:#fff}
    .phases-container{position:relative}
    .phases-connector{
      display:none;
    }
    @media(min-width:1024px){
      .phases-connector{
        display:block;position:absolute;top:3rem;
        left:12.5%;right:12.5%;height:2px;
        background:linear-gradient(to right,var(--lime),var(--sky),#9333EA);
      }
    }
    .phase-item{text-align:center}
    .phase-circle{
      position:relative;
      width:6rem;height:6rem;border-radius:50%;
      display:flex;align-items:center;justify-content:center;
      margin:0 auto 1.5rem;border:4px solid #fff;
      box-shadow:0 8px 24px rgba(0,0,0,.1);
    }
    .phase-num{font-size:1.75rem;font-weight:900;line-height:1}
    .phase-h3{font-size:1rem;font-weight:700;color:#0F172A;margin-bottom:.75rem}
    .phase-desc{font-size:.875rem;color:#64748B;line-height:1.7}

    /* ── 15. RESULTS ─────────────────────────────── */
    #resultados{padding:6rem 0;background:var(--navy)}
    .case-card{
      background:rgba(255,255,255,.05);
      border:1px solid rgba(255,255,255,.1);
      border-radius:1rem;padding:2rem;
      transition:background .2s;
    }
    .case-card:hover{background:rgba(255,255,255,.08)}
    .case-icon{
      width:2.5rem;height:2.5rem;border-radius:.75rem;
      display:flex;align-items:center;justify-content:center;
      font-size:1.25rem;flex-shrink:0;
    }
    .case-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}
    .case-title{font-weight:700;color:#fff;font-size:.875rem}
    .case-location{font-size:.7rem;color:#64748B}
    .case-metrics{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}
    .case-metric-val{font-size:1.5rem;font-weight:900;color:var(--lime);line-height:1}
    .case-metric-val.white{color:#fff}
    .case-metric-label{font-size:.7rem;color:#64748B}
    .case-divider{height:1px;background:rgba(255,255,255,.08);margin-bottom:1rem}
    .case-quote{font-size:.75rem;color:#64748B;line-height:1.6}
    .cta-banner{
      background:linear-gradient(135deg,var(--emerald),var(--sky));
      border-radius:1.5rem;padding:3rem 2rem;text-align:center;
      margin-top:4rem;
    }
    @media(min-width:1024px){.cta-banner{padding:3.5rem}}
    .cta-banner-h3{font-size:1.5rem;font-weight:800;color:#fff;margin-bottom:1rem}
    @media(min-width:640px){.cta-banner-h3{font-size:1.875rem}}
    .cta-banner-sub{color:rgba(255,255,255,.8);font-size:1.125rem;margin-bottom:2rem;max-width:36rem;margin-left:auto;margin-right:auto}
    .btn-white{
      display:inline-flex;align-items:center;gap:.5rem;
      background:#fff;color:var(--navy);font-weight:700;font-size:1rem;
      padding:1rem 2rem;border-radius:1rem;
      transition:background .2s,transform .15s;
      box-shadow:0 12px 32px rgba(0,0,0,.2);
      text-decoration:none;
    }
    .btn-white:hover{background:#F8FAFC;transform:scale(1.04)}

    /* ── 16. FAQ ──────────────────────────────────── */
    #faq{padding:6rem 0;background:#F8FAFC}
    .faq-item{
      background:#fff;border:1px solid #F1F5F9;
      border-radius:1rem;overflow:hidden;margin-bottom:1rem;
    }
    .faq-trigger{
      width:100%;display:flex;align-items:center;
      justify-content:space-between;
      padding:1.25rem 1.5rem;text-align:left;
      background:none;border:none;cursor:pointer;
      transition:background .2s;
    }
    .faq-trigger:hover{background:#F8FAFC}
    .faq-q{font-weight:600;color:#0F172A;font-size:.9375rem;padding-right:1rem;line-height:1.5}
    .faq-icon{
      width:1.25rem;height:1.25rem;color:var(--emerald);
      flex-shrink:0;transition:transform .3s;
    }
    .faq-body{max-height:0;overflow:hidden;transition:max-height .35s ease}
    .faq-body.open{max-height:400px}
    .faq-trigger[aria-expanded="true"] .faq-icon{transform:rotate(45deg)}
    .faq-answer{
      padding:.25rem 1.5rem 1.5rem;
      font-size:.875rem;color:#64748B;line-height:1.7;
      border-top:1px solid #F1F5F9;
    }

    /* ── 17. CONTACT ─────────────────────────────── */
    #contacto{padding:6rem 0;background:#fff}
    .contact-card{
      background:#fff;border:1px solid #E2E8F0;
      border-radius:1.5rem;padding:2.5rem;
      box-shadow:0 40px 80px -16px rgba(0,0,0,.08);
    }
    @media(min-width:1024px){.contact-card{padding:3rem}}
    .form-label{display:block;font-size:.875rem;font-weight:600;color:#0F172A;margin-bottom:.5rem}
    .form-input{
      width:100%;padding:.875rem 1rem;border:1px solid #E2E8F0;
      border-radius:.75rem;font-size:.875rem;color:#0F172A;
      background:#fff;outline:none;
      transition:border-color .2s,box-shadow .2s;
    }
    .form-input::placeholder{color:#94A3B8}
    .form-input:focus{
      border-color:var(--sky);
      box-shadow:0 0 0 3px rgba(37,99,235,.12);
    }
    select.form-input{appearance:none;-webkit-appearance:none;cursor:pointer}
    textarea.form-input{resize:none}
    .form-grid{display:grid;gap:1.5rem}
    @media(min-width:640px){.form-grid{grid-template-columns:repeat(2,1fr)}}
    .btn-submit{
      display:flex;align-items:center;justify-content:center;gap:.75rem;
      width:100%;background:var(--navy);color:#fff;font-weight:700;
      font-size:1rem;padding:1.125rem 2rem;border-radius:1rem;
      transition:background .2s,transform .15s;border:none;cursor:pointer;
    }
    .btn-submit:hover{background:var(--blue);transform:scale(1.02)}
    .btn-submit:active{transform:scale(.98)}
    .btn-submit:disabled{opacity:.7;cursor:not-allowed;transform:none}
    .form-note{text-align:center;font-size:.75rem;color:#94A3B8;margin-top:.75rem}
    .form-status{padding:1rem;border-radius:.75rem;font-size:.875rem;font-weight:500;text-align:center}
    .form-status.success{background:#ECFDF5;border:1px solid #A7F3D0;color:#065F46}
    .form-status.error{background:#FEF2F2;border:1px solid #FECACA;color:#991B1B}

    /* ── 18. FOOTER ──────────────────────────────── */
    footer{background:#0F172A;color:#94A3B8}
    .footer-main{padding:4rem 0 3rem}
    .footer-grid{
      display:grid;gap:2.5rem;margin-bottom:3rem;
    }
    @media(min-width:768px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}
    .footer-brand-name .l1{display:block;color:#fff;font-weight:700;font-size:.8rem;letter-spacing:.07em}
    .footer-brand-name .l2{display:block;color:var(--lime);font-size:.7rem;letter-spacing:.12em}
    .footer-desc{font-size:.875rem;line-height:1.7;margin-bottom:1.5rem;max-width:22rem}
    .footer-link-box{
      display:inline-flex;align-items:center;gap:.5rem;
      background:rgba(255,255,255,.05);
      border:1px solid rgba(255,255,255,.1);
      border-radius:.75rem;padding:.75rem 1rem;margin-top:1rem;
    }
    .footer-link-box a{color:var(--lime);font-weight:700;font-size:.875rem;text-decoration:none;transition:color .2s}
    .footer-link-box a:hover{color:#6EE7B7}
    .footer-link-box-text{font-size:.875rem;color:#CBD5E1}
    .footer-col-title{
      color:#fff;font-weight:600;font-size:.75rem;
      text-transform:uppercase;letter-spacing:.12em;margin-bottom:1.25rem;
    }
    .footer-links{display:flex;flex-direction:column;gap:.75rem}
    .footer-link{font-size:.875rem;text-decoration:none;transition:color .2s}
    .footer-link:hover{color:#fff}
    .footer-link.accent{color:rgba(52,211,153,.7)}
    .footer-link.accent:hover{color:var(--lime)}
    .footer-divider{border-top:1px solid rgba(255,255,255,.1);padding-top:2rem}
    .footer-bottom{
      display:flex;flex-direction:column;gap:1rem;align-items:center;
      font-size:.75rem;
    }
    @media(min-width:640px){.footer-bottom{flex-direction:row;justify-content:space-between}}
    .footer-legal{display:flex;gap:1.25rem}

    /* ── 19. REVEAL ANIMATIONS ───────────────────── */
    .reveal{
      opacity:0;transform:translateY(28px);
      transition:opacity .65s ease,transform .65s ease;
    }
    .reveal.visible{opacity:1;transform:none}
    .reveal-d1{transition-delay:.1s}
    .reveal-d2{transition-delay:.2s}
    .reveal-d3{transition-delay:.3s}

    /* ── 20. UTILITIES ───────────────────────────── */
    @media(min-width:1024px){.lg\:grid-2{grid-template-columns:1fr 1fr}}
    @media(min-width:1024px){.lg\:col-2{grid-column:span 2}}
    .divider{height:1px;background:#E2E8F0;margin:1.5rem 0}
    .link-sky{color:var(--sky);text-decoration:none}
    .link-sky:hover{text-decoration:underline}
    /* ── 21. CLEAN INLINE CSS WORKAROUNDS ────────── */
    .sim-container { max-width: 56rem; position: relative; margin-left: auto; margin-right: auto; }
    .sim-step-wrap { margin-bottom: 2.5rem; }
    .slider-header label { margin-bottom: 0; }
    .bar-fill { height: 100%; border-radius: 9999px; width: var(--bw, 0%); }
    .phase-circle-1 { background: #ECFDF5; color: var(--emerald); }
    .phase-circle-2 { background: #EFF6FF; color: var(--sky); }
    .phase-circle-3 { background: #FAF5FF; color: #9333EA; }
    .phase-circle-4 { background: #FFF7ED; color: #F97316; }
    .case-icon-1 { background: rgba(16,185,129,.2); }
    .case-icon-2 { background: rgba(37,99,235,.2); }
    .case-icon-3 { background: rgba(147,51,234,.2); }
    #resultados .section-label { color: var(--lime); }
    #resultados .section-h2 { color: #fff; }
    #resultados .section-sub { color: #64748B; }
    .faq-container { max-width: 48rem; margin-left: auto; margin-right: auto; }
    .contact-container { max-width: 56rem; margin-left: auto; margin-right: auto; }
    .form-group { margin-bottom: 1.5rem; }
    .form-status-box { display: none; margin-bottom: 1rem; }
    .footer-brand-wrap { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 1.25rem; }
    .footer-bottom-link { color: var(--lime); text-decoration: none; margin-left: .25rem; }
    .sim-note svg { flex-shrink: 0; margin-top: 0.125rem; }
    .footer-socials { margin-top: 1.5rem; display: flex; gap: 1rem; }
    .footer-social-link { color: #94A3B8; transition: color 0.2s; display: inline-flex; align-items: center; justify-content: center; }
    .footer-social-link:hover { color: #fff; }
  
    /* ── 22. LEGAL PAGES STYLES ──────────────────── */
    .legal-section { padding: 8rem 0 6rem; background: #fff; min-height: 70vh; }
    .legal-container { max-width: 48rem; margin-left: auto; margin-right: auto; padding-left: 1.5rem; padding-right: 1.5rem; }
    .legal-h1 { font-size: 2.5rem; font-weight: 800; color: var(--navy); margin-bottom: 2rem; }
    .legal-h2 { font-size: 1.5rem; font-weight: 700; color: var(--navy); margin-top: 2rem; margin-bottom: 1rem; }
    .legal-text { font-size: 1rem; color: #475569; line-height: 1.7; margin-bottom: 1.25rem; }
    .legal-list { list-style: disc; padding-left: 1.5rem; margin-bottom: 1.25rem; color: #475569; }
    .legal-list li { margin-bottom: 0.5rem; }
    
    /* Cookie Banner Styles */
    .cookie-banner {
      position: fixed; bottom: 0; left: 0; right: 0;
      background: #0F172A; color: #94A3B8;
      padding: 1.5rem; z-index: 1000;
      border-top: 1px solid rgba(255,255,255,.1);
      box-shadow: 0 -10px 40px rgba(0,0,0,.35);
      display: none; transition: opacity 0.3s ease;
    }
    .cookie-inner {
      display: flex; flex-direction: column; gap: 1rem;
      max-width: 1280px; margin: 0 auto;
    }
    @media(min-width: 768px) {
      .cookie-inner { flex-direction: row; align-items: center; justify-content: space-between; gap: 2rem; }
    }
    .cookie-text { font-size: 0.875rem; line-height: 1.5; }
    .cookie-text a { color: var(--lime); text-decoration: underline; }
    .cookie-text a:hover { color: #fff; }
    .cookie-btn-group { display: flex; gap: 0.75rem; flex-shrink: 0; }
    .cookie-btn {
      padding: 0.625rem 1.25rem; border-radius: 0.5rem;
      font-size: 0.875rem; font-weight: 700; cursor: pointer;
      transition: all 0.2s ease;
    }
    .cookie-btn-accept { background: var(--lime); color: #fff; border: none; }
    .cookie-btn-accept:hover { background: #689F38; }
    .cookie-btn-reject { background: transparent; color: #94A3B8; border: 1px solid rgba(255,255,255,.2); }
    .cookie-btn-reject:hover { color: #fff; border-color: #fff; }
    /* ── 23. BRAND LOGO STYLES ───────────────────── */
    .nav-logo-img { height: 40px; width: auto; display: block; max-width: 100%; }
    .footer-logo-img { height: 45px; width: auto; display: block; max-width: 100%; }
    .strip-logo-img { height: 32px; width: auto; display: block; max-width: 100%; }