/* =========================================================
   EMMA — estilos Soluciones (hub + plantilla industria) v2.2
   Scopeado bajo .emma-soluciones. Texto = bloques Gutenberg;
   selector/diagramas/mocks = HTML estatico (6 paneles prerenderizados,
   JS solo muestra/oculta — sin riesgo SEO; degrada a paneles apilados).
   Naranja #FD830D exclusivo CTAs · verde solo dato positivo · Inter + Rubik.
   ========================================================= */
.emma-soluciones{
  --morado:#4D4A9E; --deep:#3A3877; --violet:#AC92EC;
  --green:#8DC049; --green-deep:#6FA033; --orange:#FD830D;
  --slate:#516377; --surface:#F6F6FB; --card:#fff;
  --line:#ECECEE; --line2:#DDDDE3; --radius:18px;
  --shadow-sm:0 1px 2px rgba(58,56,119,.06),0 8px 24px rgba(58,56,119,.05);
  --shadow-md:0 2px 6px rgba(58,56,119,.08),0 24px 60px rgba(58,56,119,.10);
  font-family:'Inter',system-ui,sans-serif;color:var(--slate);line-height:1.65;background:var(--card);
}
.emma-soluciones :where(h1,h2,h3){color:var(--morado);line-height:1.12;letter-spacing:-.02em;margin:0}
.emma-soluciones p{margin:0}
.emma-soluciones .emma-sec{padding:76px 24px}
.emma-soluciones .emma-sec > *{max-width:1160px;margin-left:auto;margin-right:auto}
.emma-soluciones .is-surface{background:var(--surface)}
.emma-soluciones .emma-center{text-align:center}
.emma-soluciones .eyebrow{font-family:'Rubik',sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--morado);display:inline-flex;align-items:center;gap:9px;margin-bottom:14px}
.emma-soluciones .eyebrow::before{content:"";width:22px;height:2px;background:var(--green);border-radius:2px}
.emma-soluciones .emma-center .eyebrow{justify-content:center}
.emma-soluciones .lead{font-size:17px;line-height:1.55;color:var(--slate)}
.emma-soluciones .emma-head{max-width:680px}
.emma-soluciones .emma-head h1{font-size:46px;font-weight:800;letter-spacing:-.03em;line-height:1.06;margin-bottom:16px}
.emma-soluciones .wp-block-buttons{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.emma-soluciones .emma-center .wp-block-buttons{justify-content:center}
.emma-soluciones .wp-block-button__link{display:inline-flex;align-items:center;gap:9px;font-weight:600;font-size:15px;padding:13px 22px;border-radius:11px;border:1px solid transparent;text-decoration:none;transition:.18s ease}
.emma-soluciones .is-style-emma-cta .wp-block-button__link{background:var(--orange);color:#fff;box-shadow:0 6px 18px rgba(253,131,13,.32)}
.emma-soluciones .is-style-emma-cta .wp-block-button__link:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(253,131,13,.42)}
.emma-soluciones .is-style-emma-ghost .wp-block-button__link{background:transparent;color:var(--morado);border-color:var(--line2)}
.emma-soluciones .is-style-emma-ghost .wp-block-button__link:hover{border-color:var(--morado)}

/* ── HERO con motivo de firma (hub) ── */
.emma-soluciones .emma-hero{position:relative;overflow:hidden;padding-bottom:176px}
.emma-soluciones .hero-gap{position:absolute;left:0;right:0;bottom:-6px;width:100%;height:190px;pointer-events:none;max-width:none}

/* ── SELECTOR DE INDUSTRIAS (hub) ── */
.emma-soluciones .emma-selector{margin-top:-120px;position:relative;z-index:3;padding:0 24px 84px}
.emma-soluciones .tabbar{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:26px}
.emma-soluciones .tab{display:inline-flex;align-items:center;gap:9px;padding:11px 18px;border-radius:999px;border:1px solid var(--line2);background:var(--card);color:var(--slate);font-weight:600;font-size:14.5px;cursor:pointer;transition:.18s ease;font-family:inherit}
.emma-soluciones .tab svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.emma-soluciones .tab:hover{border-color:var(--morado);color:var(--morado)}
.emma-soluciones .tab.active{background:var(--morado);border-color:var(--morado);color:#fff;box-shadow:0 8px 20px rgba(77,74,158,.28)}
/* sin JS: tabs ocultas y 6 paneles apilados (SEO ve todo); con JS (.emma-js): tabs visibles, solo panel activo */
.emma-soluciones .tabbar{display:none}
.emma-soluciones.emma-js .tabbar{display:flex}
.emma-soluciones .sol-panel{display:grid;grid-template-columns:1fr 1.1fr;background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-md);overflow:hidden;min-height:380px;margin-bottom:22px}
.emma-soluciones.emma-js .sol-panel{margin-bottom:0}
.emma-soluciones.emma-js .sol-panel:not(.active){display:none}
.emma-soluciones .panel-copy{padding:44px 40px;display:flex;flex-direction:column;justify-content:center}
.emma-soluciones .panel-copy .sector{font-family:'Rubik',sans-serif;font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--violet);margin-bottom:12px}
.emma-soluciones .panel-copy h3{font-size:26px;font-weight:700;line-height:1.2}
.emma-soluciones .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.emma-soluciones .chip{font-size:13px;font-weight:600;color:var(--morado);background:var(--surface);border:1px solid var(--line);padding:7px 13px;border-radius:999px}
.emma-soluciones .panel-copy .go{margin-top:26px;font-size:15px;font-weight:600;color:var(--morado);text-decoration:none;display:inline-flex;align-items:center;gap:7px}
.emma-soluciones .panel-copy .go:hover{text-decoration:underline}
.emma-soluciones .panel-dash{background:linear-gradient(160deg,var(--deep),var(--morado));padding:36px 34px;display:flex;flex-direction:column;justify-content:center;gap:14px;position:relative}
.emma-soluciones .panel-dash::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 12%,rgba(141,192,73,.14),transparent 45%)}
.emma-soluciones .panel-dash > *{position:relative;z-index:1}
.emma-soluciones .kpis{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.emma-soluciones .kpi{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:14px 16px}
.emma-soluciones .kpi .v{font-family:'Rubik',sans-serif;font-size:28px;font-weight:700;color:#fff;line-height:1.1}
.emma-soluciones .kpi .v em{font-style:normal;color:var(--green)}
.emma-soluciones .kpi .k{font-size:11.5px;color:rgba(255,255,255,.75);margin-top:3px}
.emma-soluciones .chartcard{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:15px}
.emma-soluciones .chartcard .t{font-size:11.5px;color:rgba(255,255,255,.78);margin-bottom:8px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.emma-soluciones .legend{display:flex;gap:10px;font-size:10.5px;color:rgba(255,255,255,.7)}
.emma-soluciones .legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px}
.emma-soluciones .gapchart{width:100%;height:120px;display:block}
.emma-soluciones .dash-note{font-size:10.5px;color:rgba(255,255,255,.5);font-style:italic;text-align:right}
.emma-soluciones .sol-panel.fade .panel-copy,
.emma-soluciones .sol-panel.fade .panel-dash>*{animation:emmaFadeUp .35s ease both}
@keyframes emmaFadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ── BANDA MÉTRICAS ── */
.emma-soluciones .emma-band{background:linear-gradient(160deg,var(--deep),var(--morado));color:#fff;position:relative;overflow:hidden}
.emma-soluciones .emma-band::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 18%,rgba(141,192,73,.16),transparent 45%)}
.emma-soluciones .emma-band > *{position:relative;z-index:1}
.emma-soluciones .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;text-align:center}
.emma-soluciones .stats .num{font-family:'Rubik',sans-serif;font-size:56px;font-weight:700;color:#fff;line-height:1}
.emma-soluciones .stats .num em{color:var(--green);font-style:normal}
.emma-soluciones .stats .lbl{margin-top:10px;font-size:14.5px;color:rgba(255,255,255,.82)}

/* ── POR ÁREA (hub, compacto) ── */
.emma-soluciones .personas{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:44px}
.emma-soluciones .pcard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px 18px;text-align:center;box-shadow:var(--shadow-sm);transition:.18s ease;text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:10px}
.emma-soluciones .pcard:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--morado)}
.emma-soluciones .pcard .ico{width:46px;height:46px;border-radius:50%;background:rgba(77,74,158,.08);display:grid;place-items:center}
.emma-soluciones .pcard .ico svg{width:22px;height:22px;stroke:var(--morado);fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.emma-soluciones .pcard b{color:var(--morado);font-size:14.5px;line-height:1.25}
.emma-soluciones .pcard span{font-size:12.5px;line-height:1.45;color:var(--slate)}
.emma-soluciones .pcard .go{font-size:12.5px;font-weight:600;color:var(--morado);margin-top:auto}

/* ── PLANTILLA INDUSTRIA: hero split ── */
.emma-soluciones .emma-hero-split .wp-block-columns{max-width:1160px;margin:0 auto;align-items:center;gap:54px}
.emma-soluciones .emma-hero-split h1{font-size:40px;font-weight:800;letter-spacing:-.03em;line-height:1.1}
.emma-soluciones .dash{background:linear-gradient(160deg,var(--deep),var(--morado));border-radius:22px;padding:26px;box-shadow:var(--shadow-md);position:relative;overflow:hidden;display:flex;flex-direction:column;gap:12px}
.emma-soluciones .dash::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 10%,rgba(141,192,73,.15),transparent 45%)}
.emma-soluciones .dash > *{position:relative;z-index:1}

/* diagrama de desacople */
.emma-soluciones .diagram{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-md);padding:34px;margin-top:44px}
.emma-soluciones .diagram svg{width:100%;height:auto;display:block}
.emma-soluciones .callouts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}
.emma-soluciones .co{display:flex;gap:12px;align-items:flex-start}
.emma-soluciones .co .dot{flex:none;width:34px;height:34px;border-radius:10px;background:rgba(77,74,158,.08);display:grid;place-items:center}
.emma-soluciones .co .dot svg{width:18px;height:18px;stroke:var(--morado);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.emma-soluciones .co b{display:block;color:var(--morado);font-size:14.5px;line-height:1.3;margin-bottom:3px}
.emma-soluciones .co span{font-size:13px;line-height:1.5}

/* cita */
.emma-soluciones .emma-quote{max-width:760px;margin:0 auto;text-align:center}
.emma-soluciones .emma-quote blockquote{margin:0;border:none;padding:0;font-size:26px;font-weight:600;line-height:1.4;color:var(--morado);font-style:normal}
.emma-soluciones .emma-quote blockquote p::before{content:"\201C";color:var(--green);font-size:1.2em}
.emma-soluciones .emma-quote blockquote p::after{content:"\201D";color:var(--green);font-size:1.2em}
.emma-soluciones .emma-quote cite{display:block;margin-top:18px;font-size:14px;font-style:normal;color:var(--slate);font-weight:400}

/* pasos alternados (columns) */
.emma-soluciones .emma-row .wp-block-columns{max-width:1080px;margin:0 auto;align-items:center;gap:52px}
.emma-soluciones .emma-row-reverse .wp-block-columns{flex-direction:row-reverse}
.emma-soluciones .emma-row h2{font-size:27px}
.emma-soluciones .emma-row .lead{font-size:16px;margin-top:10px}
.emma-soluciones .steptag{font-family:'Rubik',sans-serif;font-size:13px;font-weight:600;color:var(--violet);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;display:block}
.emma-soluciones .mod-list{list-style:none;padding:0;margin:18px 0 0}
.emma-soluciones .mod-list li{position:relative;padding-left:26px;margin:9px 0;font-size:15px}
.emma-soluciones .mod-list li::before{content:"";position:absolute;left:0;top:10px;width:14px;height:3px;border-radius:2px;background:var(--green)}
.emma-soluciones .morelink{display:inline-flex;align-items:center;gap:6px;margin-top:16px;font-size:14px;font-weight:600;color:var(--morado);text-decoration:none}
.emma-soluciones .morelink:hover{text-decoration:underline}

/* mocks visuales */
.emma-soluciones .mock{border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow-md);background:var(--card);overflow:hidden}
.emma-soluciones .mock .mock-head{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--surface)}
.emma-soluciones .mock .mock-head i{width:9px;height:9px;border-radius:50%;background:var(--line2);display:inline-block}
.emma-soluciones .mock .mock-head span{font-size:12px;color:var(--slate);margin-left:6px}
.emma-soluciones .mock .mock-body{padding:18px}
.emma-soluciones .slot-note{font-size:11.5px;color:#9a9ab0;font-style:italic;padding:10px 16px;border-top:1px dashed var(--line2);background:var(--surface)}
.emma-soluciones .alert-item{display:flex;gap:12px;align-items:flex-start;padding:13px;border:1px solid var(--line);border-radius:12px;margin-bottom:10px}
.emma-soluciones .alert-item:last-child{margin-bottom:0}
.emma-soluciones .alert-item .pill{flex:none;font-family:'Rubik',sans-serif;font-size:10.5px;font-weight:600;letter-spacing:.06em;padding:4px 9px;border-radius:999px}
.emma-soluciones .pill-hi{background:rgba(77,74,158,.12);color:var(--morado)}
.emma-soluciones .pill-med{background:rgba(172,146,236,.18);color:#7c63c9}
.emma-soluciones .alert-item b{display:block;font-size:13.5px;color:var(--morado);line-height:1.3}
.emma-soluciones .alert-item small{font-size:12px;color:var(--slate)}
.emma-soluciones .alert-item .cost{margin-left:auto;flex:none;font-family:'Rubik',sans-serif;font-weight:700;font-size:14px;color:var(--morado);white-space:nowrap}
.emma-soluciones .mv-num{font-family:'Rubik',sans-serif;font-size:44px;font-weight:700;color:var(--green);line-height:1}
.emma-soluciones .mv-lbl{font-size:12.5px;color:var(--slate);margin-top:4px}
.emma-soluciones .mv-meta{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.emma-soluciones .mv-meta span{font-size:11.5px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:5px 11px;color:var(--slate)}

/* CTA final */
.emma-soluciones .emma-final{background:linear-gradient(160deg,var(--deep),var(--morado));color:#fff;position:relative;overflow:hidden;text-align:center}
.emma-soluciones .emma-final::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(141,192,73,.16),transparent 45%)}
.emma-soluciones .emma-final > *{position:relative;z-index:1}
.emma-soluciones .emma-final h2{color:#fff;font-size:36px;font-weight:800}
.emma-soluciones .emma-final p{color:rgba(255,255,255,.85);font-size:18px;margin-top:14px}
.emma-soluciones .emma-final .is-style-emma-ghost .wp-block-button__link{color:#fff;border-color:rgba(255,255,255,.4)}
.emma-soluciones .form-slot{max-width:520px;margin:26px auto 0;background:rgba(255,255,255,.08);border:1px dashed rgba(255,255,255,.35);border-radius:14px;padding:20px;color:rgba(255,255,255,.75);font-size:13px;font-style:italic}

/* reveal on scroll (solo con JS; sin JS todo visible) */
.emma-soluciones.emma-js .reveal{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.emma-soluciones.emma-js .reveal.in{opacity:1;transform:none}

@media (max-width:980px){
  .emma-soluciones .personas{grid-template-columns:repeat(2,1fr)}
  .emma-soluciones .sol-panel{grid-template-columns:1fr}
  .emma-soluciones .panel-copy{padding:30px 26px}
  .emma-soluciones .emma-hero{padding-bottom:150px}
  .emma-soluciones .emma-hero-split .wp-block-columns,
  .emma-soluciones .emma-row .wp-block-columns,
  .emma-soluciones .emma-row-reverse .wp-block-columns{flex-direction:column;gap:26px}
  .emma-soluciones .callouts{grid-template-columns:1fr}
  .emma-soluciones .diagram{padding:20px}
}
@media (max-width:620px){
  .emma-soluciones .emma-sec{padding:56px 20px}
  .emma-soluciones .emma-head h1{font-size:31px}
  .emma-soluciones .emma-hero-split h1{font-size:31px}
  .emma-soluciones .emma-final h2{font-size:28px}
  .emma-soluciones .stats{grid-template-columns:1fr;gap:30px}
  .emma-soluciones .personas{grid-template-columns:1fr}
  .emma-soluciones .tab{font-size:13px;padding:9px 13px}
  .emma-soluciones .emma-quote blockquote{font-size:21px}
}
@media (prefers-reduced-motion:reduce){
  .emma-soluciones .is-style-emma-cta .wp-block-button__link:hover,
  .emma-soluciones .pcard:hover{transform:none}
  .emma-soluciones .sol-panel.fade .panel-copy,
  .emma-soluciones .sol-panel.fade .panel-dash>*{animation:none}
  .emma-soluciones.emma-js .reveal{opacity:1;transform:none;transition:none}
}

/* v3.1 — titulares Inter Light + tracking abierto */
.emma-soluciones .emma-head h1,.emma-soluciones .emma-hero-split h1{font-weight:400;letter-spacing:-.012em}
.emma-soluciones .emma-row h2,.emma-soluciones .emma-final h2{font-weight:400;letter-spacing:-.01em}
.emma-soluciones .panel-copy h3{font-weight:400;letter-spacing:-.01em}

/* ===== Áreas hub v4.4 — tarjetas-ejemplo por rol ===== */
.emma-soluciones .aroles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}
.emma-soluciones .arole{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:.18s ease;text-decoration:none}
.emma-soluciones .arole:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--morado)}
.emma-soluciones .arole .viz{background:var(--surface);border-bottom:1px solid var(--line);padding:16px 18px 12px}
.emma-soluciones .arole .viz svg{display:block;width:100%;height:auto}
.emma-soluciones .arole .body{padding:16px 18px 20px;display:flex;flex-direction:column;gap:9px;flex:1}
.emma-soluciones .arole .role{display:inline-flex;align-items:center;gap:8px;font-family:'Rubik',sans-serif;font-weight:600;font-size:11.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--morado)}
.emma-soluciones .arole .role svg{width:15px;height:15px;stroke:var(--morado);fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.emma-soluciones .arole h3{font-size:16.5px;line-height:1.2;color:var(--morado)}
.emma-soluciones .arole .desc{font-size:13.5px;color:var(--slate);line-height:1.5;margin:0}
.emma-soluciones .arole .ex{font-size:12.5px;color:var(--slate);background:var(--surface);border-left:3px solid var(--green);border-radius:8px;padding:9px 11px;line-height:1.45}
.emma-soluciones .arole .ex b{color:var(--morado);font-weight:600}
.emma-soluciones .arole .go{margin-top:auto;font-weight:600;color:var(--morado);font-size:13.5px;display:inline-flex;align-items:center;gap:6px}
.emma-soluciones .arole:hover .go{gap:9px}

/* FAQ del hub */
.emma-soluciones .afaq{max-width:820px;margin:34px auto 0;display:flex;flex-direction:column;gap:12px}
.emma-soluciones .afaq details{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:2px 20px;box-shadow:var(--shadow-sm)}
.emma-soluciones .afaq summary{cursor:pointer;list-style:none;padding:16px 0;font-weight:600;color:var(--morado);font-size:15.5px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.emma-soluciones .afaq summary::-webkit-details-marker{display:none}
.emma-soluciones .afaq summary::after{content:"+";font-size:22px;font-weight:400;color:var(--violet);transition:.2s}
.emma-soluciones .afaq details[open] summary::after{transform:rotate(45deg)}
.emma-soluciones .afaq p{margin:0 0 16px;font-size:14px;color:var(--slate);line-height:1.6}

@media(max-width:980px){.emma-soluciones .aroles{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.emma-soluciones .aroles{grid-template-columns:1fr}.emma-soluciones .arole:hover{transform:none}}

/* v7.4 — audit de espaciado: la bajada del hero y de los section-head
   (hub "Hecha para tu rol", areas-hub) usa .lead base sin margin-top. Las
   filas de modulo (.emma-row .lead) mantienen su propio margin-top:10. */
.emma-soluciones .lead{margin-top:14px}
