/* =========================================================================
   FlowProp · capa de marca (Brandbook 2026)
   Se carga DESPUÉS de bundle.css / v2-shared.css / mobile-c.css y reescribe
   tokens y componentes compartidos: Figtree, Navy #002E5E, Naranja #FF6A00,
   Tinta #001B38, Paper #F4F4F5. Sin sombras, radios 24/12/8/999.
   ========================================================================= */
:root{
  --fp-navy:#002E5E; --fp-orange:#FF6A00; --fp-ink:#001B38; --fp-paper:#F4F4F5;
  --fp-navy-2:#062448; --fp-navy-3:#0E3F75; --fp-mist:#D3DEEC; --fp-mist-2:#AFC0D4;
  --fp-muted:#66707F; --fp-line:#E4E4E7; --fp-red:#C62E4A;

  --font-sans:"Figtree",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --font-mono:"Figtree",ui-sans-serif,system-ui,sans-serif;
  --font-serif:"Figtree",ui-sans-serif,system-ui,sans-serif;
  --sans:var(--font-sans); --mono:var(--font-sans); --serif:var(--font-sans);

  --gray-0:#FFFFFF; --gray-50:#F7F7F8; --gray-100:#F4F4F5; --gray-200:#E4E4E7; --gray-300:#D4D4D8;
  --gray-400:#AFC0D4; --gray-500:#66707F; --gray-600:#4B5563; --gray-700:#3F4652; --gray-800:#27303D;
  --gray-900:#001B38; --gray-1000:#002E5E;
  --accent-50:#FFF1E6; --accent-100:#FFE0CC; --accent-300:#FFB380;
  --accent-500:#FF6A00; --accent-600:#E85F00; --accent-700:#C24800;
  --accent:#FF6A00; --accent-ink:#C24800; --accent-soft:#FFF1E6;
  --ink:#001B38; --ink-2:#3F4652; --ink-3:#66707F;
  --paper:#FFFFFF; --paper-2:#F4F4F5; --line:#E4E4E7;
  --bg-base:#FFFFFF; --bg-surface:#FFFFFF; --bg-subtle:#F4F4F5; --bg-muted:#F4F4F5;
  --border:#E4E4E7; --border-strong:#D4D4D8;
  --text-primary:#001B38; --text-body:#3F4652; --text-muted:#66707F; --text-on-accent:#001B38;
  --radius-sm:8px; --radius-md:12px; --radius-lg:24px; --radius-xl:28px;
  --shadow-sm:none; --shadow-md:none; --shadow-lg:none; --shadow-focus:0 0 0 3px rgba(255,106,0,.35);
}

html{scroll-behavior:smooth}
body{font-family:var(--font-sans)!important;background:#fff;color:var(--fp-ink);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
body::before{display:none!important}
::selection{background:var(--fp-orange);color:var(--fp-ink)}
:focus-visible{outline:2px solid var(--fp-orange);outline-offset:3px}

/* ---------- Tipografía: Figtree, peso + tamaño hacen la jerarquía ---------- */
h1,h2,h3,h4,.h1,.h2,.fp-h1,.fp-h2,.fp-h3{font-family:var(--font-sans)!important;color:var(--fp-navy);letter-spacing:-.04em}
h1,.h1,.fp-h1{font-weight:800!important;line-height:.95!important;letter-spacing:-.05em!important}
h2,.h2,.fp-h2{font-weight:800!important;line-height:1!important;letter-spacing:-.045em!important}
h3,h4,.fp-h3{font-weight:800!important;letter-spacing:-.025em!important}
.serif,.fp-serif,em.serif,i.serif{font-family:inherit!important;font-style:normal!important;font-weight:400!important;letter-spacing:inherit!important}
code,pre,kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important}

/* Etiquetas meta: gris, nunca kicker naranja sobre el titular */
.fp-eye,.fp-eye-accent,.lbl,.m-eyebrow,.fp-crumbs{font-family:var(--font-sans)!important;color:var(--fp-muted)!important;background:none!important;letter-spacing:.08em}
.fp-crumbs a{color:var(--fp-muted)!important}

/* Prosa del blog: legible, sin banners */
.fp-prose{font-size:17px;line-height:1.65;color:var(--ink-2)}
.fp-prose h2{font-size:clamp(28px,3vw,40px);margin-top:1.6em}
.fp-prose a{color:var(--fp-navy);text-decoration:underline;text-decoration-color:var(--fp-orange);text-underline-offset:3px}

/* ---------- Navegación ---------- */
.fp-nav,nav.fp-nav,.m-topbar{background:rgba(255,255,255,.92)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--fp-line)!important}
.fp-nav{height:84px!important;padding:0 clamp(20px,3vw,48px)!important}
.fp-logo img{height:48px!important;width:auto!important}
.m-topbar img{height:34px!important;width:auto!important}
.fp-nav-links{gap:clamp(20px,2.4vw,40px)!important}
.fp-nav-links a,.fp-nav-links .nav-dd>a{color:var(--fp-ink);font-weight:600;font-family:var(--font-sans)!important;text-transform:none!important;letter-spacing:-.01em!important;font-size:17px!important}
.fp-nav-links a:hover{color:var(--fp-navy)}
.fp-nav-links .cta,.m-topbar .m-top-cta{background:var(--fp-orange)!important;color:#fff!important;border-radius:999px!important;font-weight:800!important;padding:14px 26px!important;font-size:16.5px!important;box-shadow:none!important}
.fp-nav-links .cta:hover{background:var(--fp-navy)!important;color:#fff!important}
.fp-lang img,.fp-lang a{font-size:18px!important}
.nav-dd-panel{border-radius:20px!important;border:1px solid var(--fp-line)!important;box-shadow:0 12px 32px rgba(0,27,56,.08)!important}
.nav-dd-panel a{font-size:15.5px!important}
.nav-dd-panel .dd-head{color:var(--fp-muted)!important;font-family:var(--font-sans)!important;font-size:12px!important}
.nav-dd-panel small{color:var(--fp-muted)!important;font-size:13px!important}
@media (max-width:1180px){.fp-nav-links{gap:18px!important}.fp-nav-links a,.fp-nav-links .nav-dd>a{font-size:15.5px!important}}
@media (max-width:900px){.fp-nav{height:68px!important}.fp-logo img{height:38px!important}}

/* ---------- Botones: píldora, acción principal en Naranja con texto blanco ---------- */
.btn,.fp-btn,.m-btn,.fp-modal-submit,.fp-modal-next,.fp-sticky-cta,.cro-sticky a{border-radius:999px!important;font-family:var(--font-sans)!important;text-transform:none!important;letter-spacing:0!important;font-weight:800!important;box-shadow:none!important}
.btn,.fp-btn-primary,.m-btn-primary,.fp-modal-submit,.fp-modal-next,.fp-sticky-cta,.cro-sticky a{background:var(--fp-orange)!important;color:#fff!important;border-color:var(--fp-orange)!important}
.btn:hover,.fp-btn-primary:hover,.fp-modal-submit:hover,.fp-modal-next:hover{background:var(--fp-navy)!important;color:#fff!important;transform:none!important}
.btn2,.fp-btn-ghost,.m-btn-ghost{border-radius:999px!important;border:1.5px solid var(--fp-navy)!important;color:var(--fp-navy)!important;background:transparent!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important;font-family:var(--font-sans)!important}
.fp-btn-ghost:hover,.btn2:hover{background:var(--fp-navy)!important;color:#fff!important}

/* ---------- Superficies: tarjetas 24 px, sin sombras ---------- */
.fp-card,.card,.case,.pillar,.fp-metric,.cro-diag-item,.g,.step,.fp-service-row,.sec-sol{border-radius:24px}
.fp-modal,.fp-modal-box,.fp-modal-panel{border-radius:28px!important}
input,select,textarea{border-radius:12px!important;font-family:var(--font-sans)!important}
.fp-check{border-radius:12px!important}
.fp-check:has(input:checked),.fp-check input:checked + span,.fp-check.checked{border-color:var(--fp-navy)!important;background:#EEF3F9!important}

/* Secciones oscuras (Navy / Tinta): texto claro y acentos naranja */
[style*="background:var(--gray-1000)"],[style*="background:var(--gray-900)"],.sec-hero,.sec-case{color:#fff}
[style*="background:var(--gray-1000)"] h2,[style*="background:var(--gray-1000)"] h3,[style*="background:var(--gray-1000)"] h4,
[style*="background:var(--gray-900)"] h2,[style*="background:var(--gray-900)"] h3,[style*="background:var(--gray-900)"] h4{color:#fff}
[style*="background:var(--gray-1000)"] .fp-serif,[style*="background:var(--gray-900)"] .fp-serif{color:var(--fp-orange)!important}

/* Bloques naranja: texto Tinta (contraste AA) y botón Navy */
[style*="background:var(--accent-500)"]{color:var(--fp-ink)!important}
[style*="background:var(--accent-500)"] *{color:var(--fp-ink)!important;border-color:rgba(0,27,56,.25)!important}
[style*="background:var(--accent-500)"] .fp-serif{color:#fff!important}
button[style*="background:var(--accent-500)"],a[style*="background:var(--accent-500)"]{color:#fff!important;border-radius:999px!important}
button[style*="background:var(--accent-500)"]:hover,a[style*="background:var(--accent-500)"]:hover{background:var(--fp-navy)!important}
[style*="background:var(--accent-500)"] a[style*="background:#fff"],[style*="background:var(--accent-500)"] button[style*="background:#fff"]{background:var(--fp-navy)!important;color:#fff!important;border-radius:999px!important;font-weight:800!important}
.m-final{background:var(--fp-orange)!important;color:var(--fp-ink)!important}
.m-final *{color:var(--fp-ink)!important}

/* ---------- Footer: Navy con wordmark Flow blanco + Prop naranja ---------- */
.fp-footer,.m-footer-m{background:var(--fp-navy)!important;color:var(--fp-mist)!important}
.fp-footer-title{font-family:var(--font-sans)!important;font-weight:800!important;letter-spacing:-.055em!important;color:#fff!important}
.fp-footer-title span{color:var(--fp-orange)!important}
.fp-footer h4{color:#fff!important;font-family:var(--font-sans)!important;letter-spacing:.08em}
.fp-footer a{color:var(--fp-mist)!important}
.fp-footer a:hover{color:#fff!important}
.fp-footer-bottom{border-top-color:rgba(255,255,255,.2)!important;color:var(--fp-mist-2)!important;font-family:var(--font-sans)!important}
.m-overlay{background:var(--fp-navy)!important}

/* Tablas */
table th{font-family:var(--font-sans)!important;color:var(--fp-navy)}

@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
