/* Portal Regional Fedomu — estilos del scaffold (enquolado: habilita CSS on-demand WP 6.9).
   Maquetación provisional con tokens del sistema; se reemplaza por el diseño v24. */
.fedomu-region{ --reg-paper:#FBFBF8; --reg-ink:#0a1f3a; --reg-gold:var(--wp--preset--color--fedomu-gold,#D4AF37); --reg-navy:var(--wp--preset--color--boulevard-blue,#0033A0); font-family:var(--wp--preset--font-family--sans,Inter),system-ui,sans-serif; color:var(--reg-ink); }
.fedomu-region .reg-in{ max-width:min(1800px,100% - 3rem); margin-inline:auto; padding-block:clamp(2.5rem,5vw,4.5rem); }
.fedomu-region .reg-sec--tight .reg-in{ padding-block:clamp(1.5rem,3vw,2.5rem); }
.reg-eyebrow{ font-size:.78rem; letter-spacing:.18em; text-transform:uppercase; font-weight:700; color:var(--reg-gold); margin:0 0 .5rem; }
.reg-eyebrow--dark{ color:var(--reg-navy); }
.reg-h2{ font-size:clamp(1.6rem,3.2vw,2.4rem); font-weight:800; letter-spacing:-.02em; margin:0 0 1.6rem; }
.reg-h2--light{ color:#fff; }
.reg-sec--paper{ background:var(--reg-paper); }
.reg-sec--navy{ background:var(--reg-navy); }
.reg-hero{ background:var(--reg-navy); color:#fff; }
.reg-hero__title{ font-size:clamp(2.6rem,6vw,4.6rem); font-weight:800; letter-spacing:-.03em; line-height:1; margin:.2rem 0 .6rem; }
.reg-hero__lead{ font-size:1.1rem; color:rgba(255,255,255,.85); max-width:60ch; }
.reg-hero__chips{ display:flex; flex-wrap:wrap; gap:.6rem; margin-top:1.4rem; }
.reg-chip{ font-size:.82rem; font-weight:600; background:rgba(255,255,255,.14); color:#fff; border:1px solid rgba(255,255,255,.2); border-radius:999px; padding:.35rem .8rem; }
.reg-grid{ display:grid; gap:18px; }
.reg-grid--3{ grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); }
.reg-grid--4{ grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); }
.reg-card{ border-radius:14px; padding:20px; box-shadow:0 1px 2px rgba(10,31,58,.12),0 18px 40px -26px rgba(0,51,160,.5); }
.reg-card--navy{ background:var(--reg-navy); color:#fff; }
.reg-card--light{ background:#fff; color:var(--reg-ink); border:1px solid rgba(10,31,58,.1); }
.reg-card__thumb{ display:block; border-radius:10px; overflow:hidden; margin-bottom:12px; }
.reg-card__thumb img{ width:100%; height:160px; object-fit:cover; display:block; }
.reg-card__date{ font-size:.76rem; color:var(--reg-gold); font-weight:600; }
.reg-card__title{ font-size:1.08rem; font-weight:700; margin:.3rem 0 .5rem; color:var(--reg-gold); }
.reg-card__title a{ color:inherit; text-decoration:none; }
.reg-card__title--dark{ color:var(--reg-ink); }
.reg-card__excerpt{ font-size:.92rem; color:rgba(255,255,255,.84); margin:0; }
.reg-card__excerpt--dark{ color:#46546b; }
.reg-empty{ font-size:.98rem; color:#46546b; max-width:65ch; }
.reg-empty--light{ color:rgba(255,255,255,.82); }
.reg-map{ height:clamp(320px,42vh,480px); border-radius:14px; overflow:hidden; background:#dfe5e2; }
.reg-munis{ display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.reg-muni{ display:inline-flex; align-items:center; gap:8px; background:var(--reg-navy); color:#fff; border-radius:999px; padding:6px 14px 6px 6px; font-size:.85rem; font-weight:600; text-decoration:none; }
.reg-muni img{ border-radius:50%; background:#fff; padding:3px; object-fit:contain; }
.reg-stat{ background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16); border-radius:14px; padding:20px 22px; }
.reg-stat__n{ display:block; font-size:clamp(1.8rem,3vw,2.6rem); font-weight:800; letter-spacing:-.02em; color:var(--reg-gold); line-height:1; font-variant-numeric:tabular-nums; }
.reg-stat__n small{ font-size:.4em; font-weight:600; color:rgba(255,255,255,.7); }
.reg-stat__l{ display:block; margin-top:.5rem; font-size:.82rem; color:rgba(255,255,255,.72); }
.reg-note{ margin-top:1.2rem; font-size:.82rem; color:rgba(255,255,255,.62); }
.reg-dir__photo{ aspect-ratio:1/1; width:100%; background:#fff; border-radius:12px; overflow:hidden; margin-bottom:12px; border:1px solid rgba(255,255,255,.18); }
.reg-dir__photo img{ width:100%; height:100%; object-fit:cover; display:block; }
.reg-dir__cargo{ font-size:.74rem; letter-spacing:.08em; text-transform:uppercase; font-weight:700; color:var(--reg-gold); margin:0 0 .3rem; }
.reg-dir__alc{ font-size:.85rem; color:rgba(255,255,255,.72); margin:.3rem 0 0; }
.reg-red{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; }
.reg-red__item{ display:flex; align-items:center; gap:10px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16); border-radius:12px; padding:14px 16px; color:#fff; text-decoration:none; transition:background .2s; }
.reg-red__item:hover{ background:rgba(255,255,255,.16); }
.reg-red__item.is-current{ background:var(--reg-gold); color:var(--reg-ink); border-color:var(--reg-gold); }
.reg-red__dot{ width:12px; height:12px; border-radius:3px; background:var(--dot,#D4AF37); flex:0 0 auto; }
.reg-biblio{ display:flex; flex-wrap:wrap; gap:1rem 2rem; align-items:center; justify-content:space-between; }
.reg-biblio .reg-h2{ margin-bottom:0; }
.reg-btn{ display:inline-flex; align-items:center; gap:8px; background:var(--reg-navy); color:#fff; border-radius:10px; padding:12px 22px; font-weight:700; text-decoration:none; }
.fedomu-region a:focus-visible{ outline:2px solid var(--reg-gold); outline-offset:3px; border-radius:3px; }
@media (prefers-reduced-motion: reduce){ .reg-red__item{ transition:none; } }
