/* ================================================================
   ANUNCIMAX — Sistema visual v8 (rediseño basado en alannicolaspaemaa)
   Paleta Google pura · Manrope · alta jerarquía + movimiento
================================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  /* Paleta Google — pura */
  --google-blue:#4285F4;
  --google-blue-dark:#1A73E8;
  --google-blue-tint:#E8F0FE;
  --google-green:#34A853;
  --google-green-dark:#188038;
  --google-green-tint:#E6F4EA;
  --google-yellow:#FBBC04;
  --google-yellow-dark:#7c5200;
  --google-yellow-tint:#FEF7E0;
  --google-red:#EA4335;
  --google-red-dark:#c5231a;
  --google-red-tint:#FCE8E6;
  /* Acento purple para Plan a Medida (no Google, color sistémico) */
  --google-purple:#7c5cd6;
  --google-purple-dark:#5b3fb5;
  --google-purple-tint:#EDE8FA;

  /* Grises (sistema personal-site) */
  --gray-900:#202124;
  --gray-800:#303134;
  --gray-700:#5f6368;
  --gray-500:#80868b;
  --gray-300:#DADCE0;
  --gray-200:#E8EAED;
  --gray-100:#F8FAFD;
  --white:#ffffff;

  /* Tokens sistémicos */
  --radius-sm:8px;
  --radius:12px;
  --radius-lg:16px;
  --radius-xl:22px;
  --radius-pill:999px;
  --shadow-xs:0 1px 2px rgba(60,64,67,.10);
  --shadow-sm:0 1px 2px rgba(60,64,67,.16),0 1px 3px rgba(60,64,67,.10);
  --shadow-md:0 4px 12px rgba(60,64,67,.14);
  --shadow-lg:0 16px 36px rgba(60,64,67,.18);
  --shadow-xl:0 24px 60px rgba(60,64,67,.22);
  --transition:.25s ease;
  --transition-slow:.45s cubic-bezier(.2,.7,.2,1);
  --max-w:1180px;

  /* Firma visual rainbow */
  --rainbow:linear-gradient(90deg,
    var(--google-blue) 0 32%,
    var(--google-red) 32% 48%,
    var(--google-yellow) 48% 68%,
    var(--google-green) 68% 100%
  );
  --rainbow-vertical:linear-gradient(180deg,
    var(--google-blue) 0 32%,
    var(--google-red) 32% 48%,
    var(--google-yellow) 48% 68%,
    var(--google-green) 68% 100%
  );
}

/* ── Base ─────────────────────────────────────────────────────── */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:16px;line-height:1.6;color:var(--gray-900);
  background:var(--gray-100);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
/* (rainbow strip removed) */
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none}
ul{list-style:none}
strong{color:var(--gray-900);font-weight:800}
em{font-style:normal;color:var(--google-blue-dark);font-weight:700}
::selection{background:var(--google-blue);color:#fff}

/* ── Tipografía ──────────────────────────────────────────────── */
h1,h2,h3,h4{font-weight:800;line-height:1.1;letter-spacing:-.01em;color:var(--gray-900);text-wrap:balance}
h1{font-size:clamp(2.2rem,5vw,4.2rem);letter-spacing:-.02em}
h2{font-size:clamp(1.7rem,3.2vw,2.7rem);letter-spacing:-.015em}
h3{font-size:1.28rem}
h4{font-size:1rem}
p,li{color:var(--gray-700);text-wrap:pretty}
.lead{font-size:1.12rem;line-height:1.55;color:var(--gray-700);max-width:640px}

/* ── Layout ──────────────────────────────────────────────────── */
.container{max-width:var(--max-w);margin:0 auto;padding:0 24px}
section{position:relative;padding:88px 0}
.u-center{text-align:center}
.u-mt-44{margin-top:44px}
.u-actions-center{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap}

.section-head{text-align:center;max-width:760px;margin:0 auto 52px}
.section-head .eyebrow{margin:0 auto 16px}
.section-head h2{margin-bottom:14px}
.section-head p{font-size:1.05rem;color:var(--gray-700);max-width:600px;margin:0 auto}

/* ── Skip link a11y ──────────────────────────────────────────── */
.skip-link{
  position:fixed;top:14px;left:14px;z-index:2000;
  transform:translateY(-180%);
  padding:10px 16px;border-radius:var(--radius-pill);
  background:var(--google-blue);color:#fff;font-weight:800;
  box-shadow:var(--shadow-md);transition:var(--transition);
}
.skip-link:focus,.skip-link:focus-visible{transform:translateY(0)}

/* ════════════════════════════════════════════════════════════
   HEADER
═════════════════════════════════════════════════════════════ */
.header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.85);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid transparent;
  transition:box-shadow var(--transition),background var(--transition),border-color var(--transition);
}
.header.is-scrolled{
  background:rgba(255,255,255,.94);
  border-bottom-color:var(--gray-300);
  box-shadow:var(--shadow-sm);
}
.nav{display:flex;align-items:center;gap:18px;min-height:74px}
.logo{display:inline-flex;align-items:center;gap:11px;font-weight:800;font-size:1.22rem;color:var(--gray-900);white-space:nowrap}
.logo svg{width:38px;height:38px;filter:drop-shadow(0 4px 10px rgba(60,64,67,.18))}
.nav-links{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav-links a,.nav-drop-btn{
  display:inline-flex;align-items:center;gap:7px;
  min-height:38px;padding:8px 14px;
  border:0;border-radius:var(--radius-pill);
  color:var(--gray-700);background:transparent;
  font-size:.88rem;font-weight:700;
  /* Use inset shadow instead of border so hover doesn't trigger layout shifts */
  box-shadow:inset 0 0 0 1px transparent;
  transition:color .2s ease,background-color .2s ease,box-shadow .2s ease;
}
.nav-links a:hover,.nav-links a.active,.nav-drop-btn:hover,.nav-drop-btn.active{
  color:var(--google-blue-dark);
  background:var(--google-blue-tint);
  box-shadow:inset 0 0 0 1px rgba(66,133,244,.22);
}
.nav-dropdown{position:relative}
.nav-dropdown.open .nav-drop-menu{
  display:grid;
  grid-auto-rows:42px;
  gap:2px;
}
.nav-drop-menu{
  position:absolute;top:calc(100% + 12px);right:0;
  display:none;min-width:340px;
  padding:10px;background:var(--white);
  border:1px solid var(--gray-300);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);
}
.nav-drop-menu li{
  display:block;margin:0;padding:0;
  list-style:none;
  height:42px;
}
/* Locked-down geometry so opening the dropdown / hovering items never reflows */
.nav-drop-menu a{
  display:flex;width:100%;height:42px;
  box-sizing:border-box;
  justify-content:flex-start;align-items:center;
  padding:0 12px;
  border:0;border-radius:10px;
  font-size:.86rem;font-weight:600;line-height:1;
  color:var(--gray-800);background:transparent;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  box-shadow:inset 0 0 0 1px transparent;
  transition:none;
  contain:layout;
}
.nav-drop-menu a:hover,
.nav-drop-menu a.active{
  color:var(--google-blue-dark);
  background:var(--google-blue-tint);
  box-shadow:inset 0 0 0 1px rgba(66,133,244,.22);
}
.nav-cta{display:flex;align-items:center;gap:10px;margin-left:6px}
.menu-toggle{
  display:none;width:44px;height:44px;
  border-radius:50%;
  border:1px solid var(--gray-300);background:var(--white);
  color:var(--gray-900);font-size:1.3rem;
  padding:0;line-height:1;
  align-items:center;justify-content:center;
}

/* ════════════════════════════════════════════════════════════
   BOTONES
═════════════════════════════════════════════════════════════ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:48px;padding:13px 24px;
  border:1px solid transparent;border-radius:var(--radius-pill);
  font-family:inherit;font-weight:700;font-size:.95rem;line-height:1.1;
  white-space:nowrap;cursor:pointer;
  transition:var(--transition);
  position:relative;overflow:hidden;
}
.btn:hover{transform:translateY(-2px)}
.btn-xl{min-height:54px;padding:16px 28px;font-size:1.02rem}
.btn-primary{
  background:var(--google-blue);color:#fff;
  box-shadow:0 6px 18px rgba(66,133,244,.28);
}
.btn-primary:hover{
  background:var(--google-blue-dark);
  box-shadow:0 12px 26px rgba(26,115,232,.32);
}
.btn-whatsapp,.btn-green{
  background:var(--google-green);color:#fff;
  box-shadow:0 6px 18px rgba(52,168,83,.26);
}
.btn-whatsapp:hover,.btn-green:hover{
  background:var(--google-green-dark);
  box-shadow:0 12px 26px rgba(24,128,56,.30);
}
.btn-light{
  background:var(--white);color:var(--google-blue-dark);
  border-color:var(--gray-300);box-shadow:var(--shadow-sm);
}
.btn-light:hover{
  background:var(--google-blue-tint);
  border-color:rgba(66,133,244,.32);
}
.btn-plan-blue{
  background:var(--google-blue);color:#fff;
  box-shadow:0 6px 18px rgba(66,133,244,.28);
}
.btn-plan-blue:hover{background:var(--google-blue-dark)}
.btn-plan-purple{
  background:linear-gradient(135deg,var(--google-blue) 0%,var(--google-purple) 100%);
  color:#fff;
  box-shadow:0 6px 18px rgba(124,92,214,.28);
}
.btn-plan-purple:hover{
  background:linear-gradient(135deg,var(--google-blue-dark) 0%,var(--google-purple-dark) 100%);
  box-shadow:0 12px 26px rgba(91,63,181,.32);
}

/* shimmer effect on primary CTAs */
.btn-primary::after,.btn-whatsapp::after,.btn-plan-purple::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);
  transform:translateX(-100%);
  transition:transform .7s ease;
}
.btn-primary:hover::after,.btn-whatsapp:hover::after,.btn-plan-purple:hover::after{transform:translateX(100%)}

/* ════════════════════════════════════════════════════════════
   EYEBROWS / TAGS / CHIPS
═════════════════════════════════════════════════════════════ */
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  width:max-content;max-width:100%;
  padding:7px 14px;
  border-radius:var(--radius-pill);
  background:var(--google-blue-tint);
  border:1px solid rgba(66,133,244,.26);
  color:var(--google-blue-dark);
  font-size:.74rem;font-weight:800;
  letter-spacing:.08em;text-transform:uppercase;
}
.eyebrow .ey-dot{
  width:6px;height:6px;border-radius:50%;
  background:var(--google-blue);
  box-shadow:0 0 0 4px rgba(66,133,244,.18);
}
.eyebrow-on-dark{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.28);
  color:#fff;
}
.eyebrow-green{
  background:var(--google-green-tint);
  border-color:rgba(52,168,83,.26);
  color:var(--google-green-dark);
}
.eyebrow-green .ey-dot{background:var(--google-green);box-shadow:0 0 0 4px rgba(52,168,83,.18)}
.eyebrow-yellow{
  background:var(--google-yellow-tint);
  border-color:rgba(251,188,4,.4);
  color:var(--google-yellow-dark);
}
.eyebrow-yellow .ey-dot{background:var(--google-yellow);box-shadow:0 0 0 4px rgba(251,188,4,.22)}
.eyebrow-red{
  background:var(--google-red-tint);
  border-color:rgba(234,67,53,.26);
  color:var(--google-red-dark);
}
.eyebrow-red .ey-dot{background:var(--google-red);box-shadow:0 0 0 4px rgba(234,67,53,.18)}

/* ════════════════════════════════════════════════════════════
   HERO — multi-variante
═════════════════════════════════════════════════════════════ */
.hero{
  position:relative;overflow:hidden;
  padding:56px 0 64px;
  background:
    linear-gradient(135deg,rgba(66,133,244,.10) 0 18%,transparent 18%),
    radial-gradient(circle at 78% 18%,rgba(251,188,4,.22),transparent 26%),
    radial-gradient(circle at 92% 70%,rgba(52,168,83,.18),transparent 30%),
    radial-gradient(circle at 6% 88%,rgba(234,67,53,.10),transparent 28%),
    linear-gradient(180deg,#fff 0%,var(--gray-100) 100%);
  border-bottom:1px solid var(--gray-300);
}
.hero::before{
  content:"";position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(66,133,244,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(66,133,244,.08) 1px,transparent 1px);
  background-size:40px 40px;
  mask-image:radial-gradient(ellipse at center,black 14%,transparent 72%);
  -webkit-mask-image:radial-gradient(ellipse at center,black 14%,transparent 72%);
  pointer-events:none;
  will-change:transform;
}
.hero>.container{position:relative;z-index:1}
.hero-bottom-bar{
  position:absolute;left:0;right:0;bottom:0;
  height:5px;background:var(--rainbow);z-index:2;
}

/* All hero variants hidden by default — JS shows the active one */
.hero-variant{display:none}
body.hero-v1 .hero-variant.v1{display:block}
body.hero-v2 .hero-variant.v2{display:block}
body.hero-v3 .hero-variant.v3{display:block}

/* ── HERO V1 — Sistema visual editorial ──────────────────── */
.hero-grid-v1{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.85fr);
  gap:64px;align-items:center;
}
.hero-copy h1 span.hl-grad,
.hero-v2-inner h2 span.hl-grad,
.hero-v3-copy h2 span.hl-grad{
  background:linear-gradient(90deg,var(--google-blue) 0%,var(--google-blue-dark) 50%,var(--google-green) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
  display:inline-block;
  padding-bottom:.08em;
  line-height:1.15;
}
/* Resaltado de palabra clave en titulos — degradado de marca, funciona en cualquier H1 */
.hl-grad{
  background:linear-gradient(90deg,var(--google-blue) 0%,var(--google-blue-dark) 50%,var(--google-green) 100%);
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}
/* Variantes por color de plan */
.hl-grad-green,.hl-grad-blue,.hl-grad-purple{
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
}
.hl-grad-green{background-image:linear-gradient(90deg,var(--google-green) 0%,var(--google-green-dark) 100%)}
.hl-grad-blue{background-image:linear-gradient(90deg,var(--google-blue) 0%,var(--google-blue-dark) 100%)}
.hl-grad-purple{background-image:linear-gradient(90deg,var(--google-purple) 0%,var(--google-purple-dark) 100%)}
.hero-copy .lead{margin-top:18px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-trust{
  display:flex;flex-wrap:wrap;gap:18px;
  margin-top:26px;padding-top:22px;
  border-top:1px dashed var(--gray-300);
  list-style:none;
}
.hero-trust li{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.87rem;font-weight:700;color:var(--gray-700);
}
.hero-trust .trust-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--google-green);
  box-shadow:0 0 0 4px rgba(52,168,83,.16);
}

/* Plan stack visual (right column) */
.plan-stack{
  position:relative;
  display:grid;gap:16px;
  perspective:1000px;
}
.ps-card{
  position:relative;
  display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;
  padding:20px 22px;
  border-radius:var(--radius-lg);
  background:#fff;
  border:1px solid var(--gray-300);
  box-shadow:var(--shadow-md);
  overflow:hidden;
  transition:var(--transition-slow);
}
.ps-card::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:5px;
}
.ps-card-1::before{background:var(--google-green)}
.ps-card-2::before{background:var(--google-blue)}
.ps-card-3::before{background:linear-gradient(180deg,var(--google-blue),var(--google-purple))}
.ps-num{
  display:grid;place-items:center;
  width:42px;height:42px;border-radius:14px;
  font-family:ui-monospace,'SF Mono',monospace;
  font-size:.84rem;font-weight:800;
  color:var(--google-blue-dark);background:var(--google-blue-tint);
}
.ps-card-1 .ps-num{color:var(--google-green-dark);background:var(--google-green-tint)}
.ps-card-2 .ps-num{color:var(--google-blue-dark);background:var(--google-blue-tint)}
.ps-card-3 .ps-num{color:var(--google-purple-dark);background:var(--google-purple-tint)}
.ps-card strong{display:block;font-size:1.05rem;font-weight:800;color:var(--gray-900);margin-bottom:2px}
.ps-card span.ps-sub{display:block;font-size:.85rem;color:var(--gray-700);font-weight:600}
.ps-card .ps-arrow{
  width:32px;height:32px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--gray-100);color:var(--gray-700);
  transition:var(--transition);
}
.ps-card:hover{transform:translateY(-3px);border-color:rgba(66,133,244,.4);box-shadow:var(--shadow-lg)}
.ps-card:hover .ps-arrow{background:var(--google-blue);color:#fff;transform:translateX(2px)}
.ps-card-2{
  transform:translateX(20px) scale(1.02);z-index:2;
  padding-top:28px;
}
.ps-card-2::after{
  content:"Más popular";
  position:absolute;top:8px;right:16px;
  padding:3px 9px;
  background:var(--google-blue);color:#fff;
  font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  border-radius:var(--radius-pill);
  box-shadow:0 2px 6px rgba(66,133,244,.32);
}

/* Floating accent shapes around the visual */
.hero-visual-wrap{position:relative}
.hero-visual-wrap::before{
  content:"";position:absolute;width:200px;height:200px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(251,188,4,.30),transparent 70%);
  top:-30px;right:-40px;z-index:0;
  animation:float-y 6s ease-in-out infinite;
}
.hero-visual-wrap::after{
  content:"";position:absolute;width:160px;height:160px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(52,168,83,.25),transparent 70%);
  bottom:-30px;left:-20px;z-index:0;
  animation:float-y 7s ease-in-out infinite reverse;
}
@keyframes float-y{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-14px)}
}
.plan-stack{position:relative;z-index:1}

/* ── HERO V2 — Mosaico de productos ──────────────────────── */
.hero-v2-inner{text-align:center;max-width:920px;margin:0 auto}
.hero-v2-inner .eyebrow{margin:0 auto 18px}
.hero-v2-inner h2{margin-bottom:18px;font-size:clamp(2.2rem,5vw,4.2rem);letter-spacing:-.02em}
.hero-v2-inner .lead{margin:0 auto;max-width:680px}
.hero-v2-inner .hero-actions{justify-content:center;margin-top:30px}
.hero-v2-mosaic{
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
  margin-top:60px;padding:0 8px;
}
.hv2-card{
  position:relative;overflow:hidden;
  padding:24px;
  border-radius:var(--radius-xl);
  background:#fff;border:1px solid var(--gray-300);
  box-shadow:var(--shadow-md);
  text-align:left;
  transition:var(--transition-slow);
}
.hv2-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
}
.hv2-card.green::before{background:linear-gradient(90deg,var(--google-green),var(--google-blue))}
.hv2-card.blue::before{background:linear-gradient(90deg,var(--google-blue),var(--google-yellow))}
.hv2-card.purple::before{background:linear-gradient(90deg,var(--google-blue),var(--google-red))}
.hv2-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:rgba(66,133,244,.4)}
.hv2-tag{
  display:inline-flex;padding:5px 11px;
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  border-radius:var(--radius-pill);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  margin-bottom:14px;
}
.hv2-card.green .hv2-tag{background:var(--google-green-tint);color:var(--google-green-dark)}
.hv2-card.purple .hv2-tag{background:var(--google-red-tint);color:var(--google-red-dark)}
.hv2-card h3{margin-bottom:6px}
.hv2-card .hv2-price{
  display:block;margin-top:14px;padding-top:14px;
  border-top:1px solid var(--gray-300);
  font-size:.78rem;color:var(--gray-500);font-weight:700;
}
.hv2-card .hv2-price strong{color:var(--gray-900);font-size:1.2rem;font-weight:800;display:block;margin-top:2px}

/* ── HERO V3 — Spotlight con pricing inline ──────────────── */
.hero-grid-v3{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.88fr);
  gap:50px;align-items:center;
}
.hero-v3-copy h2{font-size:clamp(2rem,4.5vw,3.6rem);letter-spacing:-.02em}
.hero-spotlight-card{
  position:relative;overflow:hidden;
  padding:28px;
  border-radius:var(--radius-xl);
  background:linear-gradient(180deg,#fff 0%,#fff 70%,#F8FAFD 100%);
  border:1px solid var(--gray-300);
  box-shadow:var(--shadow-lg);
}
.hero-spotlight-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
  background:linear-gradient(90deg,var(--google-green),var(--google-blue));
}
.hsc-badge{
  display:inline-flex;align-items:center;gap:7px;
  padding:6px 13px;
  background:var(--google-green-tint);color:var(--google-green-dark);
  border:1px solid rgba(52,168,83,.26);
  border-radius:var(--radius-pill);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  margin-bottom:12px;
}
.hsc-title{font-size:1.6rem;margin-bottom:4px}
.hsc-sub{font-size:.92rem;color:var(--gray-700);font-weight:700;margin-bottom:18px}
.hsc-price{
  display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:end;
  padding:14px;
  border-radius:var(--radius-lg);
  background:linear-gradient(180deg,#fff,var(--google-blue-tint));
  border:1px solid rgba(66,133,244,.18);
  margin-bottom:18px;
}
.hsc-block{display:grid;gap:4px}
.hsc-block small{color:var(--gray-500);font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.hsc-block strong{color:var(--gray-900);font-size:1.5rem;font-weight:800;line-height:1.05}
.hsc-plus{
  display:grid;place-items:center;width:30px;height:30px;
  border-radius:50%;background:#fff;
  border:1px solid rgba(66,133,244,.3);
  color:var(--google-blue-dark);font-weight:800;
  align-self:center;
}
.hsc-features{display:grid;gap:9px;margin-bottom:20px;list-style:none}
.hsc-features li{
  display:grid;grid-template-columns:auto 1fr;gap:10px;
  font-size:.92rem;color:var(--gray-700);
}
.hsc-features li::before{
  content:"";display:block;width:18px;height:18px;border-radius:50%;
  background:var(--google-green-tint);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23188038' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-repeat:no-repeat;background-position:center;background-size:11px;
}
.hsc-cta{display:block;width:100%}

/* ════════════════════════════════════════════════════════════
   STATS STRIP (después del hero)
═════════════════════════════════════════════════════════════ */
.stats-strip{
  background:var(--white);
  border-bottom:1px solid var(--gray-300);
  padding:36px 0;
}
.stats-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;
  align-items:center;
}
.stat{
  display:grid;gap:6px;text-align:left;
  padding-left:18px;border-left:3px solid var(--google-blue);
}
.stat:nth-child(2){border-color:var(--google-green)}
.stat:nth-child(3){border-color:var(--google-yellow)}
.stat:nth-child(4){border-color:var(--google-red)}
.stat-num{font-size:clamp(1.7rem,2.6vw,2.2rem);font-weight:800;color:var(--gray-900);line-height:1}
.stat-label{font-size:.82rem;color:var(--gray-700);font-weight:700}

/* ════════════════════════════════════════════════════════════
   WHY PLAN STRIP
═════════════════════════════════════════════════════════════ */
.why-plan-strip{
  padding:64px 0;
  background:linear-gradient(180deg,var(--gray-100),#fff);
}
.why-plan-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;
}
.why-plan-item{
  display:grid;grid-template-columns:auto 1fr;gap:14px;
  padding:22px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-xs);
  transition:var(--transition);
}
.why-plan-item:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm);border-color:rgba(66,133,244,.3)}
.why-plan-item .wp-ico{
  display:grid;place-items:center;width:46px;height:46px;
  border-radius:14px;
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  font-size:1.2rem;
}
.why-plan-item:nth-child(2) .wp-ico{background:var(--google-yellow-tint);color:var(--google-yellow-dark)}
.why-plan-item:nth-child(3) .wp-ico{background:var(--google-green-tint);color:var(--google-green-dark)}
.why-plan-item:nth-child(4) .wp-ico{background:var(--google-red-tint);color:var(--google-red-dark)}
.why-plan-item h4{font-size:1rem;margin-bottom:6px}
.why-plan-item p{font-size:.9rem;line-height:1.5;color:var(--gray-700)}

/* ════════════════════════════════════════════════════════════
   CONCEPT SECTION
═════════════════════════════════════════════════════════════ */
.concept-section{background:var(--white)}
.concept-overview{
  display:grid;grid-template-columns:1.1fr .9fr;gap:48px;
  align-items:center;
  padding:42px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-md);
  position:relative;overflow:hidden;
}
.concept-overview::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
  background:var(--rainbow);
}
.concept-kicker{
  display:inline-flex;align-items:center;gap:6px;
  font-size:.74rem;font-weight:800;
  color:var(--google-blue-dark);
  text-transform:uppercase;letter-spacing:.08em;
}
.concept-copy h3{font-size:clamp(1.4rem,2.5vw,1.9rem);margin:12px 0 20px;line-height:1.2}
.concept-list{display:grid;gap:14px;margin-top:14px}
.concept-list article{
  display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start;
  padding:14px;border-radius:var(--radius);
  background:var(--gray-100);
  border:1px solid transparent;
  transition:var(--transition);
}
.concept-list article:hover{background:#fff;border-color:var(--gray-300);box-shadow:var(--shadow-xs)}
.concept-list article>span{
  display:grid;place-items:center;
  width:38px;height:38px;border-radius:50%;
  background:var(--google-blue-tint);
  color:var(--google-blue-dark);
  font-weight:800;font-size:.84rem;
}
.concept-list article:nth-child(2)>span{background:var(--google-green-tint);color:var(--google-green-dark)}
.concept-list article:nth-child(3)>span{background:var(--google-yellow-tint);color:var(--google-yellow-dark)}
.concept-list h4{font-size:1rem;margin-bottom:4px}
.concept-list p{font-size:.92rem;line-height:1.55}
.concept-visual{display:flex;align-items:center;justify-content:center}
.concept-visual img{max-height:380px;object-fit:contain}

.concept-flow{
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
  margin-top:38px;
}
.concept-flow article{
  padding:24px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-xs);
  position:relative;overflow:hidden;
  transition:var(--transition);
}
.concept-flow article::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:var(--rainbow);
}
.concept-flow article:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:rgba(66,133,244,.3)}
.concept-flow article span{
  display:inline-flex;padding:5px 11px;
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  border-radius:var(--radius-pill);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  margin-bottom:10px;
}
.concept-flow article:nth-child(2) span{background:var(--google-green-tint);color:var(--google-green-dark)}
.concept-flow article:nth-child(3) span{background:var(--google-yellow-tint);color:var(--google-yellow-dark)}
.concept-flow article strong{display:block;font-size:1.08rem;font-weight:800;color:var(--gray-900);margin-bottom:6px}
.concept-flow article p{font-size:.9rem;color:var(--gray-700)}

/* ════════════════════════════════════════════════════════════
   COMPARE SECTION
═════════════════════════════════════════════════════════════ */
.compare-section{
  background:
    radial-gradient(circle at 8% 8%,rgba(234,67,53,.06),transparent 30%),
    radial-gradient(circle at 92% 88%,rgba(52,168,83,.08),transparent 30%),
    var(--gray-100);
}
.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.compare-col{
  position:relative;overflow:hidden;
  padding:32px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
  transition:var(--transition);
}
.compare-col::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
}
.compare-col.bad::before{background:var(--google-red)}
.compare-col.good::before{background:linear-gradient(90deg,var(--google-green),var(--google-blue))}
.compare-col h3{font-size:1.32rem;margin:14px 0 20px}
.col-tag{
  display:inline-flex;padding:6px 14px;
  border-radius:var(--radius-pill);
  font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
}
.compare-col.bad .col-tag{background:var(--google-red-tint);color:var(--google-red-dark)}
.compare-col.good .col-tag{background:var(--google-green-tint);color:var(--google-green-dark)}
.compare-col ul{display:grid;gap:11px;margin-top:6px}
.compare-col li{
  position:relative;padding-left:28px;
  font-size:.95rem;line-height:1.55;color:var(--gray-700);
}
.compare-col.bad li::before{
  content:"";position:absolute;left:0;top:.45em;
  width:16px;height:16px;border-radius:50%;
  background:var(--google-red-tint);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23c5231a' stroke-width='3.5' stroke-linecap='round'><line x1='18' y1='6' x2='6' y2='18'/><line x1='6' y1='6' x2='18' y2='18'/></svg>");
  background-repeat:no-repeat;background-position:center;background-size:10px;
}
.compare-col.good li::before{
  content:"";position:absolute;left:0;top:.45em;
  width:16px;height:16px;border-radius:50%;
  background:var(--google-green-tint);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23188038' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-repeat:no-repeat;background-position:center;background-size:10px;
}

/* ════════════════════════════════════════════════════════════
   PLANES SECTION
═════════════════════════════════════════════════════════════ */
.home-planes-section{background:var(--white)}
.pricing-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;
  align-items:stretch;
}
.pricing-card{
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;gap:16px;
  padding:30px 28px;
  background:linear-gradient(180deg,#fff 0%,#fff 70%,#F8FAFD 100%);
  border:1px solid var(--gray-300);border-radius:var(--radius-xl);
  box-shadow:var(--shadow-md);
  transition:var(--transition-slow);
}
.pricing-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
}
.plan-card-green::before{background:linear-gradient(90deg,var(--google-green),var(--google-blue))}
.plan-card-blue::before{background:linear-gradient(90deg,var(--google-blue),var(--google-yellow))}
.plan-card-purple::before{background:linear-gradient(90deg,var(--google-blue),var(--google-purple))}
.pricing-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl);border-color:rgba(66,133,244,.4)}
.pricing-card:nth-child(2){
  border-color:rgba(66,133,244,.42);
  box-shadow:var(--shadow-lg),0 0 0 1px rgba(66,133,244,.18);
  transform:translateY(-8px);
}
.pricing-card:nth-child(2):hover{transform:translateY(-12px)}

.popular-badge{
  display:inline-flex;align-items:center;gap:7px;
  width:max-content;padding:6px 13px;
  border-radius:var(--radius-pill);
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  border:1px solid rgba(66,133,244,.24);
  font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  box-shadow:var(--shadow-xs);
}
.badge-most-popular{
  background:linear-gradient(90deg,var(--google-blue),var(--google-blue-dark));
  color:#fff;border-color:transparent;
  box-shadow:0 4px 14px rgba(66,133,244,.32);
}
.plan-tag{
  display:inline-flex;width:max-content;
  padding:6px 13px;border-radius:var(--radius-pill);
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  border:1px solid rgba(66,133,244,.24);
  font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
}
.plan-card-green .plan-tag{background:var(--google-green-tint);color:var(--google-green-dark);border-color:rgba(52,168,83,.26)}
.plan-card-purple .plan-tag{background:var(--google-purple-tint);color:var(--google-purple-dark);border-color:rgba(124,92,214,.26)}
.pricing-card h3{font-size:1.55rem;letter-spacing:-.01em}
.plan-service{font-weight:800;color:var(--gray-700);margin-top:-8px;font-size:.96rem}
.plan-service strong{color:var(--gray-900)}
.price-currency{
  display:inline-flex;align-items:center;gap:7px;
  flex-wrap:wrap;max-width:100%;
  padding:5px 11px;border-radius:var(--radius-pill);
  background:var(--gray-100);border:1px solid var(--gray-300);
  color:var(--gray-700);font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
  width:max-content;
}
.plan-price-block{
  display:grid;grid-template-columns:1fr;gap:8px;
  padding:14px;
  border:1px solid var(--gray-300);border-radius:var(--radius-lg);
  background:radial-gradient(circle at 92% 0,rgba(66,133,244,.10),transparent 34%),linear-gradient(180deg,#fff,#F8FAFD);
}
.ppb-once,.ppb-month{
  display:grid;grid-template-columns:1fr auto;gap:5px 12px;align-items:end;
  padding:14px 16px;
  border:1px solid rgba(218,220,224,.82);border-radius:var(--radius);
  background:rgba(255,255,255,.78);
}
.ppb-month{background:linear-gradient(180deg,#fff,rgba(52,168,83,.06));border-color:rgba(52,168,83,.22)}
.ppb-label{
  grid-column:1/-1;color:var(--gray-500);font-size:.66rem;
  letter-spacing:.04em;text-transform:uppercase;font-weight:800;
}
.ppb-num{grid-column:1/-1;color:var(--gray-900);font-size:clamp(1.55rem,2.4vw,2rem);font-weight:800;line-height:1.05}
.ppb-once .ppb-num{color:var(--gray-900);font-size:clamp(1.7rem,2.6vw,2.2rem)}
/* "Por mes" más chico y gris que el pago único */
.ppb-month .ppb-num{color:var(--gray-700);font-size:clamp(1.18rem,1.8vw,1.45rem)}
.ppb-old{
  color:var(--gray-500);text-decoration:line-through;
  font-size:.9rem;font-weight:800;
}
.ppb-discount{
  display:inline-flex;align-self:center;width:max-content;margin:0;
  padding:4px 9px;border-radius:var(--radius-pill);
  background:var(--google-green-tint);color:var(--google-green-dark);
  border:1px solid rgba(52,168,83,.22);
  font-size:.66rem;font-weight:800;
}
.ppb-plus{
  position:relative;display:grid;place-items:center;
  height:0;margin:0 4px;color:transparent;font-weight:800;line-height:1;
}
.ppb-plus::before{
  content:"";position:absolute;left:18px;right:18px;top:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--gray-300),transparent);
}
.ppb-plus::after{
  content:"+";position:absolute;left:50%;top:0;z-index:1;
  display:grid;place-items:center;width:28px;height:28px;
  border:1px solid rgba(66,133,244,.3);border-radius:50%;
  background:#fff;color:var(--google-blue-dark);font-weight:800;
  box-shadow:var(--shadow-xs);
  transform:translate(-50%,-50%);
}
.plan-ideal,.plan-quote{font-size:.93rem;line-height:1.55}
.plan-ideal{
  position:relative;padding-left:30px;
}
.plan-ideal::before{
  content:"";position:absolute;left:0;top:1px;
  width:22px;height:22px;border-radius:50%;
  background-color:var(--google-blue-tint);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a73e8' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><line x1='12' y1='16' x2='12' y2='12'/><line x1='12' y1='8' x2='12.01' y2='8'/></svg>");
  background-repeat:no-repeat;background-position:center;background-size:14px;
}
.plan-card-green .plan-ideal::before{
  background-color:var(--google-green-tint);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23188038' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><line x1='12' y1='16' x2='12' y2='12'/><line x1='12' y1='8' x2='12.01' y2='8'/></svg>");
}
.plan-card-purple .plan-ideal::before{
  background-color:var(--google-purple-tint);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b3fb5' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><line x1='12' y1='16' x2='12' y2='12'/><line x1='12' y1='8' x2='12.01' y2='8'/></svg>");
}
.plan-quote{
  padding:14px 16px;
  border-left:4px solid var(--google-blue);
  background:var(--google-blue-tint);
  border-radius:0 var(--radius) var(--radius) 0;
  color:var(--gray-800);font-weight:700;font-style:italic;
}
.plan-card-green .plan-quote{border-color:var(--google-green);background:var(--google-green-tint)}
.plan-card-purple .plan-quote{border-color:var(--google-purple);background:var(--google-purple-tint)}
.pricing-card ul{display:grid;gap:10px;margin-top:4px}
.pricing-card li{
  position:relative;padding-left:26px;
  font-size:.93rem;color:var(--gray-700);line-height:1.5;
}
.pricing-card li::before{
  content:"";position:absolute;left:0;top:.4em;
  width:18px;height:18px;border-radius:50%;
  background:var(--google-green-tint);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23188038' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-repeat:no-repeat;background-position:center;background-size:11px;
}
.pricing-card .btn{margin-top:auto}
.plan-detail-link{
  color:var(--google-blue-dark);font-weight:800;font-size:.9rem;
  display:inline-flex;align-items:center;gap:5px;
  text-align:center;justify-content:center;
}
.plan-detail-link:hover{color:var(--google-blue);text-decoration:underline}

/* Ad budget note */
.ad-budget-note{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;align-items:center;
  padding:28px;margin-top:36px;
  border-radius:var(--radius-xl);
  background:
    radial-gradient(circle at 92% 8%,rgba(251,188,4,.16),transparent 26%),
    radial-gradient(circle at 12% 92%,rgba(52,168,83,.12),transparent 28%),
    linear-gradient(135deg,#fff,#F8FAFD);
  border:1px solid var(--gray-300);
  box-shadow:0 16px 40px rgba(60,64,67,.12);
  position:relative;overflow:hidden;
}
.ad-budget-note::before{
  content:"";position:absolute;left:0;top:0;right:0;height:6px;
  background:linear-gradient(90deg,var(--google-blue),var(--google-yellow),var(--google-green));
}
.ad-budget-note__icon{
  display:grid;place-items:center;
  width:74px;height:74px;border-radius:var(--radius-xl);
  background:linear-gradient(135deg,var(--google-blue-tint),#fff);
  border:1px solid rgba(66,133,244,.2);
  box-shadow:var(--shadow-sm);
  font-size:2rem;
}
.ad-budget-note__body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 24px;align-items:center}
.ad-budget-note__body>strong{color:var(--gray-900);font-size:1.18rem;line-height:1.2}
.ad-budget-note__body>span{max-width:760px;color:var(--gray-700);font-size:.96rem;line-height:1.5}
.ad-budget-note__footer{
  grid-column:2;grid-row:1/span 2;
  display:grid;gap:10px;align-self:stretch;
  min-width:260px;padding-left:24px;
  border-left:1px solid var(--gray-300);
}
.ad-budget-note__minimum{
  display:grid;gap:2px;padding:14px 16px;
  border:1px solid rgba(66,133,244,.22);border-radius:var(--radius-lg);
  background:#fff;box-shadow:var(--shadow-xs);
}
.ad-budget-note__minimum-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--google-blue-dark);font-weight:800}
.ad-budget-note__minimum-value{color:var(--gray-900);font-size:1.1rem;font-weight:800;line-height:1.2}
.ad-budget-note__logos{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.ad-platform-logo{
  display:inline-flex;align-items:center;justify-content:center;
  padding:9px 14px;min-height:46px;
  border:1px solid var(--gray-300);border-radius:var(--radius-lg);
  background:#fff;box-shadow:var(--shadow-xs);
}
.ad-platform-logo img{max-height:24px;width:auto}

.payment-trust,.planes-payment-trust{
  display:flex;gap:14px;align-items:center;justify-content:center;
  flex-wrap:wrap;margin-top:28px;
}
.payment-trust-subtle{
  margin-top:18px;opacity:.7;
  transition:opacity var(--transition);
}
.payment-trust-subtle:hover{opacity:1}
.payment-trust-subtle .mp-brand,
.payment-trust-subtle .secure-pay{
  background:transparent;border-color:transparent;
  min-height:48px;padding:8px 14px;
}
.payment-trust-subtle .mp-logo,
.payment-trust-subtle .secure-logo{max-height:32px;opacity:.92}
.cta-banner .payment-trust-subtle .mp-brand,
.cta-banner .payment-trust-subtle .secure-pay{
  background:#fff;
  border:1px solid rgba(255,255,255,.18);
  border-radius:var(--radius-pill);
}
.cta-banner .payment-trust-subtle .mp-logo,
.cta-banner .payment-trust-subtle .secure-logo{
  filter:none;opacity:1;
}
.mp-brand,.secure-pay{
  display:inline-flex;align-items:center;justify-content:center;
  padding:10px 16px;min-height:46px;
  border:1px solid var(--gray-300);border-radius:var(--radius-pill);
  background:#fff;
}
.mp-logo,.secure-logo{max-height:26px;width:auto}

/* ════════════════════════════════════════════════════════════
   SPECIALS — Planes por rubro
═════════════════════════════════════════════════════════════ */
.specials-section{
  background:
    radial-gradient(circle at 8% 10%,rgba(66,133,244,.08),transparent 28%),
    radial-gradient(circle at 92% 34%,rgba(251,188,4,.10),transparent 24%),
    var(--gray-100);
}
.specials-grid{
  display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;
  align-items:stretch;
}
.special-card{
  position:relative;overflow:hidden;
  display:grid;grid-template-rows:auto auto 1fr auto auto;gap:12px;
  grid-column:span 2;
  padding:24px;
  border-radius:var(--radius-xl);
  background:#fff;
  border:1px solid var(--gray-300);
  box-shadow:var(--shadow-sm);
  transition:var(--transition-slow);
}
.special-card:nth-child(4),
.special-card:nth-child(5){grid-column:span 3}
.special-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:var(--rubro-color,var(--google-blue));
  transition:height var(--transition);
}
.special-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--rubro-color,rgba(66,133,244,.4))}
.special-card:hover::before{height:6px}

/* Header zone: emoji + tag */
.special-card-head{
  display:flex;align-items:center;gap:12px;
  margin-bottom:2px;
}
.special-card .sp-emoji{
  display:grid;place-items:center;flex-shrink:0;
  width:52px;height:52px;
  border-radius:14px;
  background:var(--rubro-tint,var(--google-blue-tint));
  color:var(--rubro-dark,var(--google-blue-dark));
  border:1px solid var(--rubro-border,rgba(66,133,244,.18));
  font-size:1.5rem;
}
.special-card .sp-tag{
  display:inline-flex;width:max-content;max-width:100%;
  padding:6px 12px;border-radius:var(--radius-pill);
  background:var(--rubro-tint,var(--google-blue-tint));
  color:var(--rubro-dark,var(--google-blue-dark));
  border:1px solid var(--rubro-border,rgba(66,133,244,.22));
  font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.special-card h3{font-size:1.22rem;line-height:1.25;color:var(--gray-900);margin-top:4px}
.special-card p{font-size:.95rem;color:var(--gray-700);line-height:1.55}

/* Versions row */
.sp-versions{
  display:flex;gap:8px;flex-wrap:wrap;
  padding-top:14px;
  border-top:1px dashed var(--gray-300);
}
.sp-versions span{
  display:inline-flex;align-items:center;gap:5px;
  padding:5px 11px;border-radius:var(--radius-pill);
  background:var(--gray-100);border:1px solid var(--gray-300);
  color:var(--gray-700);
  font-size:.72rem;font-weight:800;
}
.sp-versions span::before{
  content:"";width:6px;height:6px;border-radius:50%;
  background:var(--rubro-color,var(--google-blue));
}
.sp-cta{
  display:inline-flex;align-items:center;gap:6px;
  margin-top:4px;
  color:var(--rubro-dark,var(--google-blue-dark));
  font-weight:800;font-size:.95rem;
  transition:gap var(--transition);
}
.special-card:hover .sp-cta{gap:10px}

/* Rubro color themes */
.sp-salud{--rubro-color:var(--google-green);--rubro-dark:var(--google-green-dark);--rubro-tint:var(--google-green-tint);--rubro-border:rgba(52,168,83,.26)}
.sp-auditivos{--rubro-color:var(--google-blue);--rubro-dark:var(--google-blue-dark);--rubro-tint:var(--google-blue-tint);--rubro-border:rgba(66,133,244,.26)}
.sp-consultorio{--rubro-color:var(--google-red);--rubro-dark:var(--google-red-dark);--rubro-tint:var(--google-red-tint);--rubro-border:rgba(234,67,53,.26)}
.sp-fabricas{--rubro-color:var(--google-yellow);--rubro-dark:var(--google-yellow-dark);--rubro-tint:var(--google-yellow-tint);--rubro-border:rgba(251,188,4,.3)}
.sp-hoteles{--rubro-color:var(--google-blue);--rubro-dark:var(--google-blue-dark);--rubro-tint:var(--google-blue-tint);--rubro-border:rgba(66,133,244,.26);
  background:linear-gradient(180deg,#fff,#F8FAFD);
}

.muted-center-note{
  max-width:720px;margin:32px auto 0;
  text-align:center;color:var(--gray-700);font-weight:700;
  padding:16px 20px;border-radius:var(--radius-lg);
  background:#fff;border:1px solid var(--gray-300);
  box-shadow:var(--shadow-xs);
}
.text-link-purple,.text-link-blue{color:var(--google-blue-dark);font-weight:800}
.text-link-purple:hover,.text-link-blue:hover{color:var(--google-blue);text-decoration:underline}

/* ════════════════════════════════════════════════════════════
   PROCESS (Cómo funciona)
═════════════════════════════════════════════════════════════ */
.process{
  background:
    radial-gradient(circle at 12% 88%,rgba(52,168,83,.10),transparent 30%),
    var(--gray-100);
}
.process-grid-5{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;
  position:relative;
}
.process-grid-5::before{
  content:"";position:absolute;left:5%;right:5%;top:42px;height:2px;
  background:repeating-linear-gradient(to right,var(--gray-300) 0,var(--gray-300) 8px,transparent 8px,transparent 16px);
  z-index:0;
}
.step{
  position:relative;z-index:1;
  padding:24px;text-align:left;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-xs);
  transition:var(--transition);
  overflow:hidden;
}
.step::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:var(--rainbow);
  opacity:0;transition:opacity var(--transition);
}
.step:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:rgba(66,133,244,.32)}
.step:hover::before{opacity:1}
.step-num{
  display:grid;place-items:center;width:46px;height:46px;
  border-radius:50%;
  background:var(--google-blue);color:#fff;
  font-weight:800;font-size:1.05rem;
  margin-bottom:14px;
  box-shadow:0 6px 16px rgba(66,133,244,.32);
}
.step-num-red{background:var(--google-red);box-shadow:0 6px 16px rgba(234,67,53,.32)}
.step:nth-child(2) .step-num{background:var(--google-green);box-shadow:0 6px 16px rgba(52,168,83,.32)}
.step:nth-child(3) .step-num{background:var(--google-yellow);color:var(--google-yellow-dark);box-shadow:0 6px 16px rgba(251,188,4,.32)}
.step h3{font-size:1.05rem;margin-bottom:6px}
.step p{font-size:.9rem;color:var(--gray-700);line-height:1.5}

/* ════════════════════════════════════════════════════════════
   CASOS (cases-grid)
═════════════════════════════════════════════════════════════ */
.clients-v2{
  background:
    radial-gradient(circle at 10% 12%,rgba(66,133,244,.10),transparent 28%),
    radial-gradient(circle at 92% 18%,rgba(52,168,83,.10),transparent 26%),
    linear-gradient(180deg,#fff,var(--gray-100));
}
.cases-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;
}
.case-card{
  position:relative;overflow:hidden;
  padding:0;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  background:linear-gradient(180deg,#fff 0%,#fff 72%,#F8FAFD 100%);
  box-shadow:0 14px 34px rgba(60,64,67,.12);
  transition:var(--transition-slow);
}
.case-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:rgba(66,133,244,.4)}
.case-browser{display:block;padding:14px 14px 18px;background:transparent}
.case-chrome{
  display:flex;align-items:center;gap:8px;
  min-height:38px;padding:8px 12px;
  border:1px solid var(--gray-300);border-bottom:0;
  border-radius:14px 14px 0 0;
  background:var(--gray-100);
}
.cc-dot{width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:var(--gray-300)}
.cc-dot.r{background:var(--google-red)}.cc-dot.y{background:var(--google-yellow)}.cc-dot.g{background:var(--google-green)}
.cc-url{
  overflow:hidden;margin-left:8px;
  color:var(--gray-700);font-size:.78rem;font-weight:800;
  text-overflow:ellipsis;white-space:nowrap;
}
.case-shot{
  position:relative;overflow:hidden;aspect-ratio:16/9;
  border:1px solid var(--gray-300);border-radius:0 0 14px 14px;
  background:linear-gradient(135deg,rgba(66,133,244,.1),rgba(52,168,83,.08)),var(--gray-100);
}
.case-graph{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:16px 16px 14px;gap:12px}
.case-graph-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.cg-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;font-size:1rem;background:#fff;border:1px solid var(--gray-200);box-shadow:var(--shadow-xs)}
.cg-trend{display:inline-flex;align-items:center;gap:5px;font-size:.7rem;font-weight:800;color:#137333;background:rgba(52,168,83,.14);padding:4px 9px;border-radius:999px;white-space:nowrap}
.cg-bars{flex:1;display:flex;align-items:flex-end;gap:6px;min-height:0}
.cg-bars i{flex:1;display:block;border-radius:5px 5px 0 0;background:var(--cg,#4285F4);opacity:.88}
.cg-bars i:last-child{opacity:1}
.case-shot img{
  width:100%;aspect-ratio:16/9;object-fit:cover;object-position:top center;
  transform:scale(1.01);transition:transform .4s ease,filter .4s ease;
}
.case-card:hover .case-shot img{transform:scale(1.05);filter:saturate(1.08)}
.shot-fallback-content{
  position:absolute;inset:0;display:none;place-items:center;
  gap:12px;padding:30px;text-align:center;
}
.shot-fallback .shot-fallback-content{display:grid}
.shot-fallback img{display:none}
.sf-emoji{font-size:2.4rem}
.sf-name{
  display:inline-flex;padding:7px 14px;
  border-radius:var(--radius-pill);
  background:#fff;border:1px solid var(--gray-300);
  color:var(--gray-700);font-size:.82rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
  box-shadow:var(--shadow-xs);
}
.case-quote{
  position:relative;display:grid;gap:14px;
  padding:26px 28px;
  border-top:1px solid rgba(218,220,224,.66);
}
.case-quote::before{
  content:"";position:absolute;left:24px;top:-20px;
  width:42px;height:42px;border-radius:50%;
  background:#fff;border:1px solid var(--gray-300);
  box-shadow:var(--shadow-sm);
}
.case-quote::after{
  content:"\201C";position:absolute;left:35px;top:-12px;
  color:var(--google-blue-dark);font-size:2.4rem;font-weight:800;line-height:1;
  font-family:Georgia,serif;
}
.case-quote p{
  margin-top:10px;
  color:var(--gray-800);font-size:1.02rem;font-weight:700;line-height:1.55;
}
.case-quote footer{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  color:var(--gray-700);font-size:.9rem;font-weight:700;
}
.cq-name{
  display:inline-flex;align-items:center;min-height:30px;
  padding:5px 11px;
  border:1px solid rgba(66,133,244,.24);border-radius:var(--radius-pill);
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;
}
.cq-role{color:var(--gray-700)}

/* ════════════════════════════════════════════════════════════
   FAQ — Rediseño con número de cuenta + estado abierto destacado
═════════════════════════════════════════════════════════════ */
.faq{
  background:
    radial-gradient(circle at 92% 12%,rgba(234,67,53,.08),transparent 28%),
    var(--gray-100);
}
.faq-list{
  display:grid;gap:10px;max-width:880px;margin:0 auto;
  counter-reset:faq;
}
.faq-item{
  counter-increment:faq;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-xs);
  position:relative;overflow:hidden;
  transition:var(--transition);
}
.faq-item:hover{border-color:rgba(66,133,244,.3);box-shadow:var(--shadow-sm)}
.faq-item.open{
  background:linear-gradient(180deg,#fff,#F8FAFD);
  border-color:rgba(66,133,244,.42);
  box-shadow:0 12px 28px rgba(66,133,244,.10);
}
.faq-item.open::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:var(--rainbow-vertical);
}
.faq-question{
  width:100%;
  display:grid;grid-template-columns:auto 1fr auto;
  gap:18px;align-items:center;
  padding:20px 24px;
  color:var(--gray-900);background:transparent;
  font-family:inherit;font-weight:800;font-size:1.02rem;line-height:1.3;
  text-align:left;
  transition:var(--transition);
}
.faq-question::before{
  content:counter(faq,decimal-leading-zero);
  display:grid;place-items:center;
  min-width:38px;height:38px;padding:0 8px;
  border-radius:10px;
  background:var(--gray-100);color:var(--gray-700);
  border:1px solid var(--gray-300);
  font-family:ui-monospace,'SF Mono',monospace;
  font-size:.78rem;font-weight:800;
  transition:var(--transition);
}
.faq-item:hover .faq-question::before{
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  border-color:rgba(66,133,244,.3);
}
.faq-item.open .faq-question::before{
  background:var(--google-blue);color:#fff;border-color:transparent;
  box-shadow:0 4px 12px rgba(66,133,244,.32);
}
.faq-question:hover{color:var(--google-blue-dark)}
.faq-question .chev{
  width:22px;height:22px;flex:0 0 22px;
  padding:3px;border-radius:50%;
  background:var(--gray-100);
  color:var(--google-blue-dark);
  transition:transform var(--transition),background var(--transition);
}
.faq-item:hover .chev{background:var(--google-blue-tint)}
.faq-item.open .chev{transform:rotate(180deg);background:var(--google-blue);color:#fff}
.faq-answer{
  overflow:hidden;
  max-height:0;
  transition:max-height .35s ease;
}
.faq-item.open .faq-answer{max-height:1200px}
.faq-answer>div{min-height:0}
.faq-answer-inner{
  padding:6px 24px 22px 80px;color:var(--gray-700);
  font-size:.96rem;line-height:1.65;
}
.faq-answer-inner strong{color:var(--gray-900)}

@media (max-width:680px){
  .faq-question{padding:16px 18px;gap:12px;font-size:.95rem}
  .faq-question::before{min-width:32px;height:32px;font-size:.7rem}
  .faq-answer-inner{padding:6px 18px 18px 18px}
}

/* ════════════════════════════════════════════════════════════
   CTA BANNER
═════════════════════════════════════════════════════════════ */
.cta-banner{
  position:relative;overflow:hidden;
  text-align:center;color:#fff;
  background:
    radial-gradient(circle at 12% 30%,rgba(251,188,4,.22),transparent 32%),
    radial-gradient(circle at 88% 22%,rgba(52,168,83,.22),transparent 30%),
    radial-gradient(circle at 50% 100%,rgba(234,67,53,.16),transparent 40%),
    linear-gradient(135deg,#1A73E8 0%,#202124 100%);
}
.cta-banner::before{
  content:"";position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:radial-gradient(ellipse at center,black 10%,transparent 72%);
  -webkit-mask-image:radial-gradient(ellipse at center,black 10%,transparent 72%);
  pointer-events:none;
}
.cta-banner .container{position:relative}
.cta-banner .eyebrow{margin:0 auto 18px}
.cta-banner h2{color:#fff;margin-bottom:14px}
.cta-banner p{color:rgba(255,255,255,.84);max-width:680px;margin:0 auto 28px;font-size:1.05rem}
.cta-banner .btn-light{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(8px)}
.cta-banner .btn-light:hover{background:rgba(255,255,255,.22)}

/* ════════════════════════════════════════════════════════════
   FOOTER
═════════════════════════════════════════════════════════════ */
.footer{
  background:rgb(45,45,66);color:#fff;
  padding:64px 0 32px;position:relative;
}
.footer::before{
  content:"";position:absolute;left:0;top:0;right:0;height:3px;
  background:var(--rainbow);
}
.footer .logo,.footer h4,.footer strong{color:#fff}
.footer h4{font-size:.95rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}
.footer p,.footer a,.footer-contact-item{color:rgba(255,255,255,.72)}
.footer a:hover{color:#fff}
.footer-grid{
  display:grid;grid-template-columns:1.5fr 1fr 1.35fr 1fr 1fr;
  gap:32px;
}
.footer-brand p{margin-top:14px;font-size:.92rem;line-height:1.6;color:rgba(255,255,255,.7)}
.footer ul{display:grid;gap:9px;margin-top:6px}
.footer ul a{font-size:.92rem;font-weight:600;color:rgba(255,255,255,.74);transition:var(--transition)}
.footer ul a:hover{color:#fff;padding-left:4px}
.footer-rubros-grid{grid-template-columns:1fr}
.footer-contact-item{display:block;margin-top:10px;font-size:.92rem;font-weight:600}
.footer-bottom{
  display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;
  margin-top:42px;padding-top:24px;
  border-top:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.6);font-size:.88rem;
}
.footer-legal{display:flex;gap:16px}
.footer-legal a{font-weight:700}

/* ════════════════════════════════════════════════════════════
   FLOAT WhatsApp + scroll-top
═════════════════════════════════════════════════════════════ */
.float-wa{
  position:fixed;right:22px;bottom:22px;z-index:90;
  display:grid;place-items:center;
  width:60px;height:60px;border-radius:50%;
  background:#25D366;color:#fff;
  box-shadow:0 8px 24px rgba(37,211,102,.5);
  transition:var(--transition);
}
.float-wa:hover{transform:scale(1.08)}
.float-wa svg{width:30px;height:30px}
.float-wa::after{
  content:"";position:absolute;inset:-4px;border-radius:50%;
  border:2px solid rgba(37,211,102,.36);
  animation:wa-pulse 2.4s infinite;
}
@keyframes wa-pulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:0;transform:scale(1.4)}
}
.scroll-top{
  position:fixed;right:29px;bottom:94px;z-index:89;
  display:grid;place-items:center;
  width:46px;height:46px;border-radius:50%;
  border:1px solid var(--gray-300);background:#fff;
  color:var(--google-blue-dark);
  box-shadow:var(--shadow-md);
  opacity:0;visibility:hidden;transform:translateY(10px);
  transition:var(--transition);
}
.scroll-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.scroll-top:hover{background:var(--google-blue-tint);transform:translateY(-2px)}
.scroll-top svg{width:22px;height:22px}

/* ════════════════════════════════════════════════════════════
   REVEAL ANIMATIONS
═════════════════════════════════════════════════════════════ */
.reveal,.reveal-up,.reveal-stagger>*{
  opacity:0;transform:translateY(28px);
  transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);
  will-change:opacity,transform;
}
.reveal.is-visible,.reveal-up.is-visible,.reveal-stagger>.is-visible{opacity:1;transform:translateY(0)}

/* ════════════════════════════════════════════════════════════
   RESPONSIVE
═════════════════════════════════════════════════════════════ */
@media (max-width:1100px){
  .nav-links{display:none}
  .nav-cta{margin-left:auto}
  .menu-toggle{display:flex;align-items:center;justify-content:center}
  .nav-links.open{
    position:absolute;left:0;right:0;top:100%;
    display:grid;gap:8px;padding:16px 24px 20px;
    background:var(--white);border-bottom:1px solid var(--gray-300);
    box-shadow:var(--shadow-md);
  }
  .nav-links.open a,.nav-links.open .nav-drop-btn{justify-content:flex-start;width:100%}
  .nav-dropdown:hover .nav-drop-menu{display:none}
  .nav-dropdown.open .nav-drop-menu{
    position:static;display:grid;min-width:0;box-shadow:none;margin-top:6px;
  }
  .nav-links.open .nav-dropdown:not(.open) .nav-drop-menu{display:none}
}
@media (max-width:960px){
  section{padding:64px 0}
  .hero{padding:42px 0 52px}
  .hero-grid-v1,.hero-grid-v3,.concept-overview,.compare-grid{grid-template-columns:minmax(0,1fr);gap:36px}
  .hero-v2-mosaic{grid-template-columns:minmax(0,1fr)}
  .pricing-grid,.cases-grid,.compare-grid{grid-template-columns:minmax(0,1fr)}
  .stats-grid,.why-plan-grid{grid-template-columns:repeat(2,1fr)}
  .process-grid-5{grid-template-columns:repeat(2,1fr)}
  .process-grid-5::before{display:none}
  .specials-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .special-card,.special-card:nth-child(4),.special-card:nth-child(5){grid-column:auto;grid-row:auto;min-height:auto;padding:22px}
  .concept-flow{grid-template-columns:1fr}
  .ad-budget-note{grid-template-columns:1fr}
  .ad-budget-note__body{grid-template-columns:1fr}
  .ad-budget-note__footer{grid-column:auto;grid-row:auto;min-width:0;padding-left:0;border-left:0}
  .pricing-card:nth-child(2){transform:none}
  .pricing-card:nth-child(2):hover{transform:translateY(-3px)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .ps-card-2{transform:none}
}
@media (max-width:680px){
  .specials-grid{grid-template-columns:1fr}
  .container{padding:0 18px}
  .nav{min-height:64px}
  .logo{font-size:1.05rem}
  .logo svg{width:34px;height:34px}
  .nav-cta .btn{padding:9px 14px;font-size:.85rem;min-height:40px}
  h1{font-size:clamp(2rem,9vw,2.7rem)}
  .hero{padding:36px 0 46px}
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions .btn{width:100%}
  .hero-trust{flex-direction:column;gap:10px}
  .stats-grid,.why-plan-grid{grid-template-columns:1fr}
  .process-grid-5{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;align-items:flex-start}
  .float-wa{width:54px;height:54px;right:16px;bottom:16px}
  .scroll-top{right:20px;bottom:80px}
  .concept-overview{padding:24px}
  .compare-col{padding:24px}
  .pricing-card{padding:24px}
}

/* ════════════════════════════════════════════════════════════
   TWEAKS PANEL (hero variant switcher)
═════════════════════════════════════════════════════════════ */
.tweaks-panel{
  position:fixed;bottom:24px;left:24px;z-index:200;
  display:none;
  padding:18px 20px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);
  max-width:300px;
}
body.tweaks-on .tweaks-panel{display:block}
.tweaks-panel-header{
  display:flex;justify-content:space-between;align-items:center;
  margin-bottom:14px;padding-bottom:12px;
  border-bottom:1px solid var(--gray-300);
}
.tweaks-panel-title{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--google-blue-dark)}
.tweaks-close{
  width:28px;height:28px;border-radius:50%;
  display:grid;place-items:center;
  color:var(--gray-700);font-size:1rem;
  background:var(--gray-100);
}
.tweaks-close:hover{background:var(--google-blue-tint);color:var(--google-blue-dark)}
.tweaks-section{margin-bottom:14px}
.tweaks-section h5{font-size:.78rem;font-weight:800;color:var(--gray-900);margin-bottom:8px}
.tweaks-section p{font-size:.74rem;color:var(--gray-500);margin-bottom:10px;font-weight:600}
.tweaks-radio{display:grid;gap:6px}
.tweaks-radio label{
  display:flex;align-items:center;gap:10px;
  padding:9px 12px;border-radius:var(--radius);
  background:var(--gray-100);border:1px solid transparent;
  cursor:pointer;transition:var(--transition);
  font-size:.86rem;font-weight:700;color:var(--gray-800);
}
.tweaks-radio label:hover{background:var(--google-blue-tint);color:var(--google-blue-dark)}
.tweaks-radio input{accent-color:var(--google-blue);width:14px;height:14px}
.tweaks-radio label.active{background:var(--google-blue-tint);border-color:rgba(66,133,244,.32);color:var(--google-blue-dark)}


/* ════════════════════════════════════════════════════════════
   PLAN PAGES — Hero V3 (pricing inline) + module sections
═════════════════════════════════════════════════════════════ */

/* Hero grid for plan pages */
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.88fr);gap:50px;align-items:center}
.plan-hero-title{display:flex;flex-direction:column;gap:8px;margin:18px 0 0}
.plan-hero-name{font-size:clamp(2rem,4.4vw,3.6rem);line-height:1.1;color:var(--gray-900);font-weight:800;letter-spacing:-.015em}
.plan-hero-subtitle{display:block;color:var(--gray-700);font-size:clamp(1.18rem,2.1vw,1.55rem);line-height:1.3;font-weight:700;margin-top:2px}
/* Inicio / Crecimiento / A Medida: subtítulo en una sola línea en escritorio */
.plan-page-inicio .plan-hero-subtitle,
.plan-page-crecimiento .plan-hero-subtitle,
.plan-page-medida .plan-hero-subtitle{font-size:clamp(1.02rem,1.85vw,1.35rem);white-space:nowrap}
@media (max-width:760px){
  .plan-page-inicio .plan-hero-subtitle,
  .plan-page-crecimiento .plan-hero-subtitle,
  .plan-page-medida .plan-hero-subtitle{white-space:normal}
}

.hero-copy-v3 .lead{margin-top:16px}
.hero-actions-single{align-items:flex-start;flex-direction:column;gap:14px}
.hero-actions-single:has(.payment-trust-hero){
  flex-direction:row;align-items:center;gap:20px;flex-wrap:wrap;
}
.hero-actions-single .payment-trust-hero{margin-top:0}

.hero-offer-v3{
  display:grid;gap:10px;
  position:relative;overflow:hidden;
  padding:18px;
  border:1px solid var(--gray-300);border-radius:var(--radius-xl);
  background:radial-gradient(circle at 92% 0,rgba(66,133,244,.08),transparent 38%),linear-gradient(180deg,#fff,var(--gray-100));
  margin-top:20px;
}
.hero-offer-note{font-size:.8rem;color:var(--gray-700);font-weight:600;margin-top:2px}
.price-currency .pc-flag{display:inline-flex;align-items:center;font-size:.95rem}

/* hero-price-strip — matches in-card .plan-price-block style */
.hero-price-strip{
  display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:6px;
  padding:10px;
  border-radius:var(--radius-lg);
  border:1px solid rgba(66,133,244,.18);
  background:radial-gradient(circle at 92% 0,rgba(66,133,244,.10),transparent 34%),linear-gradient(180deg,#fff,#F8FAFD);
  text-align:left;
}
.hero-price-strip .hps-amount{
  display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:end;align-content:center;
  padding:11px 13px;
  border:1px solid var(--gray-200);border-radius:var(--radius);
  background:rgba(255,255,255,.78);
}
.hero-price-strip .hps-amount:last-of-type{
  background:linear-gradient(180deg,#fff,rgba(52,168,83,.06));
  border-color:rgba(52,168,83,.22);
}
.hps-label{
  grid-column:1/-1;color:var(--gray-500);font-size:.7rem;white-space:nowrap;
  letter-spacing:.04em;text-transform:uppercase;font-weight:800;
}
.hps-num{
  grid-column:1/-1;color:var(--gray-900);
  font-size:clamp(2rem,2.9vw,2.55rem);font-weight:800;line-height:1.05;
}
.hero-price-strip .hps-amount:last-of-type .hps-num{
  color:var(--gray-700);font-size:clamp(1.35rem,1.9vw,1.65rem);
}
/* ── Mensualidad opcional ─────────────────────────────────────── */
.price-optional-tag{
  display:inline-flex;align-items:center;gap:6px;
  padding:3px 9px;border-radius:999px;
  background:#FFF4D6;color:#7A4F00;
  border:1px solid #F4C95D;
  font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;
  font-weight:800;line-height:1;
}
.price-optional-tag::before{
  content:"";width:6px;height:6px;border-radius:50%;background:#E0A106;
}
/* En hero strip (planes principales): ocupa toda la fila */
.hero-price-strip .hps-amount .price-optional-tag{
  grid-column:1/-1;justify-self:start;margin-bottom:4px;
}
.hero-price-strip .hps-amount:has(.price-optional-tag){
  border:1px dashed rgba(224,161,6,.55);
  background:linear-gradient(180deg,#fff,rgba(244,201,93,.08));
}
.hero-price-strip .hps-amount:has(.price-optional-tag) .hps-label{color:#7A4F00}
/* En pricing cards de rubros: se ubica arriba del label "Por mes" */
.ppb-month{position:relative;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px}
.ppb-month .price-optional-tag{flex-basis:100%;width:max-content;margin-bottom:2px}
@media (max-width:768px){
  .hero-price-strip .hps-amount .price-optional-tag{justify-self:center}
  .ppb-month .price-optional-tag{margin-left:auto;margin-right:auto}
}
/* ── Badge "Pago Mensual" para items de mantenimiento / asesoría ── */
.tag-monthly{
  display:inline-flex;align-items:center;gap:5px;
  margin-left:8px;vertical-align:1px;
  padding:2px 8px;border-radius:999px;
  background:#FFF4D6;color:#7A4F00;
  border:1px solid #F4C95D;
  font-size:.66rem;letter-spacing:.04em;text-transform:uppercase;
  font-weight:800;line-height:1.4;white-space:nowrap;
}
.tag-monthly::before{
  content:"";width:5px;height:5px;border-radius:50%;background:#E0A106;flex:none;
}
/* ── Buckets dentro de pricing-card: pago único vs opcional mensual ── */
.plan-bucket{
  margin:14px 0 0;padding:14px 14px 12px;border-radius:12px;
  border:1px solid var(--gray-200);background:#fff;
  display:grid;gap:8px;
}
.plan-bucket + .plan-bucket{margin-top:10px}
.plan-bucket-head{
  display:flex;flex-direction:column;align-items:stretch;
  gap:8px;
}
.plan-bucket-head .plan-bucket-title{flex:0 0 auto;min-width:0}
.plan-bucket-price{
  display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;
  justify-content:flex-start;
}
.pbp-num{
  font-size:1.35rem;font-weight:800;line-height:1;color:var(--gray-900);
  white-space:nowrap;
}
.pbp-suffix{
  font-size:.7rem;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:var(--gray-500);margin-left:4px;
}
.pbp-old{
  font-size:.78rem;color:var(--gray-500);text-decoration:line-through;
  text-decoration-color:rgba(0,0,0,.45);
}
.pbp-discount{
  display:inline-flex;align-items:center;
  padding:2px 7px;border-radius:999px;
  background:#FDECEC;color:#B42318;border:1px solid #FBC8C8;
  font-size:.62rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
}
.plan-bucket-once .pbp-num{color:#1B6E36}
.plan-bucket-once .pbp-suffix{color:#1B6E36;opacity:.75}
.plan-bucket-monthly .pbp-num{color:#7A4F00}
.plan-bucket-monthly .pbp-suffix{color:#7A4F00;opacity:.7;text-transform:lowercase;font-size:.78rem;font-weight:800}
.plan-bucket-title{
  margin:0;display:flex;align-items:center;gap:8px;
  font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;
  color:var(--gray-700);
}
.plan-bucket-title .pbt-dot{
  width:8px;height:8px;border-radius:50%;background:var(--gray-400);
}
.plan-bucket-sub{
  margin:-2px 0 2px;font-size:.78rem;color:var(--gray-500);line-height:1.45;
}
.plan-bucket-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.plan-bucket-list li{
  position:relative;padding-left:22px;font-size:.92rem;
  color:var(--gray-700);line-height:1.5;
}
.plan-bucket-list li::before{
  content:"";position:absolute;left:0;top:.45em;
  width:14px;height:14px;border-radius:50%;
  background:rgba(52,168,83,.12);
}
.plan-bucket-list li::after{
  content:"";position:absolute;left:3px;top:.62em;
  width:8px;height:5px;border-left:2px solid #34A853;border-bottom:2px solid #34A853;
  transform:rotate(-45deg);
}
/* Variante "pago único" */
.plan-bucket-once{
  border-color:rgba(52,168,83,.28);
  background:linear-gradient(180deg,#fff,rgba(52,168,83,.04));
}
.plan-bucket-once .plan-bucket-title{color:#1B6E36}
.plan-bucket-once .plan-bucket-title .pbt-dot{background:#34A853}
/* Variante "opcional mensual" */
.plan-bucket-monthly{
  border:1px dashed rgba(224,161,6,.55);
  background:linear-gradient(180deg,#fff,rgba(244,201,93,.06));
}
.plan-bucket-monthly .plan-bucket-title{color:#7A4F00}
.plan-bucket-monthly .plan-bucket-title .pbt-dot{background:#E0A106}
.plan-bucket-monthly .plan-bucket-title::after{
  content:"OPCIONAL";margin-left:auto;
  padding:3px 8px;border-radius:999px;
  background:#FFF4D6;color:#7A4F00;border:1px solid #F4C95D;
  font-size:.6rem;letter-spacing:.06em;
}
.plan-bucket-monthly .plan-bucket-list li::before{background:rgba(224,161,6,.14)}
.plan-bucket-monthly .plan-bucket-list li::after{
  border-color:#B8810A;
}
/* Layout side-by-side para landings (resumen post-hero) */
.plan-buckets-section{
  padding:48px 0;
  background:#fff;
}
.plan-buckets-row{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;margin-top:24px;
}
.plan-buckets-row .plan-bucket{
  margin:0;padding:22px 22px 20px;
}
.plan-buckets-row .plan-bucket-title{font-size:.78rem}
.plan-buckets-row .plan-bucket-price .pbp-num{font-size:1.7rem}
.plan-buckets-row .plan-bucket-list li{font-size:.96rem}
@media (max-width:860px){
  .plan-buckets-row{grid-template-columns:1fr}
}
.hps-plus{
  align-self:center;display:grid;place-items:center;
  width:28px;height:28px;margin:0;
  background:#fff;border:1px solid var(--gray-300);border-radius:50%;
  color:var(--gray-700);font-size:1rem;font-weight:800;line-height:1;
  box-shadow:var(--shadow-xs);
}

/* Hero side — visual card (browser mockup) */
.hero-side{display:flex;align-items:center;justify-content:center}
.hero-side .hero-visual{width:100%;display:flex;justify-content:center}
.hero-result-card{
  position:relative;overflow:hidden;
  width:100%;padding:22px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-lg);
}
.hero-result-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
  background:var(--rainbow);
}
.result-card-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.hpc-logo{width:44px;height:44px;flex:0 0 44px}
.result-card-head>div{display:grid;gap:2px}
.result-card-head span{color:var(--gray-500);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.result-card-head strong{color:var(--gray-900);font-size:1.02rem;font-weight:800}

.result-browser{overflow:hidden;border:1px solid var(--gray-300);border-radius:var(--radius);background:#fff}
.result-browser-bar{
  display:flex;align-items:center;gap:6px;
  padding:10px 12px;background:var(--gray-100);
  border-bottom:1px solid var(--gray-300);
}
.result-browser-bar>span{width:9px;height:9px;border-radius:50%;background:var(--gray-300)}
.result-browser-bar>span:nth-child(1){background:var(--google-red)}
.result-browser-bar>span:nth-child(2){background:var(--google-yellow)}
.result-browser-bar>span:nth-child(3){background:var(--google-green)}
.result-browser-bar strong{margin-left:auto;color:var(--gray-500);font-size:.72rem;font-weight:700}
.result-screen{padding:20px;min-height:180px;background:linear-gradient(135deg,#fff,#F1F6FE)}
.result-kicker{
  display:inline-flex;padding:4px 10px;
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  border-radius:var(--radius-pill);
  font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;
  margin-bottom:8px;
}
.result-screen h2{font-size:1.42rem;margin:6px 0 4px;line-height:1.15}
.result-screen p{font-size:.92rem;color:var(--gray-700);margin-bottom:14px}
.result-cta{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 12px;border-radius:var(--radius-pill);
  background:var(--google-green);color:#fff;
  font-size:.78rem;font-weight:800;
  box-shadow:0 4px 12px rgba(52,168,83,.32);
}
.result-steps{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.result-steps span{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 10px;border-radius:var(--radius-pill);
  background:#fff;border:1px solid var(--gray-300);
  color:var(--gray-700);font-size:.78rem;font-weight:700;
  box-shadow:var(--shadow-xs);
}
.result-steps span b{
  display:inline-grid;place-items:center;
  width:18px;height:18px;border-radius:50%;
  background:var(--google-blue);color:#fff;
  font-size:.66rem;font-weight:800;
}

/* Section variants */
.plan-light-section,.box-section{background:var(--white)}
.plan-tinted-section{
  background:
    radial-gradient(circle at 8% 8%,rgba(66,133,244,.06),transparent 30%),
    radial-gradient(circle at 92% 88%,rgba(52,168,83,.08),transparent 30%),
    var(--gray-100);
}
.sec-green{background:radial-gradient(circle at 12% 88%,rgba(52,168,83,.10),transparent 30%),var(--gray-100)}
.sec-blue{background:radial-gradient(circle at 88% 12%,rgba(66,133,244,.10),transparent 30%),var(--gray-100)}
.sec-red{background:radial-gradient(circle at 92% 12%,rgba(234,67,53,.08),transparent 28%),var(--gray-100)}
.sec-purple{background:radial-gradient(circle at 10% 12%,rgba(66,133,244,.10),transparent 28%),radial-gradient(circle at 92% 88%,rgba(234,67,53,.08),transparent 28%),var(--gray-100)}
.section-pad-lg{padding:96px 0}

/* ════════════════════════════════════════════════════════════
   RESOURCE SHOWCASE (plan page — image + text spotlight)
═════════════════════════════════════════════════════════════ */
.resource-showcase{
  display:grid;grid-template-columns:1.1fr .9fr;gap:36px;
  align-items:center;
  padding:36px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
  position:relative;overflow:hidden;
  margin-bottom:40px;
}
.resource-showcase::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
}
.resource-showcase-green::before{background:linear-gradient(90deg,var(--google-green),var(--google-blue))}
.resource-showcase-blue::before{background:linear-gradient(90deg,var(--google-blue),var(--google-yellow))}
.resource-showcase-purple::before{background:linear-gradient(90deg,var(--google-blue),var(--google-red))}
.resource-copy span{color:var(--google-blue-dark);font-weight:800;text-transform:uppercase;font-size:.74rem;letter-spacing:.08em}
.resource-copy h3{font-size:clamp(1.4rem,2.4vw,1.85rem);margin:12px 0 12px;line-height:1.2}
.resource-copy p{font-size:1rem;color:var(--gray-700);line-height:1.6}
.resource-art,.resource-inline-art{display:flex;align-items:center;justify-content:center}
.resource-art img,.resource-inline-art img{max-height:330px;width:auto;object-fit:contain}
.resource-inline-art{margin-bottom:32px}

/* ════════════════════════════════════════════════════════════
   MODULE CARDS (plan page — "abrís el paquete y encontrás")
═════════════════════════════════════════════════════════════ */
.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
/* Balance the layout when there are 2 or 4 cards (avoids orphan rows) */
.module-grid:has(> .module-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.module-grid:has(> .module-card:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.module-card{
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;gap:12px;
  padding:28px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
  transition:var(--transition-slow);
}
.module-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:var(--google-blue);
}
.module-card:nth-child(1)::before{background:var(--google-green)}
.module-card:nth-child(2)::before{background:var(--google-blue)}
.module-card:nth-child(3)::before{background:linear-gradient(90deg,var(--google-blue),var(--google-red))}
.module-card:hover{transform:translateY(-4px);border-color:rgba(66,133,244,.36);box-shadow:var(--shadow-md)}
.module-emoji{
  display:grid;place-items:center;
  width:54px;height:54px;border-radius:14px;
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  font-size:1.4rem;
  margin-bottom:6px;
}
.module-card:nth-child(1) .module-emoji{background:var(--google-green-tint);color:var(--google-green-dark)}
.module-card:nth-child(3) .module-emoji{background:var(--google-red-tint);color:var(--google-red-dark)}
.module-card h3{font-size:1.18rem;line-height:1.25;color:var(--gray-900);margin-bottom:2px}
.module-desc{font-size:.94rem;color:var(--gray-700);line-height:1.55}

/* plan-tags inside module cards */
.plan-tag{
  display:inline-flex;align-items:center;width:max-content;
  padding:6px 12px;border-radius:var(--radius-pill);
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  border:1px solid rgba(66,133,244,.22);
  font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
}
.plan-tag-green{background:var(--google-green-tint);color:var(--google-green-dark);border-color:rgba(52,168,83,.26)}
.plan-tag-blue{background:var(--google-blue-tint);color:var(--google-blue-dark);border-color:rgba(66,133,244,.26)}
.plan-tag-purple{background:var(--google-red-tint);color:var(--google-red-dark);border-color:rgba(234,67,53,.26)}
.plan-tag-yellow{background:var(--google-yellow-tint);color:var(--google-yellow-dark);border-color:rgba(251,188,4,.32)}
.plan-tag-gray{background:var(--gray-100);color:var(--gray-700);border-color:var(--gray-300)}

/* check-list (used inside module-card) */
.check-list{display:grid;gap:9px;margin-top:6px}
.check-list li{
  position:relative;padding-left:26px;
  font-size:.93rem;color:var(--gray-700);line-height:1.55;list-style:none;
}
.check-list li::before{
  content:"";position:absolute;left:0;top:.4em;
  width:18px;height:18px;border-radius:50%;
  background:var(--google-green-tint);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23188038' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-repeat:no-repeat;background-position:center;background-size:11px;
}

/* Plan card nota / info banner */
.plan-card-nota{
  position:relative;overflow:hidden;
  display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;
  padding:22px 24px;margin-top:30px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
}
.plan-card-nota::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:var(--rainbow);
}
.nota-icon{
  display:grid;place-items:center;
  width:54px;height:54px;border-radius:14px;
  background:var(--google-yellow-tint);color:var(--google-yellow-dark);
  font-size:1.4rem;
  border:1px solid rgba(251,188,4,.3);
}
.plan-card-nota h4{font-size:1.1rem;margin-bottom:6px;color:var(--gray-900)}
.plan-card-nota p{font-size:.95rem;line-height:1.55;color:var(--gray-700)}
.text-link-blue{color:var(--google-blue-dark);font-weight:800}
.text-link-blue:hover{color:var(--google-blue);text-decoration:underline}

/* ════════════════════════════════════════════════════════════
   WHY CARDS (plan page — "por qué este plan")
═════════════════════════════════════════════════════════════ */
.why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.why-card{
  position:relative;overflow:hidden;
  padding:26px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
  transition:var(--transition-slow);
}
.why-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:var(--rainbow);opacity:0;transition:opacity var(--transition);
}
.why-card:hover{transform:translateY(-4px);border-color:rgba(66,133,244,.36);box-shadow:var(--shadow-md)}
.why-card:hover::before{opacity:1}
.why-icon{
  display:grid;place-items:center;
  width:52px;height:52px;border-radius:14px;
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  font-size:1.35rem;
  margin-bottom:14px;
}
.why-card:nth-child(2) .why-icon{background:var(--google-green-tint);color:var(--google-green-dark)}
.why-card:nth-child(3) .why-icon{background:var(--google-yellow-tint);color:var(--google-yellow-dark)}
.why-card h3{font-size:1.16rem;margin-bottom:8px;color:var(--gray-900)}
.why-card p{font-size:.94rem;color:var(--gray-700);line-height:1.55}

/* ════════════════════════════════════════════════════════════
   NOT-FOR / GOOD-FIT (plan page — filtro honesto)
═════════════════════════════════════════════════════════════ */
.not-for-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.not-for-card{
  position:relative;overflow:hidden;
  padding:28px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
}
.not-for-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
  background:var(--google-red);
}
.not-for-card.good-fit::before{background:linear-gradient(90deg,var(--google-green),var(--google-blue))}
.not-for-card h3{font-size:1.2rem;margin-bottom:16px;color:var(--gray-900)}
.not-for-card ul{display:grid;gap:10px;list-style:none}
.not-for-card li{
  position:relative;padding-left:26px;
  font-size:.95rem;color:var(--gray-700);line-height:1.55;
}
.not-for-card li::before{
  content:"";position:absolute;left:0;top:.4em;
  width:18px;height:18px;border-radius:50%;
  background:var(--google-red-tint);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23c5231a' stroke-width='3.5' stroke-linecap='round'><line x1='18' y1='6' x2='6' y2='18'/><line x1='6' y1='6' x2='18' y2='18'/></svg>");
  background-repeat:no-repeat;background-position:center;background-size:10px;
}
.not-for-card.good-fit li::before{
  background-color:var(--google-green-tint);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23188038' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-size:11px;
}

/* ════════════════════════════════════════════════════════════
   VALUE TABLE / COMPARATIVA
═════════════════════════════════════════════════════════════ */
.value-card-wrap{
  position:relative;overflow:hidden;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
}
.value-card-wrap::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
  background:var(--rainbow);
}
.value-table{width:100%;border-collapse:collapse;background:#fff}
.value-table th,.value-table td{padding:14px 18px;border-bottom:1px solid var(--gray-200);text-align:left}
.value-table th:last-child,.value-table td:last-child{text-align:right;font-variant-numeric:tabular-nums}
.value-table th{
  background:var(--gray-100);
  font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;
  color:var(--gray-700);font-weight:800;
}
.th-right,.td-right{text-align:right!important}
.row-total-market td{background:var(--gray-100);font-size:1rem;padding-top:18px;padding-bottom:18px}
.row-final td{background:var(--google-blue-tint);padding-top:18px;padding-bottom:18px}
.row-saving td,.saving-green{
  background:var(--google-green-tint);
  color:var(--google-green-dark);
  font-weight:800;text-align:center;
  padding:18px;font-size:1.05rem;
}
.market-price-old{text-decoration:line-through;color:var(--gray-500)}
.price-green{display:block;color:var(--google-green-dark);font-size:1.45rem;font-weight:800;line-height:1.1}
.value-monthly-note{display:block;color:var(--gray-500);font-size:.86rem;font-weight:700}

/* Value monthly compare — Chart de barras horizontales (rediseño) */
.value-monthly-compare{
  display:grid;gap:32px;
  margin-top:42px;
  padding:36px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);
  position:relative;overflow:hidden;
}
.value-monthly-compare::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
  background:var(--rainbow);
}
.vmc-header{display:grid;gap:10px;max-width:760px}
.vmc-header h3{font-size:clamp(1.35rem,2.3vw,1.75rem);margin:6px 0 4px;line-height:1.2;color:var(--gray-900)}
.vmc-header p{font-size:1rem;color:var(--gray-700);line-height:1.55}
.vmc-chart{display:grid;gap:14px}
.vmc-row{
  display:grid;
  grid-template-columns:minmax(220px,1.1fr) minmax(0,2.2fr) auto;
  gap:18px;align-items:center;
  padding:14px 18px;
  background:var(--gray-100);
  border:1px solid var(--gray-300);border-radius:var(--radius-lg);
  transition:var(--transition);
}
.vmc-row:hover{background:#fff;border-color:rgba(66,133,244,.28);box-shadow:var(--shadow-xs)}
.vmc-row-head{display:flex;align-items:center;gap:12px;min-width:0}
.vmc-row-icon{
  display:grid;place-items:center;flex-shrink:0;
  width:38px;height:38px;border-radius:10px;
  background:#fff;border:1px solid var(--gray-300);
  color:var(--gray-700);font-size:1.05rem;font-weight:800;
}
.vmc-row-head>div{min-width:0}
.vmc-row-head strong{
  display:block;color:var(--gray-900);font-size:.96rem;
  font-weight:800;line-height:1.2;
}
.vmc-row-head small{color:var(--gray-500);font-size:.78rem;font-weight:600}
.vmc-row-bar{
  position:relative;height:14px;border-radius:var(--radius-pill);
  background:rgba(218,220,224,.5);
  overflow:hidden;
}
.vmc-row-bar>span{
  display:block;height:100%;width:0;
  border-radius:var(--radius-pill);
  background:linear-gradient(90deg,rgba(128,134,139,.6),rgba(95,99,104,.85));
  transition:width 1s cubic-bezier(.2,.7,.2,1);
}
.vmc-row.is-visible .vmc-row-bar>span{width:var(--bar,0%)}
.vmc-row-price{
  color:var(--gray-700);font-size:.92rem;font-weight:800;
  font-variant-numeric:tabular-nums;white-space:nowrap;
}

/* Featured row (Plan Inicio) */
.vmc-row-featured{
  background:linear-gradient(135deg,var(--google-blue-tint),#fff);
  border-color:rgba(66,133,244,.4);
  box-shadow:0 8px 24px rgba(66,133,244,.14);
  position:relative;
}
.vmc-row-featured::before{
  content:"Acá estás";
  position:absolute;top:-10px;left:18px;
  padding:4px 10px;
  background:var(--google-blue);color:#fff;
  font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  border-radius:var(--radius-pill);
  box-shadow:0 2px 6px rgba(66,133,244,.32);
}
.vmc-row-featured .vmc-row-icon{
  background:var(--google-blue);color:#fff;border-color:transparent;
  box-shadow:0 4px 12px rgba(66,133,244,.32);
}
.vmc-row-featured .vmc-row-head strong{color:var(--google-blue-dark)}
.vmc-row-featured .vmc-row-bar{background:rgba(66,133,244,.18)}
.vmc-row-featured .vmc-row-bar>span{
  background:linear-gradient(90deg,var(--google-blue),var(--google-green));
}
.vmc-row-featured .vmc-row-price{color:var(--google-blue-dark);font-size:1.05rem}
.vmc-footnote{
  max-width:780px;margin:0 auto;text-align:center;
  font-size:.96rem;color:var(--gray-700);line-height:1.6;font-weight:600;
}

@media (max-width:760px){
  .value-monthly-compare{padding:24px}
  .vmc-row{
    grid-template-columns:1fr;gap:10px;
    padding:14px;
  }
  .vmc-row-bar{order:3}
  .vmc-row-price{order:2;justify-self:start}
}

.value-payment-trust{justify-content:center;margin-top:32px}
.payment-trust-hero{margin-top:6px}
.payment-trust-cta{margin-top:18px;justify-content:center}

/* btn cta white (used on dark cta banner) */
.btn-cta-white{
  background:#fff;color:var(--google-blue-dark);
  border:1px solid var(--gray-300);
  box-shadow:var(--shadow-sm);
}
.btn-cta-white:hover{background:var(--google-blue-tint)}

/* ════════════════════════════════════════════════════════════
   BLOG INDEX
═════════════════════════════════════════════════════════════ */
.blog-hero{
  position:relative;overflow:hidden;
  padding:72px 0 64px;text-align:center;
  background:
    linear-gradient(135deg,rgba(66,133,244,.10) 0 18%,transparent 18%),
    radial-gradient(circle at 78% 18%,rgba(251,188,4,.18),transparent 24%),
    radial-gradient(circle at 92% 72%,rgba(52,168,83,.14),transparent 28%),
    linear-gradient(180deg,#fff,var(--gray-100));
  border-bottom:1px solid var(--gray-300);
}
.blog-hero::before{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(66,133,244,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(66,133,244,.08) 1px,transparent 1px);
  background-size:40px 40px;
  mask-image:radial-gradient(ellipse at center,black 14%,transparent 72%);
  pointer-events:none;
}
.blog-hero>.container{position:relative;z-index:1}
.blog-hero .eyebrow{margin:0 auto 16px}
.blog-hero h1{margin-bottom:14px}
.blog-hero p{max-width:720px;margin:0 auto;font-size:1.08rem;color:var(--gray-700)}
.blog-list{background:var(--gray-100);padding:64px 0 96px}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.blog-card{
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;
  padding:24px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-xs);
  transition:var(--transition-slow);
}
.blog-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:var(--rainbow);opacity:0;transition:opacity var(--transition);
}
.blog-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:rgba(66,133,244,.32)}
.blog-card:hover::before{opacity:1}
.blog-card>span{
  display:inline-flex;align-items:center;justify-content:center;
  width:max-content;min-width:38px;
  padding:5px 11px;border-radius:var(--radius-pill);
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  font-size:.76rem;font-weight:800;
  margin-bottom:12px;font-family:ui-monospace,'SF Mono',monospace;
}
.blog-card h2{font-size:1.05rem;line-height:1.3;margin-bottom:10px;font-weight:800}
.blog-card h2 a{color:var(--gray-900);font-weight:800;transition:var(--transition)}
.blog-card:hover h2 a{color:var(--google-blue-dark)}
.blog-card p{font-size:.92rem;color:var(--gray-700);line-height:1.55}
.blog-read{
  display:inline-flex;align-items:center;gap:5px;
  margin-top:auto;padding-top:14px;
  color:var(--google-blue-dark);font-weight:800;font-size:.92rem;
  transition:gap var(--transition);
}
.blog-card:hover .blog-read{gap:9px}

/* ════════════════════════════════════════════════════════════
   BLOG ARTICLE (single post)
═════════════════════════════════════════════════════════════ */
.blog-article{
  background:
    radial-gradient(circle at 8% 0%,rgba(66,133,244,.08),transparent 30%),
    radial-gradient(circle at 92% 0%,rgba(52,168,83,.06),transparent 28%),
    var(--gray-100);
  padding:56px 0 96px;min-height:60vh;
}
.blog-article-wrap{max-width:780px;margin:0 auto;padding:0 24px}
.blog-back{
  display:inline-flex;align-items:center;gap:8px;
  margin-bottom:28px;padding:8px 14px;
  border-radius:var(--radius-pill);
  background:#fff;border:1px solid var(--gray-300);
  color:var(--google-blue-dark);font-weight:700;font-size:.86rem;
  box-shadow:var(--shadow-xs);
  transition:var(--transition);
}
.blog-back:hover{color:var(--google-blue);border-color:rgba(66,133,244,.4);transform:translateX(-3px);box-shadow:var(--shadow-sm)}

/* Hero — kicker / h1 / lead / meta */
.blog-article > .container > .blog-article-wrap > h1{
  font-size:clamp(2.1rem,4.5vw,3.4rem);line-height:1.1;letter-spacing:-.02em;
  margin:14px 0 18px;color:var(--gray-900);text-wrap:balance;
}
.article-kicker{
  display:inline-flex;align-items:center;gap:8px;width:max-content;
  padding:7px 14px;border-radius:var(--radius-pill);
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  border:1px solid rgba(66,133,244,.26);
  font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  margin-bottom:6px;
}
.article-kicker::before{
  content:"";width:6px;height:6px;border-radius:50%;
  background:var(--google-blue);
  box-shadow:0 0 0 4px rgba(66,133,244,.18);
}
.article-lead{
  font-size:1.24rem!important;color:var(--gray-700)!important;
  line-height:1.55!important;max-width:660px;
  font-weight:500;margin:18px 0 14px;text-wrap:pretty;
}
.article-lead strong{color:var(--gray-900);font-weight:800}
.article-meta{
  display:flex;gap:10px;flex-wrap:wrap;align-items:center;
  color:var(--gray-500);font-weight:700;font-size:.82rem;
  margin-top:18px;padding-top:18px;border-top:1px solid var(--gray-300);
}
.article-meta::before{
  content:"";display:block;width:32px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,var(--google-blue),var(--google-green));
}

/* Cover */
.article-cover{
  position:relative;overflow:hidden;
  border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);
  margin:28px 0 32px;
}
.article-cover img{width:100%;aspect-ratio:16/8.5;object-fit:cover;display:block}
.article-cover::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,transparent 70%,rgba(32,33,36,.08));
}

/* Article body — content card */
.article-content{
  position:relative;
  padding:48px 52px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
}
.article-content::before{
  content:"";position:absolute;left:48px;right:48px;top:0;height:3px;
  border-radius:0 0 3px 3px;
  background:linear-gradient(90deg,var(--google-blue),var(--google-green));
  opacity:.85;
}
/* h2 with accent bar */
.article-content h2{
  position:relative;font-size:1.55rem;font-weight:800;letter-spacing:-.01em;
  margin:40px 0 14px;color:var(--gray-900);line-height:1.2;
  padding-left:18px;
}
.article-content h2::before{
  content:"";position:absolute;left:0;top:.32em;bottom:.32em;width:4px;
  border-radius:2px;
  background:var(--google-blue);
}
.article-content h2:nth-of-type(2n)::before{background:var(--google-green)}
.article-content h2:nth-of-type(3n)::before{background:var(--google-yellow)}
.article-content h2:nth-of-type(5n)::before{background:var(--google-red)}
.article-content h2:first-of-type{margin-top:8px}
.article-content h3{font-size:1.18rem;margin:28px 0 10px;color:var(--gray-900);font-weight:800}
.article-content p,.article-content li{
  font-size:1.06rem;color:var(--gray-800);line-height:1.75;
}
.article-content p{margin:12px 0}
/* Drop-cap on first paragraph */
.article-content > p:first-of-type::first-letter{
  float:left;font-size:3.4rem;line-height:.9;font-weight:800;
  color:var(--google-blue-dark);
  padding:6px 12px 0 0;margin-top:4px;
}
.article-content ul,.article-content ol{
  padding-left:0;margin:16px 0;display:grid;gap:10px;list-style:none;
}
.article-content li{
  position:relative;padding-left:30px;
}
.article-content ul > li::before{
  content:"";position:absolute;left:0;top:.55em;
  width:18px;height:18px;border-radius:50%;
  background-color:var(--google-green-tint);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23188038' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-repeat:no-repeat;background-position:center;background-size:11px;
}
.article-content ol{counter-reset:olc}
.article-content ol > li{counter-increment:olc}
.article-content ol > li::before{
  content:counter(olc);position:absolute;left:0;top:.1em;
  display:grid;place-items:center;
  width:22px;height:22px;border-radius:50%;
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  font-size:.75rem;font-weight:800;
}
.article-content strong{color:var(--gray-900);font-weight:800}
.article-content em{color:var(--google-blue-dark);font-style:normal;font-weight:700}
.article-content a{color:var(--google-blue-dark);font-weight:700;border-bottom:1px solid rgba(26,115,232,.32)}
.article-content a:hover{color:var(--google-blue);border-color:currentColor}
.article-content blockquote{
  position:relative;
  margin:28px 0;padding:22px 26px 22px 60px;
  background:linear-gradient(180deg,#fff,var(--google-blue-tint));
  border:1px solid rgba(66,133,244,.22);
  border-left:4px solid var(--google-blue);
  border-radius:var(--radius-lg);
  color:var(--gray-900);font-weight:600;font-size:1.05rem;line-height:1.55;
}
.article-content blockquote::before{
  content:"";position:absolute;left:18px;top:18px;
  width:28px;height:28px;border-radius:50%;
  background:var(--google-blue);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'><path d='M7 17h3l2-4V7H6v6h3zm8 0h3l2-4V7h-6v6h3z'/></svg>");
  background-repeat:no-repeat;background-position:center;background-size:18px;
}

/* Download PDF card */
.article-download{
  display:flex;justify-content:space-between;gap:20px;align-items:center;
  margin-top:28px;padding:26px 28px;
  background:linear-gradient(135deg,#fff 0%,var(--google-green-tint) 100%);
  border:1px solid rgba(52,168,83,.22);
  border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);
}
.article-download h2{font-size:1.18rem;margin:4px 0 6px;color:var(--gray-900)}
.article-download p{font-size:.95rem;color:var(--gray-700);line-height:1.5;margin:0}
.download-eyebrow{
  display:inline-flex;align-items:center;gap:6px;padding:5px 12px;
  background:#fff;color:var(--google-green-dark);
  border:1px solid rgba(52,168,83,.32);
  border-radius:var(--radius-pill);
  font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  margin-bottom:8px;
}
.download-eyebrow::before{content:"⬇"}
.article-download .btn{flex-shrink:0}

/* Final CTA */
.article-cta{
  position:relative;overflow:hidden;
  margin-top:28px;padding:36px 36px 32px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);
  text-align:center;
}
.article-cta::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:linear-gradient(90deg,var(--google-green),var(--google-blue) 50%,var(--google-purple));
}
.article-cta .eyebrow{margin:0 auto 12px}
.article-cta h2{font-size:1.55rem;margin:0 0 10px;color:var(--gray-900);letter-spacing:-.015em}
.article-cta p{font-size:1.02rem;color:var(--gray-700);line-height:1.55;margin:0 auto 22px;max-width:560px}
.article-cta-tiers{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;
  margin:0 auto 24px;text-align:left;
}
.aca-tier{
  position:relative;display:grid;gap:3px;
  padding:14px 14px 16px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius);
  color:var(--gray-900);text-decoration:none;
  transition:var(--transition);
  overflow:hidden;
}
.aca-tier::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
}
.aca-tier-green::before{background:var(--google-green)}
.aca-tier-blue::before{background:var(--google-blue)}
.aca-tier-purple::before{background:var(--google-purple)}
.aca-tier:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:rgba(66,133,244,.32)}
.aca-tag{
  font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  color:var(--gray-500);
}
.aca-tier-green .aca-tag{color:var(--google-green-dark)}
.aca-tier-blue .aca-tag{color:var(--google-blue-dark)}
.aca-tier-purple .aca-tag{color:var(--google-purple-dark)}
.aca-name{font-weight:800;color:var(--gray-900);font-size:.98rem;letter-spacing:-.005em}
.aca-desc{font-size:.82rem;color:var(--gray-700);font-weight:600}
.article-cta-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
@media (max-width:680px){
  .article-cta-tiers{grid-template-columns:1fr}
}

/* Prev/Next navigation */
.article-nav{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:32px;
}
.article-nav-link{
  position:relative;overflow:hidden;
  display:grid;grid-template-columns:auto 1fr;align-items:center;gap:16px;
  padding:18px 22px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-lg);
  color:var(--gray-900);text-decoration:none;
  box-shadow:var(--shadow-xs);
  transition:var(--transition);
}
.article-nav-link::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:var(--google-blue);
  transform:scaleY(0);transform-origin:center;
  transition:transform .25s ease;
}
.article-nav-next::before{left:auto;right:0;background:var(--google-green)}
.article-nav-link:hover{
  border-color:rgba(66,133,244,.4);
  box-shadow:var(--shadow-md);
  transform:translateY(-2px);
}
.article-nav-link:hover::before{transform:scaleY(1)}
.article-nav-link > span[aria-hidden]{
  display:grid;place-items:center;
  width:40px;height:40px;flex:0 0 40px;
  border-radius:50%;
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  font-size:1.15rem;font-weight:800;line-height:1;
  transition:var(--transition);
}
.article-nav-next > span[aria-hidden]{background:var(--google-green-tint);color:var(--google-green-dark)}
.article-nav-link:hover > span[aria-hidden]{
  background:var(--google-blue);color:#fff;box-shadow:0 4px 12px rgba(66,133,244,.32);
}
.article-nav-next:hover > span[aria-hidden]{
  background:var(--google-green);box-shadow:0 4px 12px rgba(52,168,83,.32);
}
.article-nav-prev:hover > span[aria-hidden]{transform:translateX(-3px)}
.article-nav-next:hover > span[aria-hidden]{transform:translateX(3px)}
.article-nav-link > span:not([aria-hidden]){
  display:grid;gap:3px;min-width:0;
}
.article-nav-link small{
  font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:var(--gray-500);
}
.article-nav-link strong{
  font-size:.94rem;font-weight:800;color:var(--gray-900);line-height:1.35;
  text-wrap:balance;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.article-nav-next{grid-template-columns:1fr auto}
.article-nav-next > span:not([aria-hidden]){text-align:right}
.article-nav-placeholder{display:none}
@media (max-width:680px){
  .article-nav{grid-template-columns:1fr}
}

/* ════════════════════════════════════════════════════════════
   BLOG ARTIFACTS — herramientas / gráficos / utilidad por artículo
═════════════════════════════════════════════════════════════ */
.bartifact{
  position:relative;
  margin:32px 0;padding:28px 30px;
  background:linear-gradient(180deg,#fff 0%,#fafbfd 100%);
  border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}
.bartifact::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:linear-gradient(90deg,var(--google-blue),var(--google-green));
}
.bartifact-checklist::before{background:linear-gradient(90deg,var(--google-green),var(--google-blue))}
.bartifact-compare::before{background:linear-gradient(90deg,var(--google-blue),var(--google-yellow))}
.bartifact-framework::before{background:linear-gradient(90deg,var(--google-purple),var(--google-blue))}
.bartifact-formula::before{background:linear-gradient(90deg,var(--google-yellow),var(--google-red))}
.bartifact-decision::before{background:linear-gradient(90deg,var(--google-red),var(--google-purple))}
.bartifact-stat::before{background:linear-gradient(90deg,var(--google-blue),var(--google-green),var(--google-yellow))}

.ba-head{margin-bottom:18px}
.ba-kicker{
  display:inline-flex;align-items:center;gap:7px;
  padding:5px 11px;border-radius:var(--radius-pill);
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  border:1px solid rgba(66,133,244,.24);
  font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  margin-bottom:10px;
}
.ba-kicker::before{
  content:"";width:6px;height:6px;border-radius:50%;background:var(--google-blue);
}
.bartifact-checklist .ba-kicker{background:var(--google-green-tint);color:var(--google-green-dark);border-color:rgba(52,168,83,.24)}
.bartifact-checklist .ba-kicker::before{background:var(--google-green)}
.bartifact-formula .ba-kicker{background:var(--google-yellow-tint);color:var(--google-yellow-dark);border-color:rgba(251,188,4,.32)}
.bartifact-formula .ba-kicker::before{background:var(--google-yellow)}
.bartifact-decision .ba-kicker{background:var(--google-red-tint);color:var(--google-red-dark);border-color:rgba(234,67,53,.24)}
.bartifact-decision .ba-kicker::before{background:var(--google-red)}
.bartifact-framework .ba-kicker{background:var(--google-purple-tint);color:var(--google-purple-dark);border-color:rgba(124,92,214,.24)}
.bartifact-framework .ba-kicker::before{background:var(--google-purple)}
.ba-title{
  font-size:1.32rem!important;font-weight:800;color:var(--gray-900);
  letter-spacing:-.01em;line-height:1.25;margin:0 0 6px!important;
  padding-left:0!important;
}
.ba-title::before{display:none!important}
.ba-sub{font-size:.95rem!important;color:var(--gray-700)!important;line-height:1.55!important;margin:0!important}

/* ─── STAT ─── */
.ba-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}
.ba-stat-card{
  padding:18px 20px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius);
  display:grid;gap:6px;
}
.ba-stat-num{
  font-size:2.1rem;font-weight:800;line-height:1;color:var(--google-blue-dark);
  letter-spacing:-.02em;
}
.ba-stat-card:nth-child(2) .ba-stat-num{color:var(--google-green-dark)}
.ba-stat-card:nth-child(3) .ba-stat-num{color:var(--google-yellow-dark)}
.ba-stat-card:nth-child(4) .ba-stat-num{color:var(--google-red-dark)}
.ba-stat-label{font-size:.84rem;color:var(--gray-700);font-weight:700;line-height:1.4}
.ba-stat-foot{
  display:block;margin-top:14px;padding-top:14px;border-top:1px solid var(--gray-200);
  font-size:.82rem!important;color:var(--gray-500)!important;font-weight:600;
}

/* ─── CHECKLIST ─── */
.ba-checklist{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.ba-checklist li{
  padding:0!important;margin:0;position:static;
}
.ba-checklist li::before{display:none!important}
.ba-checklist label{
  display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;
  padding:12px 16px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius);
  font-size:.96rem;font-weight:600;color:var(--gray-800);
  cursor:pointer;transition:var(--transition);
}
.ba-checklist label:hover{border-color:rgba(66,133,244,.4);background:var(--google-blue-tint)}
.ba-checklist input[type=checkbox]{
  appearance:none;-webkit-appearance:none;
  width:20px;height:20px;border-radius:6px;
  border:2px solid var(--gray-300);background:#fff;
  cursor:pointer;display:grid;place-items:center;flex:0 0 20px;
  transition:var(--transition);
}
.ba-checklist input[type=checkbox]:checked{
  background:var(--google-green);border-color:var(--google-green);
}
.ba-checklist input[type=checkbox]:checked::after{
  content:"";width:10px;height:10px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
  background-repeat:no-repeat;background-size:contain;
}
.ba-checklist label:has(input:checked){
  background:var(--google-green-tint);border-color:rgba(52,168,83,.32);
  color:var(--gray-900);
}
.ba-checklist label:has(input:checked) span{text-decoration:line-through;text-decoration-color:rgba(32,33,36,.32)}
.ba-score-row{
  display:flex;justify-content:space-between;align-items:center;
  margin-top:18px;padding:14px 18px;
  background:linear-gradient(135deg,var(--google-blue-tint),#fff);
  border:1px solid rgba(66,133,244,.22);
  border-radius:var(--radius);
}
.ba-score-label{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-700)}
.ba-score{font-size:1.6rem;font-weight:800;color:var(--google-blue-dark);letter-spacing:-.02em}
.ba-score-msg{font-size:.92rem!important;color:var(--gray-700)!important;font-weight:600;margin:6px 0 0!important;line-height:1.4!important}

/* ─── COMPARE ─── */
.ba-compare{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ba-compare-col{
  padding:18px 20px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius);
}
.ba-compare-col:first-child{border-top:3px solid var(--google-green)}
.ba-compare-col:last-child{border-top:3px solid var(--google-blue)}
.ba-compare-title{
  font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:var(--google-green-dark);margin:0 0 4px;
}
.ba-compare-col:last-child .ba-compare-title{color:var(--google-blue-dark)}
.ba-compare-name{font-size:1.05rem;font-weight:800;color:var(--gray-900);margin:0 0 12px;letter-spacing:-.005em}
.ba-compare ul{display:grid;gap:7px;list-style:none;padding:0;margin:0}
.ba-compare ul li{font-size:.92rem;color:var(--gray-700);line-height:1.45;font-weight:600;padding-left:18px!important;position:relative}
.ba-compare ul li::before{
  content:"";position:absolute;left:0;top:.5em;width:7px;height:7px;border-radius:50%;
  background:var(--google-green);background-image:none!important;
}
.ba-compare-col:last-child ul li::before{background:var(--google-blue)}

/* ─── FRAMEWORK ─── */
.ba-framework{display:grid;gap:12px}
.ba-step{
  display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;
  padding:16px 20px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius);
  position:relative;
}
.ba-step-num{
  display:grid;place-items:center;
  width:40px;height:40px;flex:0 0 40px;border-radius:50%;
  background:var(--google-purple-tint);color:var(--google-purple-dark);
  font-size:1.05rem;font-weight:800;letter-spacing:-.01em;
}
.ba-step:nth-child(2) .ba-step-num{background:var(--google-blue-tint);color:var(--google-blue-dark)}
.ba-step:nth-child(3) .ba-step-num{background:var(--google-green-tint);color:var(--google-green-dark)}
.ba-step:nth-child(4) .ba-step-num{background:var(--google-yellow-tint);color:var(--google-yellow-dark)}
.ba-step:nth-child(5) .ba-step-num{background:var(--google-red-tint);color:var(--google-red-dark)}
.ba-step h4{font-size:1.02rem;font-weight:800;color:var(--gray-900);margin:0 0 4px;letter-spacing:-.005em}
.ba-step p{font-size:.92rem!important;color:var(--gray-700)!important;line-height:1.5!important;margin:0!important}

/* ─── FORMULA ─── */
.ba-formula-box{
  display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;
  padding:24px 20px;
  background:linear-gradient(135deg,var(--google-yellow-tint),#fff);
  border:1px solid rgba(251,188,4,.3);
  border-radius:var(--radius);
  text-align:center;
}
.ba-formula-term{
  padding:10px 14px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius);
  font-weight:800;color:var(--gray-900);font-size:.94rem;
  display:flex;flex-direction:column;gap:2px;align-items:center;
}
.ba-formula-term small{font-size:.66rem;font-weight:700;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em}
.ba-formula-op{font-size:1.4rem;font-weight:800;color:var(--google-yellow-dark)}
.ba-formula-ex{
  margin-top:14px;padding:14px 18px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius);
  font-size:.92rem!important;color:var(--gray-800)!important;line-height:1.5!important;margin:14px 0 0!important;
}
.ba-formula-ex strong{color:var(--google-yellow-dark)}

/* ─── DECISION TREE ─── */
.ba-decision{display:grid;gap:10px}
.ba-decision-row{
  display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;
  padding:14px 18px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius);
  transition:var(--transition);
}
.ba-decision-row:hover{border-color:rgba(234,67,53,.32);box-shadow:var(--shadow-xs)}
.ba-decision-q{
  display:grid;place-items:center;
  width:32px;height:32px;border-radius:50%;
  background:var(--google-red-tint);color:var(--google-red-dark);
  font-size:.95rem;font-weight:800;
}
.ba-decision-text{font-size:.94rem!important;color:var(--gray-900)!important;font-weight:600;margin:0!important;line-height:1.4!important}
.ba-decision-arrow{
  display:grid;place-items:center;
  padding:6px 12px;border-radius:var(--radius-pill);
  background:var(--google-green-tint);color:var(--google-green-dark);
  font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
  white-space:nowrap;
}
.ba-decision-arrow.is-no{background:var(--google-red-tint);color:var(--google-red-dark)}
.ba-decision-arrow.is-maybe{background:var(--google-yellow-tint);color:var(--google-yellow-dark)}

@media (max-width:680px){
  .ba-compare{grid-template-columns:1fr}
  .ba-decision-row{grid-template-columns:auto 1fr;gap:10px}
  .ba-decision-row .ba-decision-arrow{grid-column:1/-1}
  .bartifact{padding:22px}
}

/* ════════════════════════════════════════════════════════════
   BLOG ENRICHMENTS — TL;DR, callouts, pull-quotes, ejemplos
═════════════════════════════════════════════════════════════ */

/* TL;DR — resumen al inicio del artículo */
.btldr{
  position:relative;
  margin:0 0 32px;padding:22px 26px;
  background:linear-gradient(135deg,var(--google-blue-tint),#fff);
  border:1px solid rgba(66,133,244,.22);
  border-radius:var(--radius-lg);
  display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;
}
.btldr-badge{
  display:grid;place-items:center;
  width:48px;height:48px;border-radius:12px;
  background:var(--google-blue);color:#fff;
  font-size:.7rem;font-weight:800;letter-spacing:.05em;
  flex-shrink:0;
}
.btldr-body{display:grid;gap:6px}
.btldr h3{font-size:.74rem!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--google-blue-dark);margin:0!important;padding:0!important}
.btldr h3::before{display:none!important}
.btldr p{font-size:1rem!important;color:var(--gray-800)!important;line-height:1.55!important;margin:0!important;font-weight:600}
.btldr ul{margin:6px 0 0!important;display:grid;gap:5px;list-style:none;padding:0!important}
.btldr ul li{padding-left:18px!important;font-size:.94rem!important;font-weight:600;color:var(--gray-800)!important;line-height:1.5!important;position:relative}
.btldr ul li::before{
  content:"→"!important;position:absolute;left:0;top:0;
  color:var(--google-blue-dark);font-weight:800;
  background:none!important;width:auto!important;height:auto!important;
}

/* Callouts — TIP / WARN / DATA */
.bcallout{
  position:relative;
  margin:22px 0;padding:18px 22px 18px 60px;
  border-radius:var(--radius);
  border:1px solid var(--gray-300);
  background:#fff;
}
.bcallout::before{
  content:"";position:absolute;left:18px;top:18px;
  width:28px;height:28px;border-radius:50%;
  background-repeat:no-repeat;background-position:center;background-size:16px;
}
.bcallout h4{font-size:.72rem!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px!important;padding:0!important}
.bcallout h4::before{display:none!important}
.bcallout p{font-size:.96rem!important;color:var(--gray-800)!important;line-height:1.55!important;margin:0!important;font-weight:500}
.bcallout-tip{background:linear-gradient(180deg,#fff,var(--google-yellow-tint));border-color:rgba(251,188,4,.3)}
.bcallout-tip::before{
  background-color:var(--google-yellow);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M9 21h6'/><path d='M12 17v4'/><path d='M12 3a6 6 0 0 0-3 11.2c.6.5 1 1.2 1 2H14c0-.8.4-1.5 1-2A6 6 0 0 0 12 3z'/></svg>");
}
.bcallout-tip h4{color:var(--google-yellow-dark)}
.bcallout-warn{background:linear-gradient(180deg,#fff,var(--google-red-tint));border-color:rgba(234,67,53,.28)}
.bcallout-warn::before{
  background-color:var(--google-red);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'/><line x1='12' y1='9' x2='12' y2='13'/><line x1='12' y1='17' x2='12.01' y2='17'/></svg>");
}
.bcallout-warn h4{color:var(--google-red-dark)}
.bcallout-data{background:linear-gradient(180deg,#fff,var(--google-blue-tint));border-color:rgba(66,133,244,.28)}
.bcallout-data::before{
  background-color:var(--google-blue);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><line x1='12' y1='20' x2='12' y2='10'/><line x1='18' y1='20' x2='18' y2='4'/><line x1='6' y1='20' x2='6' y2='16'/></svg>");
}
.bcallout-data h4{color:var(--google-blue-dark)}

/* Pull-quote — cita destacada */
.bpullquote{
  position:relative;
  margin:32px 0;padding:24px 36px;
  text-align:center;
  border-top:1px solid var(--gray-300);
  border-bottom:1px solid var(--gray-300);
}
.bpullquote p{
  font-size:1.36rem!important;font-weight:800!important;color:var(--gray-900)!important;
  line-height:1.35!important;letter-spacing:-.015em;
  margin:0!important;text-wrap:balance;
}
.bpullquote p em{color:var(--google-blue-dark);font-style:normal}
.bpullquote::before, .bpullquote::after{
  position:absolute;font-size:3rem;color:var(--google-blue);
  font-family:Georgia,serif;line-height:.7;font-weight:600;
}
.bpullquote::before{content:"\201C";top:14px;left:8px}
.bpullquote::after{content:"\201D";bottom:0;right:8px}
.bpullquote cite{
  display:block;margin-top:14px;
  font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:var(--gray-500);font-style:normal;
}

/* Ejemplo real — story card */
.bexample{
  position:relative;
  margin:24px 0;padding:22px 24px;
  background:linear-gradient(135deg,var(--google-green-tint),#fff);
  border:1px solid rgba(52,168,83,.22);
  border-radius:var(--radius-lg);
}
.bexample-tag{
  display:inline-flex;align-items:center;gap:7px;
  padding:5px 11px;border-radius:var(--radius-pill);
  background:var(--google-green);color:#fff;
  font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  margin-bottom:10px;
}
.bexample h4{font-size:1.05rem!important;color:var(--gray-900)!important;font-weight:800;margin:0 0 8px!important;padding:0!important;letter-spacing:-.005em}
.bexample h4::before{display:none!important}
.bexample p{font-size:.98rem!important;color:var(--gray-800)!important;line-height:1.6!important;margin:0 0 8px!important}
.bexample p:last-child{margin-bottom:0!important}
.bexample strong{color:var(--google-green-dark)}

/* Resumen final — bullet box al cierre */
.bsummary{
  margin-top:32px;padding:24px 26px;
  background:linear-gradient(180deg,#fff,var(--gray-100));
  border:1px solid var(--gray-300);
  border-left:4px solid var(--google-purple);
  border-radius:var(--radius-lg);
}
.bsummary h3{font-size:.72rem!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--google-purple-dark);margin:0 0 12px!important;padding:0!important}
.bsummary h3::before{display:none!important}
.bsummary ul{display:grid;gap:8px;margin:0!important;list-style:none;padding:0!important}
.bsummary li{
  padding-left:28px!important;font-size:.98rem!important;font-weight:600!important;
  color:var(--gray-800)!important;line-height:1.5!important;position:relative;
}
.bsummary li::before{
  content:""!important;position:absolute;left:0;top:.18em;
  width:20px!important;height:20px!important;border-radius:50%;
  background-color:var(--google-purple-tint)!important;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b3fb5' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>")!important;
  background-repeat:no-repeat;background-position:center;background-size:12px;
}

/* ════════════════════════════════════════════════════════════
   AUTHOR BYLINE (debajo del subtítulo) + BIO (al pie)
═════════════════════════════════════════════════════════════ */
.author-byline{
  display:flex;align-items:center;gap:14px;
  margin:18px 0 0;padding:14px 16px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-pill);
  box-shadow:var(--shadow-xs);
  width:max-content;max-width:100%;
}
.author-byline-photo{
  flex-shrink:0;display:block;
  width:42px;height:42px;border-radius:50%;
  overflow:hidden;background:var(--google-blue);
  border:2px solid #fff;box-shadow:0 2px 6px rgba(66,133,244,.25);
}
.author-byline-photo img{width:100%;height:100%;object-fit:cover;object-position:center 20%}
.author-byline-info{display:grid;gap:1px}
.author-byline-name{font-size:.92rem;font-weight:800;color:var(--gray-900);letter-spacing:-.005em;line-height:1.2}
.author-byline-role{font-size:.74rem;font-weight:700;color:var(--gray-700);line-height:1.2}
.author-byline-links{display:flex;gap:6px;margin-left:6px;padding-left:12px;border-left:1px solid var(--gray-300)}
.author-byline-links a{
  display:grid;place-items:center;
  width:32px;height:32px;border-radius:50%;
  background:var(--gray-100);color:var(--gray-700);
  transition:var(--transition);
}
.author-byline-links a:hover{background:var(--google-blue-tint);color:var(--google-blue-dark)}
.author-byline-links a.is-linkedin:hover{background:#0a66c2;color:#fff}
.author-byline-links svg{width:16px;height:16px}

.author-bio{
  margin:32px 0;padding:28px;
  background:linear-gradient(135deg,#fff,var(--gray-100));
  border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
  display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;
}
.author-bio-photo{
  flex-shrink:0;display:block;
  width:96px;height:96px;border-radius:50%;
  overflow:hidden;background:var(--google-blue);
  border:3px solid #fff;box-shadow:0 8px 24px rgba(66,133,244,.28);
}
.author-bio-photo img{width:100%;height:100%;object-fit:cover;object-position:center 18%}
.author-bio-tag{
  display:inline-flex;align-items:center;gap:7px;
  padding:5px 11px;border-radius:var(--radius-pill);
  background:var(--google-blue-tint);color:var(--google-blue-dark);
  border:1px solid rgba(66,133,244,.24);
  font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  margin-bottom:8px;
}
.author-bio-name{font-size:1.32rem!important;font-weight:800;color:var(--gray-900);margin:0 0 4px!important;padding:0!important;letter-spacing:-.01em;line-height:1.2}
.author-bio-name::before{display:none!important}
.author-bio-role{font-size:.96rem;font-weight:700;color:var(--gray-700);margin:0 0 12px}
.author-bio p{font-size:.94rem!important;color:var(--gray-700)!important;line-height:1.55!important;margin:0 0 12px!important}
.author-bio-links{display:flex;gap:10px;flex-wrap:wrap}
.author-bio-link{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 14px;border-radius:var(--radius-pill);
  background:#fff;border:1px solid var(--gray-300);
  color:var(--gray-900);font-size:.84rem;font-weight:800;
  transition:var(--transition);box-shadow:var(--shadow-xs);
}
.author-bio-link:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm);border-color:rgba(66,133,244,.4)}
.author-bio-link svg{width:14px;height:14px}
.author-bio-link.is-web{color:var(--google-blue-dark)}
.author-bio-link.is-linkedin{color:#0a66c2}
.author-bio-link.is-wa{color:var(--google-green-dark)}

@media (max-width:680px){
  .author-byline{
    width:100%;
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:4px 14px;
    padding:12px 14px;
  }
  .author-byline-photo{grid-row:1/span 2;width:48px;height:48px}
  .author-byline-info{grid-column:2/span 2;align-self:end;min-width:0}
  .author-byline-name{font-size:.95rem}
  .author-byline-role{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .author-byline-links{
    grid-row:2;grid-column:2/span 2;
    margin:0;padding:0;border-left:none;border-top:none;padding-top:0;width:auto;
    align-self:start;justify-self:start;
    gap:6px;
  }
  .author-byline-links a{width:30px;height:30px}
  .author-byline-links svg{width:14px;height:14px}
  .author-bio{grid-template-columns:1fr;text-align:center;gap:16px}
  .author-bio-photo{margin:0 auto}
  .author-bio-links{justify-content:center}
}

/* Reading progress bar */
.reading-progress{
  position:fixed;top:6px;left:0;right:0;
  height:3px;z-index:1001;
  background:var(--rainbow);
  transform-origin:left;transform:scaleX(0);
  transition:transform .1s linear;
}

/* ════════════════════════════════════════════════════════════
   LEGAL PAGES + 404
═════════════════════════════════════════════════════════════ */
.legal-page{
  min-height:60vh;padding:64px 0;position:relative;
  background:
    radial-gradient(circle at 8% 8%,rgba(66,133,244,.08),transparent 26%),
    linear-gradient(180deg,#fff,var(--gray-100));
}
.legal-page::before{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(66,133,244,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(66,133,244,.06) 1px,transparent 1px);
  background-size:40px 40px;
  mask-image:radial-gradient(ellipse at center,black 14%,transparent 72%);
  pointer-events:none;
}
.legal-page>.container{position:relative;z-index:1}
.legal-wrap{max-width:880px;margin:0 auto}
.breadcrumb{font-size:.86rem;color:var(--gray-500);font-weight:700;margin-bottom:14px}
.legal-updated{margin:12px 0 22px;color:var(--gray-500);font-weight:700;font-size:.9rem}
.legal-content{
  position:relative;overflow:hidden;
  padding:42px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-sm);
}
.legal-content::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
  background:var(--rainbow);
}
.legal-content h2{font-size:1.3rem;margin:28px 0 10px;color:var(--gray-900)}
.legal-content h3{font-size:1.1rem;margin:20px 0 8px;color:var(--gray-900)}
.legal-content p,.legal-content li{font-size:1rem;color:var(--gray-700);line-height:1.65;margin-bottom:8px}
.legal-content ul,.legal-content ol{padding-left:22px;margin:10px 0 14px}
.legal-content a{color:var(--google-blue-dark);font-weight:700;border-bottom:1px solid rgba(26,115,232,.25)}
.legal-content a:hover{color:var(--google-blue)}

.err-wrap{
  min-height:72vh;display:grid;place-items:center;
  padding:70px 24px;
  background:
    radial-gradient(circle at 8% 8%,rgba(66,133,244,.10),transparent 30%),
    radial-gradient(circle at 92% 88%,rgba(234,67,53,.08),transparent 30%),
    var(--gray-100);
}
.err-card,.card-surface{
  position:relative;overflow:hidden;
  max-width:640px;padding:42px 34px;text-align:center;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-lg);
}
.err-card::before,.card-surface::before{
  content:"";position:absolute;left:0;top:0;right:0;height:5px;
  background:var(--rainbow);
}
.err-code{
  font-size:clamp(2.5rem,5vw,3.6rem);
  color:var(--google-blue-dark);font-weight:800;line-height:1;
  margin-bottom:10px;
}
.err-emoji{font-size:2.5rem;margin-bottom:8px}
.err-card .eyebrow{margin:14px auto 12px}
.err-card h1{font-size:clamp(1.6rem,3vw,2.2rem);margin-bottom:14px}
.err-card p{color:var(--gray-700);margin-bottom:14px}
.err-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:24px}

/* ════════════════════════════════════════════════════════════
   PLAN · CASO REAL (estrategia aplicada en cada rubro)
═════════════════════════════════════════════════════════════ */
.plan-case{padding:84px 0;background:var(--white)}
.plan-case .section-head{margin-bottom:36px}
.plan-case-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:42px;align-items:start}
.plan-case-body{display:flex;flex-direction:column;gap:20px}
.plan-case-client{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--gray-100);border:1px solid var(--gray-300);border-radius:var(--radius-lg)}
.pc-logo{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:1rem;letter-spacing:.02em;background:linear-gradient(135deg,var(--google-blue),var(--google-green));box-shadow:0 4px 12px rgba(26,115,232,.25);flex-shrink:0;overflow:hidden}
.pc-logo img{width:100%;height:100%;object-fit:cover;display:block}
.pc-logo.has-img{background:#fff;border:1px solid var(--gray-300);box-shadow:var(--shadow-sm)}
.pc-client-info{flex:1;display:flex;flex-direction:column;line-height:1.2;min-width:0}
.pc-client-info strong{font-size:1.05rem;color:var(--gray-900);font-weight:800;letter-spacing:-.01em}
.pc-client-info span{font-size:.82rem;color:var(--gray-600);font-weight:500;margin-top:3px}
.pc-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;background:var(--google-green-tint);color:var(--google-green-dark);font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-pill);flex-shrink:0;white-space:nowrap}
.pc-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--google-green);box-shadow:0 0 8px rgba(52,168,83,.6)}
.plan-case-narrative p{font-size:1rem;color:var(--gray-800);line-height:1.7;margin:0 0 12px}
.plan-case-narrative p:last-child{margin-bottom:0}
.plan-case-narrative p strong{color:var(--gray-900)}
.plan-case-narrative p em{color:var(--google-blue-dark);font-style:normal;font-weight:700}
.plan-case-pillars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px}
.pc-pillar{display:flex;gap:11px;padding:13px 14px;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius);align-items:flex-start;position:relative;overflow:hidden;box-shadow:var(--shadow-xs)}
.pc-pillar::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}
.pc-pillar:nth-child(1)::before{background:var(--google-blue)}
.pc-pillar:nth-child(2)::before{background:var(--google-green)}
.pc-pillar:nth-child(3)::before{background:var(--google-yellow)}
.pc-pillar:nth-child(4)::before{background:var(--google-red)}
.pc-pillar:nth-child(5)::before{background:var(--google-purple)}
.pc-pillar:nth-child(6)::before{background:linear-gradient(180deg,var(--google-blue),var(--google-green))}
.pc-pi-ico{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--google-blue-tint);color:var(--google-blue-dark);font-size:.85rem;flex-shrink:0}
.pc-pillar:nth-child(2) .pc-pi-ico{background:var(--google-green-tint);color:var(--google-green-dark)}
.pc-pillar:nth-child(3) .pc-pi-ico{background:var(--google-yellow-tint);color:var(--google-yellow-dark)}
.pc-pillar:nth-child(4) .pc-pi-ico{background:var(--google-red-tint);color:var(--google-red-dark)}
.pc-pillar:nth-child(5) .pc-pi-ico{background:var(--google-purple-tint);color:var(--google-purple-dark)}
.pc-pi-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.pc-pi-text strong{font-size:.86rem;color:var(--gray-900);font-weight:800;letter-spacing:-.005em;line-height:1.2}
.pc-pi-text span{font-size:.76rem;color:var(--gray-700);line-height:1.4;font-weight:500}
.plan-case-visual{
  position:relative;border-radius:var(--radius-xl);overflow:hidden;
  box-shadow:var(--shadow-xl);border:1px solid var(--gray-300);
  background:#fff;min-height:520px;
  display:flex;flex-direction:column;
}

/* CASO · Consultorio médico — growth + milestones */
.plan-case-visual.is-case-growth{padding:24px;gap:18px}
.plan-case-visual.is-case-growth::before{content:"";position:absolute;left:0;top:0;right:0;height:5px;pointer-events:none;background:linear-gradient(90deg,var(--google-blue),var(--google-green),var(--google-yellow),var(--google-red));z-index:2}
.plan-case-visual.is-case-growth > *{position:relative;z-index:1}
.bx-head{display:flex;align-items:center;gap:14px;padding-top:4px;flex-wrap:wrap}
.bx-logo{width:54px;height:54px;border-radius:14px;flex-shrink:0;background:linear-gradient(135deg,var(--google-blue),var(--google-green));color:#fff;display:grid;place-items:center;font-weight:800;font-size:1.2rem;letter-spacing:.02em;box-shadow:0 6px 18px rgba(26,115,232,.28);overflow:hidden}
.bx-logo img{width:100%;height:100%;object-fit:cover;display:block}
.bx-logo.has-img{background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.12);border:1px solid var(--gray-300)}
.bx-head-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}
.bx-name{font-weight:800;font-size:1.15rem;color:var(--gray-900);letter-spacing:-.01em}
.bx-sub{font-size:.82rem;color:var(--gray-600);font-weight:500}
.bx-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;background:var(--google-green-tint);color:var(--google-green-dark);font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-pill);align-self:flex-start;margin-top:6px}
.bx-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--google-green);box-shadow:0 0 8px rgba(52,168,83,.6)}
.bx-section{padding:16px;background:var(--gray-100);border:1px solid var(--gray-200);border-radius:var(--radius-lg)}
.bx-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.bx-section-label{font-size:.7rem;font-weight:800;color:var(--gray-700);text-transform:uppercase;letter-spacing:.08em}
.bx-section-value{font-size:.86rem;font-weight:800;color:var(--google-blue-dark)}
.bx-section-value em{font-style:normal;color:var(--google-green-dark);font-size:.74rem;font-weight:700;margin-left:6px}
.bx-chart{width:100%;height:68px;display:block}
.bx-chart-wrap{position:relative;width:100%;height:68px}
.bx-chart-wrap .bx-chart{position:absolute;inset:0}
.bx-dot{position:absolute;width:11px;height:11px;border-radius:50%;background:#fff;border:2.5px solid #1A73E8;box-sizing:border-box;z-index:2;transform:translateX(-50%);box-shadow:0 1px 3px rgba(0,0,0,.18)}
.bx-dot.is-start{left:0;transform:none}
.bx-dot.is-last{right:0;left:auto;transform:none;background:#34A853;border-color:#fff;box-shadow:0 0 0 2.5px #34A853,0 2px 8px rgba(52,168,83,.45)}
.bx-chart-bg{stroke:rgba(15,23,42,.06);stroke-width:1;fill:none}
.bx-chart-fill{fill:url(#bx-grad);opacity:.85}
.bx-chart-line{fill:none;stroke:#1A73E8;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.bx-chart-dot{fill:#fff;stroke:#1A73E8;stroke-width:2.5}
.bx-chart-dot-last{fill:#34A853;stroke:#fff;stroke-width:2.5}
.bx-range{display:flex;justify-content:space-between;margin-top:6px;font-size:.66rem;color:var(--gray-600);font-weight:600;letter-spacing:.04em}
.bx-milestones{display:grid;grid-template-columns:1fr;gap:8px}
.bx-milestone{padding:12px 12px 10px;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius);box-shadow:var(--shadow-xs);display:flex;flex-direction:column;gap:3px;position:relative;overflow:hidden}
.bx-milestone::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}
.bx-milestone:nth-child(1)::before{background:var(--google-blue)}
.bx-milestone:nth-child(2)::before{background:var(--google-green)}
.bx-milestone:nth-child(3)::before{background:var(--google-yellow)}
.bxm-yr{font-size:.6rem;font-weight:800;color:var(--gray-500);letter-spacing:.08em;text-transform:uppercase}
.bx-milestone strong{font-size:.9rem;color:var(--gray-900);letter-spacing:-.01em;line-height:1.15;font-weight:800}
.bxm-note{font-size:.7rem;color:var(--gray-700);line-height:1.35;font-weight:500}
.bx-milestones .bx-milestone{flex-direction:row;align-items:center;flex-wrap:wrap;gap:3px 12px;padding-left:16px}
.bx-milestones .bx-milestone .bxm-yr{flex:0 0 auto}
.bx-milestones .bx-milestone strong{flex:0 0 auto}
.bx-milestones .bx-milestone .bxm-note{flex:1 1 160px;min-width:0}

/* CASO · Salud a domicilio — budget allocation */
.plan-case-visual.is-case-budget{padding:22px;gap:14px;background:linear-gradient(180deg,#0b1a3a 0%,#0f2552 100%);color:#fff;border-color:rgba(255,255,255,.08)}
.plan-case-visual.is-case-budget::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 100% 0%,rgba(251,188,4,.16),transparent 50%),radial-gradient(circle at 0% 100%,rgba(52,168,83,.14),transparent 55%)}
.plan-case-visual.is-case-budget > *{position:relative;z-index:1}
.ad-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ad-head-l span{display:block;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.ad-head-l strong{display:block;font-size:1.05rem;font-weight:800;letter-spacing:-.01em;color:#fff;line-height:1.2;margin-top:4px}
.ad-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;background:rgba(52,168,83,.18);border:1px solid rgba(52,168,83,.45);color:#74e08c;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-radius:99px}
.ad-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:#34A853;box-shadow:0 0 10px rgba(52,168,83,.7)}
.ad-budget{display:flex;align-items:baseline;gap:10px;padding:12px 14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg)}
.ad-b-l{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.ad-budget strong{font-size:1.4rem;font-weight:800;color:#fff;letter-spacing:-.02em;margin-left:auto}
.ad-budget em{font-style:normal;font-size:.74rem;color:#74e08c;font-weight:700;margin-left:6px}
.ad-alloc{display:flex;flex-direction:column;gap:8px}
.ad-alloc-head{display:flex;align-items:center;justify-content:space-between;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.ad-bar{position:relative;height:32px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden;display:flex;align-items:center}
.ad-bar i{display:block;height:100%;border-radius:9px;position:relative}
.ad-bar-label{position:absolute;left:13px;right:46px;top:50%;transform:translateY(-50%);font-size:.78rem;font-weight:700;color:#fff;display:inline-flex;align-items:center;gap:8px;letter-spacing:-.005em;z-index:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ad-bar-pct{position:absolute;right:13px;top:50%;transform:translateY(-50%);font-size:.8rem;font-weight:800;color:#fff;letter-spacing:-.01em;z-index:1}
.ad-bar.is-1 i{width:62%;background:linear-gradient(90deg,#1A73E8,#4285F4)}
.ad-bar.is-2 i{width:23%;background:linear-gradient(90deg,#188038,#34A853)}
.ad-bar.is-3 i{width:15%;background:linear-gradient(90deg,#f9ab00,#FBBC04)}
.ad-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:6px;padding:10px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg)}
.ad-flow-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;padding:6px 4px;min-width:0}
.ad-flow-ico{width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.08);display:grid;place-items:center;color:#fff;font-size:.88rem;border:1px solid rgba(255,255,255,.12)}
.ad-flow-step:nth-child(1) .ad-flow-ico{background:rgba(26,115,232,.22);color:#8ab8f5;border-color:rgba(26,115,232,.4)}
.ad-flow-step:nth-child(3) .ad-flow-ico{background:rgba(52,168,83,.22);color:#74e08c;border-color:rgba(52,168,83,.4)}
.ad-flow-step:nth-child(5) .ad-flow-ico{background:rgba(251,188,4,.2);color:#FBBC04;border-color:rgba(251,188,4,.4)}
.ad-flow-step span{font-size:.7rem;font-weight:700;color:rgba(255,255,255,.8);line-height:1.25;letter-spacing:-.005em}
.ad-flow-arrow{color:rgba(255,255,255,.4);font-size:.74rem}
.ad-note{font-size:.8rem;line-height:1.45;color:rgba(255,255,255,.78);padding:11px 13px;background:rgba(251,188,4,.08);border:1px solid rgba(251,188,4,.22);border-radius:var(--radius);display:flex;align-items:flex-start;gap:10px}
.ad-note i{color:#FBBC04;font-size:.92rem;margin-top:2px;flex-shrink:0}

/* CASO · Centro auditivo — local map */
.plan-case-visual.is-case-localmap{padding:0}
.ap-search{display:flex;align-items:center;gap:10px;padding:11px 14px;background:#fff;border-bottom:1px solid var(--gray-200);box-shadow:0 1px 0 rgba(0,0,0,.02)}
.ap-search-box{flex:1;display:flex;align-items:center;gap:9px;padding:8px 14px;background:#f1f3f4;border-radius:99px;color:var(--gray-800);font-size:.86rem;font-weight:500}
.ap-search-box i{color:var(--gray-600);font-size:.82rem}
.ap-search-avatar{width:28px;height:28px;border-radius:50%;background:var(--google-blue);color:#fff;display:grid;place-items:center;font-size:.75rem;font-weight:700;flex-shrink:0}
.ap-map{position:relative;flex:1;min-height:240px;background:#e6eef5;overflow:hidden}
.ap-map::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#e6eef5 0%,#dfe9f2 100%),repeating-linear-gradient(0deg,transparent 0 24px,rgba(0,0,0,.025) 24px 25px),repeating-linear-gradient(90deg,transparent 0 24px,rgba(0,0,0,.025) 24px 25px)}
.ap-map svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.ap-map-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-100%);z-index:2;line-height:1}
.ap-map-pin i{font-size:38px;color:#EA4335;filter:drop-shadow(0 5px 8px rgba(234,67,53,.45));display:block}
.ap-map-radius{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:200px;height:200px;border-radius:50%;border:2px dashed rgba(26,115,232,.5);background:radial-gradient(circle,rgba(26,115,232,.14) 0%,rgba(26,115,232,.03) 60%,transparent 100%);z-index:1}
.ap-map-label{position:absolute;left:50%;top:50%;transform:translate(-50%,calc(-50% + 120px));background:#fff;padding:5px 11px;border-radius:99px;font-size:.7rem;font-weight:700;color:var(--gray-800);box-shadow:0 2px 8px rgba(0,0,0,.12);border:1px solid var(--gray-300);z-index:2}
.ap-map-cluster{position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;border:2px solid var(--google-blue);box-shadow:0 2px 6px rgba(0,0,0,.15);z-index:1}
.ap-map-cluster.c1{left:24%;top:32%}
.ap-map-cluster.c2{left:72%;top:38%}
.ap-map-cluster.c3{left:30%;top:72%}
.ap-map-cluster.c4{left:78%;top:66%}
.ap-card{padding:16px;background:#fff;border-top:1px solid var(--gray-200);display:flex;gap:14px;align-items:flex-start}
.ap-card-logo{width:54px;height:54px;border-radius:14px;background:linear-gradient(135deg,#1A73E8,#34A853);color:#fff;display:grid;place-items:center;font-size:1.45rem;flex-shrink:0;box-shadow:0 6px 16px rgba(26,115,232,.28);overflow:hidden}
.ap-card-logo img{width:100%;height:100%;object-fit:cover;display:block}
.ap-card-logo.has-img{background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.12);border:1px solid var(--gray-300)}
.ap-card-body{flex:1;display:flex;flex-direction:column;gap:5px;min-width:0}
.ap-card-name{font-weight:800;font-size:1.05rem;color:var(--gray-900);letter-spacing:-.01em;line-height:1.15}
.ap-card-stars{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--gray-700);font-weight:600}
.ap-card-stars .stars{color:#FBBC04;font-size:.85rem;letter-spacing:.02em}
.ap-card-stars b{color:var(--gray-900);font-weight:800}
.ap-card-meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.76rem;color:var(--gray-700);font-weight:500;margin-top:2px}
.ap-card-meta span{display:inline-flex;align-items:center;gap:5px}
.ap-card-meta i{color:var(--google-blue);font-size:.72rem}
.ap-card-actions{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.ap-card-actions a{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:99px;font-size:.76rem;font-weight:700;text-decoration:none;cursor:default}
.ap-card-actions .is-primary{background:var(--google-blue);color:#fff}
.ap-card-actions .is-ghost{background:#fff;color:var(--google-blue);border:1px solid rgba(26,115,232,.32)}

/* CASO · Distribuidora mayorista — dual channel funnel */
.plan-case-visual.is-case-funnel{padding:22px;gap:13px;background:linear-gradient(180deg,#fafafa 0%,#fff 100%)}
.plan-case-visual.is-case-funnel::before{content:"";position:absolute;left:0;top:0;right:0;height:5px;pointer-events:none;background:linear-gradient(90deg,#4285F4 0%,#4285F4 50%,#1877F2 50%,#1877F2 100%);z-index:2}
.plan-case-visual.is-case-funnel > *{position:relative;z-index:1}
.vg-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-top:4px;flex-wrap:wrap}
.vg-title-l{font-size:.7rem;font-weight:800;color:var(--gray-700);text-transform:uppercase;letter-spacing:.08em}
.vg-title-r{font-size:.74rem;font-weight:700;color:var(--gray-600)}
.vg-channels{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vg-ch{padding:13px;border-radius:var(--radius-lg);border:1px solid var(--gray-300);background:#fff;box-shadow:var(--shadow-xs);display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden}
.vg-ch::before{content:"";position:absolute;left:0;top:0;right:0;height:3px}
.vg-ch.is-google::before{background:linear-gradient(90deg,#4285F4,#34A853,#FBBC04,#EA4335)}
.vg-ch.is-meta::before{background:linear-gradient(90deg,#0064E0,#1877F2,#7B2DBE)}
.vg-ch-head{display:flex;align-items:center;gap:8px}
.vg-ch-ico{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;font-size:.9rem;color:#fff;flex-shrink:0}
.vg-ch.is-google .vg-ch-ico{background:linear-gradient(135deg,#4285F4,#34A853)}
.vg-ch.is-meta .vg-ch-ico{background:linear-gradient(135deg,#1877F2,#7B2DBE)}
.vg-ch-name{font-weight:800;font-size:.92rem;color:var(--gray-900);letter-spacing:-.005em}
.vg-ch-tag{font-size:.64rem;font-weight:700;color:var(--gray-600);text-transform:uppercase;letter-spacing:.06em}
.vg-ch-query{padding:8px 10px;background:var(--gray-100);border:1px solid var(--gray-200);border-radius:var(--radius);font-size:.76rem;color:var(--gray-800);font-weight:500;line-height:1.35}
.vg-ch.is-google .vg-ch-query::before{content:"⚲ ";color:var(--google-blue)}
.vg-ch.is-meta .vg-ch-query::before{content:"☸ ";color:#1877F2}
.vg-ch-share{display:flex;align-items:center;justify-content:space-between;font-size:.72rem;color:var(--gray-700);font-weight:700}
.vg-ch-bar{height:5px;background:var(--gray-200);border-radius:99px;overflow:hidden;margin-top:2px}
.vg-ch-bar i{display:block;height:100%;border-radius:99px}
.vg-ch.is-google .vg-ch-bar i{width:60%;background:linear-gradient(90deg,#4285F4,#34A853)}
.vg-ch.is-meta .vg-ch-bar i{width:40%;background:linear-gradient(90deg,#1877F2,#7B2DBE)}
.vg-merge{position:relative;height:32px}
.vg-merge svg{width:100%;height:100%;display:block}
.vg-funnel{display:flex;flex-direction:column;gap:6px;align-items:center}
.vg-step{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 16px;color:#fff;font-weight:700;font-size:.86rem;border-radius:10px;position:relative;overflow:hidden;letter-spacing:-.005em}
.vg-step.is-1{width:100%;background:linear-gradient(90deg,#1A73E8,#34A853)}
.vg-step.is-2{width:80%;background:linear-gradient(90deg,#1A73E8,#188038)}
.vg-step.is-3{width:60%;background:linear-gradient(90deg,#0d47a1,#0b6b30)}
.vg-step strong{font-weight:800;font-size:.88rem;letter-spacing:0;background:rgba(0,0,0,.28);padding:3px 11px;border-radius:99px;display:inline-flex;align-items:center;backdrop-filter:blur(2px);text-shadow:0 1px 1px rgba(0,0,0,.18)}
.vg-step-ico{display:inline-flex;align-items:center;gap:8px}
.vg-foot{display:flex;justify-content:space-between;font-size:.7rem;color:var(--gray-600);font-weight:700;padding-top:2px}

/* CASO · Complejo de cabañas — WhatsApp chat mock */
.plan-case-visual.is-case-chat{padding:0;background:#efeae2;border-color:rgba(11,20,26,.08);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
.plan-case-visual.is-case-chat::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='40' height='40'><circle cx='10' cy='10' r='1.2' fill='%23000' fill-opacity='0.05'/><circle cx='30' cy='25' r='1.2' fill='%23000' fill-opacity='0.05'/><circle cx='18' cy='32' r='1' fill='%23000' fill-opacity='0.04'/></svg>")}
.plan-case-visual.is-case-chat > *{position:relative;z-index:1}
.wa-header{display:flex;align-items:center;gap:11px;padding:13px 16px;background:#075E54;color:#fff}
.wa-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#188038,#34A853);display:grid;place-items:center;font-weight:800;font-size:.92rem;color:#fff;border:1px solid rgba(255,255,255,.25);letter-spacing:.02em;overflow:hidden}
.wa-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.wa-avatar.has-img{background:#fff}

/* Case quote logo on clients-v2 cards */
.cq-footer-grid{display:flex;align-items:center;gap:10px}
.cq-logo{width:32px;height:32px;border-radius:8px;display:block;object-fit:cover;background:#fff;border:1px solid var(--gray-300);flex-shrink:0;box-shadow:var(--shadow-xs)}
.wa-headinfo{flex:1;line-height:1.18;display:flex;flex-direction:column;gap:2px;min-width:0}
.wa-name{font-weight:600;font-size:1rem;color:#fff;letter-spacing:.01em}
.wa-status{font-size:.74rem;color:rgba(255,255,255,.78);display:inline-flex;align-items:center;gap:6px}
.wa-status::before{content:"";width:6px;height:6px;border-radius:50%;background:#25D366}
.wa-icons{display:flex;gap:18px;color:rgba(255,255,255,.85);font-size:.92rem}
.wa-body{flex:1;display:flex;flex-direction:column;gap:6px;padding:16px 12px 14px}
.wa-day{align-self:center;background:rgba(225,245,254,.92);color:#54656f;font-size:.64rem;font-weight:600;letter-spacing:.06em;padding:4px 11px;border-radius:8px;text-transform:uppercase;margin:2px 0 6px}
.wa-bubble{max-width:82%;padding:7px 10px 5px;border-radius:8px;background:#fff;color:#111b21;font-size:.85rem;line-height:1.42;box-shadow:0 1px 0.5px rgba(11,20,26,.13);position:relative}
.wa-bubble.in{align-self:flex-start;border-top-left-radius:0}
.wa-bubble.out{align-self:flex-end;background:#d9fdd3;border-top-right-radius:0}
.wa-bubble p{margin:0;color:inherit;font-size:.85rem;line-height:1.4}
.wa-bubble strong{color:inherit;font-weight:700}
.wa-time{font-size:.6rem;color:#667781;float:right;margin:3px 0 -2px 10px;display:inline-flex;align-items:center;gap:4px;font-weight:500}
.wa-bubble.out .wa-time i{color:#53bdeb;font-size:.6rem}
.wa-pinned{align-self:center;margin:8px 0 0;padding:7px 14px;background:#fff;border:1px solid rgba(7,94,84,.18);color:#075E54;border-radius:18px;font-size:.76rem;font-weight:700;display:inline-flex;align-items:center;gap:8px;box-shadow:0 1px 3px rgba(11,20,26,.1)}
.wa-pinned i{color:#25D366}
.wa-footer{display:flex;align-items:center;gap:10px;padding:9px 12px;background:#f0f2f5;border-top:1px solid rgba(11,20,26,.06)}
.wa-input{flex:1;background:#fff;padding:9px 14px;border-radius:18px;color:#a3adb4;font-size:.8rem;border:1px solid rgba(11,20,26,.04)}
.wa-send{width:34px;height:34px;border-radius:50%;background:#075E54;color:#fff;display:grid;place-items:center;font-size:.88rem;flex-shrink:0}
.plan-case-bridge{
  display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  margin-top:40px;padding:22px 28px;background:linear-gradient(135deg,var(--google-blue-tint),#fff);
  border:1px solid rgba(66,133,244,.22);border-radius:var(--radius-lg);
}
.plan-case-bridge p{margin:0;font-size:.98rem;color:var(--gray-800);line-height:1.5;max-width:680px}
.plan-case-bridge p strong{color:var(--gray-900)}

/* CASO — proof strip: real Google Ads screenshot + KPIs */
.plan-case-proof{margin-top:40px;background:linear-gradient(180deg,#fff,#f8f9fa);border:1px solid var(--gray-300);border-radius:var(--radius-xl);padding:22px;box-shadow:var(--shadow-md);overflow:hidden}
.pcp-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.pcp-head-l{display:flex;align-items:center;gap:12px;min-width:0}
.pcp-google{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#fff;border:1px solid var(--gray-300);box-shadow:var(--shadow-xs);color:#4285F4;font-size:1.05rem;flex-shrink:0;overflow:hidden}
.pcp-google img{width:100%;height:100%;object-fit:cover;display:block}
.pcp-head-text{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.pcp-eyebrow{font-size:.66rem;font-weight:800;color:var(--gray-700);text-transform:uppercase;letter-spacing:.1em}
.pcp-head-text strong{font-size:1rem;color:var(--gray-900);font-weight:800;letter-spacing:-.01em;margin-top:3px}
.pcp-real-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;background:var(--google-red-tint);color:var(--google-red-dark);font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-pill);flex-shrink:0;white-space:nowrap}
.pcp-real-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--google-red);box-shadow:0 0 8px rgba(234,67,53,.5)}
.pcp-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}
.pcp-kpi{padding:13px 14px;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-lg);position:relative;overflow:hidden;display:flex;flex-direction:column;gap:5px}
.pcp-kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}
.pcp-kpi:nth-child(1)::before{background:var(--google-blue)}
.pcp-kpi:nth-child(2)::before{background:var(--google-green)}
.pcp-kpi:nth-child(3)::before{background:var(--google-yellow)}
.pcp-kpi:nth-child(4)::before{background:var(--google-red)}
.pcp-kpi span{font-size:.66rem;font-weight:800;color:var(--gray-600);text-transform:uppercase;letter-spacing:.06em}
.pcp-kpi strong{font-size:1.1rem;color:var(--gray-900);font-weight:800;letter-spacing:-.01em;line-height:1.15;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.pcp-kpi em{font-style:normal;font-size:.72rem;color:var(--google-green-dark);font-weight:800;display:inline-flex;align-items:center;gap:2px;background:var(--google-green-tint);padding:2px 7px;border-radius:99px}
.pcp-kpi em.is-down{color:var(--google-red-dark);background:var(--google-red-tint)}
.pcp-shot{margin:0;padding:0;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--gray-300);background:#f8f9fa;box-shadow:var(--shadow-md)}
.pcp-shot img{display:block;width:100%;height:auto}
.pcp-caption{
  margin:16px 0 0;
  padding:14px 4px 4px;
  border-top:1px solid var(--gray-200);
  font-size:.92rem;color:var(--gray-700);font-weight:500;line-height:1.6;
  text-wrap:pretty;
}
.pcp-caption i{
  display:inline-grid;place-items:center;
  width:20px;height:20px;border-radius:50%;
  background:var(--google-green);color:#fff;
  font-style:normal;font-size:.62rem;
  vertical-align:-4px;margin-right:8px;
}
.pcp-caption strong{color:var(--gray-900);font-weight:700}

@media (max-width:680px){
  .pcp-caption{
    padding:12px 2px 2px;
    font-size:.88rem;line-height:1.55;
  }
}

/* CASO — meaning block: what the metrics mean for YOUR business */
.pcp-meaning{
  margin-top:16px;padding:20px 22px;
  background:linear-gradient(135deg,var(--google-yellow-tint),#fff);
  border:1px solid rgba(251,188,4,.36);
  border-radius:var(--radius-lg);
  display:flex;gap:18px;align-items:flex-start;
}
.pcm-icon{
  font-size:2rem;line-height:1;
  width:64px;height:64px;border-radius:16px;
  background:#fff;border:1px solid var(--gray-300);
  display:grid;place-items:center;flex-shrink:0;
  box-shadow:var(--shadow-md);
}
.pcm-body{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}
.pcm-label{
  font-size:.78rem;color:var(--gray-700);font-weight:800;
  letter-spacing:.06em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:8px;
}
.pcm-label::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--google-yellow-dark)}
.pcm-headline{
  font-size:1.45rem;color:var(--gray-900);font-weight:800;
  letter-spacing:-.015em;line-height:1.2;margin:0;text-wrap:balance;
}
.pcm-body p{
  margin:0;font-size:1rem;color:var(--gray-800);
  line-height:1.55;font-weight:500;
}
.pcm-body p strong{color:var(--gray-900);font-weight:800}
.pcm-body p em{font-style:normal;color:var(--google-green-dark);font-weight:800;background:var(--google-green-tint);padding:1px 7px;border-radius:99px;font-size:.92rem}
.pcm-disclaimer{
  font-size:.78rem;color:var(--gray-600);font-style:italic;font-weight:500;
  margin-top:2px;
}
@media (max-width:680px){
  .pcp-meaning{flex-direction:column;gap:14px;padding:18px}
  .pcm-icon{width:54px;height:54px;font-size:1.7rem}
  .pcm-headline{font-size:1.2rem}
}
.home-results{padding:84px 0;background:var(--gray-100)}
.home-results .section-head{margin-bottom:32px}
@media (max-width:760px){
  .pcp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pcp-head{align-items:flex-start;flex-direction:column}
  .plan-case-proof{padding:18px}
}
@media (max-width:960px){
  .plan-case-grid{grid-template-columns:1fr;gap:32px}
  .plan-case-visual{min-height:auto;order:-1}
}
@media (max-width:680px){
  .plan-case-pillars{grid-template-columns:1fr}
  .plan-case-bridge{flex-direction:column;align-items:flex-start;text-align:left}
}

/* ════════════════════════════════════════════════════════════
   RUBRO MARKETING PAGES — extras (rubro-pains, rubro-deliv, rhv-*)
═════════════════════════════════════════════════════════════ */
.rubro-pains-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.rubro-deliv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.rubro-pain,.rubro-deliv{
  position:relative;overflow:hidden;
  padding:26px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-xs);
  transition:var(--transition);
}
.rubro-pain::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:var(--google-red);
}
.rubro-deliv::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:linear-gradient(90deg,var(--google-green),var(--google-blue));
}
.rubro-pain:hover,.rubro-deliv:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.rp-ico,.rd-ico{
  display:grid;place-items:center;
  width:48px;height:48px;border-radius:14px;
  font-size:1.2rem;margin-bottom:12px;
}
.rp-ico{background:var(--google-red-tint);color:var(--google-red-dark)}
.rd-ico{background:var(--google-green-tint);color:var(--google-green-dark)}
.rubro-pain h3,.rubro-deliv h3{font-size:1.08rem;margin-bottom:6px}
.rubro-pain p,.rubro-deliv p{font-size:.92rem;color:var(--gray-700);line-height:1.55}

.rubro-hero-visual,.main-plan-visual{position:relative;width:min(420px,100%);aspect-ratio:1}
.rubro-hero-visual::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'><g stroke='%234285F4' stroke-width='0.45' stroke-dasharray='1.6 1.6' stroke-linecap='round' fill='none' opacity='0.55'><line x1='34.6' y1='40.7' x2='12' y2='27'/><line x1='67.2' y1='44.6' x2='88' y2='38'/><line x1='36.7' y1='62.1' x2='18' y2='79'/><line x1='63.8' y1='61.6' x2='82' y2='77'/><line x1='44.4' y1='32.9' x2='37' y2='10'/><line x1='56.6' y1='66.7' x2='67' y2='93'/></g><g fill='%234285F4' opacity='0.65'><circle cx='12' cy='27' r='1.1'/><circle cx='88' cy='38' r='1.1'/><circle cx='18' cy='79' r='1.1'/><circle cx='82' cy='77' r='1.1'/><circle cx='37' cy='10' r='1.1'/><circle cx='67' cy='93' r='1.1'/></g></svg>") center/100% 100% no-repeat;
}
.rhv-circle,.system-logo{
  position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);
  display:grid;place-items:center;
  width:150px;height:150px;border-radius:50%;
  background:var(--white);border:1px solid var(--gray-300);
  box-shadow:var(--shadow-lg);
  z-index:3;
}
.rhv-circle svg,.system-logo svg{width:96px;height:96px}
.rhv-halo{position:absolute;inset:10%;border-radius:50%;background:radial-gradient(circle,rgba(66,133,244,.18),transparent 68%)}
.rhv-chip{
  position:absolute;z-index:2;
  display:inline-flex;align-items:center;gap:6px;
  padding:7px 11px;border-radius:var(--radius-pill);
  background:#fff;border:1px solid var(--gray-300);
  color:var(--gray-700);font-size:.78rem;font-weight:800;
  box-shadow:var(--shadow-sm);
}
.rhv-chip-1{left:0;top:22%}.rhv-chip-2{right:0;top:34%}.rhv-chip-3{left:10%;bottom:18%}
.rhv-chip-4{right:8%;bottom:20%}.rhv-chip-5{left:30%;top:5%}.rhv-chip-6{right:25%;bottom:4%}
.rhv-c-dot{width:8px;height:8px;border-radius:50%;background:var(--google-blue)}
.rhv-c-dot.is-blue{background:var(--google-blue)}
.rhv-c-dot.is-green{background:var(--google-green)}
.rhv-c-dot.is-red{background:var(--google-red)}
.rhv-c-dot.is-yellow{background:var(--google-yellow)}
/* group color on chip applies to dot */
.rhv-chip.is-green .rhv-c-dot{background:var(--google-green)}
.rhv-chip.is-blue .rhv-c-dot{background:var(--google-blue)}
.rhv-chip.is-red .rhv-c-dot{background:var(--google-red)}
.rhv-chip.is-yellow .rhv-c-dot{background:var(--google-yellow)}
.rhv-chip.is-purple .rhv-c-dot{background:var(--google-purple)}

/* Channel cards */
.channel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.channel-card{
  position:relative;overflow:hidden;
  padding:22px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-xs);
  transition:var(--transition);
}
.channel-card:hover{transform:translateY(-3px);border-color:rgba(66,133,244,.32);box-shadow:var(--shadow-sm)}
.channel-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:3px;
  background:var(--google-blue);
}
.channel-icon{
  display:grid;place-items:center;width:44px;height:44px;border-radius:12px;
  background:var(--google-blue-tint);color:var(--google-blue-dark);font-size:1.1rem;margin-bottom:10px;
}
.channel-card h3{font-size:1rem;margin-bottom:6px}
.channel-card p{font-size:.88rem;color:var(--gray-700)}

/* Deliverable cards */
.deliverables-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.deliverable{
  position:relative;overflow:hidden;
  padding:26px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-xs);
}
.deliverable::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:var(--rainbow);
}
.deliverable h3{font-size:1.1rem;margin:10px 0 6px}
.deliverable p{font-size:.94rem;color:var(--gray-700);line-height:1.55}

/* Icon cards generic */
.icon-card{
  position:relative;overflow:hidden;
  padding:24px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-xs);
}
.icon-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
  background:var(--rainbow);
}
.ic-emoji{
  display:grid;place-items:center;width:48px;height:48px;border-radius:14px;
  background:var(--google-blue-tint);color:var(--google-blue-dark);font-size:1.2rem;margin-bottom:10px;
}
.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}

/* ════════════════════════════════════════════════════════════
   FONT AWESOME helper — ensure icons size nicely inside our slots
═════════════════════════════════════════════════════════════ */
.module-emoji i,.why-icon i,.nota-icon i,.wp-ico i,.channel-icon i,.ic-emoji i,
.rp-ico i,.rd-ico i,.sp-emoji i,.vmc-icon i{font-size:1em;line-height:1}
.eyebrow i,.eyebrow svg{font-size:.9em}
.eyebrow i.fa-solid{font-size:.84em}

/* ════════════════════════════════════════════════════════════
   RESPONSIVE — additional rules for new components
═════════════════════════════════════════════════════════════ */
@media (max-width:960px){
  .hero-grid,.resource-showcase,.value-monthly-compare{grid-template-columns:minmax(0,1fr);gap:32px}
  .module-grid,
  .module-grid:has(> .module-card:nth-child(2):last-child),
  .module-grid:has(> .module-card:nth-child(4):last-child),
  .why-grid,.cards-grid,.deliverables-grid,.rubro-pains-grid,.rubro-deliv-grid,
  .rubro-tier-strip{grid-template-columns:minmax(0,1fr)}
  .channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .not-for-grid{grid-template-columns:1fr}
  .vmc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-price-strip{text-align:center}
  .hero-price-strip .hps-amount{justify-items:center;text-align:center}
  .hps-plus{justify-self:center}
  .plan-card-nota{grid-template-columns:1fr;text-align:center}
  .plan-card-nota .nota-icon{justify-self:center}
  .resource-showcase,.article-content,.legal-content{padding:28px}
  .article-download{display:grid;text-align:center}
  .article-nav{display:grid}
  .section-pad-lg{padding:64px 0}
}
@media (max-width:680px){
  .module-grid,.why-grid,.cards-grid,.deliverables-grid,.rubro-pains-grid,.rubro-deliv-grid,.channel-grid,.blog-grid{grid-template-columns:1fr}
  .hero-price-strip{grid-template-columns:1fr}
  .vmc-grid{grid-template-columns:1fr}
  .vmc-card-featured{grid-column:auto}
  .resource-showcase,.article-content,.legal-content{padding:22px}
  .value-table th,.value-table td{padding:12px 14px;font-size:.88rem}
}

/* ════════════════════════════════════════════════════════════
   PLAN ACCENTS — toques sutiles por plan (eyebrow + strip)
═════════════════════════════════════════════════════════════ */
/* Plan Inicio — verde */
.plan-page-inicio .hero > .container .eyebrow{
  background:var(--google-green-tint);
  border-color:rgba(52,168,83,.26);
  color:var(--google-green-dark);
}
.plan-page-inicio .hero-offer-v3{border-color:rgba(52,168,83,.22)}
.plan-page-inicio .hero-offer-v3::before{
  content:"";position:absolute;left:0;top:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--google-green),var(--google-blue));
}

/* Plan Crecimiento — azul (refuerzo del default) */
.plan-page-crecimiento .hero-offer-v3{border-color:rgba(66,133,244,.28)}
.plan-page-crecimiento .hero-offer-v3::before{
  content:"";position:absolute;left:0;top:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--google-blue),var(--google-yellow));
}

/* Plan a Medida — purple (gradiente azul→purple) */
.plan-page-medida .hero > .container .eyebrow{
  background:var(--google-purple-tint);
  border-color:rgba(124,92,214,.28);
  color:var(--google-purple-dark);
}
.plan-page-medida .hero-offer-v3{border-color:rgba(124,92,214,.24)}
.plan-page-medida .hero-offer-v3::before{
  content:"";position:absolute;left:0;top:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--google-blue),var(--google-purple));
}

/* CTA banner — franjita sutil arriba según el plan */
.plan-page-inicio .cta-banner::after,
.plan-page-crecimiento .cta-banner::after,
.plan-page-medida .cta-banner::after{
  content:"";position:absolute;left:0;top:0;right:0;height:3px;z-index:1;
}
.plan-page-inicio .cta-banner::after{
  background:linear-gradient(90deg,var(--google-green),var(--google-blue));
}
.plan-page-crecimiento .cta-banner::after{
  background:linear-gradient(90deg,var(--google-blue),var(--google-yellow));
}
.plan-page-medida .cta-banner::after{
  background:linear-gradient(90deg,var(--google-blue),var(--google-purple));
}

/* Nav active link — color sutil del plan actual */
.plan-page-inicio .nav-links a.active{
  color:var(--google-green-dark);
  background:var(--google-green-tint);
  border-color:rgba(52,168,83,.28);
}
.plan-page-medida .nav-links a.active{
  color:var(--google-purple-dark);
  background:var(--google-purple-tint);
  border-color:rgba(124,92,214,.28);
}

/* CTA del card verde (Plan Inicio) → verde con tinte azul a la derecha */
.plan-card-green .btn-primary{
  background:linear-gradient(90deg,var(--google-green) 0%,var(--google-green) 55%,#3a96b8 100%);
  box-shadow:0 6px 18px rgba(52,168,83,.26);
}
.plan-card-green .btn-primary:hover{
  background:linear-gradient(90deg,var(--google-green-dark) 0%,var(--google-green-dark) 55%,var(--google-blue) 100%);
  box-shadow:0 12px 26px rgba(24,128,56,.30);
}

/* ════════════════════════════════════════════════════════════
   RUBRO HERO — Diseño jerárquico para planes especiales
═════════════════════════════════════════════════════════════ */
.hero-offer-rubro{
  display:grid;gap:14px;
  padding:18px;
  width:100%;min-width:0;
  margin-top:22px;
  border-radius:var(--radius-xl);
  background:linear-gradient(180deg,#fff 0%,#fff 70%,#F8FAFD 100%);
  border:1px solid var(--gray-300);
  box-shadow:var(--shadow-lg);
}
.hero-offer-rubro .price-currency{margin:0}

.rubro-tier-strip{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;
  width:100%;min-width:0;
}
.rt-card{
  position:relative;display:grid;gap:5px;
  padding:16px 14px 14px;
  border-radius:var(--radius-lg);
  background:#fff;
  border:1px solid var(--gray-300);
  transition:var(--transition);
  text-decoration:none;color:inherit;
  overflow:hidden;
}
.rt-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.rt-card::before{
  content:"";position:absolute;left:0;top:0;right:0;height:4px;
}
.rt-green::before{background:var(--google-green)}
.rt-blue::before{background:var(--google-blue)}
.rt-purple::before{background:linear-gradient(90deg,var(--google-purple),#a87de8)}
.rt-card.rt-blue{
  border-color:rgba(66,133,244,.32);
  background:linear-gradient(180deg,#fff,var(--google-blue-tint));
}
.rt-tag{
  display:inline-flex;align-items:center;gap:6px;
  font-size:.66rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
  color:var(--gray-700);
}
.rt-green .rt-tag{color:var(--google-green-dark)}
.rt-blue .rt-tag{color:var(--google-blue-dark)}
.rt-purple .rt-tag{color:var(--google-purple-dark)}
.rt-pop{
  position:absolute;top:10px;right:10px;z-index:2;
  display:inline-flex;align-items:center;
  max-width:calc(100% - 20px);
  font-size:.58rem;
  background:var(--google-yellow);color:var(--gray-900);
  padding:3px 8px;border-radius:var(--radius-pill);
  font-weight:800;letter-spacing:.05em;text-transform:uppercase;
  box-shadow:0 2px 6px rgba(251,188,4,.4);
  white-space:nowrap;
}
.rt-name{font-size:.96rem;font-weight:800;color:var(--gray-900);line-height:1.2}
.rt-price{font-size:1.22rem;font-weight:800;color:var(--gray-900);line-height:1.1;margin-top:2px}
.rt-monthly{font-size:.76rem;color:var(--gray-700);font-weight:700;line-height:1.3}
.rt-monthly .price-optional-tag{margin-right:6px;font-size:.58rem;padding:2px 7px}

/* hero actions for rubro pages */
.hero-actions-rubro{
  display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;align-items:center;
}
.hero-actions-rubro .btn-wa-secondary{
  background:#fff;color:var(--google-green-dark);
  border:1px solid rgba(52,168,83,.32);
  box-shadow:var(--shadow-sm);
}
.hero-actions-rubro .btn-wa-secondary:hover{
  background:var(--google-green-tint);
  border-color:rgba(52,168,83,.5);
}
.hero-actions-rubro .btn-wa-secondary svg{color:var(--google-green)}

/* hero trust badges — chip style */
.hero-trust-rubro{
  display:flex;flex-wrap:wrap;gap:10px;
  margin-top:24px;padding-top:22px;
  border-top:1px solid var(--gray-300);
  list-style:none;
}
.hero-trust-rubro li{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 14px;
  background:#fff;border:1px solid var(--gray-300);
  border-radius:var(--radius-pill);
  font-size:.82rem;font-weight:800;color:var(--gray-700);
  box-shadow:var(--shadow-xs);
}
.ht-dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--google-green);
  box-shadow:0 0 0 3px var(--google-green-tint);
  flex:0 0 8px;
}
.ht-dot.ht-blue{background:var(--google-blue);box-shadow:0 0 0 3px var(--google-blue-tint)}
.ht-dot.ht-yellow{background:var(--google-yellow);box-shadow:0 0 0 3px var(--google-yellow-tint)}
.ht-dot.ht-red{background:var(--google-red);box-shadow:0 0 0 3px var(--google-red-tint)}

@media (max-width:960px){
  /* Pricing strip in rubro hero — force all direct children full-width */
  .hero-offer-rubro > *{width:100%;max-width:100%}
  .hero-offer-rubro .price-currency{
    display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;
    background:linear-gradient(180deg,#fff,var(--gray-100));
    border:1px solid var(--gray-300);
    padding:10px 14px;border-radius:var(--radius-lg);
    color:var(--gray-800);font-weight:700;
    text-transform:none;font-size:.78rem;letter-spacing:0;
    box-shadow:var(--shadow-xs);
  }
  .hero-offer-rubro .price-currency::after{
    content:"AR$";
    grid-column:3;justify-self:end;
    background:var(--google-blue-tint);color:var(--google-blue-dark);
    font-size:.7rem;font-weight:800;letter-spacing:.04em;
    padding:3px 8px;border-radius:99px;
    border:1px solid rgba(66,133,244,.22);
  }
  .hero-offer-rubro .price-currency{grid-template-columns:auto 1fr auto}
  .hero-offer-rubro .price-currency .pc-flag{
    width:30px;height:30px;border-radius:9px;
    background:var(--google-yellow-tint);color:var(--google-yellow-dark);
    display:grid;place-items:center;font-size:.85rem;
  }
  .rubro-tier-strip{min-width:0;width:100%}
  .rt-card{
    grid-template-columns:1fr auto;
    gap:4px 14px;align-items:center;
    padding:14px 16px;
    min-width:0;
  }
  .rt-tag{grid-row:1;grid-column:1;font-size:.62rem;justify-self:start}
  .rt-name{grid-row:2;grid-column:1;font-size:.98rem}
  .rt-price{grid-row:1/span 2;grid-column:2;text-align:right;align-self:center;font-size:1.15rem;margin:0}
  .rt-monthly{grid-row:3;grid-column:1/-1;font-size:.74rem;color:var(--gray-600);padding-top:6px;margin-top:4px;border-top:1px dashed var(--gray-200)}
  .rt-pop{top:auto;bottom:8px;right:8px;font-size:.58rem;padding:3px 8px}
}

@media (max-width:780px){
  .rubro-tier-strip{grid-template-columns:minmax(0,1fr)}
  .hero-actions-rubro{flex-direction:column;align-items:stretch}
  .hero-actions-rubro .btn{width:100%}
  .hero-trust-rubro{gap:8px}
}

/* ════════════════════════════════════════════════════════════
   MOBILE POLISH — refinements for small viewports
   ═════════════════════════════════════════════════════════════ */

/* Sticky-header friendly anchor scrolling */
html{scroll-padding-top:80px}

/* Defense in depth: prevent any horizontal scroll */
html,body{max-width:100%;overflow-x:clip}

/* Grid columns: ensure they can shrink below their content's intrinsic width on mobile,
   so no child element forces the grid column to grow wider than the viewport */
@media (max-width:960px){
  .hero-grid,.hero-grid-v1,.hero-grid-v2,.hero-grid-v3,
  .hero-v2-mosaic,
  .concept-overview,
  .compare-grid,
  .pricing-grid,
  .cases-grid,
  .resource-showcase,
  .value-monthly-compare,
  .plan-case-grid{
    min-width:0;
  }
  .hero-grid > *,.hero-grid-v1 > *,.hero-grid-v3 > *,
  .hero-copy-v3,.hero-copy-v1,.hero-side,
  .resource-copy,
  .plan-case-body,
  .plan-case-visual{
    min-width:0;
  }
  /* Eyebrows / chips / plan-tags / popular badges: never force their grid track wider than the viewport */
  .eyebrow,.plan-tag,.popular-badge{max-width:100%;white-space:normal;text-align:left}
}

/* Inputs / textarea / select — prevent iOS zoom on focus (font-size must be ≥16px) */
input:not([type="radio"]):not([type="checkbox"]),
textarea,
select{font-size:16px}

/* Tap targets — minimum 44px for buttons/links */
.btn,.menu-toggle,.float-wa,.scroll-top{min-height:44px}

@media (max-width:680px){
  /* Header — tighter on mobile */
  .nav{min-height:62px;gap:10px}
  .logo{font-size:1.05rem;gap:9px}
  .logo svg{width:32px;height:32px}
  .nav-cta{gap:8px}
  .nav-cta .btn{padding:8px 12px;font-size:.82rem;min-height:40px}
  .nav-cta .btn svg{width:16px;height:16px}
  .menu-toggle{width:42px;height:42px;font-size:1.3rem;min-height:42px}

  /* Section padding — slightly tighter rhythm on mobile */
  section{padding:48px 0}
  .hero{padding:28px 0 40px}
  .es-section{padding:56px 0}
  .plan-case{padding:56px 0}
  .home-results{padding:56px 0}
  .cta-banner{padding:48px 0}

  /* Section heads — tighter */
  .section-head{margin-bottom:28px}
  .section-head h2{font-size:clamp(1.5rem,7vw,2rem)}
  .section-head p{font-size:.98rem}

  /* Hero h1 caps */
  h1{font-size:clamp(1.85rem,8.5vw,2.4rem);letter-spacing:-.02em}
  .lead{font-size:1rem;line-height:1.55}

  /* Hero actions — full width buttons for easier tapping */
  .hero-actions,.hero-actions-single,.es-cta-actions,.u-actions-center{
    flex-direction:column;align-items:stretch;gap:10px;
  }
  .hero-actions .btn,
  .hero-actions-single .btn,
  .es-cta-actions .btn,
  .u-actions-center .btn{width:100%;justify-content:center}

  /* Payment trust logos: keep horizontal but centered on mobile */
  .hero-actions-single .payment-trust-hero,
  .hero-actions .payment-trust-hero{justify-content:center;width:100%}

  /* Eyebrow tighter */
  .eyebrow{font-size:.7rem;padding:5px 12px}

  /* Cards: tighter padding */
  .pricing-card,.special-card,.case-card{padding:24px 20px}

  /* Pricing strip in rubro hero (horizontal mobile card overrides above; just tighten further) */
  .rt-card{padding:13px 14px}
  .rt-price{font-size:1.05rem}
  .hero-offer-rubro{padding:14px;gap:10px}
  .hero-offer-rubro .price-currency{font-size:.74rem}

  /* Hero offer pricing tighter — deduped (see rubro-tier above) */
  .hero-offer{padding:14px}

  /* Process / FAQ — tighter padding */
  .step{padding:18px 16px}

  /* CTA banner h2 */
  .cta-banner h2{font-size:clamp(1.4rem,6.5vw,1.85rem)}

  /* Float buttons — closer to corner on smallest screens */
  .float-wa{width:54px;height:54px;right:14px;bottom:14px}
  .float-wa svg{width:26px;height:26px}
  .scroll-top{right:18px;bottom:76px;width:42px;height:42px}
  .scroll-top svg{width:20px;height:20px}

  /* Case-real client card on mobile — wrap the badge */
  .plan-case-client{flex-wrap:wrap}
  .pc-badge{order:3;width:100%;justify-content:flex-start}

  /* Plan case proof KPIs — single col on smallest screens */
  .pcp-kpis{grid-template-columns:1fr;gap:8px}
  .pcp-kpi{flex-direction:row;justify-content:space-between;align-items:center;padding:11px 14px}
  .pcp-kpi span{font-size:.72rem}
  .pcp-kpi strong{font-size:1.05rem;flex-wrap:nowrap}
  .pcp-shot{margin:0 -2px}

  /* Plan case bridge — readable on small screens */
  .plan-case-bridge p{font-size:.94rem}
  .plan-case-bridge .btn{width:100%}

  /* Module cards — tighter padding on mobile */
  .module-card{padding:20px 18px;gap:10px}
  .module-emoji{width:44px;height:44px;border-radius:11px;font-size:1.1rem}
  .module-card h3{font-size:1.08rem}
  .module-desc{font-size:.9rem;line-height:1.5}
  .check-list{gap:8px;margin-top:4px}
  .check-list li{font-size:.88rem;line-height:1.5;padding-left:24px}
  .check-list li::before{width:16px;height:16px;top:.35em}

  /* Stats strip — single col, more compact */
  .stats-grid{grid-template-columns:1fr 1fr;gap:14px}
  .stat-item{padding:16px 14px}
  .stat-num{font-size:1.6rem}

  /* Why plan strip */
  .why-plan-grid{grid-template-columns:1fr;gap:14px}

  /* Compare section */
  .compare-grid{grid-template-columns:1fr;gap:18px}
  .compare-col{padding:22px 18px}

  /* Concept overview */
  .concept-overview{padding:20px}

  /* Footer — single column natural */
  .footer{padding:48px 0 24px}
  .footer-grid{gap:24px}
  .footer-bottom{gap:10px;font-size:.82rem}

  /* Article body */
  .blog-article-wrap{padding:0 4px}
  .article-cover{margin:18px 0 22px}
  .article-cover img{aspect-ratio:16/10}

  /* Author byline */
  .author-byline{padding:14px}

  /* Tweaks panel — slide from bottom on mobile */
  .tweaks-panel{
    right:auto;left:14px;width:auto;max-width:none;
    bottom:14px;top:auto;
    max-height:70vh;
  }

  /* Visual mocks inside plan-case — slightly smaller */
  .plan-case-visual{min-height:0}

  /* Logos in hero side / chips */
  .rubro-hero-visual{transform:scale(.95);transform-origin:center}
}

@media (max-width:420px){
  .container{padding:0 16px}
  /* Even tighter container on tiny phones */
  h1{font-size:clamp(1.7rem,9vw,2.1rem)}
  .nav-cta .btn span,
  .nav-cta .btn{font-size:.8rem;padding:7px 10px}
  .hero{padding:20px 0 32px}
  section{padding:40px 0}
  .es-section,.plan-case,.home-results{padding:48px 0}
  .pricing-card,.special-card{padding:20px 16px}
  .footer{padding:36px 0 18px}
  /* Plan case meaning callout — vertical icon */
  .pcp-meaning{padding:16px}
}

.bcallout-src{margin:11px 0 0;padding-top:9px;border-top:1px solid rgba(0,0,0,.10);font-size:.74rem;line-height:1.45;color:var(--gray-500);font-style:italic}
