/* tokens.css */
/* Yo Soy Republicano — tokens propuestos (2026-10-21)
   Auditado contra CSS ?v=24. Inspiración: whitehouse.gov / trumpira.gov
   (navy institucional, serif display, rojo contenido). Cargar ANTES de base.css. */
:root{
  /* ---------- Color: primitivos ---------- */
  --navy-950:#080e22;   /* fondo más profundo (footer, overlays) */
  --navy-900:#0d132d;   /* marca / texto principal */
  --navy-800:#0b1652;   /* royal: foco claro, enlaces sobre blanco */
  --navy-700:#141f4d;   /* superficie oscura elevada */
  --slate-600:#56617a;  /* texto secundario sobre claro (6.2:1 sobre #fff) */
  --slate-300:#a4acb5;  /* texto secundario SOLO sobre oscuro (7.9:1) */
  --slate-200:#c4cde0;  /* texto cuerpo sobre oscuro (11.5:1) */
  --line-200:#dde3ed;   /* filetes / bordes sobre claro */
  --paper-50:#f5f6fa;   /* superficie alterna */
  --white:#ffffff;
  --red-600:#d9232d;    /* rojo de marca (único) */
  --red-700:#b3141f;    /* hover/pressed (6.9:1 con blanco) */
  --red-400:#ff5a66;    /* rojo legible sobre navy, texto <24px (6.0:1) */
  --sky-400:#8fb4ff;    /* acento cursiva + foco sobre oscuro (8.8:1) */

  /* ---------- Color: roles ---------- */
  --color-bg:var(--white);
  --color-bg-alt:var(--paper-50);
  --color-bg-inverse:var(--navy-900);
  --color-bg-inverse-deep:var(--navy-950);
  --color-surface-inverse:var(--navy-700);
  --color-text:var(--navy-900);
  --color-text-muted:var(--slate-600);
  --color-text-inverse:var(--white);
  --color-text-inverse-body:var(--slate-200);
  --color-text-inverse-muted:var(--slate-300);
  --color-border:var(--line-200);
  --color-border-inverse:color-mix(in srgb,var(--white) 13%,transparent);
  --color-accent:var(--red-600);            /* acción + énfasis sobre claro */
  --color-accent-hover:var(--red-700);
  --color-accent-on-dark:var(--red-400);    /* eyebrows/íconos rojos sobre navy */
  --color-on-accent:var(--white);           /* NUNCA navy sobre rojo (3.7:1) */
  --color-highlight-on-dark:var(--sky-400); /* <em> en titulares sobre navy */
  --color-link:var(--navy-800);
  --color-disabled-bg:#e4e9f4;
  --color-disabled-text:var(--slate-600);

  /* ---------- Tipografía ---------- */
  --font-serif:'Instrument Serif',Georgia,serif;
  --font-sans:'Instrument Sans',Arial,sans-serif;
  /* escala ~1.25 (12→16) y ~1.333 en display */
  --text-label:11px;  /* solo sellos/etiquetas en mayúsculas */
  --text-xs:12px;     /* mínimo texto corrido */
  --text-sm:14px;
  --text-md:16px;     /* cuerpo + inputs */
  --text-lg:18px;     /* lead */
  --text-xl:22px;
  --text-2xl:28px;    /* h3 / tarjeta */
  --text-3xl:clamp(28px,3.2vw,36px);   /* cita, h2 pequeño */
  --text-4xl:clamp(36px,4.6vw,48px);   /* métricas */
  --text-5xl:clamp(42px,5.4vw,64px);   /* h2 de sección */
  --text-6xl:clamp(48px,7.2vw,96px);   /* hero */
  --leading-tight:1;  --leading-snug:1.15; --leading-body:1.65;
  --weight-regular:400; --weight-semibold:600;
  --tracking-display:-0.02em;  /* serif grande */
  --tracking-normal:0;
  --tracking-label:0.12em;     /* eyebrows/nav en mayúsculas */

  /* ---------- Espaciado (base 4, ritmo 8) ---------- */
  --space-1:4px;  --space-2:8px;  --space-3:12px; --space-4:16px;
  --space-5:20px; --space-6:24px; --space-8:32px; --space-10:40px;
  --space-12:48px; --space-16:64px; --space-20:80px; --space-24:96px; --space-32:128px;
  --gutter-mobile:16px;
  --section-y:clamp(var(--space-16),9vw,var(--space-32));

  /* ---------- Radios ---------- */
  --radius-none:0;      /* tarjetas, paneles, inputs: lenguaje documento */
  --radius-sm:2px;      /* botones rectos institucionales */
  --radius-pill:999px;  /* solo chips/píldoras de tienda y FAB */
  --radius-round:50%;   /* sellos y logo */

  /* ---------- Sombras (3 niveles, tinte navy) ---------- */
  --shadow-1:0 4px 16px rgb(9 14 41 / .10);   /* hover tarjeta */
  --shadow-2:0 12px 40px rgb(9 14 41 / .20);  /* flotantes, paneles */
  --shadow-3:0 32px 120px rgb(3 8 29 / .40);  /* diálogo de bienvenida */

  /* ---------- Bordes / foco / movimiento ---------- */
  --border-width:1px;
  --focus-width:3px;
  --focus-offset:3px;
  --focus-color:var(--navy-800);        /* sobre claro (11:1+) */
  --focus-color-inverse:var(--sky-400); /* sobre oscuro */
  --focus-ring:var(--focus-width) solid var(--focus-color);
  --duration-fast:150ms; --duration-base:250ms;
  --ease-standard:cubic-bezier(.2,0,0,1);

  /* ---------- Alias de compatibilidad (borrar tras migrar) ---------- */
  --ink:var(--navy-900); --deep:var(--navy-950); --soft:var(--navy-700);
  --paper:var(--white); --parchment:var(--paper-50); --muted:var(--slate-600);
  --rule:var(--line-200); --accent:var(--red-600); --red:var(--red-600);
  --red-hover:var(--red-700); --sky:var(--sky-400);
  --serif:var(--font-serif); --sans:var(--font-sans);
  --focus-light:var(--focus-color); --focus-dark:var(--focus-color-inverse);
  --manifest-navy:var(--navy-900); --manifest-blue:var(--sky-400); --manifest-red:var(--red-600);
}

/* Foco único */
:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{
  outline:var(--focus-ring);outline-offset:var(--focus-offset)}
:where(.hero,.results,.final-cta,footer,.manifesto-hero,.manifesto-pledge,.publication-hero,
  .pilot-landing,.floating-actions) :where(a,button,input,textarea,select,[tabindex]):focus-visible{
  outline-color:var(--focus-color-inverse)}
@media (max-width:700px){input,textarea,select{font-size:var(--text-md)}}

:root{--color-tab-active:#173f8f}
/* base.css */
@font-face{font-family:Instrument Serif;src:url('fonts/serif.woff') format('woff');font-display:swap}@font-face{font-family:Instrument Serif;src:url('fonts/serif-italic.woff') format('woff');font-style:italic;font-display:swap}@font-face{font-family:Instrument Sans;src:url('fonts/sans.woff') format('woff');font-weight:400 700;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--ink);background:var(--paper);font:var(--text-md)/1.65 var(--sans);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0;background:none;color:inherit}.wrap{width:min(1320px,calc(100% - 64px));margin:auto}.utility{min-height:35px;background:var(--navy-950);color:var(--parchment);font-size:var(--text-xs);display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.mini-seal{color:var(--accent);font-size:var(--text-md)}header.wrap{width:100%;padding:var(--space-5) var(--space-8);min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ink);color:var(--parchment);border-bottom:1px solid #ffffff08}.brand{display:flex;align-items:center;gap:15px;font:var(--text-2xl)/1.1 var(--serif)}.brand small{display:block;font:var(--text-xs)/1.5 var(--sans);letter-spacing:1px;margin-top:5px;color:var(--color-text-muted)}nav{display:flex;gap:26px;font-size:var(--text-xs);color:var(--color-text-muted)}nav a:hover{color:var(--accent)}.outline-button{display:inline-flex;align-items:center;border:1px solid #d9232d60;color:var(--sky-400);padding:10px 19px;font-size:var(--text-xs);line-height:1.6}.outline-button:hover{background:#d9232d15}.menu{display:none}.hero{background:radial-gradient(ellipse at 10% 25%,#d9232d0c,transparent 48%),linear-gradient(115deg,var(--navy-950),var(--navy-900) 65%,var(--navy-950));color:var(--parchment)}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:clamp(60px,10vw,170px);padding:var(--space-20) 0 112px;align-items:center}.hero h1{font:400 var(--text-6xl)/.94 var(--serif);letter-spacing:-2.5px;margin:0 0 var(--space-8)}em{font-weight:400;color:var(--accent)}.hero-copy>p{font-size:var(--text-lg);line-height:1.7;color:var(--color-text-inverse-muted);margin:0;max-width:560px}.hero-copy strong{font-weight:600;color:var(--parchment)}.eyebrow{font-size:var(--text-xs);font-weight:600;letter-spacing:1.7px;color:var(--accent);line-height:1.5}.signup-panel{margin-top:35px;padding:26px var(--space-6) var(--space-6);border:1px solid #ffffff13;background:#ffffff05}.signup-panel h2{font:400 var(--text-2xl)/1.15 var(--serif);letter-spacing:-.4px;margin:15px 0 9px}.signup-panel p{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.6;margin:0 0 22px}.signup{display:flex;gap:var(--space-2);margin:0}.signup input{width:100%;min-width:0;padding:var(--space-3) var(--space-4);border:1px solid #ffffff21;color:var(--parchment);background:#ffffff05;border-radius:1px;font-size:var(--text-xs);min-height:49px}.signup input::placeholder{color:var(--color-text-muted)}.signup button{background:var(--accent);color:var(--navy-900);flex-shrink:0;font-size:var(--text-xs);letter-spacing:1.2px;font-weight:600;padding:14px 21px;border-radius:1px}.signup button span{margin-left:var(--space-4);font-size:var(--text-lg);line-height:0;vertical-align:-1px}.signup button:hover{background:var(--color-accent-hover)}.signup-panel>small{display:block;font-size:var(--text-xs);color:var(--color-text-muted);margin-top:10px}.feature-card{position:relative;background:linear-gradient(130deg,#ffffff06,#ffffff02);border:1px solid #d9232d45;padding:39px var(--space-10) var(--space-6);margin-top:22px}.feature-card:before,.feature-card:after{content:'';position:absolute;width:12px;height:12px;border-color:var(--accent);border-style:solid;opacity:.7}.feature-card:before{left:-1px;top:-1px;border-width:1px 0 0 1px}.feature-card:after{right:-1px;bottom:-1px;border-width:0 1px 1px 0}.status{font-size:var(--text-xs);letter-spacing:1px;color:var(--sky-400)}.feature-link{padding:0;color:var(--sky-400);font-size:var(--text-xs);width:100%;text-align:left;display:flex;justify-content:space-between}.metrics{background:var(--parchment);border-bottom:1px solid var(--rule);padding:var(--space-12) 0}.metrics .wrap{display:grid;grid-template-columns:repeat(4,1fr)}.metrics .wrap>div{border-right:1px solid var(--rule);padding:0 var(--space-8)}.metrics .wrap>div:first-child{padding-left:0}.metrics .wrap>div:last-child{border:0}.metrics strong{font:400 var(--text-5xl)/.95 var(--serif);letter-spacing:-2px}.metrics p{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.6;margin:14px 0 0;max-width:230px}.section{padding:106px 0}.intro{max-width:650px}h2{font:400 var(--text-5xl)/1.02 var(--serif);letter-spacing:-1.5px;margin:21px 0 var(--space-6)}h2 em{color:inherit}h3{font-family:var(--serif);font-weight:400}.intro>p{font-size:var(--text-md);line-height:1.75;color:var(--color-text-muted);max-width:590px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:55px;border-top:1px solid var(--rule);padding-top:36px}.poll{padding-right:30px;border-right:1px solid var(--rule)}.poll:last-child{border:0;padding-right:0}.line-icon{font:var(--text-3xl)/1 var(--serif);color:var(--accent);height:48px;margin:var(--space-6) 0 var(--space-4)}.poll h3{font-size:var(--text-3xl);line-height:1.08;letter-spacing:-.5px;margin:0 0 18px}.poll p{font-size:var(--text-sm);line-height:1.75;color:var(--color-text-muted);min-height:100px}.poll button,.resource-grid button{padding:0;font-size:var(--text-xs);margin-top:11px;font-weight:600;display:flex;justify-content:space-between;width:100%;color:var(--ink)}.poll button:hover,.resource-grid button:hover{color:var(--color-accent-hover)}.poll button span,.resource-grid button span{color:var(--accent);font-size:var(--text-xl);line-height:1}.demo-note{font-size:var(--text-xs);color:var(--color-text-muted);border-top:1px solid var(--rule);padding-top:var(--space-6);margin:var(--space-10) 0 0}.results{background:var(--ink);padding:100px 0;color:var(--parchment)}.results-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.results h2{margin-top:var(--space-5)}.results h2 em{color:var(--accent)}.results h3{font-size:var(--text-2xl);line-height:1.2;letter-spacing:-.4px;margin:var(--space-8) 0 var(--space-4);max-width:470px}.results-copy>p{color:var(--color-text-inverse-muted);font-size:var(--text-sm);line-height:1.8;max-width:460px}.report-facts{display:flex;gap:55px;border-top:1px solid #ffffff20;padding-top:22px;margin:29px 0}.report-facts .eyebrow{font-size:var(--text-xs);color:var(--color-text-muted)}.report-facts b{font:var(--text-xl) var(--serif);display:block;margin-top:6px}.chart-card{padding:35px;border:1px solid #d9232d45;background:linear-gradient(135deg,#ffffff05,transparent)}.column{height:var(--value);width:100%;position:relative;background:linear-gradient(0deg,#d9232d25,#d9232d80);border-top:1px solid #c5a758}.column span{position:absolute;top:-26px;font-size:var(--text-xs);color:var(--color-text-muted);left:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:55px;border-top:1px solid var(--rule);padding-top:38px}.step-number{font:var(--text-5xl)/1 var(--serif);color:var(--accent)}.steps h3{font-size:var(--text-3xl);margin:var(--space-5) 0 var(--space-3)}.steps p{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.75;max-width:300px}.statement{padding:75px 0 70px;background:var(--parchment);text-align:center;border-block:1px solid var(--rule)}.quote-mark{font:var(--text-6xl)/.7 var(--serif);color:var(--accent)}blockquote{font:400 var(--text-4xl)/1.15 var(--serif);letter-spacing:-.7px;margin:15px auto var(--space-6)}blockquote em{color:var(--ink)}.statement p{font-size:var(--text-xs);color:var(--color-text-muted);letter-spacing:1.8px}.resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:var(--space-10)}.resource-grid article{border:1px solid var(--rule);padding:30px}.resource-grid h3{font-size:var(--text-3xl);line-height:1.13;letter-spacing:-.4px;margin:18px 0}.resource-grid p{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.75;max-width:460px}.resource-more{padding:0;font-size:var(--text-xs);margin-top:28px;color:var(--color-text-muted)}.final-cta{background:var(--ink);color:var(--parchment);padding:82px 0 88px;text-align:center}.final-cta h2{margin:var(--space-5) 0}.final-cta h2 em{color:var(--accent)}.final-cta p{font-size:var(--text-sm);color:var(--color-text-inverse-muted);margin:0 0 29px}.final-cta .signup{max-width:540px;margin:auto}.final-cta small{display:block;font-size:var(--text-xs);color:var(--color-text-inverse-muted);margin-top:var(--space-3)}footer{background:var(--deep);color:var(--color-text-inverse-muted);padding:var(--space-12) 0 0}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:90px}.footer-grid .eyebrow{font-size:var(--text-xs);color:#c2a567;letter-spacing:1.5px;margin-bottom:14px}.footer-grid p{font-size:var(--text-xs);line-height:1.8;max-width:370px;margin:0}.footer-grid a,.footer-grid button{display:block;font-size:var(--text-xs);margin:var(--space-2) 0;padding:0}.footer-grid a:hover,.footer-grid button:hover{color:#e4ce9c}.footer-bottom{display:flex;justify-content:space-between;gap:30px;font-size:var(--text-xs);border-top:1px solid #ffffff12;margin-top:35px;padding:22px 0;color:var(--color-text-inverse-muted)}.sr{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}dialog{width:min(550px,calc(100% - 32px));max-height:90vh;overflow:auto;padding:38px;border:1px solid #d9232d80;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#061122d9}.close{position:absolute;right:12px;top:5px;font-size:var(--text-2xl)}dialog h2{font-size:var(--text-3xl);line-height:1.06;margin:var(--space-5) 0}dialog p{font-size:var(--text-sm);color:var(--color-text-muted)}.options{display:grid;gap:10px;margin:var(--space-6) 0}.options label{padding:var(--space-3);border:1px solid var(--rule);font-size:var(--text-sm);cursor:pointer}.options input{accent-color:#987633;margin-right:var(--space-3)}.modal-submit{background:var(--ink);color:var(--parchment);width:100%;padding:15px;font-size:var(--text-xs);letter-spacing:1px}.local-result{padding:var(--space-3);background:var(--parchment);margin:var(--space-2) 0;font-size:var(--text-sm)}@media(min-width:1500px){.hero-grid{gap:170px}.hero h1{font-size:var(--text-6xl)}}@media(max-width:1000px){.hero-grid{gap:55px;grid-template-columns:1.2fr 1fr}.hero h1{font-size:var(--text-6xl)}.hero-copy>p{font-size:var(--text-md)}.feature-card{padding:28px}nav{gap:18px;font-size:var(--text-xs)}.signup-panel{padding:22px}.signup button{padding:var(--space-3)}.signup input{padding:var(--space-3)}.signup-panel h2{font-size:var(--text-2xl)}.results-grid{gap:45px}.metrics .wrap>div{padding:0 var(--space-5)}.steps{gap:var(--space-8)}h2{font-size:var(--text-5xl)}.footer-grid{gap:45px}}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.utility{font-size:var(--text-xs);min-height:29px;gap:9px}.mini-seal{font-size:var(--text-xs)}header.wrap{padding:var(--space-4) var(--space-5);min-height:77px;gap:var(--space-3);position:relative}.brand{font-size:var(--text-xl);gap:var(--space-3)}.brand small{font-size:var(--text-xs);letter-spacing:.7px;margin-top:var(--space-1)}header>.outline-button{display:none}.menu{display:block;font-size:var(--text-xl);color:var(--accent);padding:5px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ink);padding:22px;z-index:10;border-block:1px solid #d9232d40}nav.open{display:flex;flex-wrap:wrap;gap:var(--space-5)}.hero-grid{display:flex;flex-direction:column;gap:35px;padding:35px 0 49px;align-items:stretch}.hero h1{font-size:var(--text-5xl);line-height:.95;letter-spacing:-1.5px;margin:0 0 21px}.hero-copy>p{font-size:var(--text-sm);line-height:1.7}.signup-panel{margin-top:25px;padding:var(--space-5)}.eyebrow{font-size:var(--text-xs);letter-spacing:1.3px}.signup-panel h2{font-size:var(--text-2xl);margin:var(--space-3) 0 9px;max-width:255px}.signup-panel p{font-size:var(--text-xs);margin-bottom:15px}.signup{gap:7px}.signup input{font-size:var(--text-xs);padding:11px;min-height:43px}.signup button{font-size:var(--text-xs);letter-spacing:.7px;padding:11px var(--space-3)}.signup button span{font-size:var(--text-md);margin-left:6px}.signup-panel>small{font-size:var(--text-xs);margin-top:9px}.feature-card{margin:0;padding:var(--space-6)}.status{font-size:var(--text-xs)}.metrics{padding:15px 0}.metrics .wrap{grid-template-columns:1fr}.metrics .wrap>div,.metrics .wrap>div:first-child{padding:22px 0;border-right:0;border-bottom:1px solid var(--rule);display:flex;gap:22px;align-items:center}.metrics strong{min-width:92px;font-size:var(--text-4xl);letter-spacing:-1.4px}.metrics p{margin:0;font-size:var(--text-xs);max-width:none}.section{padding:60px 0}h2{font-size:var(--text-4xl);line-height:1.04;letter-spacing:-.7px;margin:var(--space-4) 0 var(--space-5)}.intro>p{font-size:var(--text-sm);line-height:1.75}.cards{grid-template-columns:1fr;gap:0;margin-top:30px;padding-top:0}.poll,.poll:last-child{padding:var(--space-6) 0;border-right:0;border-bottom:1px solid var(--rule)}.poll:last-child{border-bottom:0}.line-icon{margin:var(--space-5) 0 15px;height:32px;font-size:var(--text-2xl)}.poll h3{font-size:var(--text-3xl)}.poll p{min-height:0;font-size:var(--text-xs);margin-bottom:var(--space-5)}.poll button{font-size:var(--text-xs);margin-top:10px}.demo-note{margin-top:10px;font-size:var(--text-xs);line-height:1.8;padding-top:18px}.results{padding:60px 0}.results-grid{grid-template-columns:1fr;gap:35px}.results h3{font-size:var(--text-2xl)}.results-copy>p{font-size:var(--text-xs)}.report-facts{gap:45px}.chart-card{padding:25px}.steps{grid-template-columns:1fr;gap:var(--space-6);margin-top:30px;padding-top:var(--space-6)}.steps article{border-bottom:1px solid var(--rule);padding-bottom:22px}.steps article:last-child{border:0;padding-bottom:0}.step-number{font-size:var(--text-4xl)}.steps h3{margin:var(--space-3) 0 9px;font-size:var(--text-2xl)}.steps p{max-width:none;font-size:var(--text-xs)}.statement{padding:var(--space-12) 0 44px}blockquote{font-size:var(--text-3xl);line-height:1.15}blockquote br{display:none}.quote-mark{font-size:var(--text-5xl)}.statement p{font-size:var(--text-xs)}.resource-grid{grid-template-columns:1fr;margin-top:30px;gap:18px}.resource-grid article{padding:25px}.resource-grid h3{font-size:var(--text-2xl)}.resource-grid p{font-size:var(--text-xs)}.final-cta{padding:55px 0}.final-cta h2{font-size:var(--text-4xl)}.final-cta p{font-size:var(--text-xs);max-width:300px;margin:0 auto var(--space-6)}.final-cta small{font-size:var(--text-xs)}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid p{font-size:var(--text-xs)}.footer-grid a,.footer-grid button{font-size:var(--text-xs)}.footer-grid .eyebrow{font-size:var(--text-xs)}.footer-bottom{flex-direction:column;gap:var(--space-3);font-size:var(--text-xs);padding:var(--space-5) 0}.outline-button{font-size:var(--text-xs)}dialog{padding:30px var(--space-6)}dialog h2{font-size:var(--text-3xl)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{body>*:not(dialog){display:none!important}dialog{position:static;display:block;width:100%;border:0;max-height:none}dialog .close,dialog button{display:none}}.feature-card{background:linear-gradient(130deg,#ffffff09,#ffffff03);margin-top:160px}@media(max-width:700px){.feature-card{margin-top:0}}.utility{background:var(--navy-950)}.mini-seal{color:var(--red)}header.wrap{background:var(--navy-900)}.brand small{color:var(--color-text-muted)}nav{color:var(--color-text-muted)}nav a{position:relative}nav a:after{content:'';position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .3s}nav a:hover,nav a[aria-current]{color:white}nav a:hover:after,nav a[aria-current]:after{transform:scaleX(1)}.outline-button{border-color:#8fb4ff60;color:var(--color-text-muted)}.outline-button:hover{background:#8fb4ff14;border-color:var(--sky-400)}.hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 88% 20%,#14296b55,transparent 52%),linear-gradient(118deg,var(--navy-900),var(--navy-800))}.hero-grid{position:relative;z-index:1}.hero em,.results h2 em,.final-cta h2 em{color:var(--sky)}.hero .eyebrow,.results .eyebrow,.final-cta .eyebrow{color:#a9c6ff}.hero-copy>p{color:var(--color-text-inverse-muted)}.signup-panel{background:#ffffff05;border-color:#8fb4ff26}.signup-panel p{color:var(--color-text-muted)}.signup input{border-color:#8fb4ff35;background:#ffffff05}.signup input:focus{border-color:var(--sky-400);background:#8fb4ff0a}.signup input::placeholder{color:var(--color-text-muted)}.signup button{background:var(--red);color:white}.signup button:hover{background:var(--color-accent)}.signup-panel>small{color:var(--color-text-muted)}.feature-card{border-color:#8fb4ff50;background:linear-gradient(135deg,#8fb4ff0c,#ffffff03);box-shadow:0 20px 70px #02061724}.feature-card:before,.feature-card:after{border-color:var(--sky)}.status{color:#ff8995}.feature-link{color:#b9d0ff}.metrics{background:var(--paper-50)}.metrics p,.intro>p,.poll p,.steps p,.resource-grid p{color:var(--color-text-muted)}.metrics em{color:#203b86}.metrics strong{color:var(--navy-800)}.results{background:linear-gradient(120deg,var(--navy-900),var(--navy-800))}.results-copy>p{color:var(--color-text-inverse-muted)}.report-facts .eyebrow{color:var(--color-text-muted)}.chart-card{border-color:#8fb4ff45;background:linear-gradient(135deg,#8fb4ff0a,transparent)}.column{background:linear-gradient(0deg,#d9232d18,#d9232dae);border-color:#ff6172}.statement{background:var(--paper-50)}.quote-mark{color:var(--red)}.statement p{color:var(--color-text-muted)}.statement em{color:var(--navy-800)}.resource-more{color:#a31d32}.poll button:hover,.resource-grid button:hover{color:#bd2034}.final-cta{background:linear-gradient(120deg,var(--navy-800),var(--navy-900))}.final-cta p{color:var(--color-text-inverse-muted)}.footer-grid .eyebrow{color:#aac6ff}.footer-grid a:hover,.footer-grid button:hover{color:white}footer{background:var(--navy-950)}.options input{accent-color:var(--color-accent)}.menu{color:#b9d0ff}dialog{border-color:#8fb4ff70}.modal-submit{background:var(--navy-800)}.local-result{background:#eef1f8}.poll button span,.resource-grid button span{color:var(--color-accent)}/* Motion uses transforms and opacity; content remains visible without JavaScript. */
.hero-atmosphere{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;mask-image:linear-gradient(90deg,transparent 20%,#000 100%)}.hero-atmosphere:before{content:'';position:absolute;inset:-20%;background:radial-gradient(ellipse at 75% 45%,#2754c72b,transparent 55%);animation:none}.signal{position:absolute;left:var(--x);top:var(--y);width:3px;height:3px;background:var(--red);opacity:.3;animation:none}.signal:nth-child(3n){background:var(--sky-400);width:2px;height:2px}.signal:nth-child(5n){width:4px;height:4px}.read-progress{position:fixed;left:0;top:0;right:0;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none}.signup button,.outline-button,.poll,.resource-grid article,.signup input,.feature-link,.modal-submit{transition:background-color .25s,border-color .25s,box-shadow .3s,color .25s,transform .3s}.signup button span,.feature-link span,.poll button span,.resource-grid button span{display:inline-block;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.signup button:hover span,.feature-link:hover span,.poll button:hover span,.resource-grid button:hover span{transform:translateX(4px)}.signup button:active,.modal-submit:active{transform:scale(.98)}.signup-panel:focus-within{box-shadow:0 0 0 1px #8fb4ff40,0 12px 45px #03082130}.resource-grid article:hover{border-color:#8da7d7;box-shadow:0 16px 35px #0b16520a;transform:translateY(-4px)}.line-icon{transition:transform .4s,color .3s}.poll:hover .line-icon{transform:translateY(-4px);color:#233f8d}.column{transform-origin:bottom}dialog[open]{animation:dialog-in .24s cubic-bezier(.2,.8,.2,1)}dialog[open]::backdrop{animation:backdrop-in .24s ease}@keyframes ambient-drift{from{transform:translate3d(-3%,2%,0) scale(1)}to{transform:translate3d(4%,-3%,0) scale(1.08)}}@keyframes signal-drift{from{transform:translate3d(0,12px,0);opacity:.12}to{transform:translate3d(15px,-16px,0);opacity:.48}}@keyframes dialog-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}@media(hover:hover){.poll:hover{transform:translateY(-5px)}}@media(max-width:700px){nav{border-color:#8fb4ff40}.hero-atmosphere{mask-image:linear-gradient(90deg,transparent,#000)}.signal:nth-child(n+25){display:none}.resource-grid article:hover{transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.hero-atmosphere{display:none}.resource-grid article:hover,.poll:hover{transform:none!important}}@media print{.hero-atmosphere,.read-progress{display:none!important}}.signup button{background:var(--color-accent)}.signup button:hover{background:var(--color-accent-hover)}/* Scroll choreography: explicit masks, stagger and reversible progress. */
.motion-line-mask{display:block;overflow:hidden;padding:.12em .04em .15em;margin:-.12em -.04em -.15em;perspective:900px}.motion-line{display:block;transform-origin:50% 100%;will-change:transform,opacity}.motion-ready .scroll-heading .motion-line{transform:translate3d(0,calc((1 - var(--line-p,1))*112%),0) rotateX(calc((1 - var(--line-p,1))*14deg));opacity:var(--line-p,1);filter:blur(calc((1 - var(--line-p,1))*3px))}.motion-ready .scroll-card{transform:translate3d(calc((1 - var(--item-p,1))*var(--entry-x,0px)),calc((1 - var(--item-p,1))*85px),0) rotate(calc((1 - var(--item-p,1))*var(--entry-rotation,0deg)));opacity:calc(.15 + var(--item-p,1)*.85);transition:border-color .25s,box-shadow .3s,background-color .25s;will-change:transform,opacity}.motion-ready .scroll-card:hover{transform:translate3d(0,-7px,0)}.motion-ready .chart-card{transform:translate3d(0,calc((1 - var(--chart-p,1))*90px),0) scale(calc(.88 + var(--chart-p,1)*.12));opacity:calc(.2 + var(--chart-p,1)*.8);transform-origin:50% 70%;will-change:transform,opacity}.motion-ready .chart-card .column{transform:scaleY(var(--bar-p,1));will-change:transform}.motion-ready .results,.motion-ready .final-cta{clip-path:inset(0 calc((1 - var(--section-p,1))*2.8%) round calc((1 - var(--section-p,1))*28px));background-position:50% calc(50% + (1 - var(--section-p,1))*35%);background-size:140% 140%;will-change:clip-path}.motion-ready .hero h1{transform:translate3d(0,calc(var(--hero-p,0)*-65px),0);opacity:calc(1 - var(--hero-p,0)*.65);will-change:transform,opacity}.motion-ready .hero .feature-card{transform:translate3d(0,calc(var(--hero-p,0)*45px),0);will-change:transform}.motion-ready .hero-atmosphere{transform:translate3d(0,calc(var(--hero-p,0)*-95px),0)}.statement{min-height:75vh;display:flex;align-items:center;position:relative}.statement blockquote{max-width:900px}.read-word{display:inline;opacity:var(--word-p,1);will-change:opacity}.statement .reading-rule{height:2px;background:#dce3ef;width:min(360px,70%);margin:30px auto 0;overflow:hidden}.reading-rule span{display:block;height:100%;background:var(--red);transform:scaleX(var(--reading-p,0));transform-origin:left}.motion-scroll-cue{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font:var(--text-xs) var(--sans);letter-spacing:1.5px;margin-top:30px}.motion-scroll-cue i{display:block;position:relative;width:1px;height:35px;background:#8fb4ff35;overflow:hidden}.motion-scroll-cue i:after{content:'';display:block;width:1px;height:15px;background:var(--red);animation:none}.motion-ready .eyebrow{transition:letter-spacing .5s}@keyframes cue-travel{0%{transform:translateY(-17px)}100%{transform:translateY(38px)}}@media(max-width:700px){.statement{min-height:65vh}.motion-scroll-cue{font-size:var(--text-xs);margin-top:22px}.motion-ready .scroll-card{transform:translate3d(0,calc((1 - var(--item-p,1))*55px),0);opacity:calc(.2 + var(--item-p,1)*.8)}.motion-ready .results,.motion-ready .final-cta{clip-path:inset(0 calc((1 - var(--section-p,1))*1.2%) round calc((1 - var(--section-p,1))*12px))}.motion-ready .hero h1{transform:translate3d(0,calc(var(--hero-p,0)*-30px),0)}}@media(prefers-reduced-motion:reduce){.motion-line,.scroll-card,.chart-card,.hero h1,.hero .feature-card,.hero-atmosphere{transform:none!important;opacity:1!important;filter:none!important}.motion-line-mask{overflow:visible}.read-word{opacity:1!important}.motion-ready .column{transform:scaleY(1)!important}.motion-ready .results,.motion-ready .final-cta{clip-path:none!important}.motion-scroll-cue{display:none}.reading-rule span{transform:scaleX(1)}}@media print{.motion-line,.scroll-card,.chart-card,.read-word{transform:none!important;opacity:1!important;filter:none!important}.motion-line-mask{overflow:visible}.motion-scroll-cue,.reading-rule{display:none}}body{overflow-x:clip}.motion-ready .scroll-card:focus-within{transform:none!important;opacity:1!important}.pilot-home-link{display:inline-flex;align-items:center;gap:var(--space-6);font:600 var(--text-xs) var(--sans);color:#a61e32;margin-top:21px;padding:0 0 10px;border-bottom:1px solid #c3ccdc}.pilot-home-note{font:var(--text-xs)/1.8 var(--sans);color:var(--color-text-muted);margin-top:10px}.republic-entry{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;max-width:460px;padding:19px 0;margin:var(--space-6) 0;border-top:1px solid #8fb4ff55;border-bottom:1px solid #8fb4ff55;color:var(--white);text-decoration:none;font:600 var(--text-xs) var(--sans);letter-spacing:1.4px;transition:color .25s,border-color .25s}.republic-entry small{flex-basis:100%;font:var(--text-sm)/1.6 var(--sans);letter-spacing:0;color:var(--color-text-muted)}.republic-entry:hover{color:var(--sky-400);border-color:var(--sky-400)}.republic-feature .republic-entry-seal{display:block;margin:28px auto;opacity:.72}.republic-feature h2{font:var(--text-4xl)/1.12 var(--serif);letter-spacing:-.6px;margin:0 0 26px}.republic-feature h2 em{color:var(--sky-400)}.republic-feature>p{font:var(--text-sm)/1.7 var(--sans);color:var(--color-text-muted)}.republic-feature a.feature-link{display:flex;text-decoration:none;margin-top:26px}@media(min-width:1000px){header nav{gap:var(--space-5)}}
/* channels.css */
.channel-section{background:var(--navy-900);text-align:left;padding:86px 0 62px}.channel-wrap{max-width:1180px}.channel-section .channel-title{font:600 var(--text-lg)/1.6 var(--sans);letter-spacing:4px;text-transform:uppercase;margin:0 0 35px;max-width:100%}.channel-section .channel-title .motion-line-mask{overflow:visible}.channel-section .channel-form{max-width:900px;display:flex;align-items:center;margin:0;gap:25px;border-bottom:2px solid var(--paper-50);padding-bottom:var(--space-3)}.channel-section .channel-form input{border:0;border-radius:0;background:transparent;min-height:60px;padding:0;color:var(--white);font:400 var(--text-3xl)/1.2 var(--sans);outline-offset:7px}.channel-section .channel-form input::placeholder{color:var(--color-text-inverse-muted)}.channel-section .channel-form input:focus{background:transparent}.channel-section .channel-form button{background:transparent;color:white;font:400 var(--text-xl)/1.2 var(--sans);letter-spacing:1px;padding:var(--space-4) 0 var(--space-4) var(--space-5);white-space:nowrap}.channel-section .channel-form button:hover{color:var(--sky-400);background:transparent}.channel-section .channel-form button span{font-size:var(--text-xl);margin-left:10px}.channel-section .channel-disclaimer{text-align:left;display:block;font:var(--text-xs)/1.7 var(--sans);color:var(--color-text-inverse-muted);margin-top:var(--space-3)}.mobile-updates{display:flex;align-items:center;gap:var(--space-4);margin-top:28px;color:var(--paper-50);font-size:var(--text-xl);line-height:1.6}.mobile-updates>svg{width:21px;height:29px;flex-shrink:0}.channel-tag{font:500 var(--text-xs)/1.5 var(--sans);letter-spacing:1px;color:#ff6b7a;border:1px solid #d9232d40;padding:var(--space-1) 7px;display:inline-block;margin-left:var(--space-3);vertical-align:2px}.channel-section h3{font:500 var(--text-sm)/1.7 var(--sans);letter-spacing:1px;text-transform:uppercase;margin:0 0 var(--space-2);color:white}.channel-section .channel-caption{font:var(--text-xs)/1.7 var(--sans);color:var(--color-text-inverse-muted);margin:0 0 var(--space-6)}.channel-apps{margin-top:65px}.store-buttons{display:flex;gap:var(--space-6);max-width:900px}.store-pill{display:flex;align-items:center;justify-content:center;gap:var(--space-3);min-height:51px;padding:10px 22px;border-radius:var(--radius-pill);background:#e4e9f4;color:var(--navy-900);flex:1;cursor:default;opacity:.82}.store-pill svg{height:25px;width:25px;flex-shrink:0}.store-pill>span{font:var(--text-2xl)/1 var(--serif);white-space:nowrap}.store-pill small{font:var(--text-xs)/1.3 var(--sans);letter-spacing:.4px;margin-left:auto;color:var(--color-text-muted)}.channel-desktop{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:var(--space-12);max-width:1050px}.extension-pill{border:1px solid #c0cae0;border-radius:var(--radius-pill);min-height:49px;padding:10px var(--space-5);display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-muted);cursor:default;margin-top:21px;max-width:100%}.extension-pill svg{width:23px;height:23px;flex-shrink:0}.extension-pill>span{font:var(--text-2xl)/1 var(--serif)}.extension-pill small{font:var(--text-xs) var(--sans);margin-left:var(--space-2);color:var(--color-text-muted)}.browser-note{text-align:right;flex-shrink:0}.browser-note>span{font:var(--text-xs) var(--sans);letter-spacing:2px;color:var(--color-text-muted);display:block}.browser-note b{display:block;font:400 var(--text-xs)/1.8 var(--sans);color:var(--color-text-muted);letter-spacing:.5px;margin-top:10px}.channel-socials{display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:900px;margin-top:65px;padding-top:26px;border-top:1px solid #ffffff14}.social-buttons{display:flex;align-items:center;gap:33px}.social-buttons button{width:30px;height:34px;padding:0;display:grid;place-items:center;color:var(--color-text-muted);cursor:default;opacity:.75}.social-buttons svg{width:29px;height:29px}.social-pending{font:var(--text-xs)/1.6 var(--sans);color:var(--color-text-muted);letter-spacing:.5px}.channel-section button:disabled{filter:none;transform:none}@media(max-width:1000px){.channel-section .channel-title{font-size:var(--text-md);letter-spacing:3px}.channel-section .channel-form input{font-size:var(--text-3xl)}.store-pill{gap:10px;padding:var(--space-3) var(--space-4)}.store-pill>span{font-size:var(--text-2xl)}.channel-desktop{gap:25px}.browser-note{max-width:180px}}@media(max-width:700px){.channel-section{padding:55px 0 var(--space-10)}.channel-section .channel-title{font-size:var(--text-xs);letter-spacing:2.4px;line-height:1.9;margin-bottom:25px;max-width:320px}.channel-section .channel-form{gap:var(--space-3);padding-bottom:9px;border-width:1px}.channel-section .channel-form input{font-size:var(--text-xl);min-height:43px}.channel-section .channel-form button{font-size:var(--text-xs);letter-spacing:.6px;padding:var(--space-3) 0 var(--space-3) 5px}.channel-section .channel-form button span{font-size:var(--text-md);margin-left:var(--space-1)}.channel-section .channel-disclaimer{font-size:var(--text-xs);line-height:1.7;margin-top:var(--space-3)}.mobile-updates{font-size:var(--text-xs);gap:var(--space-3);margin-top:22px;align-items:flex-start}.mobile-updates>svg{width:17px;height:24px}.channel-tag{display:block;width:max-content;margin:9px 0 0;font-size:var(--text-xs);letter-spacing:1px;padding:3px 7px}.channel-apps{margin-top:var(--space-10)}.channel-section h3{font-size:var(--text-xs);letter-spacing:.9px}.channel-section .channel-caption{font-size:var(--text-xs);margin-bottom:19px;max-width:290px}.store-buttons{gap:var(--space-3);flex-direction:column;max-width:340px}.store-pill{min-height:47px;justify-content:flex-start;padding:11px var(--space-5);gap:15px;flex:auto}.store-pill>span{font-size:var(--text-2xl)}.store-pill svg{height:22px;width:22px}.store-pill small{font-size:var(--text-xs)}.channel-desktop{display:block;margin-top:35px}.extension-pill{gap:10px;padding:11px var(--space-4);min-height:47px;margin-top:var(--space-4)}.extension-pill>span{font-size:var(--text-xl)}.extension-pill small{font-size:var(--text-xs);margin-left:auto}.extension-pill svg{width:19px;height:19px}.browser-note{text-align:left;margin-top:18px;max-width:none;display:flex;align-items:center;gap:15px}.browser-note>span{font-size:var(--text-xs);letter-spacing:1px}.browser-note b{font-size:var(--text-xs);margin-top:0}.channel-socials{display:block;margin-top:38px;padding-top:var(--space-6)}.social-buttons{gap:var(--space-6)}.social-buttons button{width:25px;height:28px}.social-buttons svg{width:25px;height:25px}.social-pending{display:block;font-size:var(--text-xs);margin-top:var(--space-4)}}@media(max-width:350px){.extension-pill{flex-wrap:wrap;border-radius:var(--radius-sm)}.extension-pill small{margin-left:29px}.channel-section .channel-form input{font-size:var(--text-xl)}.store-pill>span{font-size:var(--text-xl)}}@media print{.channel-section{display:none}}

/* One continuous footer surface for navigation, information and subscriptions. */
footer.unified-footer{background:var(--navy-900);color:var(--color-text-inverse-body);padding:56px 0 18px;text-align:left}
.unified-footer .footer-shell{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:start}
.unified-footer .footer-grid{width:100%;display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:28px;margin:0}
.unified-footer .footer-grid>div:first-child{grid-column:auto}
.unified-footer .channel-section{padding:0;background:transparent;border:0;text-align:left;min-width:0}
.unified-footer .channel-wrap{width:100%;max-width:none;margin:0}
.unified-footer .channel-section .channel-title{font:600 var(--text-xs)/1.7 var(--sans);letter-spacing:1.5px;margin:0 0 16px;color:var(--white)}
.unified-footer .channel-form{gap:12px;padding-bottom:6px;border-width:1px;width:100%}
.unified-footer .channel-form input{min-width:0;min-height:42px;font-size:var(--text-lg)}
.unified-footer .channel-form button{font-size:var(--text-xs);padding:10px 0;letter-spacing:.3px}
.unified-footer .channel-form button span{font-size:var(--text-sm);margin-left:4px}
.unified-footer .mobile-updates{font-size:var(--text-xs);gap:10px;margin-top:16px}
.unified-footer .mobile-updates>svg{width:14px;height:20px}
.unified-footer .channel-tag{font-size:var(--text-label);margin-left:4px;padding:2px 4px}
.unified-footer .channel-apps,.unified-footer .channel-desktop{margin-top:24px}
.unified-footer .channel-section h3{font-size:var(--text-xs);letter-spacing:.6px}
.unified-footer .channel-caption{margin-bottom:12px}
.unified-footer .store-buttons{gap:10px;flex-direction:row}
.unified-footer .store-pill{min-width:0;min-height:36px;padding:6px 10px;gap:6px;flex-wrap:wrap}
.unified-footer .store-pill svg{width:16px;height:16px}
.unified-footer .store-pill>span{font-size:18px}
.unified-footer .store-pill small{font-size:var(--text-label);margin:0}
.unified-footer .channel-desktop{display:block}
.unified-footer .extension-pill{min-height:36px;padding:7px 12px;margin-top:10px;gap:8px;color:var(--color-text-inverse-body);width:100%;justify-content:center}
.unified-footer .extension-pill>span{font-size:18px}
.unified-footer .extension-pill svg{width:18px;height:18px}
.unified-footer .extension-pill small{font-size:var(--text-label);margin:0;color:var(--color-text-inverse-muted)}
.unified-footer .browser-note{display:flex;text-align:left;gap:12px;margin-top:10px;align-items:center;max-width:none}
.unified-footer .browser-note>span,.unified-footer .browser-note b{font-size:var(--text-label);color:var(--color-text-inverse-muted);margin:0}
.unified-footer .channel-socials{display:flex;margin-top:20px;padding-top:16px;gap:16px}
.unified-footer .social-buttons{gap:18px}
.unified-footer .social-buttons button{width:22px;height:24px;color:var(--color-text-inverse-muted)}
.unified-footer .social-buttons svg{width:22px;height:22px}
.unified-footer .social-pending{margin:0;letter-spacing:0}
.unified-footer .footer-bottom{margin-top:36px}
@media(max-width:1000px){.unified-footer .footer-shell{grid-template-columns:1fr 1fr;gap:32px}.unified-footer .footer-grid{grid-template-columns:1fr 1fr;gap:24px}.unified-footer .footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:700px){footer.unified-footer{padding-top:40px}.unified-footer .footer-shell{grid-template-columns:1fr;gap:36px}.unified-footer .footer-grid{gap:24px}.unified-footer .channel-title{max-width:none}.unified-footer .channel-tag{display:inline-block;width:auto}.unified-footer .channel-socials{flex-wrap:wrap}.unified-footer .store-buttons{max-width:none}.unified-footer .channel-form input{font-size:16px}}
/* publication.css */
.publication-link{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:var(--text-xs);font-weight:600;margin-top:var(--space-6);color:var(--navy-900)}.resource-grid .publication-link span{color:var(--color-accent);font-size:var(--text-xl)}.publication-link:hover{color:var(--color-accent)}.publication-page header.wrap{background:white;color:var(--navy-900);min-height:150px;padding:22px var(--space-8) 0;display:grid;grid-template-columns:1fr auto 1fr;gap:0;position:relative}.publication-page header .brand{grid-column:2;grid-row:1;flex-direction:column;gap:9px;text-align:center;font-size:var(--text-2xl)}.publication-page header .brand small{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:1.5px}.publication-page header .outline-button{grid-column:3;grid-row:1;justify-self:end;color:#24385f;border-color:#bec8db;font-size:var(--text-xs)}.publication-page header .menu{display:block;grid-column:1;grid-row:1;justify-self:start;font-size:var(--text-2xl);color:var(--navy-900);padding:var(--space-2)}.publication-page header nav{grid-column:1/4;grid-row:2;border-top:1px solid #d5dce7;display:flex;justify-content:center;gap:65px;position:static;background:white;color:var(--navy-900);padding:18px 0 var(--space-4);margin-top:var(--space-6);width:100%;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:2px}.publication-page header nav a:hover,.publication-page header nav a[aria-current]{color:var(--color-accent)}.publication-hero{padding:78px 30px 72px;text-align:center;color:white;background:radial-gradient(ellipse at 50% 0,#14284b55,transparent 65%),linear-gradient(155deg,#0c1c32,var(--navy-900));overflow:hidden}.publication-emblem{width:120px;height:120px;border:1px dashed #bdcce17d;outline:1px solid #bdcce124;outline-offset:7px;border-radius:50%;margin:0 auto 52px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--paper-50)}.publication-emblem>span{font:italic var(--text-6xl)/.9 var(--serif)}.publication-emblem>small{font:var(--text-xs)/1.5 var(--sans);letter-spacing:1px;margin-top:10px}.publication-category{display:inline-flex;gap:var(--space-3);align-items:center;font:600 var(--text-xs)/1.5 var(--sans);letter-spacing:1.3px;color:var(--color-text-muted);margin-bottom:29px}.publication-category:hover{color:var(--sky-400)}.publication-hero h1{font:400 var(--text-6xl)/1.03 var(--serif);text-transform:uppercase;letter-spacing:-1.4px;max-width:1120px;margin:0 auto;text-wrap:balance}.publication-meta{display:flex;flex-direction:column;gap:18px;align-items:center;margin-top:46px;font:var(--text-md)/1.5 var(--sans);color:var(--color-text-muted)}.publication-meta time{font-size:var(--text-xs)}.publication-meta small{font-size:var(--text-xs);letter-spacing:1px;color:var(--color-text-muted)}.publication-reading{width:min(760px,calc(100% - 48px));margin:auto;padding:0 0 70px;color:#243046}.publication-tools{border-bottom:1px solid #dce3ee;padding:26px 0 var(--space-5);display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);font-size:var(--text-xs);letter-spacing:.3px}.publication-tools>div{display:flex;gap:25px}.publication-tools button{font-size:var(--text-xs);padding:0}.publication-tools a:hover,.publication-tools button:hover{color:var(--color-accent)}.publication-feedback{font-size:var(--text-xs);color:var(--color-text-muted);min-height:18px;margin:10px 0 var(--space-6)}.publication-reading .publication-lead{font:400 var(--text-2xl)/1.45 var(--serif);color:var(--navy-900);margin:0 0 33px;letter-spacing:-.2px}.publication-reading p,.publication-reading li{font:var(--text-lg)/1.9 var(--sans);color:#404e64;margin:0 0 var(--space-6)}.publication-reading h2{font:400 var(--text-3xl)/1.1 var(--serif);letter-spacing:-.5px;color:var(--navy-900);margin:44px 0 22px}.publication-reading ul{padding-left:var(--space-6)}.publication-reading li{padding-left:5px;margin-bottom:var(--space-3)}.publication-reading blockquote{font:400 var(--text-3xl)/1.3 var(--serif);border-left:2px solid var(--color-accent);padding:7px 0 7px 25px;margin:38px 0;color:#172747;text-align:left}.publication-reading a{color:#143a83;text-decoration:underline;text-underline-offset:4px}.publication-disclaimer{background:var(--paper-50);border-top:2px solid #203766;padding:22px 25px;font:var(--text-xs)/1.8 var(--sans);color:var(--color-text-muted);margin-top:43px}.publication-signature{border-top:1px solid var(--color-border);margin-top:36px;padding-top:28px;display:flex;align-items:center;gap:18px;font:var(--text-2xl)/1.1 var(--serif);color:var(--navy-900)}.publication-signature small{display:block;font:var(--text-xs)/1.6 var(--sans);letter-spacing:.7px;color:var(--color-text-muted);margin-top:var(--space-2)}.publication-related{padding:55px 0 65px;border-top:1px solid #dce3ee}.publication-related h2{font:400 var(--text-4xl)/1.1 var(--serif);margin:15px 0 28px}.publication-related #publication-related-links{display:grid;grid-template-columns:1fr 1fr;gap:30px}.publication-related a{border:1px solid #dce3ee;padding:var(--space-6);display:flex;justify-content:space-between;gap:25px;font:var(--text-2xl)/1.15 var(--serif);transition:border-color .25s,transform .3s}.publication-related a:hover{border-color:#8da5d0;transform:translateY(-3px)}.publication-related a span{font:var(--text-xl) var(--sans);color:var(--color-accent)}.publication-page .utility{background:var(--navy-900)}.publication-progress{height:2px;position:fixed;top:0;left:0;right:0;background:var(--color-accent);transform:scaleX(0);transform-origin:left;z-index:99;pointer-events:none}.publication-page footer .publication-link{color:var(--color-text-inverse-muted);font-weight:400;font-size:var(--text-xs);display:block;margin:var(--space-2) 0}.publication-page footer a:hover{color:white}@media(max-width:700px){.publication-page header.wrap{min-height:144px;padding:var(--space-5) 18px 0}.publication-page header .brand{font-size:var(--text-xl);gap:9px}.publication-page header .brand small{font-size:var(--text-xs);letter-spacing:.6px}.publication-page header .outline-button{display:none}.publication-page header .menu{position:static;font-size:var(--text-xl)}.publication-page header nav{gap:25px;font-size:var(--text-xs);letter-spacing:1px;padding:var(--space-4) 0;margin-top:var(--space-5)}.publication-page header nav:not(.open){display:none}.publication-page header.wrap:has(nav:not(.open)){min-height:96px;padding-bottom:var(--space-5)}.publication-hero{padding:58px 22px var(--space-12)}.publication-emblem{height:100px;width:100px;margin-bottom:43px}.publication-emblem>span{font-size:var(--text-5xl)}.publication-emblem>small{font-size:var(--text-xs)}.publication-category{font-size:var(--text-xs);gap:10px;margin-bottom:var(--space-6);letter-spacing:1px}.publication-hero h1{font-size:var(--text-5xl);line-height:1.07;letter-spacing:-.6px}.publication-meta{margin-top:35px;gap:var(--space-4);font-size:var(--text-xs)}.publication-meta time{font-size:var(--text-xs)}.publication-meta small{font-size:var(--text-xs)}.publication-reading{width:calc(100% - 44px);padding-bottom:45px}.publication-tools{gap:var(--space-3);font-size:var(--text-xs);padding-top:var(--space-6);align-items:flex-start}.publication-tools>div{gap:14px}.publication-tools button{font-size:var(--text-xs);white-space:nowrap}.publication-feedback{margin:10px 0 var(--space-5)}.publication-reading .publication-lead{font-size:var(--text-2xl);line-height:1.4;margin-bottom:28px}.publication-reading p,.publication-reading li{font-size:var(--text-md);line-height:1.85;margin-bottom:22px}.publication-reading h2{font-size:var(--text-3xl);margin-top:36px;margin-bottom:var(--space-5)}.publication-reading blockquote{font-size:var(--text-2xl);padding-left:var(--space-5);margin:var(--space-8) 0}.publication-disclaimer{font-size:var(--text-xs);padding:var(--space-5)}.publication-signature{font-size:var(--text-2xl)}.publication-signature small{font-size:var(--text-xs)}.publication-related{padding-top:var(--space-10);padding-bottom:45px}.publication-related h2{font-size:var(--text-3xl)}.publication-related #publication-related-links{grid-template-columns:1fr;gap:var(--space-4)}.publication-related a{font-size:var(--text-2xl);padding:22px}}@media(prefers-reduced-motion:reduce){.publication-related a{transition:none}.publication-related a:hover{transform:none}}@media print{.publication-page>*:not(#publication-main){display:none!important}.publication-page #publication-main{display:block!important}.publication-hero{background:white!important;color:var(--navy-900)!important;padding:var(--space-5) 0}.publication-emblem,.publication-category,.publication-tools,.publication-related,.publication-progress,.publication-meta small{display:none!important}.publication-hero h1{color:var(--navy-900)!important;font-size:var(--text-3xl)}.publication-meta{color:var(--navy-900)!important;margin-top:15px}.publication-reading{width:100%;padding:var(--space-5) 0}.publication-reading p{font-size:11pt;line-height:1.6}.publication-reading h2{break-after:avoid}.publication-feedback{display:none}}.publication-page header nav:not(.open){display:none}.publication-page header.wrap:has(nav:not(.open)){min-height:110px;padding-bottom:22px}@media(max-width:700px){.publication-page header.wrap:has(nav:not(.open)){min-height:96px;padding-bottom:var(--space-5)}}/* Compact publication navigation: one white strip, no masthead. */
.publication-page header.compact-header.wrap,.publication-page header.compact-header.wrap:has(nav:not(.open)){display:flex;align-items:center;gap:var(--space-6);min-height:66px;padding:var(--space-3) var(--space-8);border-bottom:1px solid #e1e6ee}.publication-page header.compact-header .menu{display:grid;place-items:center;position:static;flex-shrink:0;width:42px;height:42px;padding:7px;color:var(--navy-900)}.publication-page header.compact-header .menu svg{display:block}.publication-page header.compact-header nav{position:static;margin:0;padding:0;border:0;flex:1;gap:clamp(28px,6vw,var(--space-20));justify-content:center;align-items:center;width:auto;font-size:var(--text-xs);letter-spacing:1.7px;background:white}.publication-page header.compact-header nav.open{display:flex}.publication-page header.compact-header nav:not(.open){display:none}@media(max-width:700px){.publication-page header.compact-header.wrap,.publication-page header.compact-header.wrap:has(nav:not(.open)){min-height:62px;padding:10px 15px;gap:var(--space-3)}.publication-page header.compact-header .menu{width:34px;height:40px;padding:5px}.publication-page header.compact-header .menu svg{width:25px;height:23px}.publication-page header.compact-header nav{gap:clamp(var(--space-3),4vw,25px);font-size:var(--text-xs);letter-spacing:.8px;justify-content:space-evenly}.publication-page header.compact-header nav a{white-space:nowrap}}@media(max-width:350px){.publication-page header.compact-header.wrap{padding-inline:10px;gap:var(--space-2)}.publication-page header.compact-header nav{gap:10px;letter-spacing:.35px;font-size:var(--text-xs)}}
/* Resultados de «¿Dónde estás parado?» (2026-11-12) */
.crit-lista{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:16px}.crit-lista li{display:grid;gap:6px}.crit-nombre{font-weight:700}.crit-barra{display:flex;gap:2px;height:14px;border-radius:7px;overflow:hidden;background:#ffffff1f}.crit-barra span{width:var(--v)}.crit-menos{background:#ff5468}.crit-centro{background:#a4acb5}.crit-mas{background:#5aa2ff}.crit-cifras{font-size:var(--text-sm);opacity:.85}
/* floating.css */
.floating-actions{position:fixed;left:24px;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:30;display:flex;justify-content:space-between;align-items:center;gap:18px;pointer-events:none;opacity:0;transform:translateY(35px);visibility:hidden;transition:opacity .4s,transform .6s cubic-bezier(.16,1,.3,1),visibility .4s}.floating-actions.is-visible{opacity:1;transform:translateY(0);visibility:visible}.floating-actions>*{pointer-events:auto}.floating-join{display:flex;align-items:center;border-radius:var(--radius-pill);background:var(--color-accent-hover);color:white;box-shadow:0 12px 40px #090e2930;overflow:hidden;flex-shrink:0}.floating-join button{color:white;min-height:59px}.floating-join-dismiss{width:45px;display:grid;place-items:center;padding:0 0 0 var(--space-3)}.floating-join-dismiss svg{width:20px;height:20px}.floating-join-open{font:var(--text-2xl)/1 var(--serif);padding:var(--space-3) 26px var(--space-3) var(--space-2);letter-spacing:-.3px}.floating-join-open:hover{background:#ad122630}.floating-join-dismiss:hover{background:#ad122660}.floating-audio{display:flex;align-items:center;gap:var(--space-2);margin-left:auto;background:var(--navy-900);color:white;border-radius:var(--radius-pill);padding:7px 9px 7px 7px;box-shadow:0 12px 40px #090e2940;border:1px solid #ffffff12}.floating-listen{display:flex;align-items:center;gap:15px;padding:0 19px 0 0;color:white}.floating-play{border:1px solid var(--paper-50);border-radius:50%;width:48px;height:48px;display:grid;place-items:center;flex-shrink:0}.floating-play svg{width:18px;height:18px}.floating-listen-label{font:italic var(--text-xl)/1 var(--sans)}.floating-listen:hover .floating-play{background:#ffffff14}.floating-stop{width:37px;height:37px;border:1px solid #ffffff45;border-radius:50%;color:white;padding:0;display:grid;place-items:center}.floating-stop[hidden]{display:none}.floating-stop svg{height:13px;width:13px}.floating-stop:hover{background:#ffffff15}.floating-listen:disabled{opacity:.6;cursor:default}.floating-listen:disabled .floating-listen-label{font-size:var(--text-md)}.with-floating-actions footer{padding-bottom:100px}.speech-current{background:#edf2fd;border-radius:2px;box-shadow:-4px 0 0 var(--sky-400);padding-left:10px!important;transition:background-color .35s}.floating-feedback{position:fixed;right:25px;bottom:100px;z-index:31;max-width:300px;font:var(--text-xs)/1.5 var(--sans);background:var(--navy-900);color:white;border-radius:var(--radius-sm);padding:var(--space-3) 15px;box-shadow:0 5px 25px #0002}.floating-feedback:empty{display:none}body:has(dialog[open]) .floating-actions,body:has(dialog[open]) .floating-feedback{visibility:hidden;opacity:0;pointer-events:none}@media(max-width:700px){.floating-actions{left:12px;right:12px;gap:10px;bottom:calc(14px + env(safe-area-inset-bottom,0px))}.floating-join button{min-height:49px}.floating-join-dismiss{width:34px;padding-left:var(--space-2)}.floating-join-dismiss svg{width:17px;height:17px}.floating-join-open{font-size:var(--text-xl);padding:10px var(--space-4) 10px 5px}.floating-audio{gap:var(--space-1);padding:5px 7px 5px 5px}.floating-play{width:37px;height:37px}.floating-play svg{width:14px;height:14px}.floating-listen{gap:9px;padding-right:10px}.floating-listen-label{font-size:var(--text-md)}.floating-stop{width:29px;height:29px}.floating-stop svg{width:11px;height:11px}.floating-listen:disabled .floating-listen-label{font-size:var(--text-xs)}.floating-feedback{bottom:85px;right:12px;max-width:240px;font-size:var(--text-xs)}.with-floating-actions footer{padding-bottom:90px}}@media(max-width:360px){.floating-join-open{font-size:var(--text-lg);padding-right:var(--space-3)}.floating-listen-label{font-size:var(--text-xs)}.floating-listen{gap:7px;padding-right:var(--space-2)}.floating-play{width:33px;height:33px}.floating-join button{min-height:45px}.floating-stop{width:25px;height:25px}.floating-actions{gap:6px;left:9px;right:9px}}@media(prefers-reduced-motion:reduce){.floating-actions{transition:none;transform:none}.speech-current{transition:none}}@media print{.floating-actions,.floating-feedback{display:none!important}.with-floating-actions footer{padding-bottom:0}.speech-current{background:transparent;box-shadow:none;padding-left:0!important}}

/* Desktop floating controls: half their previous visual dimensions. */
@media(min-width:701px){.floating-join{transform:scale(.5);transform-origin:left bottom}.floating-audio{transform:scale(.5);transform-origin:right bottom}}
/* El flotante ahora es un enlace (2026-10-27): mismo aspecto que el botón. */
.floating-join a.floating-join-open{display:flex;align-items:center;color:white;min-height:45px;text-decoration:none}
/* navigation.css */
.utility{position:sticky;top:0;z-index:45;display:flex;justify-content:center;align-items:center;min-height:37px;padding:var(--space-2) var(--space-6)}.utility-copy{display:flex;justify-content:center;align-items:center;gap:var(--space-3);font-size:var(--text-xs);line-height:1.4;text-align:center}.publication-page header.compact-header nav{gap:clamp(22px,5vw,70px)}@media(max-width:700px){.utility{padding:var(--space-2) 14px;min-height:35px}.utility-copy{font-size:var(--text-xs);gap:7px;letter-spacing:0;text-align:center;justify-content:center}.utility-copy .mini-seal{font-size:var(--text-xs);flex-shrink:0}.publication-page header.compact-header nav{gap:clamp(9px,2.6vw,var(--space-5));font-size:var(--text-xs);letter-spacing:.5px}}@media(max-width:350px){.utility{padding-inline:10px}.utility-copy{font-size:var(--text-xs)}.publication-page header.compact-header nav{gap:var(--space-2);font-size:var(--text-xs);letter-spacing:.2px}}@media print{.utility{display:none!important}}
/* brand-v5.css */
.brand{font-size:var(--text-2xl);gap:var(--space-4)}.publication-emblem{border:0!important;background:none!important;width:150px!important;height:150px!important;box-shadow:none!important}.publication-emblem:before,.publication-emblem:after{display:none!important}.publication-logo{display:block;width:150px;height:150px;object-fit:contain}.signature-logo{background:var(--ink);padding:7px;border-radius:50%;display:inline-flex;flex-shrink:0}.signature-logo img{display:block;width:64px;height:64px;object-fit:contain}.welcome-seal{background:var(--navy-900)!important;border:0!important;outline:0!important;box-shadow:none!important;width:100px!important;height:100px!important;padding:7px;border-radius:50%}.welcome-seal img{display:block;width:100%;height:100%;object-fit:contain}.welcome-brand{font-size:var(--text-2xl)}.publication-signature>div{overflow-wrap:anywhere}@media(max-width:700px){.brand{font-size:var(--text-xl);gap:10px}.brand small{font-size:var(--text-xs);letter-spacing:.6px}.welcome-seal{width:86px!important;height:86px!important}.welcome-brand{font-size:var(--text-2xl)}}@media(max-height:720px){.welcome-seal{width:62px!important;height:62px!important}}.publication-logo,.welcome-seal img,.signature-logo img{border-radius:0;filter:none;mix-blend-mode:normal}.publication-logo,.welcome-seal img,.signature-logo img{opacity:.72;filter:none!important;mix-blend-mode:normal!important;image-rendering:auto}.publication-emblem{outline:none!important}
/* pie.css */
/* Pie de página (2026-11-11), concepto del propietario: fondo azul noche, títulos en mayúsculas espaciadas, correo con
   una línea debajo, botón en píldora, redes, dos columnas de enlaces, encuestas y la marca en grande al final.
   Pensado primero para el teléfono. El HTML lo escribe scripts/pie.mjs igual en todas las páginas. */
.pie{background:var(--navy-950);color:#fff;padding:56px 0 36px;font-family:var(--sans)}
.pie-wrap{display:grid;gap:44px}
.pie-titulo{margin:0 0 16px;font:700 var(--text-sm)/1.3 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:#fff}
.pie-subtitulo{margin:0 0 14px;font:700 var(--text-xs)/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:#fff}
.pie-correo{display:flex;align-items:center;gap:12px;max-width:440px;margin:0;border-bottom:2px solid #fff}
.pie-correo input{flex:1;min-width:0;min-height:52px;padding:0;border:0;border-radius:0;background:transparent;color:#fff;font:400 var(--text-xl)/1.2 var(--sans)}
.pie-correo input::placeholder{color:#8f97b3;opacity:1}
.pie-correo button{min-height:48px;padding:0 2px;border:0;background:none;color:#fff;font:700 var(--text-md)/1 var(--sans);letter-spacing:.04em;text-transform:uppercase}
.pie-correo [disabled]{cursor:not-allowed}
.pie-correo button[disabled]{opacity:.6}
.pie-nota{margin:8px 0 0;font-size:var(--text-xs);color:#8f97b3}
.pie-aviso{display:flex;align-items:center;gap:10px;margin:20px 0 0;font-size:var(--text-md);line-height:1.4}
.pie-aviso svg{flex-shrink:0}
.pie-aviso a{color:#fff;text-decoration:underline;text-underline-offset:4px}
.pie-pildora{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 22px;border:0;border-radius:999px;background:#e6e9f2;color:var(--navy-950);font:400 var(--text-lg)/1 var(--serif);cursor:pointer}
.pie-pildora:hover{background:#fff}
.pie-instalar-ayuda{margin:12px 0 0;max-width:440px;font-size:var(--text-sm);line-height:1.5;color:#c9cfe2}
.pie-instalar-ayuda:empty{display:none}
.pie-redes{display:flex;flex-wrap:wrap;gap:24px;margin:0;padding:0;list-style:none}
.pie-red{display:grid;place-items:center;width:44px;height:44px;color:#fff}
.pie-red.is-pronto{opacity:.4}
a.pie-red:hover{color:#bdd2ff}
.pie-enlaces{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.pie-columna,.pie-encuestas{display:flex;flex-direction:column;align-items:flex-start}
.pie-columna a,.pie-columna button,.pie-encuestas a{display:flex;align-items:center;min-height:44px;padding:4px 0;border:0;background:none;color:#aab2c8;font:400 var(--text-lg)/1.25 var(--sans);text-align:left;text-decoration:none;cursor:pointer}
.pie-columna a:hover,.pie-columna button:hover,.pie-encuestas a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.pie-encuestas{padding-top:36px;border-top:1px solid #ffffff1f}
.pie-marca{margin:0;font:400 clamp(40px,11vw,76px)/1 var(--serif);letter-spacing:-.01em;text-transform:uppercase;color:#fff}
.pie-legal{margin:-24px 0 0;font-size:var(--text-xs);line-height:1.6;color:#8f97b3}
.pie a:focus-visible,.pie button:focus-visible,.pie input:focus-visible{outline:3px solid #fff;outline-offset:3px}
/* Computadora (concepto del propietario, 2026-11-11): arriba tres columnas de enlaces (Explorar, El proyecto, Encuestas);
   en medio, a la izquierda, el boletín y el botón para instalar; abajo, la marca a la izquierda y las redes a la derecha.
   El orden del HTML es el del teléfono; aquí se reacomoda con áreas de la cuadrícula. */
@media(min-width:900px){
 .pie{padding:72px 0 56px}
 .pie-wrap{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:'enlaces enlaces encuestas' 'boletin boletin boletin' 'app app app' 'marca marca redes' 'legal legal legal';column-gap:64px;row-gap:56px}
 .pie-enlaces{grid-area:enlaces;grid-template-columns:1fr 1fr;column-gap:64px}
 .pie-encuestas{grid-area:encuestas;padding-top:0;border-top:0}
 .pie-boletin{grid-area:boletin}.pie-app{grid-area:app}
 .pie-redes{grid-area:redes;justify-self:end;align-self:center;gap:20px}
 .pie-marca{grid-area:marca;align-self:center;margin-top:72px;font-size:clamp(48px,4.6vw,72px)}
 .pie-redes{margin-top:72px}
 .pie-legal{grid-area:legal;margin-top:-28px}
 .pie-enlaces .pie-titulo,.pie-encuestas .pie-titulo{margin-bottom:22px;font-size:var(--text-xl);letter-spacing:.22em}
 /* Bloque del medio 1,5 veces más grande (muestra del propietario, 2026-11-11), proporcional al ancho de la pantalla:
    en 1440 px de ancho da título 27 px, correo 32 px, aviso 32 px y píldora de 474 × 66 px. */
 .pie-boletin .pie-titulo{font-size:clamp(20px,1.875vw,30px);letter-spacing:.32em;margin-bottom:28px}
 .pie-correo{max-width:min(66vw,1050px)}
 .pie .pie-correo input{min-height:76px;font-size:clamp(24px,2.2vw,36px)!important}
 .pie .pie-correo button{font-size:clamp(18px,1.67vw,27px)}
 .pie-nota{margin-top:12px;font-size:clamp(12px,1vw,16px)}
 .pie-aviso{gap:16px;margin-top:36px;font-size:clamp(22px,2.2vw,36px)}
 .pie-aviso svg{width:.85em;height:.85em}
 .pie-subtitulo{margin-bottom:22px;font-size:clamp(17px,1.67vw,27px);letter-spacing:.18em}
 .pie-pildora{width:min(33vw,520px);min-height:clamp(52px,4.6vw,72px);justify-content:center;gap:14px;font-size:clamp(20px,1.8vw,29px)}
 .pie-pildora svg{width:.8em;height:.8em}
}
@media print{.pie{display:none}}
/* Las reglas viejas de .signup pintaban el botón de rojo: aquí va como texto, como en el concepto. */
.pie .pie-correo button{background:none;color:#fff;border-radius:0;box-shadow:none}
/* Boletín activo (2026-11-11): espacio para la comprobación anti-robots y mensajes del formulario. */
.pie-turnstile:not(:empty){margin-top:12px}
.pie-nota.is-ok{color:#9ff0c8}
.pie-nota.is-error{color:#ffc24d}
/* 2026-11-12: columnas del pie como listas (lectores de pantalla) y línea del correo en el campo y el botón */
.pie-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:flex-start}
.pie-lista li{margin:0;padding:0}
.pie .pie-correo{gap:0;border-bottom:0}
.pie .pie-correo input,.pie .pie-correo button{border-bottom:2px solid #fff}
.pie .pie-correo button{align-self:stretch;padding-left:12px}
/* criterio.css */
/* «¿Dónde estás parado?» (2026-11-12): entrada elegante como la portada de Inicio y test en el tablero LED de Participar. */
.criterio{background:#04060a;color:#fff;position:relative}
.criterio::before{content:"";position:absolute;inset:0;background:radial-gradient(circle,#ffffff0b 1.2px,transparent 1.7px) 0 0/10px 10px;pointer-events:none}
.criterio>section{position:relative}
.criterio [hidden]{display:none!important}
.criterio-ancho{width:min(820px,calc(100% - 32px));margin:auto}
.criterio-entrada{background:radial-gradient(ellipse at 50% 0,#14284b77,transparent 68%),var(--navy-900);text-align:center;padding:72px 0 80px}
.criterio-sello{font:600 var(--text-xs) var(--sans);letter-spacing:.2em;color:#ff4f5e;margin:0 0 22px}
.criterio-entrada h1{font:400 var(--text-6xl)/1.04 var(--serif);letter-spacing:-1.4px;margin:0 auto 28px;text-wrap:balance;color:#fff}
.criterio h1 em,.criterio h2 em{color:var(--sky-400)}
.criterio-lema{font:400 var(--text-2xl)/1.55 var(--serif);color:var(--slate-200);max-width:680px;margin:0 auto 18px;text-wrap:pretty}
.criterio-datos{font:600 var(--text-xs)/1.7 var(--sans);letter-spacing:.08em;color:var(--slate-300);margin:24px auto 0}
.criterio-cta{display:inline-flex;align-items:center;gap:18px;min-height:52px;margin-top:32px;padding:16px 26px;border:0;border-radius:var(--radius-sm,6px);background:var(--red-600);color:#fff;font:700 var(--text-sm) var(--sans);letter-spacing:.04em;cursor:pointer;transition:background .25s}
.criterio-cta:hover{background:var(--red-700)}
.criterio-cta span{font-size:var(--text-xl)}
.criterio-cta:focus-visible,.criterio-boton:focus-visible,.opcion:focus-visible,.paso:focus-visible,.termino:focus-visible{outline:3px solid var(--sky-400);outline-offset:3px}
/* Términos tocables */
.termino{display:inline;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;text-decoration:underline dotted;text-decoration-thickness:2px;text-underline-offset:5px;text-decoration-color:var(--sky-400)}
.termino-i{display:inline-grid;place-items:center;width:1.05em;height:1.05em;margin-left:.2em;border:1.5px solid var(--sky-400);border-radius:50%;color:var(--sky-400);font:italic 700 .62em/1 var(--serif);vertical-align:.35em}
.termino[aria-expanded="true"]{color:var(--sky-400)}
.definicion{max-width:680px;margin:12px auto 0;padding:14px 18px;border-left:3px solid var(--sky-400);border-radius:6px;background:#8fb4ff14;color:var(--slate-200);font:var(--text-md)/1.6 var(--sans);text-align:left}
.definicion strong{color:#fff}
/* Test */
.criterio-test,.criterio-resultado{padding:56px 0 72px;scroll-margin-top:70px}
.criterio-progreso{display:flex;flex-direction:column;gap:8px;margin-bottom:28px}
.criterio-progreso p{margin:0;font:700 var(--text-xs) var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#ff6b78}
.criterio .led-barra{--c:#ff5468;height:8px;background:radial-gradient(circle,#ffffff26 40%,transparent 50%) 0 0/8px 8px}
.criterio .led-barra span{display:block;height:100%;width:var(--v,0%);background:radial-gradient(circle,var(--c) 40%,transparent 50%) 0 0/8px 8px;filter:drop-shadow(0 0 4px var(--c));transition:width .3s}
.criterio-instruccion{margin:0 0 14px;color:#a3abb4;font-size:var(--text-sm)}
.criterio-frase{font:400 var(--text-4xl)/1.2 var(--serif);margin:0;min-height:3.6em;text-wrap:pretty;outline:none}
.criterio-test .definicion{margin-left:0}
.opciones{display:grid;gap:10px;margin-top:28px}
.opcion{min-height:52px;padding:12px 18px;border-radius:8px;border:1px solid #ffffff2e;background:#0b0f16;color:#fff;font:600 var(--text-md) var(--sans);text-align:left;cursor:pointer;transition:border-color .2s,background .2s}
.opcion:hover{border-color:#ffffff66}
.opcion[aria-pressed="true"]{border-color:#5aa2ff;background:radial-gradient(circle,#5aa2ff22 1.2px,transparent 1.7px) 0 0/6px 6px,#0c2259;box-shadow:0 0 16px #5aa2ff40;color:#fff}
.criterio-pasos{display:flex;justify-content:space-between;gap:12px;margin-top:22px}
.paso{min-height:48px;padding:0 18px;border:1px solid #ffffff33;border-radius:8px;background:transparent;color:#fff;font:600 var(--text-sm) var(--sans);cursor:pointer}
.paso:disabled{opacity:.35;cursor:default}
.paso-sig:not(:disabled){border-color:#5aa2ff;color:#8fc0ff}
/* Resultado */
.criterio-resultado h2{font:400 var(--text-5xl)/1.05 var(--serif);margin:0 0 12px;outline:none;scroll-margin-top:110px}
.criterio-nota{color:#a3abb4;font-size:var(--text-sm);margin:8px 0 0}
.ejes{list-style:none;margin:32px 0 0;padding:0;display:grid;gap:22px}
.eje{padding:22px 20px;border-radius:12px;background:#000000b3;border:1px solid #ffffff14;box-shadow:inset 0 0 30px #0009}
.eje-cabeza{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.eje h3{font:400 var(--text-3xl)/1.1 var(--serif);margin:0;color:#fff}
.eje-lado{margin:0;font:700 var(--text-sm) var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--c);text-shadow:0 0 10px color-mix(in srgb,var(--c) 60%,transparent)}
.eje-barra{position:relative;height:14px;margin:20px 0 8px;background:radial-gradient(circle,#ffffff2e 40%,transparent 50%) 0 50%/12px 12px;background-repeat:round no-repeat}
.eje-centro{position:absolute;left:50%;top:-6px;bottom:-6px;width:2px;background:#ffffff59}
.eje-marca{position:absolute;top:50%;left:var(--p);width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:var(--c);box-shadow:0 0 18px var(--c),0 0 4px #fff inset}
.eje-polos{display:flex;justify-content:space-between;gap:12px;font-size:var(--text-sm);color:#a3abb4}
.eje-polos span:last-child{text-align:right}
.eje .definicion{margin-left:0}
.eje-porque{margin:16px 0 0;font:var(--text-md)/1.6 var(--sans);color:#fff}
.eje-texto{margin:10px 0 0;font:var(--text-md)/1.6 var(--sans);color:var(--slate-200)}
.criterio-cierre{font:italic 400 var(--text-2xl)/1.45 var(--serif);color:var(--slate-200);margin:36px 0 0}
.criterio-vista{display:block;width:100%;height:auto;margin-top:24px;border-radius:10px;border:1px solid #ffffff1f}
.criterio-botones{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px}
.criterio-boton{display:inline-flex;align-items:center;min-height:52px;margin-top:32px;padding:0 22px;border:1px solid #ffffff40;border-radius:var(--radius-sm,6px);background:transparent;color:#fff;font:600 var(--text-sm) var(--sans);text-decoration:none;cursor:pointer}
.criterio-boton:hover{border-color:#fff}
/* Revisión 2026-11-12: dudas, contradicciones, aviso de seguridad y «Sumar mi resultado» */
.eje-dudas{margin:14px 0 0;padding:10px 14px;border-radius:6px;background:#ffc24d14;border-left:3px solid #ffc24d;color:#ffe2a3;font-size:var(--text-sm)}
.contradicciones{margin-top:28px;padding:22px 20px;border-radius:12px;border:1px solid #ff546855;background:radial-gradient(circle,#ff546812 1.2px,transparent 1.7px) 0 0/8px 8px,#14070b}
.contradicciones .criterio-sello{margin-bottom:10px}
.contra-lead{margin:0 0 10px;color:#fff;font:var(--text-md)/1.6 var(--sans)}
.contradicciones ul{margin:0;padding-left:20px;display:grid;gap:10px}
.contradicciones li{font:400 var(--text-xl)/1.4 var(--serif);color:#ffd3d8}
.conclusion{margin-top:28px;padding:22px 20px;border-radius:12px;border:1px solid #ffffff24;background:radial-gradient(circle,#ffffff0d 1.2px,transparent 1.7px) 0 0/8px 8px,#080b12}
.conclusion .criterio-sello{margin-bottom:10px}
.conclusion-texto{margin:0;color:#fff;font:400 var(--text-xl)/1.45 var(--serif)}
.conclusion-dato{margin:14px 0 0;padding-top:12px;border-top:1px solid #ffffff1a;color:var(--slate-200);font:var(--text-sm)/1.55 var(--sans)}
.conclusion-dato a{color:#c4cde0;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.conclusion-dato a:focus-visible{outline:3px solid var(--sky-400);outline-offset:2px}
.contra-pie{margin:12px 0 0;color:#a3abb4;font-size:var(--text-sm)}
.criterio-seguridad{margin:28px 0 0;padding:14px 18px;border-radius:8px;border:1px solid #ffffff26;background:#ffffff0a;color:var(--slate-200);font-size:var(--text-sm);line-height:1.6}
.criterio-seguridad strong{color:#fff}
.sumar{margin-top:36px;padding:22px 20px;border-radius:12px;border:1px solid #3dffc044;background:#06140f}
.sumar h3{font:400 var(--text-3xl)/1.1 var(--serif);margin:0 0 10px;color:#fff}
.sumar p{margin:0;color:var(--slate-200);font-size:var(--text-md);line-height:1.6}
.sumar .criterio-boton{margin-top:18px;border-color:#3dffc0;color:#3dffc0}
.sumar .criterio-boton:disabled{opacity:.5;cursor:default}
.sumar-turnstile:not(:empty){margin-top:14px}
/* Regla fija, aguja general y «No entendí» (2026-11-12) */
.criterio-aviso{max-width:640px;margin:22px auto 0;padding:14px 18px;border:1px solid #ffffff26;border-radius:8px;background:#ffffff0a;color:var(--slate-200);font:var(--text-md)/1.6 var(--sans);text-wrap:pretty}
.criterio-aviso strong{color:#fff}.criterio-aviso em,.criterio-regla em{color:var(--sky-400);font-style:italic}
.criterio-regla{margin:0 0 6px;font:italic 400 var(--text-xl)/1.3 var(--serif);color:#fff}
.no-entendi-fila{margin-top:14px}
.no-entendi{min-height:44px;padding:0 4px;border:0;background:none;color:#a3abb4;font:600 var(--text-sm) var(--sans);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.no-entendi:hover:not(:disabled){color:#fff}.no-entendi:disabled{opacity:.5;cursor:default;text-decoration:none}
.no-entendi:focus-visible{outline:3px solid var(--sky-400);outline-offset:3px}
.aguja{margin:30px 0 8px;padding:26px 20px 22px;border-radius:14px;background:#000000b3;border:1px solid #ffffff14;box-shadow:inset 0 0 40px #000a;text-align:center}
.aguja-cuadro{max-width:440px;margin:0 auto}
.aguja-svg{display:block;width:100%;height:auto;overflow:visible}
.aguja-mano{transform-origin:200px 200px;transform:rotate(var(--g));transition:transform 1.1s cubic-bezier(.2,.9,.25,1.15);filter:drop-shadow(0 0 8px #ffffffaa)}
.aguja-mano.aguja-inicio{transform:rotate(-90deg);transition:none}
.aguja-lado{margin:14px 0 0;font:700 var(--text-xl) var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--c);text-shadow:0 0 14px color-mix(in srgb,var(--c) 60%,transparent)}
.aguja-lado span{margin-left:6px}
.aguja-polos{display:flex;justify-content:space-between;max-width:440px;margin:6px auto 0;font:700 var(--text-xs) var(--sans);letter-spacing:.12em;text-transform:uppercase}
.aguja-polos span:first-child{color:#5a8cff}.aguja-polos span:last-child{color:#ff5f70}
.aguja-polos .termino{text-transform:inherit;letter-spacing:inherit}
.aguja .definicion{max-width:440px;margin-left:auto;margin-right:auto}
.aguja-nota{max-width:520px;margin:16px auto 0;color:#a3abb4;font-size:var(--text-sm);line-height:1.6}
.aguja-nota strong{color:#fff}
.eje-datos{margin-top:16px;padding:14px 16px;border-radius:8px;background:color-mix(in srgb,var(--c) 7%,transparent);border-left:3px solid var(--c)}
.eje-datos-titulo{margin:0 0 8px;font:700 var(--text-xs) var(--sans);letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb,var(--c) 70%,#fff)}
.eje-datos ul{margin:0;padding-left:18px;display:grid;gap:10px}
.eje-datos li{color:var(--slate-200);font:var(--text-md)/1.55 var(--sans)}
.eje-datos a{color:color-mix(in srgb,var(--c) 70%,#fff);font-size:var(--text-sm);text-underline-offset:3px;overflow-wrap:anywhere}
.eje-datos a:focus-visible{outline:3px solid var(--sky-400);outline-offset:2px}
@media(max-width:700px){
 .criterio-entrada{padding:48px 0 56px}
 .criterio-entrada h1{font-size:var(--text-4xl);letter-spacing:-.6px}
 .criterio-lema{font-size:var(--text-xl)}
 .criterio-frase{font-size:var(--text-3xl);min-height:4.2em}
 .criterio-resultado h2{font-size:var(--text-4xl)}
 .criterio-cta{width:100%;justify-content:center;gap:12px}
 .criterio-botones .criterio-boton{flex:1 1 100%;justify-content:center;margin-top:0}
}
@media(prefers-reduced-motion:reduce){.criterio .led-barra span,.criterio-cta,.opcion,.aguja-mano{transition:none}}
/* accessibility.css */
:where(a,button,input,textarea,select,summary,[tabindex]){scroll-margin-block:80px 130px}.skip-link{position:fixed;top:8px;left:12px;z-index:1000;padding:var(--space-3) 18px;background:var(--white);color:var(--navy-800);font:600 var(--text-md) var(--sans);transform:translateY(-160%);border:2px solid var(--navy-800)}.skip-link:focus{transform:none}html{scroll-padding-top:65px;scroll-padding-bottom:120px}/* One compact header across reading, survey and pilot pages. */
body header.site-header.compact-header.wrap,body.publication-page header.site-header.compact-header.wrap:has(nav:not(.open)){width:100%;display:flex;position:relative;align-items:center;justify-content:flex-start;min-height:68px;padding:10px var(--space-8);gap:26px;background:var(--white);color:var(--navy-900);border-bottom:1px solid var(--color-border)}body header.site-header.compact-header .menu{display:flex;position:static;align-items:center;justify-content:center;gap:10px;flex-shrink:0;min-width:44px;min-height:44px;padding:7px;color:var(--navy-900);font:500 var(--text-xs) var(--sans)}body header.site-header.compact-header .menu span{display:none}body header.site-header.compact-header nav{position:static;display:flex!important;align-items:center;justify-content:center;flex:1;flex-wrap:wrap;gap:18px 35px;width:auto;margin:0;padding:0;border:0;background:var(--white);color:var(--navy-900);font:500 var(--text-xs)/1.6 var(--sans);letter-spacing:1px;text-transform:uppercase;transform:none}body header.site-header.compact-header nav a{padding:9px 0;white-space:nowrap}body header.site-header.compact-header nav a:hover,body header.site-header.compact-header nav a[aria-current]{color:var(--navy-800)}body header.site-header.compact-header nav a:after{background:var(--navy-800)}.utility-copy,.pilot-utility{font-size:var(--text-xs);line-height:1.5;letter-spacing:0}/* Legibility on light surfaces. */
.demo-note{color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.8}.question-intro,.publication-disclaimer,.statement p{color:var(--color-text-muted)}.welcome-privacy,.welcome-privacy span{color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.6}.welcome-form input::placeholder{color:var(--color-text-muted);opacity:1}.signup input{border-color:#8fb4ff99}.options{border:0;padding:0;min-width:0}.pilot-eyebrow,.pilot-flow-head button,.pilot-flow aside>p,.pilot-flow aside li,.pilot-flow aside li span,.pilot-flow aside small,.pilot-field label small,.pilot-hint,.pilot-locked,.pilot-unknown,.pilot-open-question>small,.pilot-source>span,.pilot-source small,.pilot-review dt,.pilot-review-text p,.pilot-success p,.pilot-receipt span,.pilot-return,.pilot-back{color:var(--color-text-muted)}.pilot-landing .pilot-eyebrow{color:var(--color-text-inverse-muted)}.pilot-field input,.pilot-field select,.pilot-field textarea,.pilot-open-question textarea{border-color:#8795ac}.pilot-page textarea:disabled{color:var(--color-text-muted)}/* Keep content readable throughout scroll transitions. */
.manifesto-page .reveal.is-pending{opacity:1;transform:translateY(24px)}.manifesto-page .manifesto-seal.is-pending{opacity:.72}.motion-ready .scroll-heading .motion-line{opacity:1;filter:none;transform:translate3d(0,calc((1 - var(--line-p,1))*18px),0)}.motion-line-mask{overflow:visible}.motion-ready .scroll-card,.motion-ready .chart-card,.motion-ready .hero h1,.read-word{opacity:1}.motion-ready .scroll-card{transform:translate3d(0,calc((1 - var(--item-p,1))*22px),0)}/* Continuous decorative movement is removed; finite entry/scroll effects remain. */
.hero-atmosphere{display:none}.motion-scroll-cue i:after,.manifesto-scroll span{animation:none}/* Keep floating actions clear of keyboard focus. */
body.focus-obscured .floating-actions,body.focus-obscured .floating-feedback{visibility:hidden;pointer-events:none}/* Compact subscription dialog, with the page visible around it. */
.welcome-dialog{width:min(480px,calc(100% - 40px));height:auto;max-height:calc(100dvh - 80px);border-radius:var(--radius-sm)}.welcome-body{padding:28px 30px var(--space-5)}.welcome-dialog .welcome-title{font-size:var(--text-4xl);margin:25px 0 var(--space-4)}.welcome-brand{font-size:var(--text-2xl)}.welcome-brand small{font-size:var(--text-xs);letter-spacing:1px}.welcome-description{font-size:var(--text-md);margin-bottom:var(--space-5)}.welcome-form input{font-size:var(--text-md);min-height:50px}.welcome-submit{background:var(--color-accent);font-size:var(--text-2xl);min-height:50px}.welcome-submit:hover{background:var(--color-accent-hover)}.welcome-art{min-height:72px}.welcome-art span{font-size:var(--text-3xl)}.welcome-later{font-size:var(--text-xs);min-height:40px;padding:9px}.welcome-dialog::backdrop{background:#070e2559;backdrop-filter:blur(2px)}.welcome-close{background:var(--white);border-radius:50%;top:8px;right:8px}.signup button,.manifesto-cta,.pilot-next{background:var(--color-accent)}.signup button:hover,.manifesto-cta:hover,.pilot-next:hover{background:var(--color-accent-hover)}
@media(max-width:700px){body header.site-header.compact-header.wrap,body.publication-page header.site-header.compact-header.wrap:has(nav:not(.open)){min-height:64px;padding:10px 18px;gap:var(--space-3);flex-wrap:wrap}body header.site-header.compact-header .menu span{display:inline}body header.site-header.compact-header nav{display:none!important;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;font-size:var(--text-sm);letter-spacing:.6px;padding:var(--space-2) 0 0}body header.site-header.compact-header nav.open{display:flex!important}body header.site-header.compact-header nav a{padding:var(--space-3) var(--space-3);border-top:1px solid #e2e8f0}input,textarea,select,.signup input,.welcome-form input{font-size:var(--text-md)!important}.signup{flex-wrap:wrap}.signup input{flex:1 1 170px}.signup button{min-height:48px}.utility{padding:9px 15px}.utility-copy{font-size:var(--text-xs);gap:var(--space-2)}.welcome-dialog[open]{display:block;width:calc(100% - 32px);height:auto;max-height:min(76dvh,640px);margin:auto auto 22px;border:1px solid #dce2ee;border-radius:var(--radius-sm);animation:welcome-arrive .6s cubic-bezier(.16,1,.3,1) both}.welcome-body{padding:var(--space-6) var(--space-6) 14px}.welcome-identity{flex-direction:row;justify-content:center;gap:var(--space-3);text-align:left}.welcome-dialog .welcome-seal{width:58px;height:58px;flex-shrink:0}.welcome-dialog .welcome-seal img{width:58px;height:58px}.welcome-brand{font-size:var(--text-2xl)}.welcome-brand small{font-size:var(--text-xs);letter-spacing:.5px}.welcome-dialog .welcome-title{font-size:var(--text-3xl);line-height:1.05;margin:22px 0 14px}.welcome-description{font-size:var(--text-md);line-height:1.5;margin-bottom:var(--space-4)}.welcome-art{min-height:60px;margin:0}.welcome-art span{font-size:var(--text-3xl)}.welcome-privacy{margin-top:var(--space-3)}.welcome-later{margin-top:6px}.publication-tools{flex-wrap:wrap;line-height:1.7}.publication-tools>div{flex-wrap:wrap}.manifesto-kicker{gap:var(--space-4);flex-wrap:wrap;justify-content:center;line-height:1.7}.pilot-source>span{font-size:var(--text-xs)}.pilot-next{font-size:var(--text-xs)}.pilot-form-actions{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){.manifesto-page .reveal.is-pending,.motion-ready .scroll-heading .motion-line,.motion-ready .scroll-card{transform:none!important}.welcome-dialog[open]{animation:none}}
@media print{.skip-link,header.site-header.compact-header,.floating-actions{display:none!important}}html.ui-ready body header.site-header.compact-header nav:not(.open){display:none!important}html:not(.ui-ready) body header.site-header.compact-header nav{display:flex!important}.close{min-width:44px;min-height:44px;top:8px;right:8px}.utility-copy .mini-seal{flex-shrink:0}.welcome-dialog{scroll-padding-top:58px}.welcome-dialog .welcome-close{position:sticky;float:right;top:8px;margin:var(--space-2) var(--space-2) -52px 0}.welcome-dialog .welcome-body{clear:none}

/* Approved finite decorative movement. */
.hero-atmosphere{display:none}html.decorative-motion .hero-atmosphere{display:block}html.decorative-motion .hero-atmosphere:before{animation:ambient-drift 5s ease-in-out both}html.decorative-motion .signal{animation:signal-drift 2s ease-in-out 2 alternate}html.decorative-motion .manifesto-scroll span{animation:manifest-arrow 2s ease-in-out 2}html.decorative-motion .motion-scroll-cue i:after{animation:cue-travel 2s ease-in-out 2}html:not(.decorative-motion) .manifesto-scroll span,html:not(.decorative-motion) .motion-scroll-cue i:after{animation:none}
.signup button,.welcome-submit,.manifesto-cta,.pilot-next{color:var(--color-on-accent)}
@media(prefers-reduced-motion:reduce){html.decorative-motion .hero-atmosphere{display:none}.signal,.manifesto-scroll span,.motion-scroll-cue i:after{animation:none!important}}

/* Explicit inverse text roles for nested dark components. */
.publication-meta,.publication-category{color:var(--color-text-inverse)}.publication-meta small,.publication-emblem small,.column span,.footer-bottom,.pilot-storage,.pilot-footer,.pledge-signature{color:var(--color-text-inverse-muted)}.hero-copy>p,.results-copy>p,.pilot-landing-intro p,.pilot-test-note,.pilot-subjects p{color:var(--color-text-inverse-body)}.utility-copy{color:var(--color-text-inverse)}

.mini-seal{color:var(--color-accent-on-dark)}

/* Readable secondary text on dark surfaces. */
.manifesto-hero .manifesto-kicker,.manifesto-hero .manifesto-purpose,.manifesto-hero .manifesto-origin,.manifesto-hero .manifesto-scroll,.manifesto-pledge .pledge-signature,.hero .feature-card p,.hero .signup-panel p,.hero .signup-panel>small,.hero .signup input::placeholder,.channel-section input::placeholder,.channel-disclaimer,.channel-caption,.social-pending,.pilot-utility,.pilot-landing .pilot-process li,.pilot-landing .pilot-subjects article>.pilot-eyebrow{color:var(--color-text-inverse-muted)}
body header.site-header.compact-header nav .nav-evaluations{color:var(--color-link);font-weight:600}




/* Independent quick access bar{display:block;position:static;transform:none;background:var(--paper-50);border-block:1px solid var(--color-border);padding:var(--space-4) 0;margin:0;color:var(--color-link)}



/* Compact centered desktop newsletter, preserving the mobile sheet. */
@media(min-width:701px){
.welcome-dialog[open]{position:fixed;inset:0;display:block;width:360px;max-width:calc(100vw - 48px);height:fit-content;max-height:calc(100dvh - 48px);margin:auto;overflow:auto}
.welcome-dialog .welcome-body{padding:24px 26px 14px}
.welcome-dialog .welcome-identity{flex-direction:column;gap:12px}
.welcome-dialog .welcome-seal{width:64px!important;height:64px!important;padding:5px}
.welcome-dialog .welcome-seal img{width:100%;height:100%}
.welcome-dialog .welcome-brand{font-size:24px}
.welcome-dialog .welcome-brand small{font-size:var(--text-xs);letter-spacing:1px;margin-top:6px}
.welcome-dialog .welcome-title{font-size:34px;line-height:1.02;margin:22px 0 14px}
.welcome-dialog .welcome-description{font-size:var(--text-sm);line-height:1.5;margin-bottom:18px}
.welcome-dialog .welcome-form{gap:8px}
.welcome-dialog .welcome-form input,.welcome-dialog .welcome-submit{min-height:44px;padding:12px 16px}
.welcome-dialog .welcome-submit{font-size:24px}
.welcome-dialog .welcome-privacy{font-size:var(--text-xs);line-height:1.5;margin-top:12px}
.welcome-dialog .welcome-later{font-size:var(--text-xs);margin-top:6px;padding:8px}
.welcome-dialog .welcome-art{min-height:64px;padding:16px 20px 12px}
.welcome-dialog .welcome-art span{font-size:36px}
.welcome-dialog .welcome-close{position:absolute;float:none;top:6px;right:6px;margin:0;background:transparent}
}

/* Mobile opt-in occupies only the lower half of the viewport. */
@media(max-width:700px){
.welcome-dialog[open]{position:fixed;inset:auto 0 0;display:block;width:100%;max-width:100%;height:50dvh;max-height:50dvh;margin:0;border:0;border-top:1px solid var(--color-border);border-radius:0;overflow:auto;scroll-padding-top:44px;padding-bottom:env(safe-area-inset-bottom,0px)}
.welcome-dialog::backdrop{background:rgb(8 14 34 / .08);backdrop-filter:none}
.welcome-dialog .welcome-body{padding:12px 24px 16px}
.welcome-dialog .welcome-identity{flex-direction:row;justify-content:center;gap:10px;padding-right:22px}
.welcome-dialog .welcome-seal{width:36px!important;height:36px!important;padding:3px;flex-shrink:0}
.welcome-dialog .welcome-seal img{width:100%;height:100%}
.welcome-dialog .welcome-brand{font-size:22px}
.welcome-dialog .welcome-brand small{font-size:var(--text-label);margin-top:4px;letter-spacing:.5px}
.welcome-dialog .welcome-title{font-size:26px;line-height:1.02;margin:12px 0 8px}
.welcome-dialog .welcome-description{font-size:var(--text-sm);line-height:1.4;margin-bottom:12px}
.welcome-dialog .welcome-form{gap:8px}
.welcome-dialog .welcome-form input,.welcome-dialog .welcome-submit{min-height:44px;padding:10px 14px}
.welcome-dialog .welcome-form input{font-size:16px}
.welcome-dialog .welcome-submit{font-size:24px}
.welcome-dialog .welcome-privacy{font-size:var(--text-xs);line-height:1.4;margin-top:8px}
.welcome-dialog .welcome-later{font-size:var(--text-xs);margin-top:4px;padding:6px}
.welcome-dialog .welcome-art{display:none}
.welcome-dialog .welcome-close{position:sticky;float:right;top:0;right:0;margin:0 0 -44px;background:var(--white);width:44px;height:44px}
}

/* Editorial white navigation, matching the supplied reference. */
body header.site-header.compact-header nav a{font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--navy-900)}
body header.site-header.compact-header nav .nav-evaluations{color:var(--navy-900)}
@media(max-width:700px){body header.site-header.compact-header nav a{letter-spacing:.12em}}




/* One institutional header and a compact common footer. */
body header.site-header.compact-header.wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:88px;padding:12px 32px}
.header-home{display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--navy-900);width:60px;height:60px;border-radius:50%}
.header-home img{display:block;width:52px;height:52px;object-fit:contain}
body header.site-header.compact-header .menu{display:none}
body header.site-header.compact-header nav{margin-left:auto;gap:clamp(24px,4vw,64px)}
body header.site-header.compact-header nav a[aria-current]{color:var(--navy-800);text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:1px}
.home-participate{margin-top:0;margin-bottom:20px}
.unified-footer .channel-pending{font:var(--text-xs)/1.7 var(--sans);color:var(--color-text-inverse-muted);margin:24px 0 0}
.reports-directory h1{font:400 var(--text-6xl)/1.1 var(--serif);margin:20px 0 24px}.reports-directory .resource-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:40px}.reports-directory h2{font-size:var(--text-3xl)}.reports-directory a{display:inline-flex;min-height:44px;align-items:center;text-decoration:underline;text-underline-offset:5px}
@media(max-width:700px){body header.site-header.compact-header.wrap,body.publication-page header.site-header.compact-header.wrap:has(nav:not(.open)){padding:12px 20px;min-height:80px}.header-home{width:48px;height:48px}.header-home img{width:42px;height:42px}body header.site-header.compact-header .menu{display:flex;align-items:center;gap:8px;margin-left:auto}body header.site-header.compact-header nav{margin:0}.reports-directory .resource-grid{grid-template-columns:1fr}.reports-directory h1{font-size:var(--text-5xl)}}

.header-home img{opacity:.72}

body header.site-header.compact-header nav a:after{display:none}.results-copy h1{font:400 var(--text-5xl)/1.08 var(--serif);margin:0 0 24px}.results-copy h1 em{color:var(--sky-400)}

/* Logo-free white header with red hover tabs. */
body header.site-header.compact-header.wrap{justify-content:center;min-height:76px}
body header.site-header.compact-header nav{margin:0;gap:clamp(8px,2vw,24px)}
body header.site-header.compact-header nav a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:var(--radius-sm);transition:background-color var(--duration-base),color var(--duration-base)}
body header.site-header.compact-header nav a:hover,body header.site-header.compact-header nav a:focus-visible{background:var(--color-accent);color:var(--color-on-accent);text-decoration:none}
@media(max-width:700px){body header.site-header.compact-header.wrap,body.publication-page header.site-header.compact-header.wrap:has(nav:not(.open)){justify-content:flex-start;min-height:64px}body header.site-header.compact-header .menu{margin-left:0}body header.site-header.compact-header nav a{justify-content:flex-start}}
.legal-page{max-width:760px}.legal-page h1{font:400 var(--text-5xl)/1.08 var(--serif);margin:0 0 var(--space-6,24px)}.legal-page h2{margin:var(--space-10,40px) 0 var(--space-3,12px);font-size:var(--text-2xl,28px)}.legal-page p,.legal-page li{font-size:var(--text-md,16px);line-height:var(--leading-body,1.65)}.legal-page ul{padding-left:1.2em}.legal-page li{margin:0 0 var(--space-2,8px)}.legal-lead{font-size:var(--text-lg,18px)!important}.legal-note{color:var(--color-text-muted,#56617a);font-size:var(--text-sm,14px)!important}.legal-table{overflow-x:auto}.legal-table table{width:100%;border-collapse:collapse;margin:var(--space-3,12px) 0}.legal-table th,.legal-table td{text-align:left;padding:var(--space-3,12px);border-bottom:1px solid var(--color-border,#dde3ed);vertical-align:top}
/* Encabezados y main enfocados por código (tabindex="-1"): sin recuadro visible. */
h1[tabindex="-1"]:focus,h2[tabindex="-1"]:focus,main[tabindex="-1"]:focus{outline:none!important}
.pilot-static{padding:var(--space-12,48px) 0}

/* Resultados: barras horizontales de un solo color, escala 0-100 (2026-10-21) */
.results-figure{display:flex;flex-direction:column;gap:var(--space-4,16px)}
.results-figure .chart-title{font-family:var(--font-serif,serif);font-weight:400;font-size:var(--text-2xl,28px);line-height:1.15;margin:0;color:#fff}
.hbars{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.hbars li{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:end}
.hbar-label,.hbar-value{font-size:15px;color:#f5f6fa}
.hbar-value{font-variant-numeric:tabular-nums}
.hbar-track{grid-column:1/-1;height:18px;border-radius:4px;background:linear-gradient(90deg,transparent calc(25% - 1px),#ffffff20 calc(25% - 1px) 25%,transparent 25% calc(50% - 1px),#ffffff20 calc(50% - 1px) 50%,transparent 50% calc(75% - 1px),#ffffff20 calc(75% - 1px) 75%,transparent 75%),#ffffff0d}
.hbar-fill{display:block;height:100%;width:var(--v);background:#8fb4ff;border-radius:4px}
.chart-table-toggle{align-self:flex-start;color:#a9c6ff;text-decoration:underline;padding:6px 0;min-height:44px}
.chart-table table,.report-light table{width:100%;border-collapse:collapse;color:inherit}
.chart-table caption,.report-light caption{text-align:left;padding:0 0 8px;font-size:13px}
.chart-table th,.chart-table td,.report-light th,.report-light td{padding:8px;border-bottom:1px solid #ffffff20;text-align:left}
.chart-table{color:#f5f6fa}
.chart-facts{display:grid;gap:6px;font-size:13px;color:#bac8e1;border-top:1px solid #ffffff20;padding-top:var(--space-3,12px)}
.chart-facts p{margin:0}
.chart-tag{display:inline-block;justify-self:start;font-size:12px;letter-spacing:.12em;color:#a9c6ff;border:1px solid #8fb4ff;padding:4px 8px;margin:0}
.report-light{color:#0d132d}
.report-light .chart-tag{color:#0b1652;border-color:#0b1652}
.report-bar{display:grid;grid-template-columns:9rem 1fr auto;gap:10px;align-items:center;margin:6px 0;font-size:14px}
.report-bar i{display:block;height:14px;border-radius:3px;background:linear-gradient(90deg,#0b1652 var(--v),#e4e9f4 var(--v))}
.report-light th,.report-light td{border-bottom:1px solid #dde3ed}
@media (max-width:700px){.results-figure .chart-title{font-size:24px}.hbar-track{height:16px}}
@media (prefers-reduced-motion:reduce){.hbar-fill{transition:none}}

/* Formulario de borrado con comprobante (2026-10-21) */
.legal-form{display:grid;gap:8px;max-width:520px;margin:12px 0 20px}
.legal-form input{min-height:44px;padding:8px 12px;border:1px solid #9aa6bd;border-radius:6px;font:inherit;font-family:ui-monospace,monospace}
.legal-form button{justify-self:start;min-height:44px;padding:8px 18px;border-radius:6px;border:0;background:var(--navy-900,#0b1b33);color:#fff;font:inherit;font-weight:600;cursor:pointer}
.legal-form [role=status]{margin:0;min-height:1.4em}
.pilot-receipt-note{font-size:14px;max-width:560px}
/* Revisión integral 2026-10-27: contrastes que no llegaban al mínimo WCAG AA. */
/* Botón "Ver informe / guardar PDF" sobre azul marino: celeste en vez de gris (8.8:1). */
.results .outline-button{color:var(--sky-400);border-color:var(--sky-400)}
/* Borde de campo visible (>3:1). */
.legal-form input{border-color:#6b7790}
/* Antes era un h3 sin h2 antes: ahora es párrafo, con el mismo aspecto. */
.results .results-lead{font-family:var(--serif);font-weight:400;font-size:var(--text-2xl);line-height:1.2;letter-spacing:-.4px;margin:var(--space-8) 0 var(--space-4);max-width:470px}
/* Suscripción por correo desactivada hasta que exista. */
.channel-form [disabled],.welcome-form [disabled]{opacity:.55;cursor:not-allowed}
/* Resultados de ejemplo marcados junto al gráfico (2026-10-27). Rojo claro sobre azul marino: 6:1. */
.chart-card .chart-example{color:var(--red-400);font-weight:700}

/* Nota técnica de Metodología (propuesta de textos 2026-10-27, ítem 10) */
.method-note{font-size:.88em;opacity:.8}
/* Resultados en vivo (2026-10-27): tarjetas reales con el mismo estilo del gráfico de ejemplo. */
.live-results[hidden],.results-figure[hidden]{display:none!important}
.live-results{display:grid;gap:24px;align-content:start}
/* Fase 2 (2026-11-11): filtro por grupo (todos / en Nicaragua / fuera), Índice ciudadano y ranking de duelos en Resultados.
   La sección de resultados tiene fondo azul oscuro: se usan los mismos tonos claros que sus etiquetas y botones. */
.grupo-filtro{display:flex;flex-wrap:wrap;gap:8px}
.grupo-filtro button{min-height:48px;padding:0 18px;border:1px solid #a9c6ff;border-radius:999px;background:transparent;color:#a9c6ff;font:600 var(--text-sm)/1 var(--sans);cursor:pointer}
.grupo-filtro button[aria-pressed="true"]{background:#a9c6ff;color:#0d132d}
.grupo-filtro button:hover{border-color:#fff;color:#fff}.grupo-filtro button[aria-pressed="true"]:hover{color:#0d132d;background:#fff}
.grupo-filtro button:focus-visible{outline:3px solid #fff;outline-offset:2px}
.grupo-pocas{margin:8px 0 16px;padding:14px 16px;border-left:3px solid #a9c6ff;background:rgba(255,255,255,.06);color:inherit}
.live-result .publication-link{color:#a9c6ff}
.duelo-ranking{margin:8px 0 16px;padding-left:1.6em;font-size:var(--text-lg);font-weight:600}
.duelo-ranking li{padding:4px 0}
.indice-card .chart-table{margin-top:12px;overflow-x:auto}
/* Ventana de bienvenida, estilo final pedido por el propietario (2026-11-11): mismo contenido, nueva forma.
   Va al final de este archivo para ganar a las reglas anteriores. Tarjeta con esquinas redondeadas y botón en píldora;
   en la computadora queda al centro; en el teléfono sube desde abajo como una hoja y deja ver la página arriba.
   Solo existe en Inicio (welcome.js se carga solo ahí). */
.welcome-dialog[open]{position:fixed;inset:0;display:flex;flex-direction:column;width:min(520px,calc(100% - 48px));max-width:none;height:fit-content;max-height:calc(100dvh - 48px);margin:auto;border:0;border-radius:28px;overflow:auto;box-shadow:0 30px 100px #03081d55;animation:welcome-arrive .6s cubic-bezier(.16,1,.3,1) both}
.welcome-dialog::backdrop{background:#070e2566;backdrop-filter:blur(3px)}
.welcome-dialog .welcome-body{padding:44px 40px 20px}
.welcome-dialog .welcome-identity{flex-direction:column;justify-content:center;gap:12px;padding-right:0;text-align:center}
.welcome-dialog .welcome-seal{width:72px!important;height:72px!important}
.welcome-dialog .welcome-brand{font-size:var(--text-2xl)}
.welcome-dialog .welcome-title{font-size:var(--text-4xl);line-height:1;margin:26px 0 14px}
.welcome-dialog .welcome-description{font-size:var(--text-md);line-height:1.5;margin-bottom:16px}
.welcome-dialog a.welcome-go{width:min(85%,320px);margin:0 auto;border-radius:999px;min-height:56px;padding:12px 24px}
.welcome-dialog .welcome-close{position:absolute;float:none;top:14px;right:14px;margin:0;width:44px;height:44px;background:transparent}
.welcome-dialog .welcome-art{display:grid;flex-shrink:0;min-height:96px;margin:0;padding:24px 20px 16px}
.welcome-dialog .welcome-art span{font-size:var(--text-4xl)}
@media(max-width:600px){
 .welcome-dialog[open]{inset:auto 0 0;width:100%;max-height:88dvh;margin:0;border-radius:28px 28px 0 0;box-shadow:0 -12px 40px #03081d33;animation:welcome-sube .5s cubic-bezier(.16,1,.3,1) both}
 .welcome-dialog .welcome-body{padding:40px 24px 16px}
 .welcome-dialog .welcome-title{font-size:var(--text-3xl)}
}
@keyframes welcome-sube{from{transform:translateY(100%)}to{transform:none}}
@media(prefers-reduced-motion:reduce){.welcome-dialog[open]{animation:none}}
/* Bandera de Nicaragua en la leyenda de arriba (2026-11-11), en el lugar y tamaño de los avisos de los sitios oficiales.
   Es decorativa (alt vacío): el texto ya dice lo que es el sitio. */
.utility-copy .bandera{display:block;flex-shrink:0;width:22px;height:13px;box-shadow:0 0 0 .5px #ffffff4d}
/* En el teléfono la leyenda de arriba va alineada a la izquierda, junto a la bandera (2026-11-11). */
@media(max-width:700px){.utility-copy{justify-content:flex-start;text-align:left}}
/* Aviso al confirmar la suscripción al boletín (2026-11-11). */
.boletin-confirmado{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0;padding:16px 20px;background:#e8f7ef;color:#0b3b25;border-bottom:2px solid #2f9e66;font-size:var(--text-md);line-height:1.5}
.boletin-confirmado button{margin-left:auto;min-height:44px;padding:0 16px;border:1px solid #0b3b25;border-radius:999px;background:transparent;color:#0b3b25;font-weight:600;cursor:pointer}

#datos-abiertos .publication-link+.publication-link{margin-top:var(--space-3)}
@media(min-width:701px){.resources .resource-grid>article:nth-child(3):last-child{grid-column:1/-1}}
@media(min-width:1100px){.resources .resource-grid:has(>article:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}.resources .resource-grid>article:nth-child(3):last-child{grid-column:auto}}
/* Resultados «En camino» (2026-11-12): cuánto le falta a cada encuesta para publicarse. */
.pendientes-lista{list-style:none;margin:20px 0 4px;padding:0;display:grid;gap:18px}
.pendientes-lista li{display:grid;gap:8px;padding-bottom:18px;border-bottom:1px solid #ffffff1a}
.pendientes-lista li:last-child{border-bottom:0;padding-bottom:0}
.pendiente-cab{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.pendiente-nombre{font:600 var(--text-base,17px)/1.3 var(--sans);color:#fff}
.pendiente-ir{flex:none;display:inline-flex;align-items:center;min-height:44px;color:#a9c6ff;font:600 var(--text-sm,15px)/1 var(--sans);text-decoration:none;white-space:nowrap}
.pendiente-ir:hover,.pendiente-ir:focus-visible{color:#fff;text-decoration:underline}
.pendiente-barra{display:block;height:8px;border-radius:4px;background:#ffffff14;overflow:hidden}
.pendiente-barra span{display:block;height:100%;width:var(--v);min-width:4px;background:#8fb4ff;border-radius:4px;box-shadow:0 0 10px #8fb4ff80}
.pendiente-cifra{font:400 var(--text-sm,15px)/1.4 var(--sans);color:#c7d3ec}
.pendiente-cifra b{color:#fff;font-weight:600}
#terminos,#contacto{scroll-margin-top:110px}
/* El texto de Resultados acompaña a las tarjetas al bajar, en vez de quedar centrado con un hueco arriba. */
@media(min-width:701px){.results-grid{align-items:start}.results-copy{position:sticky;top:48px}}
