:root {
  --fico-navy: #051B32;
  --fico-card: #0A2744;
  --fico-border: #173A57;
  --fico-white: #FFFFFF;
  --fico-muted: #AAB8C8;
  --fico-lime: #CFDF22;
  --fico-cyan: #19BCE8;
  --fico-orange: #FF7518;
  --fico-pink: #F04D7E;
  --fico-radius: 12px;
  --fico-container: 1440px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.fico-site {
  margin: 0;
  background: var(--fico-navy);
  color: var(--fico-white);
  font-family: Poppins, Arial, sans-serif;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
}
body.fico-site a { color: inherit; }
body.fico-site img { max-width: 100%; height: auto; display: block; }

.fico-container { width: min(calc(100% - 40px), var(--fico-container)); margin-inline: auto; }
.fico-main { min-height: 60vh; }
.fico-content-shell { padding-block: clamp(3rem, 7vw, 7rem); }

.fico-skip-link {
  position: fixed; left: 1rem; top: -100px; z-index: 9999;
  background: var(--fico-lime); color: var(--fico-navy); padding: .7rem 1rem;
}
.fico-skip-link:focus { top: 1rem; }

.fico-header {
  position: sticky; top: 0; z-index: 1000;
  background: rgba(5,27,50,.96);
  border-bottom: 1px solid rgba(255,255,255,.06);
  backdrop-filter: blur(14px);
}
.fico-header__inner { min-height: 74px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 2rem; }
.custom-logo { width: auto; max-height: 42px; }
.fico-brand__fallback { text-decoration: none; font-weight: 900; font-size: 2rem; letter-spacing: -.06em; }
.fico-brand__fallback span, .fico-footer__brand span { color: var(--fico-lime); }
.fico-nav { justify-self: center; }
.fico-nav__list { list-style: none; display: flex; align-items: center; gap: clamp(1rem, 3vw, 2.75rem); padding: 0; margin: 0; }
.fico-nav__list a { text-decoration: none; font-size: .91rem; color: #fff; }
.fico-nav__list a:hover, .fico-nav__list .current-menu-item > a { color: var(--fico-lime); }
.fico-search-link { font-size: 1.75rem; text-decoration: none; line-height: 1; }

.fico-menu-toggle { display: none; border: 0; background: transparent; padding: .5rem; }
.fico-menu-toggle span:not(.screen-reader-text) { display: block; width: 24px; height: 2px; margin: 5px 0; background: white; }

.fico-entry__header { margin-bottom: 3rem; max-width: 950px; }
.fico-entry__header h1 { margin: 0; font-size: clamp(2.8rem, 7vw, 6.5rem); line-height: .98; letter-spacing: -.055em; }
.fico-eyebrow { color: var(--fico-lime); font-weight: 900; text-transform: uppercase; letter-spacing: .12em; font-size: .78rem; }
.fico-entry__content { color: #DCE5EE; font-size: 1.05rem; }

.fico-grid { display: grid; gap: 1rem; }
.fico-grid--3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
.fico-card, .is-style-fico-card {
  background: var(--fico-card);
  border: 1px solid var(--fico-border);
  border-radius: var(--fico-radius);
  overflow: hidden;
}
.fico-card__body { padding: 1.4rem; }
.fico-card h2 { margin-top: 0; }
.fico-card h2 a { text-decoration: none; }
.is-style-fico-section { padding-block: clamp(3rem, 8vw, 8rem); }

.fico-media-placeholder,
.is-style-fico-media-slot {
  min-height: 320px;
  border-radius: var(--fico-radius);
  border: 1px dashed rgba(207,223,34,.6);
  background: linear-gradient(135deg, #0A2744, #071F39);
  display: grid;
  place-items: center;
  color: var(--fico-muted);
}

.fico-kpi { padding: 1.4rem; border: 1px solid var(--fico-border); border-radius: var(--fico-radius); background: rgba(10,39,68,.6); }
.fico-kpi__value { display: block; font-size: clamp(2rem, 4vw, 4rem); line-height: 1; font-weight: 900; }
.fico-kpi__label { color: var(--fico-muted); }

.fico-footer { margin-top: 5rem; border-top: 1px solid rgba(255,255,255,.08); background: #041629; padding: 4rem 0 2rem; }
.fico-footer__grid { display: grid; grid-template-columns: 1fr 1fr 1.2fr; gap: 4rem; }
.fico-footer__brand strong { font-size: 2.3rem; letter-spacing: -.06em; }
.fico-footer__menu { list-style: none; margin: 0; padding: 0; columns: 2; }
.fico-footer__menu a { text-decoration: none; color: var(--fico-muted); }
.fico-footer__newsletter h2 { font-size: 1.1rem; }
.fico-footer__bottom { display: flex; flex-wrap: wrap; gap: 1.2rem; justify-content: space-between; margin-top: 3rem; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,.08); color: var(--fico-muted); font-size: .78rem; }

.fico-newsletter-form { display: flex; gap: .5rem; align-items: stretch; }
.fico-newsletter-form input[type="email"] { flex: 1; min-width: 0; padding: .9rem 1rem; border: 1px solid var(--fico-border); border-radius: 6px; background: white; color: #111; }
.fico-newsletter-form button { border: 0; border-radius: 6px; background: var(--fico-lime); color: var(--fico-navy); font-weight: 900; padding: .9rem 1.15rem; cursor: pointer; }
.fico-newsletter-consent { margin-top: .8rem; display: flex; gap: .5rem; font-size: .72rem; color: var(--fico-muted); }
.fico-newsletter-message { margin-top: .75rem; font-size: .8rem; }
.fico-hp { position: absolute !important; left: -9999px !important; }

@media (max-width: 980px) {
  .fico-menu-toggle { display: block; justify-self: end; }
  .fico-header__inner { grid-template-columns: auto 1fr auto; }
  .fico-nav { position: fixed; inset: 74px 0 auto 0; background: var(--fico-navy); padding: 1.5rem 20px 2rem; border-bottom: 1px solid var(--fico-border); display: none; }
  .fico-nav.is-open { display: block; }
  .fico-nav__list { flex-direction: column; align-items: flex-start; }
  .fico-search-link { display: none; }
  .fico-grid--3 { grid-template-columns: 1fr 1fr; }
  .fico-footer__grid { grid-template-columns: 1fr 1fr; }
  .fico-footer__newsletter { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
  .fico-container { width: min(calc(100% - 28px), var(--fico-container)); }
  .fico-grid--3, .fico-footer__grid { grid-template-columns: 1fr; }
  .fico-newsletter-form { flex-direction: column; }
  .fico-footer__newsletter { grid-column: auto; }
}

/* ===== FICO v0.2.0 · Sprint 1 refinements ===== */
body.fico-site { overflow-x: hidden; }

.fico-header__inner { min-height: 78px; }
.fico-brand .custom-logo-link { display: inline-flex; align-items: center; }
.fico-brand .custom-logo { max-height: 38px; width: auto; }
.fico-nav__list a { font-weight: 400; transition: color .18s ease, opacity .18s ease; }
.fico-search-link { display: inline-grid; place-items: center; color: #fff; }
.fico-search-link:hover { color: var(--fico-lime); }

.fico-home .fico-hero { padding-top: clamp(3.5rem, 7vw, 7rem) !important; padding-bottom: clamp(4.5rem, 8vw, 8rem) !important; }
.fico-home .fico-hero h1 { max-width: 8ch; letter-spacing: -.055em; }
.fico-home .fico-hero .has-large-font-size { max-width: 23ch; line-height: 1.45; }

.is-style-fico-section { padding-block: clamp(4rem, 7vw, 7.5rem); }
.fico-home > .is-style-fico-section + .is-style-fico-section { border-top: 1px solid rgba(255,255,255,.035); }

#medellin-hoy .wp-block-columns { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1rem; }
#medellin-hoy .wp-block-column { min-width: 0; }
.fico-kpi { height: 100%; min-height: 160px; display: flex; flex-direction: column; justify-content: space-between; }
.fico-kpi__value {
  font-size: clamp(2rem, 2.65vw, 3.35rem);
  letter-spacing: -.045em;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
@media (min-width: 981px) {
  .fico-kpi__value { white-space: nowrap; }
}

.fico-empty-query-section { display: none !important; }
.fico-is-hidden { display: none !important; }

.fico-home .has-navy-card-background-color.is-style-fico-section {
  padding: clamp(3.5rem, 5vw, 5.5rem) clamp(1.5rem, 4vw, 4rem);
  border-radius: 0;
}
.fico-home .has-navy-card-background-color.is-style-fico-section > * { max-width: 980px; margin-left: auto; margin-right: auto; }
.fico-home .has-navy-card-background-color .fico-newsletter-form { max-width: 900px; margin-inline: auto; }

.fico-footer { margin-top: 0; }
.fico-footer__grid--compact { grid-template-columns: 1fr 1fr; }
.fico-footer__grid--compact > nav { justify-self: end; width: min(100%, 520px); }
.fico-footer__brand .custom-logo { max-height: 44px; }
.fico-footer p { color: var(--fico-muted); }

@media (max-width: 980px) {
  #medellin-hoy .wp-block-columns { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .fico-footer__grid--compact { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
  #medellin-hoy .wp-block-columns { grid-template-columns: 1fr; }
  .fico-kpi { min-height: 128px; }
  .fico-kpi__value { font-size: clamp(2.25rem, 12vw, 3.5rem); }
  .fico-home .fico-hero h1 { max-width: 9ch; }
  .fico-footer__grid--compact { grid-template-columns: 1fr; }
  .fico-footer__grid--compact > nav { justify-self: stretch; }
}

/* ===== FICO v0.3.0 · Sprint 1.2 components ===== */
.fico-section-shell {
  width: min(calc(100% - 40px), 1440px);
  margin-inline: auto;
}
.fico-section-intro { max-width: 760px; margin-bottom: 2.4rem; }
.fico-section-intro h2 { margin-top: .35rem; margin-bottom: .8rem; font-size: clamp(2rem, 4.1vw, 4.8rem); letter-spacing: -.045em; }
.fico-section-intro p { color: var(--fico-muted); font-size: clamp(1rem, 1.3vw, 1.2rem); }

/* Advanced Gutenberg-managed Hero */
.fico-hero-advanced .fico-media-placeholder {
  position: relative;
  isolation: isolate;
  min-height: clamp(360px, 42vw, 610px);
  background-color: var(--fico-card);
  background-image: var(--fico-hero-desktop-image, linear-gradient(135deg, #0A2744, #071F39));
  background-size: cover;
  background-position: var(--fico-hero-position, center center);
  border-color: rgba(207,223,34,.28);
  overflow: hidden;
}
.fico-hero-advanced .fico-media-placeholder::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(5,27,50,var(--fico-hero-overlay,.18));
}
.fico-hero-advanced .fico-media-placeholder p {
  opacity: var(--fico-hero-placeholder-opacity, 1);
  max-width: 22ch;
}
.fico-hero-advanced[style*="--fico-hero-desktop-image"] .fico-media-placeholder p { opacity: 0; }

/* Concept / topic grid */
.fico-topic-grid { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.fico-topic-card {
  min-height: 190px;
  padding: 1.6rem !important;
  border: 1px solid var(--fico-border);
  border-radius: var(--fico-radius);
  background: rgba(10,39,68,.55);
  position: relative;
  overflow: hidden;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.fico-topic-card::before { content:""; position:absolute; left:0; top:0; width:4px; height:100%; background:var(--fico-accent,var(--fico-lime)); }
.fico-topic-card:hover { transform: translateY(-3px); border-color: color-mix(in srgb, var(--fico-accent,var(--fico-lime)) 55%, var(--fico-border)); background: rgba(10,39,68,.85); }
.fico-topic-card h3 { margin: .25rem 0 .7rem; font-size: 1.3rem; }
.fico-topic-card p { margin: 0; color: var(--fico-muted); font-size: .92rem; }
.fico-accent--lime { --fico-accent: var(--fico-lime); }
.fico-accent--cyan { --fico-accent: var(--fico-cyan); }
.fico-accent--orange { --fico-accent: var(--fico-orange); }
.fico-accent--pink { --fico-accent: var(--fico-pink); }

/* Territory / map placeholder */
.fico-territory-layout { gap: clamp(2rem, 5vw, 5rem); align-items: stretch !important; }
.fico-territory-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.8rem; margin-top:1.5rem; }
.fico-mini-stat { padding:1rem !important; border-top:1px solid var(--fico-border); }
.fico-mini-stat strong { display:block; font-size:clamp(1.45rem,2vw,2.2rem); line-height:1; }
.fico-mini-stat span { display:block; margin-top:.45rem; color:var(--fico-muted); font-size:.78rem; }
.fico-map-placeholder {
  min-height: 470px;
  border:1px solid var(--fico-border);
  border-radius:18px;
  background:
    radial-gradient(circle at 67% 36%, rgba(25,188,232,.24), transparent 17%),
    radial-gradient(circle at 34% 62%, rgba(207,223,34,.14), transparent 15%),
    linear-gradient(145deg,#092541,#061d35);
  display:grid;
  place-items:center;
  padding:2rem !important;
  text-align:center;
  overflow:hidden;
  position:relative;
}
.fico-map-placeholder::before,
.fico-map-placeholder::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.08); border-radius:48% 52% 38% 62%; width:58%; height:72%; transform:rotate(-14deg); }
.fico-map-placeholder::after { width:34%; height:48%; transform:rotate(22deg) translate(30%,10%); }
.fico-map-placeholder > * { position:relative; z-index:1; }

/* Progress projects */
.fico-project-feature { padding:0 !important; overflow:hidden; border:1px solid var(--fico-border); border-radius:16px; background:var(--fico-card); }
.fico-project-feature__media { min-height:260px; border:0; border-bottom:1px solid var(--fico-border); border-radius:0; }
.fico-project-feature__body { padding:1.5rem !important; }
.fico-progress { height:7px; border-radius:999px; background:rgba(255,255,255,.08); overflow:hidden; margin:.8rem 0 1.1rem; }
.fico-progress > span { display:block; height:100%; width:var(--fico-progress,50%); background:var(--fico-accent,var(--fico-lime)); border-radius:inherit; }
.fico-project-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.7rem; }
.fico-project-metrics div { padding:.8rem; border:1px solid rgba(255,255,255,.07); border-radius:8px; }
.fico-project-metrics strong { display:block; font-size:1.05rem; }
.fico-project-metrics span { color:var(--fico-muted); font-size:.72rem; }

/* Evolution */
.fico-evolution-grid { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; align-items:stretch; }
.fico-evolution-step { padding:1.8rem !important; min-height:220px; border:1px solid var(--fico-border); border-radius:14px; background:rgba(10,39,68,.55); }
.fico-evolution-step .fico-evolution-label { text-transform:uppercase; letter-spacing:.1em; font-size:.72rem; color:var(--fico-muted); font-weight:900; }
.fico-evolution-step .fico-evolution-value { margin:.5rem 0; font-size:clamp(2.3rem,4vw,4.5rem); line-height:1; font-weight:900; letter-spacing:-.05em; }
.fico-evolution-step.is-now { border-color:rgba(25,188,232,.65); box-shadow: inset 0 0 0 1px rgba(25,188,232,.15); }
.fico-evolution-step.is-next { border-color:rgba(207,223,34,.5); }

/* Care / people */
.fico-care-grid { display:grid !important; grid-template-columns:1.2fr .8fr; gap:1rem; }
.fico-care-feature { min-height:420px; }
.fico-care-stats { display:grid; gap:1rem; }
.fico-care-stat { padding:1.6rem !important; background:rgba(10,39,68,.6); border:1px solid var(--fico-border); border-radius:14px; }
.fico-care-stat strong { display:block; font-size:clamp(2rem,3vw,3.5rem); line-height:1; margin-bottom:.55rem; }
.fico-care-stat p { margin:0; color:var(--fico-muted); }

/* Saying / doing tracker */
.fico-tracker { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; counter-reset:tracker; }
.fico-tracker-step { padding:1.7rem !important; border:1px solid var(--fico-border); border-radius:14px; background:rgba(10,39,68,.55); position:relative; }
.fico-tracker-step::before { counter-increment:tracker; content:"0" counter(tracker); display:inline-grid; place-items:center; width:38px; height:38px; border-radius:999px; background:var(--fico-accent,var(--fico-lime)); color:var(--fico-navy); font-weight:900; margin-bottom:1.5rem; }
.fico-tracker-step h3 { margin:.2rem 0 .6rem; }
.fico-tracker-step p { color:var(--fico-muted); }

/* Federico timeline */
.fico-federico-layout { align-items:center !important; gap:clamp(2rem,5vw,5rem); }
.fico-timeline { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; margin-top:2.25rem; position:relative; }
.fico-timeline::before { content:""; position:absolute; top:10px; left:0; right:0; height:1px; background:var(--fico-border); }
.fico-timeline-item { position:relative; padding-top:2rem; padding-right:.9rem; }
.fico-timeline-item::before { content:""; position:absolute; top:4px; left:0; width:13px; height:13px; border-radius:50%; background:var(--fico-accent,var(--fico-lime)); box-shadow:0 0 0 5px var(--fico-navy); }
.fico-timeline-item strong { display:block; font-size:1.2rem; }
.fico-timeline-item span { display:block; color:var(--fico-muted); font-size:.78rem; margin-top:.3rem; }

/* Editorial statement */
.fico-statement { min-height:430px; display:grid; align-content:center; padding:clamp(3rem,7vw,7rem) !important; border-top:1px solid rgba(255,255,255,.06); border-bottom:1px solid rgba(255,255,255,.06); background:linear-gradient(120deg,#061a30 0%,#0a2a49 100%); }
.fico-statement blockquote { margin:0; max-width:1050px; }
.fico-statement blockquote p { font-size:clamp(2.5rem,5.4vw,6rem); line-height:1.02; letter-spacing:-.05em; font-weight:900; margin:0; }
.fico-statement cite { display:block; margin-top:1.6rem; color:var(--fico-lime); font-style:normal; font-weight:900; }

/* Ideas */
.fico-ideas-list { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.8rem; }
.fico-idea-link { padding:1.35rem 1.5rem !important; border:1px solid var(--fico-border); border-radius:12px; background:rgba(10,39,68,.45); min-height:110px; display:flex; align-items:flex-end; transition:.2s ease; }
.fico-idea-link:hover { border-color:var(--fico-lime); transform:translateY(-2px); }
.fico-idea-link a { color:white; text-decoration:none; font-size:1.15rem; font-weight:900; }

/* Archive */
.fico-archive-panel { padding:clamp(2rem,5vw,5rem) !important; border:1px solid var(--fico-border); border-radius:18px; background:#04182c; }
.fico-archive-panel .wp-block-search { max-width:900px; }
.fico-archive-panel .wp-block-search__inside-wrapper { border:1px solid var(--fico-border); padding:.35rem; border-radius:10px; background:white; }
.fico-archive-panel .wp-block-search__input { border:0; font-family:inherit; }
.fico-archive-panel .wp-block-search__button { background:var(--fico-lime); color:var(--fico-navy); border:0; border-radius:7px; font-weight:900; }
.fico-chip-row { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1rem; }
.fico-chip { display:inline-flex; padding:.5rem .8rem; border:1px solid var(--fico-border); border-radius:999px; color:var(--fico-muted); font-size:.78rem; }

/* Utility CTA row */
.fico-section-cta { margin-top:2rem; }
.fico-section-cta a { font-weight:900; text-decoration:none; }

@media (max-width:980px) {
  .fico-topic-grid, .fico-ideas-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fico-evolution-grid, .fico-tracker { grid-template-columns:1fr; }
  .fico-care-grid { grid-template-columns:1fr; }
  .fico-project-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .fico-timeline { grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:1.8rem; }
  .fico-timeline::before { display:none; }
  .fico-timeline-item { padding-top:1.25rem; }
  .fico-timeline-item::before { top:0; }
}

@media (max-width:640px) {
  .fico-section-shell { width:min(calc(100% - 28px),1440px); }
  .fico-topic-grid, .fico-ideas-list, .fico-territory-stats { grid-template-columns:1fr; }
  .fico-map-placeholder { min-height:340px; }
  .fico-project-metrics { grid-template-columns:1fr; }
  .fico-timeline { grid-template-columns:1fr 1fr; }
  .fico-statement { min-height:350px; padding:3rem 1rem !important; }
  .fico-hero-advanced .fico-media-placeholder {
    min-height:330px;
    background-image: var(--fico-hero-mobile-image, var(--fico-hero-desktop-image, linear-gradient(135deg,#0A2744,#071F39)));
  }
}

/* ===== FICO v0.3.1 · Page-level Hero administration ===== */
@media (max-width: 767px) {
  .fico-hero-advanced[style*="--fico-hero-mobile-image"] .fico-media-placeholder {
    background-image: var(--fico-hero-mobile-image);
  }
}

/* ===== FICO v0.4.0 · Sprint 2.1 Projects ===== */
.fico-project-card-photo {
  min-height: 230px;
  border-radius: 0;
  border: 0;
  border-bottom: 1px solid var(--fico-border);
  text-decoration: none;
}
.fico-project-card-photo span { color: var(--fico-muted); font-size: .75rem; letter-spacing: .05em; }
.fico-project-card-meta {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: .55rem;
  margin-top: 1rem;
}
.fico-project-card-meta > div {
  padding: .75rem;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 8px;
  background: rgba(5,27,50,.38);
  min-width: 0;
}
.fico-project-card-meta strong {
  display: block;
  font-size: clamp(.82rem,.92vw,.98rem);
  line-height: 1.2;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.fico-project-card-meta span { display:block; margin-top:.3rem; color:var(--fico-muted); font-size:.66rem; }
.fico-project-card-cut { margin:.8rem 0 0 !important; color:var(--fico-muted); font-size:.68rem; }

.fico-status-pill {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: .42rem .68rem;
  border: 1px solid var(--fico-border);
  border-radius: 999px;
  color: var(--fico-white);
  background: rgba(10,39,68,.72);
  font-size: .72rem;
  font-weight: 900;
  line-height: 1;
}
.fico-status-ejecucion { border-color: rgba(25,188,232,.5); color: var(--fico-cyan); }
.fico-status-entregado { border-color: rgba(207,223,34,.5); color: var(--fico-lime); }
.fico-status-contratacion, .fico-status-estructuracion { border-color: rgba(255,117,24,.5); color: var(--fico-orange); }

.fico-project-page { padding-bottom: clamp(4rem,8vw,8rem); }
.fico-project-hero {
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
  gap: clamp(2rem,5vw,6rem);
  align-items: center;
  padding-top: clamp(3.5rem,7vw,7rem);
  padding-bottom: clamp(3rem,6vw,6rem);
}
.fico-project-hero__copy h1 {
  margin: .8rem 0 1.25rem;
  max-width: 11ch;
  font-size: clamp(3rem,6.5vw,7rem);
  line-height: .98;
  letter-spacing: -.055em;
}
.fico-project-lead { max-width: 42rem; color: var(--fico-muted); font-size: clamp(1.05rem,1.5vw,1.35rem); line-height: 1.55; }
.fico-project-hero__media img,
.fico-project-photo-placeholder { width:100%; min-height:clamp(360px,42vw,620px); object-fit:cover; border-radius:16px; }
.fico-project-photo-placeholder { display:grid; place-items:center; }

.fico-project-snapshot {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  border-top: 1px solid var(--fico-border);
  border-bottom: 1px solid var(--fico-border);
}
.fico-project-snapshot > div { padding: clamp(1.35rem,2vw,2rem); border-right:1px solid var(--fico-border); }
.fico-project-snapshot > div:last-child { border-right:0; }
.fico-project-snapshot strong { display:block; font-size:clamp(1rem,1.6vw,1.35rem); line-height:1.25; }
.fico-project-snapshot span { display:block; margin-top:.55rem; color:var(--fico-muted); font-size:.75rem; }

.fico-project-progress-section { padding-top:clamp(4rem,7vw,7rem); }
.fico-progress-bars { display:grid; gap:1.25rem; max-width:1050px; }
.fico-progress-item { padding:1.25rem 0; border-bottom:1px solid rgba(255,255,255,.06); }
.fico-progress-item__head { display:flex; justify-content:space-between; gap:1rem; margin-bottom:.75rem; }
.fico-progress-item__head span { color:var(--fico-muted); }
.fico-progress-item__head strong { font-size:1.2rem; }
.fico-progress-track { height:8px; border-radius:999px; overflow:hidden; background:rgba(255,255,255,.08); }
.fico-progress-track span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--fico-lime),var(--fico-cyan)); }

.fico-project-content {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,360px);
  gap:clamp(2.5rem,7vw,7rem);
  padding-top:clamp(4rem,8vw,8rem);
}
.fico-project-content__main { color:#DCE5EE; font-size:1.06rem; line-height:1.75; }
.fico-project-content__main > *:first-child { margin-top:0; }
.fico-project-facts { align-self:start; padding:1.5rem; border:1px solid var(--fico-border); border-radius:12px; background:rgba(10,39,68,.55); }
.fico-project-facts h2 { margin-top:0; font-size:1.2rem; }
.fico-project-facts p { margin:0; padding:1rem 0; border-top:1px solid rgba(255,255,255,.07); }
.fico-project-facts span,.fico-project-facts strong { display:block; }
.fico-project-facts span { color:var(--fico-muted); font-size:.72rem; margin-bottom:.3rem; }

.fico-project-source { padding-top:clamp(4rem,7vw,7rem); }
.fico-project-source h2 { margin:.3rem 0 1.4rem; font-size:clamp(2rem,3.5vw,3.8rem); }
.fico-source-card { display:flex; justify-content:space-between; align-items:center; gap:2rem; padding:1.5rem; border:1px solid var(--fico-border); border-radius:12px; background:#04182c; }
.fico-source-card strong,.fico-source-card span { display:block; }
.fico-source-card span { margin-top:.35rem; color:var(--fico-muted); font-size:.78rem; }
.fico-source-card a { color:var(--fico-lime); font-weight:900; text-decoration:none; white-space:nowrap; }

.fico-project-archive .fico-archive-header { max-width:900px; margin-bottom:3rem; }
.fico-project-archive .fico-archive-header h1 { margin:.4rem 0 1rem; font-size:clamp(2.8rem,6vw,6rem); line-height:1; letter-spacing:-.05em; }
.fico-project-archive .fico-archive-header > p:last-child { color:var(--fico-muted); }
.fico-project-archive-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.fico-project-archive-card { overflow:hidden; border:1px solid var(--fico-border); border-radius:14px; background:var(--fico-card); }
.fico-project-archive-card__media { display:block; text-decoration:none; }
.fico-project-archive-card__media img,.fico-project-archive-card__media > .fico-media-placeholder { width:100%; aspect-ratio:16/9; min-height:0; object-fit:cover; border:0; border-radius:0; border-bottom:1px solid var(--fico-border); }
.fico-project-archive-card__body { padding:1.4rem; }
.fico-project-archive-card h2 { margin:.8rem 0 .7rem; font-size:1.35rem; }
.fico-project-archive-card h2 a { text-decoration:none; }
.fico-project-archive-card .wp-block-post-excerpt__excerpt,.fico-project-archive-card p { color:var(--fico-muted); }

@media (max-width:980px) {
  .fico-project-hero { grid-template-columns:1fr; }
  .fico-project-hero__copy h1 { max-width:12ch; }
  .fico-project-snapshot { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fico-project-snapshot > div:nth-child(2) { border-right:0; }
  .fico-project-snapshot > div:nth-child(-n+2) { border-bottom:1px solid var(--fico-border); }
  .fico-project-content { grid-template-columns:1fr; }
  .fico-project-archive-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  .fico-project-card-meta { grid-template-columns:1fr; }
  .fico-project-snapshot { grid-template-columns:1fr; }
  .fico-project-snapshot > div { border-right:0; border-bottom:1px solid var(--fico-border); }
  .fico-project-snapshot > div:last-child { border-bottom:0; }
  .fico-source-card { align-items:flex-start; flex-direction:column; }
  .fico-project-archive-grid { grid-template-columns:1fr; }
}

/* ===== FICO v0.5.0 · Sprint 2.2 Indicators + Commitments ===== */
/* Project cards: keep Gutenberg in charge of the Query Loop, but make data cards
   visually complete even before the photography library is loaded. */
.fico-home .wp-block-query .wp-block-post-template > li { display:flex; }
.fico-home .wp-block-query .wp-block-post-template > li > .wp-block-group { width:100%; height:100%; display:flex; flex-direction:column; }
.fico-home .wp-block-query .wp-block-post-template > li > .wp-block-group > .wp-block-group { flex:1; display:flex; flex-direction:column; justify-content:flex-start; }
.fico-home .wp-block-query .wp-block-post-title { margin:0 0 .7rem; line-height:1.05; }
.fico-home .wp-block-query .wp-block-post-excerpt { margin:0; }
.fico-home .wp-block-query .wp-block-post-excerpt__excerpt { margin:0 0 .8rem; }
.fico-home .wp-block-query .wp-block-post-excerpt__more-text { margin:.2rem 0 0; }
.fico-home .wp-block-query .fico-project-card-meta { margin-top:1rem; }

.fico-data-empty { padding:1rem 1.2rem; border:1px dashed var(--fico-orange); color:var(--fico-muted); border-radius:10px; }
.fico-data-kicker { color:var(--fico-cyan); font-size:.7rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.fico-data-cut { color:var(--fico-muted); font-size:.7rem; white-space:nowrap; }

.fico-live-indicator {
  border:1px solid var(--fico-border);
  border-radius:16px;
  padding:clamp(1.4rem,3vw,2.4rem);
  background:linear-gradient(135deg,rgba(10,39,68,.82),rgba(4,24,44,.82));
}
.fico-live-indicator__header { display:flex; justify-content:space-between; gap:2rem; align-items:flex-start; margin-bottom:1.8rem; }
.fico-live-indicator__header h3 { margin:.35rem 0 0; font-size:clamp(1.5rem,2.7vw,2.7rem); letter-spacing:-.035em; }
.fico-live-indicator__header h3 a { text-decoration:none; }
.fico-live-indicator__grid { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr); gap:1rem; align-items:center; }
.fico-live-indicator__step { min-height:150px; padding:1.25rem; border:1px solid rgba(255,255,255,.07); border-radius:12px; background:rgba(5,27,50,.52); display:flex; flex-direction:column; justify-content:space-between; }
.fico-live-indicator__step span { color:var(--fico-muted); font-size:.75rem; text-transform:uppercase; letter-spacing:.06em; }
.fico-live-indicator__step strong { font-size:clamp(2.1rem,4.3vw,4.8rem); line-height:1; letter-spacing:-.055em; overflow-wrap:anywhere; }
.fico-live-indicator__step.is-now { border-color:rgba(25,188,232,.42); box-shadow:inset 0 3px 0 var(--fico-cyan); }
.fico-live-indicator__step.is-next { border-color:rgba(207,223,34,.32); }
.fico-live-indicator__arrow { color:var(--fico-lime); font-size:2rem; }
.fico-live-indicator__note { margin:1.4rem 0 0; color:var(--fico-muted); font-size:.84rem; line-height:1.65; }
.fico-live-indicator__source { margin-top:1.2rem; padding-top:1rem; border-top:1px solid rgba(255,255,255,.07); display:flex; justify-content:space-between; gap:1rem; align-items:center; color:var(--fico-muted); font-size:.75rem; }
.fico-live-indicator__source a { color:var(--fico-lime); text-decoration:none; font-weight:900; }

.fico-indicator-cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.fico-indicator-card { display:flex; flex-direction:column; min-height:190px; padding:1.3rem; border:1px solid var(--fico-border); border-radius:12px; background:var(--fico-card); text-decoration:none; }
.fico-indicator-card__value { font-size:clamp(2rem,3vw,3.6rem); font-weight:900; line-height:1; letter-spacing:-.045em; }
.fico-indicator-card strong { margin-top:auto; padding-top:1.5rem; font-size:.95rem; }
.fico-indicator-card small { margin-top:.35rem; color:var(--fico-muted); }

.fico-live-commitments { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.fico-live-commitment { padding:1.45rem; border:1px solid var(--fico-border); border-radius:14px; background:rgba(10,39,68,.7); position:relative; overflow:hidden; }
.fico-live-commitment::before { content:""; position:absolute; inset:0 auto auto 0; width:100%; height:3px; background:var(--fico-cyan); }
.fico-live-commitment--dijimos::before { background:var(--fico-lime); }
.fico-live-commitment--hacemos::before { background:var(--fico-cyan); }
.fico-live-commitment--hecho::before { background:var(--fico-orange); }
.fico-live-commitment__top { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.fico-commitment-status { display:inline-flex; padding:.4rem .65rem; border:1px solid rgba(25,188,232,.45); border-radius:999px; color:var(--fico-cyan); font-size:.7rem; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.fico-live-commitment--dijimos .fico-commitment-status { color:var(--fico-lime); border-color:rgba(207,223,34,.45); }
.fico-live-commitment--hecho .fico-commitment-status { color:var(--fico-orange); border-color:rgba(255,117,24,.45); }
.fico-live-commitment h3 { margin:1.25rem 0 1rem; font-size:clamp(1.35rem,2vw,2rem); line-height:1.1; }
.fico-live-commitment h3 a { text-decoration:none; }
.fico-live-commitment__target { display:grid; gap:.35rem; }
.fico-live-commitment__target span,.fico-live-commitment__facts dt { color:var(--fico-muted); font-size:.7rem; text-transform:uppercase; letter-spacing:.06em; }
.fico-live-commitment__target strong { font-size:.95rem; line-height:1.5; }
.fico-live-commitment__progress { margin:1.25rem 0; }
.fico-live-commitment__progress > div:first-child { display:flex; justify-content:space-between; gap:1rem; margin-bottom:.55rem; color:var(--fico-muted); font-size:.8rem; }
.fico-live-commitment__progress strong { color:var(--fico-white); }
.fico-live-commitment__result { color:#DCE5EE; line-height:1.6; font-size:.9rem; }
.fico-live-commitment__facts { margin:1.15rem 0 0; display:grid; gap:.75rem; }
.fico-live-commitment__facts > div { padding-top:.75rem; border-top:1px solid rgba(255,255,255,.07); }
.fico-live-commitment__facts dd { margin:.25rem 0 0; font-size:.82rem; line-height:1.5; }
.fico-live-commitment__source { margin-top:1.1rem; padding-top:.9rem; border-top:1px solid rgba(255,255,255,.07); display:flex; justify-content:space-between; gap:1rem; align-items:flex-end; color:var(--fico-muted); font-size:.68rem; }
.fico-live-commitment__source a { color:var(--fico-lime); font-weight:900; text-decoration:none; white-space:nowrap; }

/* Indicator and commitment archive/detail pages. */
.fico-data-hero { max-width:960px; padding-bottom:clamp(2.5rem,5vw,5rem); }
.fico-data-hero h1 { margin:.5rem 0 1rem; font-size:clamp(3rem,6vw,6.5rem); line-height:.98; letter-spacing:-.055em; }
.fico-data-hero > p:last-child { max-width:760px; color:var(--fico-muted); font-size:1.15rem; line-height:1.6; }
.fico-data-triptych { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--fico-border); border-radius:14px; overflow:hidden; }
.fico-data-triptych > div { min-height:210px; padding:1.5rem; display:flex; flex-direction:column; justify-content:space-between; border-right:1px solid var(--fico-border); background:rgba(10,39,68,.48); }
.fico-data-triptych > div:last-child { border-right:0; }
.fico-data-triptych > div.is-current { background:rgba(10,39,68,.9); box-shadow:inset 0 4px 0 var(--fico-cyan); }
.fico-data-triptych span { color:var(--fico-muted); text-transform:uppercase; font-size:.72rem; letter-spacing:.07em; }
.fico-data-triptych strong { font-size:clamp(2.5rem,5vw,5.5rem); line-height:1; letter-spacing:-.05em; overflow-wrap:anywhere; }
.fico-data-note { margin-top:1.5rem; max-width:980px; padding:1.25rem; border-left:3px solid var(--fico-orange); background:rgba(10,39,68,.38); color:var(--fico-muted); }
.fico-data-note strong { color:var(--fico-white); }
.fico-data-note p { margin:.4rem 0 0; line-height:1.65; }
.fico-data-editorial { max-width:900px; padding-top:clamp(3rem,6vw,6rem); color:#DCE5EE; font-size:1.05rem; line-height:1.75; }
.fico-data-source { padding-bottom:2rem; }
.fico-data-archive-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.fico-data-archive-card a { min-height:240px; display:flex; flex-direction:column; padding:1.4rem; border:1px solid var(--fico-border); border-radius:13px; background:var(--fico-card); text-decoration:none; }
.fico-data-archive-card span { font-size:clamp(2rem,3.5vw,4rem); font-weight:900; line-height:1; }
.fico-data-archive-card h2 { margin:auto 0 .65rem; padding-top:2rem; font-size:1.25rem; }
.fico-data-archive-card p { margin:0; color:var(--fico-muted); font-size:.85rem; line-height:1.5; }

.fico-commitment-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border:1px solid var(--fico-border); border-radius:14px; overflow:hidden; }
.fico-commitment-detail-grid > div { padding:1.5rem; border-right:1px solid var(--fico-border); border-bottom:1px solid var(--fico-border); }
.fico-commitment-detail-grid > div:nth-child(2n) { border-right:0; }
.fico-commitment-detail-grid > div:nth-last-child(-n+2) { border-bottom:0; }
.fico-commitment-detail-grid span,.fico-commitment-detail-grid strong { display:block; }
.fico-commitment-detail-grid span { color:var(--fico-muted); font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; }
.fico-commitment-detail-grid strong { margin-top:.6rem; line-height:1.5; }
.fico-commitment-progress { max-width:1000px; padding:2.2rem 0; }
.fico-commitment-progress > div:first-child { display:flex; justify-content:space-between; margin-bottom:.7rem; color:var(--fico-muted); }
.fico-commitment-progress strong { color:var(--fico-white); }

@media (max-width:980px) {
  .fico-live-indicator__grid { grid-template-columns:1fr; }
  .fico-live-indicator__arrow { transform:rotate(90deg); justify-self:center; }
  .fico-live-commitments { grid-template-columns:1fr; }
  .fico-indicator-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fico-data-archive-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  .fico-live-indicator__header { flex-direction:column; gap:.7rem; }
  .fico-live-indicator__step { min-height:130px; }
  .fico-indicator-cards,.fico-data-archive-grid,.fico-data-triptych,.fico-commitment-detail-grid { grid-template-columns:1fr; }
  .fico-data-triptych > div,.fico-commitment-detail-grid > div { border-right:0; border-bottom:1px solid var(--fico-border); }
  .fico-data-triptych > div:last-child,.fico-commitment-detail-grid > div:last-child { border-bottom:0; }
  .fico-live-commitment__source { align-items:flex-start; flex-direction:column; }
}


/* ===== FICO v0.5.1 · Home structure + project card fixes ===== */
/* The front-page template now provides .fico-home, so the Home no longer needs
   one giant wrapper block. Every section can live at page root in Gutenberg. */
.fico-home > .wp-block-group.alignwide.is-style-fico-section {
  width:min(calc(100% - 40px), var(--fico-container));
  margin-inline:auto;
}

/* Project cards keep a natural reading flow: title → description → CTA → data. */
.fico-home .wp-block-query .wp-block-post-title a { text-decoration:none; }
.fico-home .wp-block-query .wp-block-post-excerpt p { color:var(--fico-white); }
.fico-home .wp-block-query .wp-block-post-excerpt__more-link { color:var(--fico-lime); font-weight:900; }
.fico-home .wp-block-query .fico-project-card-meta { margin-top:1.15rem; }
.fico-home .wp-block-query .fico-project-card-cut { margin-top:.7rem !important; }

@media (min-width:981px) {
  .fico-home .wp-block-query .wp-block-post-template > li > .wp-block-group { min-height:100%; }
}

@media (max-width:640px) {
  .fico-home > .wp-block-group.alignwide.is-style-fico-section { width:min(calc(100% - 28px), var(--fico-container)); }
}

/* ===== FICO v0.5.2 · Responsive cards + lime button contrast ===== */
/* Lime is a light accent. Any CTA using the default/lime fill must use navy text,
   even when an older Gutenberg block saved white as an inline/text preset. */
body.fico-site .wp-block-button:not(.is-style-outline) .wp-block-button__link:not(.has-background),
body.fico-site .wp-block-button .wp-block-button__link.has-lime-background-color,
body.fico-site .wp-element-button.has-lime-background-color,
body.fico-site .has-lime-background-color:is(a,button),
.editor-styles-wrapper .wp-block-button:not(.is-style-outline) .wp-block-button__link:not(.has-background),
.editor-styles-wrapper .wp-block-button .wp-block-button__link.has-lime-background-color,
.editor-styles-wrapper .wp-element-button.has-lime-background-color {
  color: var(--fico-navy, #051B32) !important;
}

/* Home KPI values can wrap at natural spaces; never allow one card to paint over
   its neighbour. Four columns are kept only when there is enough real width. */
#medellin-hoy .wp-block-column,
#medellin-hoy .fico-kpi,
#medellin-hoy .fico-kpi__value { min-width:0; max-width:100%; }
.fico-kpi__value {
  white-space: normal !important;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  text-wrap: balance;
  font-size: clamp(1.85rem, 2.4vw, 3.15rem);
}
@media (max-width:1120px) {
  #medellin-hoy .wp-block-columns { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fico-kpi { min-height:140px; }
}
@media (max-width:640px) {
  #medellin-hoy .wp-block-columns { grid-template-columns:1fr; }
}

/* Project card data: use the available space instead of reserving three narrow
   columns when only two values exist. Long values wrap only at sensible spaces. */
.fico-project-card-meta {
  grid-template-columns:repeat(auto-fit,minmax(min(100%,7.75rem),1fr));
  align-items:stretch;
}
.fico-project-card-meta > div {
  min-width:0;
  overflow:hidden;
}
.fico-project-card-meta strong {
  max-width:100%;
  font-size:clamp(.76rem,.82vw,.94rem);
  line-height:1.22;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  text-wrap:pretty;
}
.fico-project-card-meta span { line-height:1.25; }

/* Keep cards resilient when a title or excerpt is longer than the others. */
.fico-home .wp-block-query .wp-block-post-template > li,
.fico-home .wp-block-query .wp-block-post-template > li > .wp-block-group { min-width:0; }
.fico-home .wp-block-query .wp-block-post-title,
.fico-home .wp-block-query .wp-block-post-title a,
.fico-home .wp-block-query .wp-block-post-excerpt,
.fico-home .wp-block-query .wp-block-post-excerpt__excerpt {
  max-width:100%;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}

/* Dynamic indicator values should not split letters in labels such as "Por cargar". */
.fico-live-indicator__step strong,
.fico-data-triptych strong,
.fico-indicator-card__value {
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}

/* At medium widths, give the live data cards more breathing room before they
   become truly mobile. */
@media (max-width:1120px) and (min-width:981px) {
  .fico-live-commitments { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fico-live-commitment:last-child:nth-child(odd) { grid-column:1 / -1; }
}

/* ===== FICO v0.5.3 · Definitive filled button contrast =====
   All default filled Gutenberg buttons use the FICO lime background from theme.json,
   so force dark navy text regardless of saved Gutenberg text preset/global styles.
   Outline buttons are intentionally excluded and keep their light text. */
body.fico-site .wp-block-button:not(.is-style-outline) > .wp-block-button__link,
body.fico-site .wp-block-button:not(.is-style-outline) > a.wp-element-button,
body.fico-site a.wp-block-button__link:not(.is-style-outline),
.editor-styles-wrapper .wp-block-button:not(.is-style-outline) > .wp-block-button__link,
.editor-styles-wrapper .wp-block-button:not(.is-style-outline) > a.wp-element-button {
  color: #051B32 !important;
  -webkit-text-fill-color: #051B32 !important;
}

body.fico-site .wp-block-button:not(.is-style-outline) > .wp-block-button__link *,
.editor-styles-wrapper .wp-block-button:not(.is-style-outline) > .wp-block-button__link * {
  color: #051B32 !important;
  -webkit-text-fill-color: #051B32 !important;
}

/* Preserve white/light text for outlined buttons. */
body.fico-site .wp-block-button.is-style-outline > .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-outline > .wp-block-button__link {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* ===== FICO v0.7.0 · Relationships + Medellín territorial ===== */
.fico-related-wrap { padding-top:1rem; }
.fico-related { margin:clamp(3rem,7vw,6rem) 0; padding-top:clamp(2rem,4vw,3.5rem); border-top:1px solid var(--fico-border); }
.fico-related > h2 { margin:.35rem 0 1.5rem; font-size:clamp(1.7rem,3vw,3rem); letter-spacing:-.04em; }
.fico-related-territory-chips { display:flex; flex-wrap:wrap; gap:.75rem; }
.fico-related-territory-chips a { display:grid; gap:.15rem; min-width:180px; padding:1rem 1.15rem; border:1px solid var(--fico-border); border-radius:var(--fico-card-radius,14px); background:var(--fico-card); text-decoration:none; }
.fico-related-territory-chips span { color:var(--fico-muted); font-size:.68rem; text-transform:uppercase; letter-spacing:.06em; }
.fico-related-territory-chips strong { font-size:1rem; }
.fico-related-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.fico-related-card { overflow:hidden; border:1px solid var(--fico-border); border-radius:var(--fico-card-radius,14px); background:var(--fico-card); }
.fico-related-card__media { display:block; text-decoration:none; }
.fico-related-card__media img,.fico-related-card__media .fico-media-placeholder { width:100%; aspect-ratio:16/9; min-height:0; object-fit:cover; border:0; border-radius:0; border-bottom:1px solid var(--fico-border); }
.fico-related-card__body { padding:1.25rem; }
.fico-related-card__body h3 { margin:.8rem 0 .65rem; font-size:1.25rem; line-height:1.15; }
.fico-related-card__body h3 a { text-decoration:none; }
.fico-related-card__body p { color:var(--fico-muted); font-size:.86rem; line-height:1.6; }
.fico-related-card__body small { display:block; margin-top:1rem; color:var(--fico-lime); font-weight:900; }
.fico-related-indicator-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.fico-related-indicator { display:flex; min-height:190px; flex-direction:column; padding:1.25rem; border:1px solid var(--fico-border); border-radius:var(--fico-card-radius,14px); background:var(--fico-card); text-decoration:none; }
.fico-related-indicator > span { color:var(--fico-cyan); font-size:.68rem; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.fico-related-indicator > strong { margin:.65rem 0; font-size:clamp(2rem,3.5vw,3.8rem); line-height:1; letter-spacing:-.05em; }
.fico-related-indicator > b { margin-top:auto; }
.fico-related-indicator > small { margin-top:.4rem; color:var(--fico-muted); }
.fico-related-commitment-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.fico-related-commitment { display:flex; flex-direction:column; min-height:220px; padding:1.25rem; border:1px solid var(--fico-border); border-radius:var(--fico-card-radius,14px); background:var(--fico-card); text-decoration:none; }
.fico-related-commitment > strong { margin:1rem 0 .7rem; font-size:1.2rem; line-height:1.15; }
.fico-related-commitment p { color:var(--fico-muted); font-size:.84rem; line-height:1.55; }
.fico-related-commitment small { margin-top:auto; padding-top:1rem; color:var(--fico-cyan); font-weight:900; }

.fico-territory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.fico-territory-card { display:flex; min-height:230px; flex-direction:column; padding:1.4rem; border:1px solid var(--fico-border); border-radius:var(--fico-card-radius,14px); background:var(--fico-card); text-decoration:none; }
.fico-territory-card__type { color:var(--fico-cyan); font-size:.7rem; font-weight:900; text-transform:uppercase; letter-spacing:.07em; }
.fico-territory-card > strong { margin:.5rem 0 1.3rem; font-size:clamp(1.35rem,2vw,2rem); line-height:1.08; letter-spacing:-.025em; }
.fico-territory-card__facts { display:grid; gap:.5rem; color:var(--fico-muted); font-size:.78rem; }
.fico-territory-card__facts b { color:var(--fico-white); margin-right:.35rem; }
.fico-territory-card__cta { margin-top:auto; padding-top:1.5rem; color:var(--fico-lime); font-weight:900; font-size:.82rem; }
.fico-territory-archive { padding-top:clamp(4rem,8vw,8rem); padding-bottom:clamp(5rem,8vw,8rem); }
.fico-territory-hero { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(2rem,6vw,6rem); align-items:center; padding-top:clamp(4rem,8vw,8rem); padding-bottom:clamp(3rem,6vw,6rem); }
.fico-territory-hero__copy h1 { margin:.75rem 0 1.2rem; font-size:clamp(3.5rem,8vw,8rem); line-height:.92; letter-spacing:-.06em; }
.fico-territory-hero__copy > p:last-child { color:var(--fico-muted); max-width:54ch; font-size:clamp(1rem,1.5vw,1.35rem); }
.fico-territory-hero__media img,.fico-territory-hero__media .fico-media-placeholder { width:100%; aspect-ratio:4/3; min-height:0; object-fit:cover; }
.fico-territory-snapshot { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--fico-border); border-bottom:1px solid var(--fico-border); }
.fico-territory-snapshot > div { min-height:130px; padding:1.35rem; border-right:1px solid var(--fico-border); }
.fico-territory-snapshot > div:last-child { border-right:0; }
.fico-territory-snapshot span,.fico-territory-snapshot strong { display:block; }
.fico-territory-snapshot span { color:var(--fico-muted); font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; }
.fico-territory-snapshot strong { margin-top:.7rem; font-size:clamp(1.35rem,2vw,2rem); line-height:1.1; }
.fico-territory-editorial { padding-top:clamp(3rem,6vw,6rem); }
.fico-territories-live-section .fico-territory-grid { margin-top:2rem; }

@media (max-width:1100px) {
  .fico-related-card-grid,.fico-related-indicator-grid,.fico-related-commitment-grid,.fico-territory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fico-territory-hero { grid-template-columns:1fr; }
  .fico-territory-snapshot { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fico-territory-snapshot > div:nth-child(2) { border-right:0; }
  .fico-territory-snapshot > div:nth-child(-n+2) { border-bottom:1px solid var(--fico-border); }
}
@media (max-width:700px) {
  .fico-related-card-grid,.fico-related-indicator-grid,.fico-related-commitment-grid,.fico-territory-grid { grid-template-columns:1fr; }
  .fico-related-territory-chips a { width:100%; }
  .fico-territory-snapshot { grid-template-columns:1fr; }
  .fico-territory-snapshot > div { border-right:0; border-bottom:1px solid var(--fico-border); }
  .fico-territory-snapshot > div:last-child { border-bottom:0; }
}

/* ===== FICO v0.8.0 · Mapa Medellín en Hechos ===== */
.fico-territory-explorer { margin-top:2rem; }
.fico-territory-explorer__toolbar { display:flex; justify-content:space-between; gap:1rem; align-items:center; margin-bottom:1rem; }
.fico-territory-filter { display:flex; flex-wrap:wrap; gap:.5rem; }
.fico-territory-filter button { appearance:none; border:1px solid var(--fico-border); border-radius:999px; background:transparent; color:var(--fico-muted); padding:.65rem .9rem; font:inherit; font-size:.76rem; font-weight:800; cursor:pointer; }
.fico-territory-filter button:hover,.fico-territory-filter button:focus-visible,.fico-territory-filter button.is-active { border-color:var(--fico-lime); color:var(--fico-navy); background:var(--fico-lime); }
.fico-territory-search { width:min(380px,100%); }
.fico-territory-search input { width:100%; border:1px solid var(--fico-border); border-radius:var(--fico-button-radius,8px); background:var(--fico-card); color:var(--fico-white); padding:.8rem 1rem; font:inherit; }
.fico-territory-search input::placeholder { color:var(--fico-muted); }
.fico-territory-explorer__stage { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr); gap:1rem; align-items:stretch; }
.fico-territory-map { min-height:520px; position:relative; overflow:hidden; border:1px solid var(--fico-border); border-radius:var(--fico-card-radius,14px); background:radial-gradient(circle at 72% 42%,rgba(25,188,232,.09),transparent 34%),radial-gradient(circle at 35% 62%,rgba(207,223,34,.07),transparent 28%),var(--fico-card); }
.fico-territory-map svg,.fico-territory-mini-map svg { width:100%; height:100%; display:block; }
.fico-territory-map__message { position:absolute; inset:auto 1.5rem 1.5rem; max-width:520px; color:var(--fico-muted); font-size:.78rem; line-height:1.5; pointer-events:none; }
.fico-map-shape { fill:rgba(10,39,68,.85); stroke:rgba(170,184,200,.42); stroke-width:1.5; transition:fill .18s ease,stroke .18s ease,opacity .18s ease,filter .18s ease; cursor:pointer; }
.fico-map-shape--comuna:hover,.fico-map-shape--comuna:focus,.fico-map-shape--comuna.is-selected { fill:rgba(25,188,232,.46); stroke:var(--fico-cyan); filter:drop-shadow(0 0 5px rgba(25,188,232,.28)); outline:none; }
.fico-map-shape--corregimiento { fill:rgba(207,223,34,.08); }
.fico-map-shape--corregimiento:hover,.fico-map-shape--corregimiento:focus,.fico-map-shape--corregimiento.is-selected { fill:rgba(207,223,34,.36); stroke:var(--fico-lime); filter:drop-shadow(0 0 5px rgba(207,223,34,.24)); outline:none; }
.fico-map-shape.is-filtered-out { opacity:.08; pointer-events:none; }
.fico-territory-focus { display:flex; flex-direction:column; min-height:520px; padding:clamp(1.4rem,2.6vw,2.2rem); border:1px solid var(--fico-border); border-radius:var(--fico-card-radius,14px); background:var(--fico-card); }
.fico-territory-focus h3 { margin:.35rem 0 .8rem; font-size:clamp(1.8rem,3vw,3.5rem); line-height:1; letter-spacing:-.045em; }
.fico-territory-focus > p:not(.fico-eyebrow) { color:var(--fico-muted); line-height:1.6; }
.fico-territory-focus__facts { display:grid; gap:.7rem; margin:1.5rem 0; }
.fico-territory-focus__facts span { display:grid; gap:.12rem; padding:.85rem 0; border-top:1px solid rgba(255,255,255,.08); color:var(--fico-muted); font-size:.78rem; }
.fico-territory-focus__facts b { color:var(--fico-white); font-size:1.15rem; }
.fico-territory-focus__link { margin-top:auto; color:var(--fico-lime); font-weight:900; text-decoration:none; }
.fico-territory-explorer__list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.7rem; margin-top:1rem; }
.fico-territory-explorer__item { min-height:128px; display:flex; flex-direction:column; padding:1rem; border:1px solid var(--fico-border); border-radius:var(--fico-card-radius,14px); background:rgba(10,39,68,.68); text-decoration:none; transition:border .18s ease,transform .18s ease,background .18s ease; }
.fico-territory-explorer__item:hover,.fico-territory-explorer__item:focus-visible,.fico-territory-explorer__item.is-selected { border-color:var(--fico-cyan); background:var(--fico-card); transform:translateY(-2px); outline:none; }
.fico-territory-explorer__item > span { color:var(--fico-cyan); font-size:.66rem; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.fico-territory-explorer__item > strong { margin:.35rem 0 .75rem; font-size:1rem; line-height:1.16; }
.fico-territory-explorer__item > small { margin-top:auto; color:var(--fico-muted); font-size:.67rem; line-height:1.4; }
.fico-territory-explorer__item[hidden] { display:none !important; }
.fico-territory-explorer.is-compact .fico-territory-explorer__list { display:none; }
.fico-territory-explorer.is-compact .fico-territory-map,.fico-territory-explorer.is-compact .fico-territory-focus { min-height:440px; }

.fico-territory-mini-map { width:100%; aspect-ratio:4/3; min-height:0; position:relative; overflow:hidden; border:1px solid var(--fico-border); border-radius:var(--fico-card-radius,14px); background:radial-gradient(circle at 55% 50%,rgba(25,188,232,.1),transparent 38%),var(--fico-card); }
.fico-territory-mini-map .fico-map-shape { fill:rgba(10,39,68,.55); stroke:rgba(170,184,200,.2); cursor:default; pointer-events:none; }
.fico-territory-mini-map .fico-map-shape.is-selected { fill:rgba(25,188,232,.52); stroke:var(--fico-lime); stroke-width:3; filter:drop-shadow(0 0 7px rgba(207,223,34,.22)); }
.fico-territory-mini-map__label { position:absolute; left:1rem; bottom:1rem; padding:.45rem .65rem; border-radius:999px; background:rgba(5,27,50,.88); color:var(--fico-muted); font-size:.65rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }

/* Reduce dead space on data pages when Gutenberg editorial body is empty. */
.fico-territory-editorial:empty { display:none; }
.fico-territory-page .fico-related-wrap { padding-top:0; }
.fico-territory-page .fico-related { margin:clamp(2.3rem,5vw,4.2rem) 0; }
.fico-territory-page .fico-project-source { margin-top:clamp(2.5rem,5vw,4.5rem); }

@media (max-width:1100px) {
  .fico-territory-explorer__list { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:860px) {
  .fico-territory-explorer__toolbar { align-items:stretch; flex-direction:column; }
  .fico-territory-search { width:100%; }
  .fico-territory-explorer__stage { grid-template-columns:1fr; }
  .fico-territory-map,.fico-territory-focus { min-height:380px; }
  .fico-territory-focus { min-height:0; }
  .fico-territory-explorer__list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:560px) {
  .fico-territory-map { min-height:340px; }
  .fico-territory-explorer__list { grid-template-columns:1fr; }
  .fico-territory-filter { display:grid; grid-template-columns:1fr 1fr 1fr; }
  .fico-territory-filter button { padding:.6rem .45rem; font-size:.68rem; }
}

/* Accessibility utility used by custom controls. */
.screen-reader-text { position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.screen-reader-text:focus { position:fixed !important; z-index:100000; left:1rem; top:1rem; width:auto; height:auto; margin:0; clip:auto; padding:.75rem 1rem; background:var(--fico-white); color:var(--fico-navy); }

/* Sprint 3.3 · territorial data layers */
.fico-territory-view-switch{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:-.2rem 0 1rem;color:var(--fico-muted);font-size:.72rem}
.fico-territory-view-switch>span{margin-right:.15rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.fico-territory-view-switch button{appearance:none;border:1px solid var(--fico-border);background:transparent;color:var(--fico-cyan);border-radius:999px;padding:.48rem .78rem;font:inherit;font-weight:900;cursor:pointer}
.fico-territory-view-switch button:hover,.fico-territory-view-switch button:focus-visible,.fico-territory-view-switch button.is-active{background:var(--fico-card);border-color:var(--fico-cyan);color:var(--fico-white);outline:none}
.fico-territory-map.is-mode-investment .fico-map-shape,.fico-territory-map.is-mode-projects .fico-map-shape{fill:var(--fico-map-fill,rgba(120,145,163,.10));}
.fico-territory-map.is-mode-investment .fico-map-shape:hover,.fico-territory-map.is-mode-investment .fico-map-shape:focus,.fico-territory-map.is-mode-investment .fico-map-shape.is-selected{stroke:var(--fico-lime);stroke-width:2;filter:drop-shadow(0 0 6px rgba(207,223,34,.35));}
.fico-territory-map.is-mode-projects .fico-map-shape:hover,.fico-territory-map.is-mode-projects .fico-map-shape:focus,.fico-territory-map.is-mode-projects .fico-map-shape.is-selected{stroke:var(--fico-cyan);stroke-width:2;filter:drop-shadow(0 0 6px rgba(25,188,232,.35));}
.fico-territory-map__legend{position:absolute;left:1rem;bottom:1rem;z-index:3;min-width:220px;padding:.7rem .85rem;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(5,27,50,.88);backdrop-filter:blur(8px);color:var(--fico-muted);font-size:.66rem}
.fico-territory-map__legend>span{display:block;margin-bottom:.4rem;color:var(--fico-white);font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.fico-territory-map__legend>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem}
.fico-territory-map__legend b{color:var(--fico-white);font-weight:700}
.fico-territory-map__legend i{display:block;height:7px;border-radius:999px;background:linear-gradient(90deg,rgba(120,145,163,.16),var(--fico-lime))}
.fico-territory-map.is-mode-projects .fico-territory-map__legend i{background:linear-gradient(90deg,rgba(120,145,163,.16),var(--fico-cyan))}
.fico-territory-focus__facts small{display:block;margin-top:.2rem;color:var(--fico-cyan);font-size:.66rem;font-weight:500}
@media (max-width:767px){.fico-territory-view-switch{gap:.35rem}.fico-territory-view-switch>span{width:100%;margin-bottom:.2rem}.fico-territory-map__legend{right:1rem;min-width:0}}
.fico-territory-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.fico-source-card__type{display:block;margin-bottom:.3rem;color:var(--fico-cyan);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
@media(max-width:767px){.fico-territory-source-grid{grid-template-columns:1fr}}

/* Sprint 3.3 · Inversión territorial histórica */
.fico-territory-snapshot small{display:block;margin-top:.45rem;color:var(--fico-muted);font-size:.68rem}
.fico-territory-investment{padding-top:clamp(3.2rem,6vw,6rem);padding-bottom:clamp(3.2rem,6vw,6rem);border-bottom:1px solid var(--fico-border)}
.fico-territory-investment__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.32fr);gap:clamp(1.5rem,4vw,4rem);align-items:end;margin-bottom:2rem}
.fico-territory-investment__head h2{margin:.35rem 0 .8rem;font-size:clamp(2rem,4.2vw,4.4rem);line-height:.95;letter-spacing:-.045em}
.fico-territory-investment__head>div:first-child>p:last-child{max-width:72ch;color:var(--fico-muted)}
.fico-territory-investment__share{padding:1.2rem;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,12px);background:var(--fico-card)}
.fico-territory-investment__share strong,.fico-territory-investment__share span{display:block}
.fico-territory-investment__share strong{color:var(--fico-lime);font-size:clamp(2rem,3vw,3.4rem);line-height:1}
.fico-territory-investment__share span{margin-top:.6rem;color:var(--fico-muted);font-size:.76rem;line-height:1.45}
.fico-territory-investment__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.fico-territory-investment__grid article{padding:1.4rem;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,12px);background:var(--fico-card)}
.fico-territory-investment__grid span,.fico-territory-investment__grid strong{display:block}
.fico-territory-investment__grid span{color:var(--fico-cyan);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.055em}
.fico-territory-investment__grid strong{margin:.55rem 0 .8rem;font-size:clamp(1.6rem,2.7vw,2.8rem);line-height:1;color:var(--fico-white)}
.fico-territory-investment__grid p{margin:0;color:var(--fico-muted);font-size:.84rem;line-height:1.55}
.fico-territory-investment__note{margin:1rem 0 0;color:var(--fico-muted);font-size:.72rem;line-height:1.5}
@media(max-width:900px){.fico-territory-investment__head{grid-template-columns:1fr}.fico-territory-investment__share{max-width:360px}.fico-territory-investment__grid{grid-template-columns:1fr}}

/* Sprint 3.4 · Explorador territorial y detalle de inversión por dependencia */
.fico-territory-tools{display:flex;align-items:flex-end;gap:.65rem;flex-wrap:wrap;margin-left:auto}
.fico-territory-sort{display:grid;gap:.25rem;min-width:190px;color:var(--fico-muted);font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.fico-territory-sort select{min-height:44px;padding:.55rem .8rem;border:1px solid var(--fico-border);border-radius:8px;background:var(--fico-white);color:var(--fico-navy);font:inherit;font-size:.75rem;text-transform:none;letter-spacing:0;cursor:pointer}
.fico-territory-explorer__item-facts{display:flex;gap:.35rem .55rem;flex-wrap:wrap;margin-top:auto}
.fico-territory-explorer__item-facts small{color:var(--fico-muted);font-size:.64rem;line-height:1.35}
.fico-territory-explorer__item-facts small.is-investment{color:var(--fico-lime);font-weight:800}

.fico-territory-spending-wrap{padding-top:clamp(3.2rem,6vw,6rem);padding-bottom:clamp(3.2rem,6vw,6rem);border-bottom:1px solid var(--fico-border)}
.fico-territory-spending__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.34fr);gap:clamp(1.5rem,4vw,4rem);align-items:end;margin-bottom:2rem}
.fico-territory-spending__head h2{margin:.35rem 0 .8rem;font-size:clamp(2rem,4.2vw,4.4rem);line-height:.95;letter-spacing:-.045em}
.fico-territory-spending__head>div:first-child>p:last-child{max-width:74ch;color:var(--fico-muted);line-height:1.65}
.fico-territory-spending__total{padding:1.25rem;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,12px);background:var(--fico-card)}
.fico-territory-spending__total span,.fico-territory-spending__total strong{display:block}
.fico-territory-spending__total span{color:var(--fico-cyan);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.fico-territory-spending__total strong{margin-top:.55rem;color:var(--fico-white);font-size:clamp(1.8rem,3vw,3.2rem);line-height:1}
.fico-territory-spending__rows{display:grid;gap:.7rem}
.fico-spending-row{padding:1rem 1.1rem;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,12px);background:rgba(10,39,68,.62)}
.fico-spending-row__top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:end}
.fico-spending-row__top strong{font-size:.95rem;line-height:1.35}
.fico-spending-row__top span{color:var(--fico-white);font-size:1rem;font-weight:900;white-space:nowrap}
.fico-spending-row__bar{height:7px;margin:.65rem 0;background:rgba(170,184,200,.13);border-radius:999px;overflow:hidden}
.fico-spending-row__bar i{display:block;height:100%;min-width:4px;border-radius:inherit;background:linear-gradient(90deg,var(--fico-cyan),var(--fico-lime))}
.fico-spending-row__meta{display:flex;justify-content:space-between;gap:.8rem;flex-wrap:wrap;color:var(--fico-muted);font-size:.66rem}
.fico-spending-row__projects{margin-top:.8rem;padding-top:.7rem;border-top:1px solid rgba(255,255,255,.07)}
.fico-spending-row__projects summary{color:var(--fico-lime);font-size:.72rem;font-weight:900;cursor:pointer;list-style:none}
.fico-spending-row__projects summary::-webkit-details-marker{display:none}
.fico-spending-row__projects summary::after{content:" +"}
.fico-spending-row__projects[open] summary::after{content:" –"}
.fico-spending-row__projects>div{display:grid;gap:.45rem;margin-top:.7rem}
.fico-spending-row__projects p{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:.7rem;align-items:start;margin:0;padding:.6rem .7rem;border-radius:8px;background:rgba(5,27,50,.58);font-size:.7rem}
.fico-spending-row__projects p span{color:var(--fico-cyan);font-weight:800}
.fico-spending-row__projects p strong{font-weight:500;line-height:1.45}
.fico-spending-row__projects p b{white-space:nowrap}
.fico-territory-spending__note{margin:1rem 0 0;color:var(--fico-muted);font-size:.72rem}
.fico-territory-spending__source{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-top:1.4rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08);color:var(--fico-muted);font-size:.7rem}
.fico-territory-spending__source a{color:var(--fico-lime);font-weight:900;text-decoration:none;white-space:nowrap}

@media(max-width:900px){
  .fico-territory-tools{width:100%;margin-left:0}
  .fico-territory-search,.fico-territory-sort{flex:1 1 240px;width:auto}
  .fico-territory-spending__head{grid-template-columns:1fr}
  .fico-territory-spending__total{max-width:380px}
}
@media(max-width:620px){
  .fico-spending-row__top{grid-template-columns:1fr}
  .fico-spending-row__top span{white-space:normal}
  .fico-spending-row__projects p{grid-template-columns:1fr}
  .fico-territory-spending__source{align-items:flex-start;flex-direction:column}
}

/* v0.12 · Histórico y corte territorial 2026 */
.fico-territory-investment.is-current{border-top:1px solid var(--fico-border)}
.fico-territory-investment-history{margin-top:1.25rem;margin-bottom:0;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);background:rgba(10,39,68,.36);overflow:hidden}
.fico-territory-investment-history>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.2rem;cursor:pointer;list-style:none;color:var(--fico-white)}
.fico-territory-investment-history>summary::-webkit-details-marker{display:none}
.fico-territory-investment-history>summary span{color:var(--fico-cyan);font-size:.7rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.fico-territory-investment-history>summary strong{font-size:.95rem}
.fico-territory-investment-history>summary:after{content:'+';color:var(--fico-lime);font-size:1.35rem;font-weight:900;margin-left:auto}
.fico-territory-investment-history[open]>summary:after{content:'–'}
.fico-territory-investment-history .fico-territory-investment{padding:clamp(2rem,4vw,4rem) 1.2rem 1.4rem;border-top:1px solid var(--fico-border);border-bottom:0}
@media(max-width:720px){.fico-territory-investment-history>summary{align-items:flex-start;flex-direction:column}.fico-territory-investment-history>summary:after{position:absolute;right:1.2rem}}


/* v0.13 · Diferenciación visual por vigencia territorial */
.fico-territory-snapshot>.is-investment-year{position:relative;background:color-mix(in srgb,var(--fico-year-color) 5%,transparent)}
.fico-territory-snapshot>.is-investment-year:before{content:"";position:absolute;left:0;right:0;top:-1px;height:3px;background:var(--fico-year-color)}
.fico-territory-snapshot>.is-year-2025{--fico-year-color:var(--fico-investment-2025)}
.fico-territory-snapshot>.is-year-2026{--fico-year-color:var(--fico-investment-2026)}
.fico-territory-snapshot>.is-investment-year>span,.fico-territory-snapshot>.is-investment-year>small{color:var(--fico-year-color)}

.fico-territory-investment.is-year-2026{--fico-year-color:var(--fico-investment-2026);border-top:3px solid var(--fico-year-color);background:linear-gradient(180deg,color-mix(in srgb,var(--fico-year-color) 4%,transparent),transparent 34%)}
.fico-territory-investment.is-year-2025{--fico-year-color:var(--fico-investment-2025)}
.fico-territory-investment.is-year-2026 .fico-eyebrow,
.fico-territory-investment.is-year-2026 .fico-territory-investment__grid span,
.fico-territory-investment.is-year-2026 .fico-territory-investment__share strong{color:var(--fico-year-color)}
.fico-territory-investment.is-year-2026 .fico-territory-investment__grid article,
.fico-territory-investment.is-year-2026 .fico-territory-investment__share{border-top:2px solid color-mix(in srgb,var(--fico-year-color) 78%,var(--fico-border))}

.fico-territory-investment-history.is-year-2025{--fico-year-color:var(--fico-investment-2025);border-color:color-mix(in srgb,var(--fico-year-color) 40%,var(--fico-border));background:color-mix(in srgb,var(--fico-year-color) 4%,rgba(10,39,68,.36))}
.fico-territory-investment-history.is-year-2025>summary{box-shadow:inset 4px 0 0 var(--fico-year-color)}
.fico-territory-investment-history.is-year-2025>summary span,
.fico-territory-investment-history.is-year-2025>summary:after{color:var(--fico-year-color)}
.fico-territory-investment-history.is-year-2025 .fico-territory-investment__grid span,
.fico-territory-investment-history.is-year-2025 .fico-territory-investment__share strong,
.fico-territory-investment-history.is-year-2025 .fico-eyebrow{color:var(--fico-year-color)}
.fico-territory-investment-history.is-year-2025 .fico-territory-investment__grid article,
.fico-territory-investment-history.is-year-2025 .fico-territory-investment__share{border-top:2px solid color-mix(in srgb,var(--fico-year-color) 72%,var(--fico-border))}

.fico-source-card.is-year-2025{--fico-year-color:var(--fico-investment-2025);border-top:3px solid var(--fico-year-color)}
.fico-source-card.is-year-2026{--fico-year-color:var(--fico-investment-2026);border-top:3px solid var(--fico-year-color)}
.fico-source-card.is-year-2025 .fico-source-card__type,.fico-source-card.is-year-2026 .fico-source-card__type{color:var(--fico-year-color)}
.fico-source-card.is-year-2025 a{color:var(--fico-investment-2025)}
.fico-source-card.is-year-2026 a{color:var(--fico-investment-2026)}

.fico-territory-view-switch button[data-map-mode="investment_2025"]{color:var(--fico-investment-2025);border-color:color-mix(in srgb,var(--fico-investment-2025) 45%,var(--fico-border))}
.fico-territory-view-switch button[data-map-mode="investment_2026"]{color:var(--fico-investment-2026);border-color:color-mix(in srgb,var(--fico-investment-2026) 45%,var(--fico-border))}
.fico-territory-view-switch button[data-map-mode="investment_2025"]:hover,
.fico-territory-view-switch button[data-map-mode="investment_2025"]:focus-visible,
.fico-territory-view-switch button[data-map-mode="investment_2025"].is-active{background:var(--fico-investment-2025);border-color:var(--fico-investment-2025);color:var(--fico-navy)}
.fico-territory-view-switch button[data-map-mode="investment_2026"]:hover,
.fico-territory-view-switch button[data-map-mode="investment_2026"]:focus-visible,
.fico-territory-view-switch button[data-map-mode="investment_2026"].is-active{background:var(--fico-investment-2026);border-color:var(--fico-investment-2026);color:var(--fico-navy)}
.fico-territory-map.is-mode-investment-2025 .fico-map-shape:hover,.fico-territory-map.is-mode-investment-2025 .fico-map-shape:focus,.fico-territory-map.is-mode-investment-2025 .fico-map-shape.is-selected{stroke:var(--fico-investment-2025);filter:drop-shadow(0 0 6px color-mix(in srgb,var(--fico-investment-2025) 45%,transparent))}
.fico-territory-map.is-mode-investment-2026 .fico-map-shape:hover,.fico-territory-map.is-mode-investment-2026 .fico-map-shape:focus,.fico-territory-map.is-mode-investment-2026 .fico-map-shape.is-selected{stroke:var(--fico-investment-2026);filter:drop-shadow(0 0 6px color-mix(in srgb,var(--fico-investment-2026) 45%,transparent))}
.fico-territory-map.is-mode-investment-2025 .fico-territory-map__legend i{background:linear-gradient(90deg,rgba(120,145,163,.16),var(--fico-investment-2025))}
.fico-territory-map.is-mode-investment-2026 .fico-territory-map__legend i{background:linear-gradient(90deg,rgba(120,145,163,.16),var(--fico-investment-2026))}
.fico-territory-map.is-mode-investment-2025 .fico-territory-map__legend>span{color:var(--fico-investment-2025)}
.fico-territory-map.is-mode-investment-2026 .fico-territory-map__legend>span{color:var(--fico-investment-2026)}


/* =========================================================
   Sprint 3.6 · detalle territorial multi-vigencia
   ========================================================= */
.fico-territory-spending__switch{display:flex;gap:.6rem;flex-wrap:wrap;margin:0 0 1.35rem}
.fico-territory-spending__switch button{appearance:none;border:1px solid var(--fico-border);background:transparent;color:var(--fico-muted);border-radius:999px;padding:.65rem 1rem;font:inherit;font-weight:900;cursor:pointer;transition:.2s ease}
.fico-territory-spending__switch button.is-year-2025{color:var(--fico-investment-2025);border-color:color-mix(in srgb,var(--fico-investment-2025) 48%,var(--fico-border))}
.fico-territory-spending__switch button.is-year-2026{color:var(--fico-investment-2026);border-color:color-mix(in srgb,var(--fico-investment-2026) 48%,var(--fico-border))}
.fico-territory-spending__switch button.is-year-2025.is-active{background:var(--fico-investment-2025);border-color:var(--fico-investment-2025);color:var(--fico-navy)}
.fico-territory-spending__switch button.is-year-2026.is-active{background:var(--fico-investment-2026);border-color:var(--fico-investment-2026);color:var(--fico-navy)}
.fico-territory-spending__panel{--fico-year-color:var(--fico-cyan);border-top:2px solid var(--fico-year-color);padding-top:1.4rem}
.fico-territory-spending__panel.is-year-2025{--fico-year-color:var(--fico-investment-2025)}
.fico-territory-spending__panel.is-year-2026{--fico-year-color:var(--fico-investment-2026)}
.fico-territory-spending__panel .fico-eyebrow,.fico-territory-spending__panel .fico-territory-spending__total span{color:var(--fico-year-color)}
.fico-territory-spending__panel .fico-spending-row__bar i{background:linear-gradient(90deg,var(--fico-year-color),color-mix(in srgb,var(--fico-year-color) 60%,var(--fico-lime)))}
.fico-territory-spending__panel .fico-territory-spending__source a{color:var(--fico-year-color)}

/* =========================================================
   Sprint 4.1 · trayectoria pública estructurada
   ========================================================= */
.fico-public-timeline{position:relative;display:grid;gap:0;margin:2rem 0 0}
.fico-public-timeline:before{content:"";position:absolute;left:9.5rem;top:0;bottom:0;width:1px;background:var(--fico-border)}
.fico-public-timeline__item{--fico-accent:var(--fico-lime);position:relative;display:grid;grid-template-columns:7.5rem minmax(0,1fr);column-gap:3rem;padding:0 0 3.2rem}
.fico-public-timeline__marker{position:absolute;left:calc(9.5rem - 7px);top:.42rem;width:14px;height:14px;border-radius:50%;background:var(--fico-accent);box-shadow:0 0 0 6px var(--fico-navy)}
.fico-public-timeline__year{font-family:var(--wp--preset--font-family--poppins-black,Poppins,sans-serif);font-size:clamp(2rem,4vw,4rem);font-weight:900;line-height:.9;color:var(--fico-accent)}
.fico-public-timeline__item h3{font-size:clamp(1.55rem,2.8vw,2.7rem);line-height:1;margin:0 0 .5rem;color:var(--fico-white)}
.fico-public-timeline__label{margin:0 0 .8rem;color:var(--fico-cyan);font-weight:800;text-transform:uppercase;font-size:.72rem;letter-spacing:.05em}
.fico-public-timeline__excerpt{max-width:760px;color:var(--fico-muted);margin:.25rem 0 1rem}
.fico-public-timeline__link{display:inline-block;color:var(--fico-lime);font-weight:900;margin-top:.3rem}
.fico-public-timeline__image{display:block;max-width:720px;margin:1.1rem 0;border-radius:var(--fico-card-radius,14px);overflow:hidden}
.fico-public-timeline__image img{display:block;width:100%;height:auto}
.fico-public-timeline__source{font-size:.76rem;color:var(--fico-muted);margin-top:1rem}
.fico-public-timeline__source a{color:var(--fico-cyan)}
.fico-public-timeline.is-compact{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-top:2rem}
.fico-public-timeline.is-compact:before{left:0;right:0;top:10px;bottom:auto;width:auto;height:1px}
.fico-public-timeline.is-compact .fico-public-timeline__item{display:block;padding:2rem .75rem 0 0}
.fico-public-timeline.is-compact .fico-public-timeline__marker{left:0;top:4px}
.fico-public-timeline.is-compact .fico-public-timeline__year{font-size:1.15rem;line-height:1.1;color:var(--fico-white)}
.fico-public-timeline.is-compact .fico-public-timeline__item h3{font-size:.82rem;line-height:1.25;margin-top:.4rem}
.fico-public-timeline.is-compact .fico-public-timeline__label{font-size:.68rem;text-transform:none;color:var(--fico-muted);font-weight:400}
@media(max-width:900px){.fico-public-timeline.is-compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.fico-public-timeline.is-compact:before{display:none}.fico-public-timeline:before{left:6.5rem}.fico-public-timeline__item{grid-template-columns:5rem minmax(0,1fr);column-gap:2rem}.fico-public-timeline__marker{left:calc(6.5rem - 7px)}}
@media(max-width:620px){.fico-public-timeline:before{left:6px}.fico-public-timeline__item{display:block;padding:0 0 2.6rem 2rem}.fico-public-timeline__marker{left:0}.fico-public-timeline__year{font-size:1.15rem;margin-bottom:.5rem}.fico-public-timeline.is-compact{grid-template-columns:1fr 1fr}.fico-public-timeline.is-compact .fico-public-timeline__item{padding-left:1.7rem}.fico-public-timeline.is-compact .fico-public-timeline__marker{left:0}}

/* Sprint 4.1 · ficha individual de trayectoria */
.fico-milestone-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:clamp(2rem,6vw,7rem);align-items:center;padding-top:clamp(4rem,8vw,8rem);padding-bottom:clamp(4rem,8vw,7rem)}
.fico-milestone-year{font-family:var(--wp--preset--font-family--poppins-black,Poppins,sans-serif);font-weight:900;font-size:clamp(4rem,11vw,9rem);line-height:.78;color:var(--fico-accent);margin:1.2rem 0 1.5rem}
.fico-milestone-hero h1{font-size:clamp(2.8rem,6vw,5.8rem);line-height:.88;margin:.2rem 0 1rem}
.fico-milestone-label{color:var(--fico-cyan);font-weight:900;text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}
.fico-milestone-excerpt{font-size:clamp(1.05rem,1.8vw,1.4rem);color:var(--fico-muted);max-width:640px}
.fico-milestone-hero__media img{display:block;width:100%;height:auto;border-radius:var(--fico-card-radius,14px)}
.fico-milestone-editorial{max-width:960px;padding-top:clamp(2rem,5vw,4rem);padding-bottom:clamp(3rem,7vw,7rem)}
.fico-milestone-back{padding-top:1.5rem;padding-bottom:4rem}.fico-milestone-back a{color:var(--fico-lime);font-weight:900}
@media(max-width:900px){.fico-milestone-hero{grid-template-columns:1fr}.fico-milestone-hero__media{order:-1}}

/* --------------------------------------------------------------------------
   Sprint 4.2 · Ideas
   -------------------------------------------------------------------------- */
.fico-entry--titleless .fico-entry__header{display:none}
.fico-page-federico .fico-entry__content,
.fico-page-ideas .fico-entry__content{margin-top:0}

.fico-ideas-dynamic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}
.fico-idea-card{--fico-accent:var(--fico-lime);min-width:0}
.fico-idea-card__link{position:relative;display:flex;flex-direction:column;min-height:270px;height:100%;padding:1.6rem;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);background:rgba(10,39,68,.56);color:var(--fico-white);text-decoration:none;overflow:hidden;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.fico-idea-card__link:hover{transform:translateY(-3px);border-color:var(--fico-accent);background:rgba(10,39,68,.78)}
.fico-idea-card__line{position:absolute;left:0;right:0;top:0;height:3px;background:var(--fico-accent)}
.fico-idea-card__kicker{color:var(--fico-accent);font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-bottom:1.15rem}
.fico-idea-card h3{font-size:clamp(1.65rem,2.5vw,2.7rem);line-height:.98;margin:0 0 1rem;color:var(--fico-white)}
.fico-idea-card p{color:var(--fico-muted);margin:0 0 1.6rem;line-height:1.55}
.fico-idea-card__link>strong{margin-top:auto;color:var(--fico-accent);font-size:.85rem}
.fico-ideas-dynamic-grid.is-compact .fico-idea-card__link{min-height:150px;padding:1.35rem}
.fico-ideas-dynamic-grid.is-compact .fico-idea-card h3{font-size:1.2rem;margin:.3rem 0 1rem}
.fico-ideas-dynamic-grid.is-compact .fico-idea-card__kicker{margin-bottom:.45rem}

.fico-ideas-page-hero{padding-top:clamp(5rem,10vw,9rem)!important;padding-bottom:clamp(4rem,8vw,7rem)!important;border-bottom:1px solid var(--fico-border)}
.fico-ideas-page-hero h1{max-width:900px;font-size:clamp(3.5rem,8vw,7.7rem);line-height:.88;margin:.5rem 0 1.8rem}
.fico-ideas-page-hero p.has-large-font-size{max-width:900px}

.fico-idea-single{--fico-accent:var(--fico-lime)}
.fico-idea-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:clamp(3rem,7vw,7rem);align-items:center;padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(4rem,8vw,7rem)}
.fico-idea-hero__copy .fico-eyebrow{color:var(--fico-accent)}
.fico-idea-hero h1{font-size:clamp(4rem,8vw,8rem);line-height:.86;margin:.7rem 0 1.5rem}
.fico-idea-hero__excerpt{font-size:clamp(1.25rem,2.1vw,2rem);line-height:1.35;color:var(--fico-muted);max-width:650px}
.fico-idea-hero__media{min-height:430px;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);overflow:hidden;background:var(--fico-card)}
.fico-idea-hero__media img{width:100%;height:100%;min-height:430px;object-fit:cover;display:block}
.fico-idea-hero__media .fico-media-placeholder{height:100%;min-height:430px;display:flex;align-items:center;justify-content:center;color:var(--fico-cyan)}
.fico-idea-editorial{padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem);border-top:1px solid var(--fico-border)}
.fico-idea-editorial .fico-eyebrow{color:var(--fico-accent)}
.fico-idea-editorial__content{max-width:900px;font-size:1.14rem;line-height:1.8}
.fico-idea-relations>.fico-related{padding-top:clamp(4rem,7vw,6rem);padding-bottom:clamp(4rem,7vw,6rem);border-top:1px solid var(--fico-border)}
.fico-idea-relations>.fico-related .fico-eyebrow{color:var(--fico-accent)}
.fico-idea-source{padding:4rem 0;border-top:1px solid var(--fico-border)}
.fico-idea-source .fico-eyebrow{color:var(--fico-accent)}
.fico-idea-back{padding:0 0 5rem}.fico-idea-back a{color:var(--fico-accent);font-weight:900}

.fico-related-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.5rem}
.fico-related-archive-group{border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);padding:1.4rem;background:rgba(10,39,68,.45)}
.fico-related-archive-group>span{display:block;color:var(--fico-cyan);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:1rem}
.fico-related-archive-group a{display:block;color:var(--fico-white);text-decoration:none;padding:1rem 0;border-top:1px solid var(--fico-border)}
.fico-related-archive-group a:first-of-type{border-top:0;padding-top:0}
.fico-related-archive-group a strong{display:block}.fico-related-archive-group a small{display:block;color:var(--fico-muted);margin-top:.35rem}

.fico-related-idea-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.5rem}
.fico-related-idea{--fico-accent:var(--fico-lime);display:flex;flex-direction:column;padding:1.3rem;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);text-decoration:none;color:var(--fico-white);background:rgba(10,39,68,.45)}
.fico-related-idea>span{width:36px;height:3px;background:var(--fico-accent);margin-bottom:1rem}.fico-related-idea strong{font-size:1.25rem}.fico-related-idea small{color:var(--fico-muted);margin-top:.6rem}

@media(max-width:980px){
  .fico-ideas-dynamic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fico-idea-hero{grid-template-columns:1fr}.fico-idea-hero__media{min-height:340px}.fico-idea-hero__media img,.fico-idea-hero__media .fico-media-placeholder{min-height:340px}
  .fico-related-archive-grid,.fico-related-idea-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .fico-ideas-dynamic-grid,.fico-related-archive-grid,.fico-related-idea-grid{grid-template-columns:1fr}
  .fico-idea-card__link{min-height:210px}
  .fico-idea-hero h1{font-size:clamp(3rem,17vw,5rem)}
}

/* Accent specificity: keep per-item colors after component defaults. */
.fico-public-timeline__item.fico-accent--lime,
.fico-idea-card.fico-accent--lime,
.fico-idea-single.fico-accent--lime,
.fico-related-idea.fico-accent--lime{--fico-accent:var(--fico-lime)}
.fico-public-timeline__item.fico-accent--cyan,
.fico-idea-card.fico-accent--cyan,
.fico-idea-single.fico-accent--cyan,
.fico-related-idea.fico-accent--cyan{--fico-accent:var(--fico-cyan)}
.fico-public-timeline__item.fico-accent--orange,
.fico-idea-card.fico-accent--orange,
.fico-idea-single.fico-accent--orange,
.fico-related-idea.fico-accent--orange{--fico-accent:var(--fico-orange)}
.fico-public-timeline__item.fico-accent--pink,
.fico-idea-card.fico-accent--pink,
.fico-idea-single.fico-accent--pink,
.fico-related-idea.fico-accent--pink{--fico-accent:var(--fico-pink)}

/* Sprint 4.3 · Historias */
.fico-stories-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;margin-top:2rem}
.fico-story-card{--fico-accent:var(--fico-pink);overflow:hidden;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);background:var(--fico-card);min-width:0}
.fico-story-card__media{display:block;text-decoration:none;background:rgba(10,39,68,.62)}
.fico-story-card__media img,.fico-story-card__media .fico-media-placeholder{display:flex;width:100%;aspect-ratio:4/3;min-height:250px;object-fit:cover;align-items:center;justify-content:center;border:0;border-radius:0;color:var(--fico-cyan)}
.fico-story-card__body{position:relative;padding:1.45rem 1.45rem 1.55rem;display:flex;min-height:250px;flex-direction:column}
.fico-story-card__line{position:absolute;left:0;right:0;top:0;height:3px;background:var(--fico-accent)}
.fico-story-card__body>small{color:var(--fico-accent);font-size:.7rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.fico-story-card h3{margin:.8rem 0 .75rem;font-size:clamp(1.35rem,2.1vw,2rem);line-height:1.04;letter-spacing:-.035em}
.fico-story-card h3 a{color:var(--fico-white);text-decoration:none}
.fico-story-card p{color:var(--fico-muted);font-size:.9rem;line-height:1.6;margin:0 0 1rem}
.fico-story-card__person{font-size:.82rem;color:var(--fico-white);margin-top:auto}
.fico-story-card__more{display:inline-block;margin-top:.9rem;color:var(--fico-accent);font-weight:900;text-decoration:none;font-size:.86rem}
.fico-stories-grid.is-compact .fico-story-card__body{min-height:185px}

.fico-story-single{--fico-accent:var(--fico-pink)}
.fico-story-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:clamp(3rem,7vw,7rem);align-items:center;padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(4rem,8vw,7rem)}
.fico-story-hero .fico-eyebrow,.fico-story-editorial .fico-eyebrow,.fico-story-result .fico-eyebrow,.fico-story-source .fico-eyebrow{color:var(--fico-accent)}
.fico-story-hero h1{font-size:clamp(3.5rem,7vw,7.2rem);line-height:.88;margin:.7rem 0 1.5rem;max-width:780px}
.fico-story-hero__excerpt{font-size:clamp(1.15rem,2vw,1.75rem);line-height:1.42;color:var(--fico-muted);max-width:720px}
.fico-story-hero__meta{display:flex;flex-wrap:wrap;gap:.65rem 1.2rem;margin-top:1.7rem;padding-top:1.1rem;border-top:1px solid var(--fico-border)}
.fico-story-hero__meta strong{color:var(--fico-white)}
.fico-story-hero__meta span{color:var(--fico-muted)}
.fico-story-hero__media{min-height:470px;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);overflow:hidden;background:var(--fico-card)}
.fico-story-hero__media img,.fico-story-hero__media .fico-media-placeholder{width:100%;height:100%;min-height:470px;object-fit:cover;display:flex;align-items:center;justify-content:center;color:var(--fico-cyan)}
.fico-story-quote{padding-top:clamp(2rem,4vw,4rem);padding-bottom:clamp(3rem,6vw,5rem);border-top:1px solid var(--fico-border)}
.fico-story-quote blockquote{max-width:1000px;margin:0;font-family:var(--wp--preset--font-family--poppins-black,Poppins,sans-serif);font-weight:900;font-size:clamp(2.3rem,5vw,5.5rem);line-height:.98;letter-spacing:-.05em;color:var(--fico-white)}
.fico-story-quote cite{display:block;margin-top:1.5rem;color:var(--fico-accent);font-style:normal;font-weight:900}
.fico-story-editorial{padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem);border-top:1px solid var(--fico-border)}
.fico-story-editorial__content{max-width:900px;font-size:1.08rem;line-height:1.85}
.fico-story-result{margin-top:clamp(1rem,3vw,2rem);margin-bottom:clamp(4rem,8vw,7rem);padding:clamp(2rem,5vw,4rem);border:1px solid color-mix(in srgb,var(--fico-accent) 45%,var(--fico-border));border-radius:var(--fico-card-radius,14px);background:color-mix(in srgb,var(--fico-accent) 5%,var(--fico-card))}
.fico-story-result h2{font-size:clamp(2rem,4vw,4rem);margin:.45rem 0 1rem;line-height:1}
.fico-story-result>p:last-child{max-width:900px;color:var(--fico-muted);font-size:1.05rem;line-height:1.75}
.fico-story-relations>.fico-related{padding-top:clamp(3rem,6vw,5rem);padding-bottom:clamp(3rem,6vw,5rem);border-top:1px solid var(--fico-border)}
.fico-story-relations>.fico-related .fico-eyebrow{color:var(--fico-accent)}
.fico-story-source{padding-top:clamp(3rem,6vw,5rem);padding-bottom:clamp(2rem,4vw,3rem);border-top:1px solid var(--fico-border)}
.fico-story-source h2{font-size:clamp(2rem,4vw,4rem);margin:.35rem 0 1.5rem}
.fico-story-back{padding:0 0 5rem}.fico-story-back a{color:var(--fico-accent);font-weight:900}

.fico-related-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.5rem}
.fico-related-story{--fico-accent:var(--fico-pink);overflow:hidden;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);background:var(--fico-card)}
.fico-related-story__media{display:block;text-decoration:none}
.fico-related-story__media img,.fico-related-story__media .fico-media-placeholder{display:flex;width:100%;aspect-ratio:4/3;min-height:220px;object-fit:cover;align-items:center;justify-content:center;border:0;border-radius:0;color:var(--fico-cyan)}
.fico-related-story__body{border-top:3px solid var(--fico-accent);padding:1.2rem}
.fico-related-story__body>small{color:var(--fico-accent);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.fico-related-story h3{margin:.65rem 0;font-size:1.3rem;line-height:1.1}.fico-related-story h3 a{color:var(--fico-white);text-decoration:none}
.fico-related-story p{color:var(--fico-muted);font-size:.84rem;line-height:1.55}.fico-related-story__body>strong{display:block;margin-top:.8rem;font-size:.82rem}

.fico-story-archive__hero{padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(3rem,6vw,5rem)}
.fico-story-archive__hero .fico-eyebrow{color:var(--fico-pink)}
.fico-story-archive__hero h1{font-size:clamp(3.5rem,7vw,7rem);line-height:.9;max-width:900px;margin:.6rem 0 1.2rem}
.fico-story-archive__hero>p:last-child{max-width:780px;color:var(--fico-muted);font-size:1.15rem;line-height:1.65}
.fico-story-archive__grid{padding-bottom:clamp(5rem,9vw,8rem)}

@media(max-width:980px){
  .fico-stories-grid,.fico-related-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fico-story-hero{grid-template-columns:1fr}.fico-story-hero__media{min-height:360px}.fico-story-hero__media img,.fico-story-hero__media .fico-media-placeholder{min-height:360px}
}
@media(max-width:680px){
  .fico-stories-grid,.fico-related-story-grid{grid-template-columns:1fr}
  .fico-story-hero h1{font-size:clamp(3rem,16vw,5rem)}
  .fico-story-hero__media{min-height:300px}.fico-story-hero__media img,.fico-story-hero__media .fico-media-placeholder{min-height:300px}
}

/* === v0.17 · Sprint 5 Archivo + estados vacíos === */
.fico-home-stories:not(:has(.fico-stories-grid)){display:none!important}
.fico-empty-state{max-width:820px;padding:2rem 2.2rem;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);background:rgba(10,39,68,.42)}
.fico-empty-state h2,.fico-empty-state h3{margin:.45rem 0 .8rem}.fico-empty-state p{color:var(--fico-muted);line-height:1.65}.fico-empty-state a{color:var(--fico-lime);font-weight:900}
.fico-story-empty{margin:0 0 1rem}.fico-story-archive__grid{padding-bottom:clamp(3rem,6vw,5rem)}

.fico-archive-page__hero{padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(3rem,6vw,5rem);border-bottom:1px solid var(--fico-border)}
.fico-archive-page__hero .fico-eyebrow{color:var(--fico-pink)}
.fico-archive-page__hero h1{font-size:clamp(3.8rem,8vw,8rem);line-height:.88;max-width:980px;margin:.55rem 0 1.3rem}
.fico-archive-page__hero>p:last-child{max-width:860px;color:var(--fico-muted);font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.6}
.fico-archive-page__editorial{padding:3rem 0 0}.fico-archive-page__explorer{padding-top:clamp(3rem,6vw,5rem);padding-bottom:clamp(5rem,9vw,8rem)}
.fico-archive-filters{display:grid;gap:1rem;margin-bottom:1.4rem}.fico-archive-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.7rem}
.fico-archive-search input,.fico-archive-filter-row select{width:100%;min-height:52px;border:1px solid var(--fico-border);border-radius:9px;background:#fff;color:#051b32;padding:.75rem 1rem;font:inherit}
.fico-archive-search button,.fico-archive-filter-submit{border:0;border-radius:9px;background:var(--fico-lime);color:#051b32;font-weight:900;padding:.75rem 1.35rem;cursor:pointer}
.fico-archive-filter-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto auto;gap:.7rem;align-items:end}
.fico-archive-filter-row label>span{display:block;margin:0 0 .38rem;color:var(--fico-cyan);font-size:.68rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.fico-archive-clear{align-self:center;color:var(--fico-muted);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.fico-archive-summary{display:flex;align-items:baseline;gap:.45rem;margin:1.4rem 0;color:var(--fico-muted)}.fico-archive-summary strong{font-size:2rem;color:var(--fico-white)}
.fico-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.fico-archive-card{--fico-accent:var(--fico-lime);min-width:0;border:1px solid var(--fico-border);border-top:3px solid var(--fico-accent);border-radius:var(--fico-card-radius,14px);overflow:hidden;background:rgba(10,39,68,.56);display:flex;flex-direction:column}
.fico-archive-card__media{display:block;aspect-ratio:16/9;background:linear-gradient(145deg,rgba(10,39,68,.9),rgba(5,27,50,.95));text-decoration:none;overflow:hidden}.fico-archive-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.fico-archive-card__placeholder{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;color:var(--fico-accent);text-align:center}.fico-archive-card__placeholder b{font-size:1rem;text-transform:uppercase;letter-spacing:.08em}.fico-archive-card__placeholder small{color:var(--fico-muted)}
.fico-archive-card__body{display:flex;flex:1;flex-direction:column;padding:1.35rem}.fico-archive-card__meta{display:flex;justify-content:space-between;gap:1rem;color:var(--fico-muted);font-size:.72rem}.fico-archive-card__meta span{color:var(--fico-accent);font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.fico-archive-card h3{font-size:clamp(1.35rem,2.1vw,2rem);line-height:1.02;margin:.8rem 0}.fico-archive-card h3 a{color:var(--fico-white);text-decoration:none}.fico-archive-card p{color:var(--fico-muted);line-height:1.55;margin:0 0 1rem}
.fico-archive-card__footer{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-top:auto;padding-top:1rem;border-top:1px solid var(--fico-border)}.fico-archive-card__footer small{color:var(--fico-muted)}.fico-archive-card__footer a{color:var(--fico-accent);font-weight:900;text-decoration:none}
.fico-archive-card.fico-accent--orange,.fico-archive-single.fico-accent--orange{--fico-accent:var(--fico-orange)}.fico-archive-card.fico-accent--cyan,.fico-archive-single.fico-accent--cyan{--fico-accent:var(--fico-cyan)}.fico-archive-card.fico-accent--pink,.fico-archive-single.fico-accent--pink{--fico-accent:var(--fico-pink)}
.fico-archive-pagination{margin-top:2rem}.fico-archive-pagination ul{list-style:none;display:flex;gap:.45rem;padding:0;margin:0}.fico-archive-pagination a,.fico-archive-pagination span{display:flex;min-width:42px;height:42px;align-items:center;justify-content:center;border:1px solid var(--fico-border);border-radius:8px;color:var(--fico-white);text-decoration:none}.fico-archive-pagination .current{background:var(--fico-lime);color:#051b32;border-color:var(--fico-lime);font-weight:900}

.fico-archive-single__hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:clamp(3rem,7vw,7rem);align-items:center;padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(4rem,8vw,7rem)}
.fico-archive-single__hero .fico-eyebrow,.fico-archive-single__content .fico-eyebrow,.fico-archive-single__source .fico-eyebrow,.fico-archive-milestones .fico-eyebrow{color:var(--fico-accent)}
.fico-archive-single__hero h1{font-size:clamp(3.6rem,7vw,7rem);line-height:.9;margin:.65rem 0 1.25rem}.fico-archive-single__excerpt{font-size:clamp(1.15rem,1.8vw,1.6rem);line-height:1.5;color:var(--fico-muted);max-width:720px}
.fico-archive-single__meta{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}.fico-archive-single__meta span{display:flex;flex-direction:column;gap:.2rem;padding:.7rem 1rem;border:1px solid var(--fico-border);border-radius:9px;color:var(--fico-muted)}.fico-archive-single__meta b{font-size:.65rem;color:var(--fico-accent);text-transform:uppercase;letter-spacing:.06em}
.fico-archive-primary-action{display:inline-flex;margin-top:1.3rem;padding:.85rem 1rem;border-radius:8px;background:var(--fico-lime);color:#051b32!important;font-weight:900;text-decoration:none}
.fico-archive-single__media{min-height:430px;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);overflow:hidden;background:var(--fico-card)}.fico-archive-single__media img,.fico-archive-single__media iframe{width:100%;height:100%;min-height:430px;display:block;object-fit:cover}.fico-archive-single__media .fico-media-placeholder{min-height:430px;display:flex;align-items:center;justify-content:center;color:var(--fico-accent)}
.fico-archive-single__content{padding-top:clamp(4rem,7vw,6rem);padding-bottom:clamp(4rem,7vw,6rem);border-top:1px solid var(--fico-border)}.fico-archive-single__content .fico-entry__content{max-width:900px;font-size:1.08rem;line-height:1.8}
.fico-archive-transcript{padding:0 0 clamp(4rem,7vw,6rem)}.fico-archive-transcript details{border:1px solid var(--fico-border);border-radius:12px;background:rgba(10,39,68,.42);overflow:hidden}.fico-archive-transcript summary{list-style:none;display:flex;justify-content:space-between;gap:1rem;padding:1.2rem 1.4rem;cursor:pointer}.fico-archive-transcript summary::-webkit-details-marker{display:none}.fico-archive-transcript summary span{color:var(--fico-accent);font-size:.72rem;font-weight:900;letter-spacing:.06em}.fico-archive-transcript details>div{padding:0 1.4rem 1.4rem;color:var(--fico-muted);line-height:1.75;max-width:1000px}
.fico-archive-single__relations>.fico-related,.fico-archive-milestones,.fico-archive-single__source{padding-top:clamp(4rem,7vw,6rem);padding-bottom:clamp(4rem,7vw,6rem);border-top:1px solid var(--fico-border)}
.fico-archive-milestone-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1.4rem}.fico-archive-milestone-grid a{display:flex;gap:1rem;padding:1rem;border:1px solid var(--fico-border);border-radius:10px;text-decoration:none;color:var(--fico-white)}.fico-archive-milestone-grid strong{color:var(--fico-accent)}
.fico-archive-single__back{padding:0 0 5rem}.fico-archive-single__back a{color:var(--fico-lime);font-weight:900}

@media(max-width:1000px){.fico-archive-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.fico-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fico-archive-single__hero{grid-template-columns:1fr}.fico-archive-single__media,.fico-archive-single__media img,.fico-archive-single__media iframe,.fico-archive-single__media .fico-media-placeholder{min-height:340px}.fico-archive-milestone-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.fico-archive-search{grid-template-columns:1fr}.fico-archive-filter-row{grid-template-columns:1fr}.fico-archive-grid,.fico-archive-milestone-grid{grid-template-columns:1fr}.fico-archive-single__hero h1{font-size:clamp(3rem,15vw,5rem)}}
.fico-archive-page__editorial--primary{padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(2rem,4vw,3rem);border-bottom:1px solid var(--fico-border)}

/* Sprint 5.2 · Archivo audiovisual y navegación contextual */
.fico-archive-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}
.fico-archive-overview__item{--fico-accent:var(--fico-lime);display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;min-height:86px;padding:1rem 1.1rem;border:1px solid var(--fico-border);border-top:3px solid var(--fico-accent);border-radius:11px;background:rgba(10,39,68,.42);color:var(--fico-white);text-decoration:none}
.fico-archive-overview__item.fico-accent--orange{--fico-accent:var(--fico-orange)}.fico-archive-overview__item.fico-accent--cyan{--fico-accent:var(--fico-cyan)}.fico-archive-overview__item.fico-accent--pink{--fico-accent:var(--fico-pink)}
.fico-archive-overview__item span{color:var(--fico-muted);font-size:.78rem;font-weight:700}.fico-archive-overview__item strong{color:var(--fico-accent);font-size:2rem;line-height:1}.fico-archive-overview__item.is-active{border-color:var(--fico-accent);background:rgba(10,39,68,.76)}
.fico-archive-years{display:flex;align-items:center;gap:.45rem;overflow-x:auto;padding:.15rem 0 1.2rem;scrollbar-width:thin}.fico-archive-years>span{margin-right:.25rem;color:var(--fico-cyan);font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.fico-archive-years a{white-space:nowrap;padding:.45rem .72rem;border:1px solid var(--fico-border);border-radius:999px;color:var(--fico-muted);font-size:.78rem;font-weight:800;text-decoration:none}.fico-archive-years a.is-active,.fico-archive-years a:hover{border-color:var(--fico-lime);color:var(--fico-lime)}
.fico-archive-summary small{color:var(--fico-cyan);font-size:.84rem}
.fico-archive-context-matches{margin-top:1.5rem;padding:1.35rem;border:1px solid var(--fico-border);border-radius:13px;background:rgba(10,39,68,.36)}.fico-archive-context-matches>.fico-eyebrow{color:var(--fico-cyan)}.fico-archive-context-matches h3{margin:.35rem 0 .5rem;font-size:clamp(1.35rem,2.5vw,2.15rem)}.fico-archive-context-matches>p:not(.fico-eyebrow){color:var(--fico-muted);max-width:760px}.fico-archive-context-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:1rem}.fico-archive-context-grid a{display:flex;flex-direction:column;gap:.4rem;padding:1rem;border:1px solid var(--fico-border);border-radius:10px;text-decoration:none;background:var(--fico-card)}.fico-archive-context-grid small{color:var(--fico-cyan);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.fico-archive-context-grid strong{color:var(--fico-lime);font-size:1.08rem}.fico-archive-context-grid span{color:var(--fico-muted);font-size:.86rem;line-height:1.45}
.fico-archive-single__hero h1{max-width:780px;font-size:clamp(3.4rem,6.3vw,6.25rem)}
.fico-archive-single__terms{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}.fico-archive-single__terms a{padding:.38rem .6rem;border:1px solid var(--fico-border);border-radius:999px;color:var(--fico-accent);font-size:.72rem;font-weight:800;text-decoration:none}
.fico-archive-primary-action--secondary{margin-left:.45rem;background:transparent!important;color:var(--fico-white)!important;border:1px solid var(--fico-border)}
.fico-archive-transcript__body{padding:0 1.4rem 1.4rem!important;max-width:none!important}.fico-archive-transcript__search{display:block;margin:.2rem 0 1rem}.fico-archive-transcript__search span{display:block;margin-bottom:.4rem;color:var(--fico-cyan);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.fico-archive-transcript__search input{width:100%;min-height:48px;padding:.7rem .9rem;border:1px solid var(--fico-border);border-radius:8px;background:#fff;color:#051b32;font:inherit}.fico-archive-transcript__segments{display:grid;gap:.35rem}.fico-archive-transcript__segment{display:grid;grid-template-columns:72px minmax(0,1fr);gap:1rem;padding:.8rem .2rem;border-bottom:1px solid var(--fico-border)}.fico-archive-transcript__segment:last-child{border-bottom:0}.fico-archive-transcript__segment p{margin:0;color:var(--fico-muted);line-height:1.65}.fico-archive-transcript__time{align-self:start;color:var(--fico-accent);font-weight:900;text-decoration:none;font-variant-numeric:tabular-nums}.fico-archive-transcript__time:hover{text-decoration:underline}.fico-archive-transcript__plain{color:var(--fico-muted);line-height:1.75}.fico-archive-transcript__empty{margin:1rem 0 0;color:var(--fico-pink);font-weight:700}
@media(max-width:900px){.fico-archive-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.fico-archive-context-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.fico-archive-overview{grid-template-columns:1fr 1fr}.fico-archive-overview__item{min-height:72px}.fico-archive-context-grid{grid-template-columns:1fr}.fico-archive-transcript__segment{grid-template-columns:60px minmax(0,1fr);gap:.65rem}.fico-archive-single__hero h1{font-size:clamp(3rem,14vw,4.8rem)}}

/* Sprint 5.3 · Archivo histórico, fotografías y colecciones */
.fico-archive-overview{grid-template-columns:repeat(5,minmax(0,1fr))}
.fico-archive-filter-row{grid-template-columns:repeat(5,minmax(0,1fr)) auto auto}
.fico-archive-periods,.fico-archive-collections{display:flex;align-items:center;gap:.45rem;overflow-x:auto;padding:.05rem 0 .85rem;scrollbar-width:thin}
.fico-archive-periods>span,.fico-archive-collections>span{margin-right:.25rem;color:var(--fico-cyan);font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.fico-archive-periods a,.fico-archive-collections a{white-space:nowrap;padding:.42rem .7rem;border:1px solid var(--fico-border);border-radius:999px;color:var(--fico-muted);font-size:.76rem;font-weight:800;text-decoration:none}
.fico-archive-periods a.is-active,.fico-archive-periods a:hover,.fico-archive-collections a.is-active,.fico-archive-collections a:hover{border-color:var(--fico-lime);color:var(--fico-lime)}
.fico-archive-view-switch{display:flex;justify-content:flex-end;align-items:center;gap:.45rem;margin:-.4rem 0 1rem}
.fico-archive-view-switch>span{color:var(--fico-muted);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-right:.2rem}
.fico-archive-view-switch a{padding:.42rem .72rem;border:1px solid var(--fico-border);border-radius:999px;color:var(--fico-muted);font-size:.76rem;font-weight:800;text-decoration:none}
.fico-archive-view-switch a.is-active,.fico-archive-view-switch a:hover{background:var(--fico-lime);border-color:var(--fico-lime);color:#051b32}
.fico-archive-card--photo .fico-archive-card__media{aspect-ratio:4/3}
.fico-archive-card--photo .fico-archive-card__media img{object-position:center}
.fico-archive-single--photo .fico-archive-single__media{background:#04182c}
.fico-archive-single--photo .fico-archive-single__media img{object-fit:contain;background:#04182c}
.fico-photo-credit{padding-top:0;padding-bottom:clamp(3rem,6vw,5rem)}
.fico-photo-credit__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;max-width:900px}
.fico-photo-credit__grid>div{display:flex;flex-direction:column;gap:.28rem;padding:1rem 1.1rem;border:1px solid var(--fico-border);border-radius:10px;background:rgba(10,39,68,.42)}
.fico-photo-credit__grid span{color:var(--fico-cyan);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.fico-photo-credit__grid strong{color:var(--fico-white)}
.fico-archive-timeline{display:grid;gap:3rem;margin-top:1.2rem}
.fico-archive-timeline__year{display:grid;grid-template-columns:150px minmax(0,1fr);gap:2rem;align-items:start}
.fico-archive-timeline__year-label{position:sticky;top:100px;border-top:1px solid var(--fico-border);padding-top:.65rem}
.fico-archive-timeline__year-label span{font-size:clamp(2.2rem,4vw,4rem);font-weight:900;letter-spacing:-.04em;color:var(--fico-white)}
.fico-archive-timeline__items{display:grid;gap:.75rem}
.fico-archive-timeline__item{--fico-accent:var(--fico-lime);display:grid;grid-template-columns:180px minmax(0,1fr);gap:1.2rem;padding:1rem;border:1px solid var(--fico-border);border-left:3px solid var(--fico-accent);border-radius:12px;background:rgba(10,39,68,.42)}
.fico-archive-timeline__item.fico-accent--orange{--fico-accent:var(--fico-orange)}
.fico-archive-timeline__item.fico-accent--cyan{--fico-accent:var(--fico-cyan)}
.fico-archive-timeline__item.fico-accent--pink{--fico-accent:var(--fico-pink)}
.fico-archive-timeline__media{display:flex;min-height:112px;border-radius:8px;overflow:hidden;background:#071e36;align-items:center;justify-content:center;color:var(--fico-accent);font-size:.75rem;font-weight:900;text-transform:uppercase;text-decoration:none;letter-spacing:.06em}
.fico-archive-timeline__media img{width:100%;height:100%;min-height:112px;object-fit:cover;display:block}
.fico-archive-timeline__copy{min-width:0}
.fico-archive-timeline__meta{display:flex;justify-content:space-between;gap:1rem;color:var(--fico-muted);font-size:.72rem}
.fico-archive-timeline__meta span{color:var(--fico-accent);font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.fico-archive-timeline__copy h3{font-size:clamp(1.25rem,2vw,1.85rem);line-height:1.08;margin:.45rem 0 .55rem}
.fico-archive-timeline__copy h3 a{color:var(--fico-white);text-decoration:none}
.fico-archive-timeline__copy p{margin:0;color:var(--fico-muted);line-height:1.55}
.fico-archive-timeline__copy>small{display:block;margin-top:.65rem;color:var(--fico-cyan)}
@media(max-width:1100px){.fico-archive-overview{grid-template-columns:repeat(3,minmax(0,1fr))}.fico-archive-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.fico-archive-timeline__year{grid-template-columns:110px minmax(0,1fr)}.fico-archive-timeline__item{grid-template-columns:140px minmax(0,1fr)}}
@media(max-width:720px){.fico-archive-overview{grid-template-columns:1fr 1fr}.fico-archive-view-switch{justify-content:flex-start;margin:.2rem 0 1rem}.fico-photo-credit__grid{grid-template-columns:1fr}.fico-archive-timeline__year{grid-template-columns:1fr;gap:.75rem}.fico-archive-timeline__year-label{position:static}.fico-archive-timeline__year-label span{font-size:2.4rem}.fico-archive-timeline__item{grid-template-columns:100px minmax(0,1fr);gap:.8rem}.fico-archive-timeline__media{min-height:86px}.fico-archive-timeline__media img{min-height:86px}}
@media(max-width:480px){.fico-archive-timeline__item{grid-template-columns:1fr}.fico-archive-timeline__media{aspect-ratio:16/9}.fico-archive-filter-row{grid-template-columns:1fr}}

/* Sprint 5.4 · Buscador profundo */
.fico-search-page__hero{padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(3rem,6vw,5rem);border-bottom:1px solid var(--fico-border)}
.fico-search-page__hero .fico-eyebrow,.fico-search-page__editorial .fico-eyebrow{color:var(--fico-cyan)}
.fico-search-page__hero h1{max-width:940px;font-size:clamp(3.4rem,7vw,7rem);line-height:.92;margin:.6rem 0 1.2rem}
.fico-search-page__hero>p:not(.fico-eyebrow){max-width:820px;color:var(--fico-muted);font-size:clamp(1.05rem,1.8vw,1.45rem);line-height:1.55}
.fico-search-page__editorial{padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(2rem,4vw,3rem);border-bottom:1px solid var(--fico-border)}
.fico-search-page__explorer{padding-top:clamp(3rem,6vw,5rem);padding-bottom:clamp(5rem,8vw,8rem)}
.fico-deep-search__form>label{display:block;margin-bottom:.55rem;color:var(--fico-cyan);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.fico-deep-search__bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem}
.fico-deep-search__bar input{min-height:58px;width:100%;padding:.85rem 1rem;border:1px solid var(--fico-border);border-radius:9px;background:#fff;color:#051b32;font:inherit;font-size:1rem}
.fico-deep-search__bar button{min-width:112px;border:0;border-radius:9px;background:var(--fico-lime);color:#051b32!important;font:inherit;font-weight:900;padding:.8rem 1.15rem;cursor:pointer}
.fico-deep-search__groups{display:flex;gap:.55rem;overflow-x:auto;padding:1rem 0 .4rem;scrollbar-width:thin}
.fico-deep-search__groups a{--fico-accent:var(--fico-lime);display:flex;align-items:center;gap:.55rem;white-space:nowrap;padding:.52rem .75rem;border:1px solid var(--fico-border);border-radius:999px;text-decoration:none;color:var(--fico-muted);font-size:.78rem;font-weight:800}
.fico-deep-search__groups a strong{color:var(--fico-accent)}
.fico-deep-search__groups a.fico-accent--orange{--fico-accent:var(--fico-orange)}.fico-deep-search__groups a.fico-accent--cyan{--fico-accent:var(--fico-cyan)}.fico-deep-search__groups a.fico-accent--pink{--fico-accent:var(--fico-pink)}.fico-deep-search__groups a.fico-accent--lime{--fico-accent:var(--fico-lime)}
.fico-deep-search__groups a.is-active,.fico-deep-search__groups a:hover{border-color:var(--fico-accent);color:var(--fico-white);background:rgba(10,39,68,.64)}
.fico-deep-search__summary{display:flex;align-items:baseline;gap:.45rem;margin:1.2rem 0 2rem;color:var(--fico-muted)}
.fico-deep-search__summary strong{font-size:2rem;color:var(--fico-white)}.fico-deep-search__summary small{color:var(--fico-cyan)}
.fico-deep-search__results{display:grid;gap:clamp(3rem,6vw,5rem)}
.fico-deep-search__section{--fico-accent:var(--fico-lime);border-top:1px solid var(--fico-border);padding-top:1.5rem}
.fico-deep-search__section.fico-accent--orange{--fico-accent:var(--fico-orange)}.fico-deep-search__section.fico-accent--cyan{--fico-accent:var(--fico-cyan)}.fico-deep-search__section.fico-accent--pink{--fico-accent:var(--fico-pink)}.fico-deep-search__section.fico-accent--lime{--fico-accent:var(--fico-lime)}
.fico-deep-search__section>header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.15rem}.fico-deep-search__section>header .fico-eyebrow{color:var(--fico-accent);margin:0}.fico-deep-search__section>header h2{font-size:clamp(2rem,4vw,3.6rem);margin:0;color:var(--fico-white)}
.fico-deep-search__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.fico-deep-result{display:grid;grid-template-columns:150px minmax(0,1fr);min-width:0;border:1px solid var(--fico-border);border-left:3px solid var(--fico-accent);border-radius:12px;overflow:hidden;background:rgba(10,39,68,.44)}
.fico-deep-result__media{display:flex;min-height:170px;background:#071e36;align-items:center;justify-content:center;text-decoration:none;color:var(--fico-accent);font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;overflow:hidden}.fico-deep-result__media img{width:100%;height:100%;min-height:170px;object-fit:cover;display:block}
.fico-deep-result__body{display:flex;min-width:0;flex-direction:column;padding:1rem 1.05rem}.fico-deep-result__meta{display:flex;justify-content:space-between;gap:1rem;color:var(--fico-muted);font-size:.68rem}.fico-deep-result__meta span{color:var(--fico-accent);font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.fico-deep-result h3{font-size:clamp(1.25rem,2vw,1.8rem);line-height:1.08;margin:.48rem 0 .55rem}.fico-deep-result h3 a{color:var(--fico-white);text-decoration:none}.fico-deep-result p{margin:0;color:var(--fico-muted);font-size:.88rem;line-height:1.5}
.fico-deep-result__reasons{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;margin-top:.85rem}.fico-deep-result__reasons small{color:var(--fico-muted);font-size:.65rem}.fico-deep-result__reasons span{padding:.25rem .45rem;border:1px solid var(--fico-border);border-radius:999px;color:var(--fico-cyan);font-size:.63rem;font-weight:800}
.fico-deep-result__open{align-self:flex-start;margin-top:auto;padding-top:.85rem;color:var(--fico-lime);font-weight:900;text-decoration:none}
.fico-deep-search__empty{max-width:760px;margin-top:1.2rem}.fico-deep-search__intro{margin-top:1rem;padding:1.2rem 1.3rem;border:1px solid var(--fico-border);border-radius:12px;background:rgba(10,39,68,.36)}.fico-deep-search__intro>p{margin:0;color:var(--fico-muted);max-width:850px;line-height:1.6}.fico-deep-search__examples{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.fico-deep-search__examples>span{color:var(--fico-cyan);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.fico-deep-search__examples a{padding:.42rem .68rem;border:1px solid var(--fico-border);border-radius:999px;color:var(--fico-lime);text-decoration:none;font-size:.78rem;font-weight:800}
.fico-archive-summary{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.fico-archive-summary>div{display:flex;align-items:baseline;gap:.35rem}.fico-archive-search-all{color:var(--fico-lime);font-size:.82rem;font-weight:900;text-decoration:none}
@media(max-width:1000px){.fico-deep-search__list{grid-template-columns:1fr}.fico-deep-result{grid-template-columns:130px minmax(0,1fr)}}
@media(max-width:640px){.fico-deep-search__bar{grid-template-columns:1fr}.fico-deep-search__bar button{width:100%}.fico-deep-result{grid-template-columns:1fr}.fico-deep-result__media{min-height:180px;aspect-ratio:16/8}.fico-deep-search__section>header{display:block}.fico-archive-summary{display:block}.fico-archive-search-all{display:inline-block;margin-top:.5rem}}

/* ===== FICO v0.21.0 · Sprint 6 Actualidad ===== */
.fico-current-page__hero,
.fico-current-page__editorial {
  padding-top: clamp(4.5rem, 8vw, 8rem);
  padding-bottom: clamp(3rem, 6vw, 6rem);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.fico-current-page__hero { max-width: var(--fico-container); }
.fico-current-page__hero h1,
.fico-current-editorial-hero h1 {
  margin: .25rem 0 1rem;
  max-width: 9ch;
  font-size: clamp(3.6rem, 8vw, 8.3rem);
  line-height: .9;
  letter-spacing: -.06em;
}
.fico-current-page__hero > p:last-child,
.fico-current-editorial-hero > p:last-child {
  max-width: 850px;
  color: var(--fico-muted);
  font-size: clamp(1.05rem, 1.6vw, 1.45rem);
  line-height: 1.55;
}
.fico-current-page__explorer { padding-block: clamp(3rem, 6vw, 6rem); }

.fico-current-types {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: .8rem;
  margin-bottom: 2.4rem;
}
.fico-current-types a {
  min-width: 0;
  min-height: 88px;
  padding: 1rem 1.1rem;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: .7rem;
  border: 1px solid var(--fico-border);
  border-top: 3px solid var(--fico-accent,var(--fico-lime));
  border-radius: var(--fico-radius);
  background: rgba(10,39,68,.54);
  color: var(--fico-cyan);
  text-decoration: none;
}
.fico-current-types a span { font-weight: 900; font-size: .78rem; }
.fico-current-types a strong { color: var(--fico-accent,var(--fico-lime)); font-size: 1.7rem; line-height: 1; }
.fico-current-types a.is-active { background: rgba(10,39,68,.92); border-color: var(--fico-accent,var(--fico-lime)); }

.fico-current-lead {
  --lead-accent: var(--fico-accent,var(--fico-lime));
  display: grid;
  grid-template-columns: minmax(0,1.25fr) minmax(340px,.75fr);
  min-height: 520px;
  margin-bottom: 3rem;
  overflow: hidden;
  border: 1px solid var(--fico-border);
  border-top: 3px solid var(--lead-accent);
  border-radius: 16px;
  background: var(--fico-card);
}
.fico-current-lead__media { min-height: 430px; background:#071f39; text-decoration:none; }
.fico-current-lead__media img { width:100%; height:100%; object-fit:cover; }
.fico-current-lead__media .fico-media-placeholder { height:100%; min-height:430px; border:0; border-radius:0; }
.fico-current-lead__body { padding: clamp(2rem,4vw,4.5rem); display:flex; flex-direction:column; justify-content:center; min-width:0; }
.fico-current-lead__body .fico-eyebrow { color: var(--lead-accent); }
.fico-current-lead__body h2 { margin:.35rem 0 1rem; font-size:clamp(2.3rem,4.3vw,5.5rem); line-height:.95; letter-spacing:-.055em; }
.fico-current-lead__body h2 a { text-decoration:none; }
.fico-current-lead__body > p { color:var(--fico-muted); line-height:1.55; }
.fico-current-lead__meta { display:flex; flex-wrap:wrap; gap:.8rem 1.4rem; margin-top:1rem; color:var(--fico-cyan); font-size:.82rem; }
.fico-current-lead__more { margin-top:1.5rem; color:var(--fico-lime); font-weight:900; text-decoration:none; }

.fico-current-filters { margin-bottom:2rem; }
.fico-current-search { display:flex; gap:.65rem; margin-bottom:.8rem; }
.fico-current-search input {
  flex:1; min-width:0; min-height:52px; padding:.85rem 1rem;
  border:1px solid #dfe4ea; border-radius:6px; background:white; color:#07192b; font:inherit;
}
.fico-current-search button,
.fico-current-filter-row button {
  border:0; border-radius:6px; background:var(--fico-lime); color:var(--fico-navy) !important;
  font:inherit; font-weight:900; padding:.8rem 1.15rem; cursor:pointer;
}
.fico-current-filter-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) auto auto; gap:.7rem; align-items:end; }
.fico-current-filter-row label { min-width:0; }
.fico-current-filter-row label span { display:block; margin-bottom:.35rem; color:var(--fico-cyan); font-size:.68rem; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.fico-current-filter-row select { width:100%; min-height:48px; padding:.7rem .8rem; border:0; border-radius:6px; background:#fff; color:#07192b; font:inherit; }
.fico-current-filter-row > a { align-self:center; color:var(--fico-lime); font-weight:900; }
.fico-current-results-heading { margin:1.4rem 0; display:flex; align-items:baseline; gap:.45rem; color:var(--fico-cyan); }
.fico-current-results-heading strong { color:#fff; font-size:2rem; }

.fico-current-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.fico-current-card {
  min-width:0; min-height:100%; display:flex; flex-direction:column; overflow:hidden;
  border:1px solid var(--fico-border); border-top:3px solid var(--fico-accent,var(--fico-lime));
  border-radius:var(--fico-radius); background:var(--fico-card);
}
.fico-current-card__media { min-height:210px; aspect-ratio:16/9; display:block; overflow:hidden; text-decoration:none; background:#071f39; }
.fico-current-card__media img { width:100%; height:100%; object-fit:cover; }
.fico-current-card__media .fico-media-placeholder { min-height:100%; height:100%; border:0; border-radius:0; color:var(--fico-accent,var(--fico-lime)); font-weight:900; letter-spacing:.08em; font-size:.72rem; }
.fico-current-card__body { padding:1.35rem; display:flex; flex-direction:column; flex:1; min-width:0; }
.fico-current-card__meta { display:flex; justify-content:space-between; gap:.8rem; color:var(--fico-cyan); font-size:.68rem; text-transform:uppercase; letter-spacing:.05em; }
.fico-current-card__meta span { color:var(--fico-accent,var(--fico-lime)); font-weight:900; }
.fico-current-card__body h3 { margin:.55rem 0 .8rem; font-size:clamp(1.25rem,1.7vw,1.8rem); line-height:1.05; letter-spacing:-.035em; overflow-wrap:normal; word-break:normal; }
.fico-current-card__body h3 a { text-decoration:none; }
.fico-current-card__body p { margin:0 0 1rem; color:var(--fico-muted); font-size:.9rem; line-height:1.5; }
.fico-current-card__body small { color:var(--fico-cyan); }
.fico-current-card__more { margin-top:auto; padding-top:1rem; color:var(--fico-lime); font-weight:900; text-decoration:none; }
.fico-current-grid.is-compact .fico-current-card__media { min-height:160px; }
.fico-current-grid.is-compact .fico-current-card__body { padding:1rem; }
.fico-current-grid.is-compact .fico-current-card__body h3 { font-size:1.15rem; }
.fico-current-pagination { margin-top:2rem; display:flex; flex-wrap:wrap; gap:.5rem; }
.fico-current-pagination .page-numbers { min-width:42px; min-height:42px; display:grid; place-items:center; border:1px solid var(--fico-border); border-radius:50%; text-decoration:none; }
.fico-current-pagination .current { background:var(--fico-lime); color:var(--fico-navy); border-color:var(--fico-lime); }

/* Single native post / Actualidad */
.fico-current-single__hero {
  display:grid; grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr); gap:clamp(2rem,5vw,6rem); align-items:center;
  padding-top:clamp(4rem,8vw,8rem); padding-bottom:clamp(4rem,7vw,7rem);
}
.fico-current-single__intro h1 { margin:.35rem 0 1.25rem; font-size:clamp(3rem,6.5vw,7rem); line-height:.92; letter-spacing:-.06em; }
.fico-current-single__excerpt { max-width:650px; color:var(--fico-muted); font-size:clamp(1.05rem,1.7vw,1.55rem); line-height:1.5; }
.fico-current-single__meta { display:flex; flex-wrap:wrap; gap:.7rem 1.2rem; margin-top:1.5rem; color:var(--fico-cyan); font-size:.82rem; }
.fico-current-single__media { min-height:430px; border:1px solid var(--fico-border); border-radius:16px; overflow:hidden; background:var(--fico-card); }
.fico-current-single__media > img { width:100%; height:100%; min-height:430px; object-fit:cover; }
.fico-current-single__media .fico-media-placeholder { min-height:430px; height:100%; border:0; border-radius:0; color:var(--fico-accent,var(--fico-cyan)); }
.fico-current-single__embed { aspect-ratio:16/9; width:100%; height:100%; }
.fico-current-single__embed iframe { width:100%; height:100%; min-height:430px; border:0; }
.fico-current-event-card { margin-top:1.6rem; padding:1.2rem; border:1px solid var(--fico-border); border-left:3px solid var(--fico-accent,var(--fico-cyan)); border-radius:10px; background:rgba(10,39,68,.65); }
.fico-current-event-card > span { display:block; color:var(--fico-accent,var(--fico-cyan)); font-size:.68rem; font-weight:900; letter-spacing:.1em; }
.fico-current-event-card strong { display:block; margin:.4rem 0; font-size:1.25rem; }
.fico-current-event-card small { display:block; color:var(--fico-muted); }
.fico-current-single__body { padding-block:clamp(3rem,6vw,6rem); border-top:1px solid rgba(255,255,255,.07); }
.fico-current-single__content { max-width:900px; font-size:1.05rem; line-height:1.75; color:#dce5ee; }
.fico-current-single__content > * + * { margin-top:1.4em; }
.fico-current-single__relations > .fico-related { padding-block:clamp(2.5rem,5vw,5rem); border-top:1px solid rgba(255,255,255,.07); }
.fico-current-source { padding-block:clamp(2.5rem,5vw,5rem); border-top:1px solid rgba(255,255,255,.07); }
.fico-current-source__card { display:flex; justify-content:space-between; align-items:center; gap:1.5rem; padding:1.3rem 1.5rem; border:1px solid var(--fico-border); border-radius:var(--fico-radius); background:rgba(10,39,68,.45); }
.fico-current-source__card strong,.fico-current-source__card small { display:block; }
.fico-current-source__card small { margin-top:.35rem; color:var(--fico-cyan); }
.fico-current-source__actions { display:flex; flex-wrap:wrap; gap:1rem; }
.fico-current-source__actions a,.fico-current-single__back a { color:var(--fico-lime); font-weight:900; }
.fico-current-single__back { padding-bottom:4rem; }

@media (max-width:1100px) {
  .fico-current-types { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .fico-current-lead { grid-template-columns:1fr 1fr; }
  .fico-current-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fico-current-filter-row { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .fico-current-filter-row button,.fico-current-filter-row > a { align-self:end; }
  .fico-current-single__hero { grid-template-columns:1fr 1fr; }
}
@media (max-width:760px) {
  .fico-current-types { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fico-current-lead,.fico-current-single__hero { grid-template-columns:1fr; }
  .fico-current-lead__media { min-height:280px; order:0; }
  .fico-current-lead__body { padding:1.5rem; }
  .fico-current-grid { grid-template-columns:1fr; }
  .fico-current-filter-row { grid-template-columns:1fr; }
  .fico-current-search { flex-direction:column; }
  .fico-current-search button { min-height:48px; }
  .fico-current-single__media,.fico-current-single__media > img,.fico-current-single__media .fico-media-placeholder,.fico-current-single__embed iframe { min-height:280px; }
  .fico-current-source__card { align-items:flex-start; flex-direction:column; }
}

/* Sprint 6.2 · Actualidad editorial + Agenda */
.fico-current-home { display:grid; gap:1rem; margin-top:1.5rem; }
.fico-current-home__agenda {
  display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; gap:.65rem 1.1rem;
  padding:1rem 1.15rem; border:1px solid rgba(25,188,232,.35); border-left:4px solid var(--fico-cyan);
  border-radius:8px; background:rgba(10,39,68,.62); color:var(--fico-white); text-decoration:none;
}
.fico-current-home__agenda-label { color:var(--fico-cyan); font-size:.68rem; font-weight:900; letter-spacing:.08em; }
.fico-current-home__agenda strong { font-size:1rem; line-height:1.15; }
.fico-current-home__agenda > span:not(.fico-current-home__agenda-label) { color:var(--fico-muted); font-size:.82rem; }
.fico-event-status {
  display:inline-flex; align-items:center; width:max-content; max-width:100%; padding:.28rem .55rem; border-radius:999px;
  border:1px solid currentColor; color:var(--fico-cyan); font-size:.62rem; line-height:1; font-style:normal; font-weight:900;
  text-transform:uppercase; letter-spacing:.07em;
}
.fico-event-status.is-hoy,.fico-event-status.is-en-curso { color:var(--fico-lime); }
.fico-event-status.is-finalizado { color:var(--fico-muted); }
.fico-event-status.is-sin-fecha { color:var(--fico-orange); }
.fico-current-card .fico-event-status { margin-top:.7rem; }
.fico-current-agenda-tabs { display:flex; flex-wrap:wrap; gap:.55rem; margin:1.2rem 0 1.8rem; }
.fico-current-agenda-tabs a {
  display:inline-flex; min-height:40px; align-items:center; padding:.55rem .9rem; border:1px solid rgba(25,188,232,.35);
  border-radius:999px; color:var(--fico-cyan); font-size:.78rem; font-weight:900; text-decoration:none;
}
.fico-current-agenda-tabs a.is-active { background:var(--fico-cyan); color:var(--fico-navy); border-color:var(--fico-cyan); }

@media (max-width: 900px) {
  .fico-current-home__agenda { grid-template-columns:1fr auto; }
  .fico-current-home__agenda-label,.fico-current-home__agenda strong { grid-column:1 / -1; }
}
@media (max-width: 620px) {
  .fico-current-home__agenda { grid-template-columns:1fr; }
  .fico-current-home__agenda > * { grid-column:auto; }
}

/* =========================================================
   Sprint 7 · Prensa
   ========================================================= */
.fico-press-room{--press-accent:var(--fico-pink)}
.fico-press-hero,.fico-press-pattern-hero{padding-block:clamp(5rem,9vw,9rem);border-bottom:1px solid rgba(255,255,255,.08)}
.fico-press-hero h1,.fico-press-pattern-hero h1{max-width:900px;margin:.35rem 0 1.2rem;font-size:clamp(3.5rem,8vw,8.3rem);line-height:.9;letter-spacing:-.065em}
.fico-press-hero>p:last-of-type,.fico-press-pattern-hero>p:last-of-type{max-width:800px;color:var(--fico-muted);font-size:clamp(1.05rem,1.8vw,1.55rem);line-height:1.55}
.fico-press-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.6rem}
.fico-press-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.78rem 1.15rem;border-radius:var(--fico-button-radius,6px);font-weight:900;text-decoration:none}
.fico-press-btn.is-primary{background:var(--fico-lime);color:var(--fico-navy)!important;border:1px solid var(--fico-lime)}
.fico-press-btn.is-outline{border:1px solid rgba(255,255,255,.55);color:#fff}
.fico-press-section{padding-block:clamp(3.5rem,7vw,7rem);border-bottom:1px solid rgba(255,255,255,.08)}
.fico-press-section__heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:2rem;align-items:end;margin-bottom:2rem}
.fico-press-section__heading h2,.fico-press-contact h2{margin:.25rem 0 0;font-size:clamp(2.2rem,4.4vw,5rem);line-height:.95;letter-spacing:-.055em}
.fico-press-section__heading>p,.fico-press-contact>div>p{margin:0;color:var(--fico-muted);line-height:1.6}
.fico-press-bios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:start}
.fico-press-bio{padding:1.45rem;border:1px solid var(--fico-border);border-top:3px solid var(--fico-pink);border-radius:var(--fico-radius);background:var(--fico-card)}
.fico-press-bio__top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.fico-press-bio__top span{color:var(--fico-pink);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.fico-press-copy{border:1px solid var(--fico-border);border-radius:999px;padding:.5rem .75rem;background:transparent;color:var(--fico-cyan);font:inherit;font-size:.72rem;font-weight:900;cursor:pointer}
.fico-press-bio>p{margin:0;color:#d7e1eb;line-height:1.7;font-size:.93rem}
.fico-press-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.fico-press-photo{overflow:hidden;border:1px solid var(--fico-border);border-top:3px solid var(--fico-lime);border-radius:var(--fico-radius);background:var(--fico-card)}
.fico-press-photo__image{display:flex;align-items:center;justify-content:center;aspect-ratio:4/5;overflow:hidden;background:#071f39;color:var(--fico-cyan);font-size:.72rem;text-decoration:none}.fico-press-photo__image img{width:100%;height:100%;object-fit:cover}.fico-press-photo__body{padding:1rem}.fico-press-photo__body h3{margin:0 0 .6rem;font-size:1.1rem;line-height:1.15}.fico-press-photo__body small{display:block;color:var(--fico-muted);font-size:.7rem;margin:.25rem 0}.fico-press-photo__body>a,.fico-press-all a{display:inline-block;margin-top:.75rem;color:var(--fico-lime);font-weight:900;text-decoration:none;font-size:.8rem}
.fico-press-resources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.fico-press-resource{min-height:180px;display:flex;flex-direction:column;padding:1.35rem;border:1px solid var(--fico-border);border-top:3px solid var(--fico-orange);border-radius:var(--fico-radius);background:var(--fico-card);text-decoration:none}.fico-press-resource.is-featured{border-top-color:var(--fico-lime)}.fico-press-resource span{color:var(--fico-orange);font-size:.68rem;font-weight:900;letter-spacing:.09em}.fico-press-resource.is-featured span{color:var(--fico-lime)}.fico-press-resource strong{margin:.8rem 0;font-size:1.35rem;line-height:1.12;color:#fff}.fico-press-resource small{margin-top:auto;color:var(--fico-cyan)}
.fico-press-speech-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.fico-press-speech-grid article{min-height:220px;display:flex;flex-direction:column;padding:1.35rem;border:1px solid var(--fico-border);border-top:3px solid var(--fico-pink);border-radius:var(--fico-radius);background:var(--fico-card)}.fico-press-speech-grid article>span{color:var(--fico-pink);font-size:.68rem;font-weight:900;letter-spacing:.08em}.fico-press-speech-grid h3{margin:.75rem 0;font-size:1.4rem;line-height:1.08}.fico-press-speech-grid h3 a{color:#fff;text-decoration:none}.fico-press-speech-grid small{color:var(--fico-muted)}.fico-press-speech__more{margin-top:auto;padding-top:1rem;color:var(--fico-lime);font-weight:900;text-decoration:none}
.fico-press-contact{padding-block:clamp(4rem,8vw,8rem);display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:3rem;align-items:center}.fico-press-contact__data{padding:1.6rem;border:1px solid var(--fico-border);border-left:3px solid var(--fico-cyan);border-radius:var(--fico-radius);background:var(--fico-card)}.fico-press-contact__data>*{display:block}.fico-press-contact__data strong{font-size:1.2rem}.fico-press-contact__data a{margin-top:.6rem;color:var(--fico-lime);font-weight:900;text-decoration:none}.fico-press-contact__data small{margin-top:.7rem;color:var(--fico-muted)}
@media(max-width:1000px){.fico-press-bios,.fico-press-resources,.fico-press-speech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fico-press-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.fico-press-section__heading,.fico-press-contact{grid-template-columns:1fr}.fico-press-bios,.fico-press-resources,.fico-press-speech-grid{grid-template-columns:1fr}.fico-press-photo-grid{grid-template-columns:1fr 1fr}.fico-press-bio__top{align-items:flex-start;flex-direction:column}.fico-press-contact{gap:1.5rem}}
@media(max-width:460px){.fico-press-photo-grid{grid-template-columns:1fr}}

/* --------------------------------------------------------------------------
   FICO v0.24.0 · Main landing pages: Medellín, Hechos, Ideas
   -------------------------------------------------------------------------- */
.fico-main-landing{overflow:hidden}
.fico-main-landing>.fico-entry{margin:0}
.fico-landing-hero{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:clamp(3rem,7vw,7rem);align-items:center;padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(5rem,9vw,8rem);border-bottom:1px solid var(--fico-border)}
.fico-landing-hero__copy h1{font-size:clamp(4rem,8vw,8rem);line-height:.86;letter-spacing:-.055em;margin:.75rem 0 1.6rem;max-width:10ch}
.fico-landing-hero--hechos .fico-landing-hero__copy h1{max-width:12ch}
.fico-landing-lead{max-width:760px;color:var(--fico-muted);font-size:clamp(1.25rem,2vw,1.85rem);line-height:1.45;margin:0}
.fico-landing-hero__media{min-width:0}
.fico-landing-hero__image,.fico-landing-hero__placeholder{display:block;width:100%;min-height:clamp(390px,42vw,620px);height:100%;object-fit:cover;border-radius:var(--fico-card-radius,14px);overflow:hidden}
.fico-landing-hero__placeholder{display:grid;place-items:center;border:1px dashed var(--fico-lime);background:rgba(10,39,68,.38);color:var(--fico-cyan)}
.fico-landing-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}
.fico-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.85rem 1.15rem;border-radius:var(--fico-button-radius,8px);font-weight:900;text-decoration:none;border:1px solid transparent}
.fico-button--primary{background:var(--fico-lime);color:var(--fico-navy)!important}
.fico-button--outline{background:transparent;border-color:rgba(255,255,255,.58);color:var(--fico-white)!important}
.fico-button--outline:hover{border-color:var(--fico-lime);color:var(--fico-lime)!important}
.fico-accent-lime{color:var(--fico-lime)!important}.fico-accent-cyan{color:var(--fico-cyan)!important}.fico-accent-orange{color:var(--fico-orange)!important}.fico-accent-pink{color:var(--fico-pink)!important}

.fico-landing-section{padding-top:clamp(5rem,9vw,8rem);padding-bottom:clamp(5rem,9vw,8rem);border-bottom:1px solid var(--fico-border)}
.fico-landing-section__head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.65fr);gap:clamp(2rem,7vw,7rem);align-items:end;margin-bottom:2.5rem}
.fico-landing-section__head h2{font-size:clamp(2.8rem,5.4vw,5.5rem);line-height:.9;letter-spacing:-.05em;margin:.5rem 0 0;max-width:12ch}
.fico-landing-section__head>p{color:var(--fico-muted);font-size:1rem;line-height:1.65;margin:0 0 .2rem}
.fico-landing-more{margin:1.5rem 0 0}.fico-landing-more a{color:var(--fico-lime);font-weight:900}
.fico-landing-project-grid .fico-project-archive-card h3{font-size:1.45rem;line-height:1.05;margin:.8rem 0 .7rem}.fico-landing-project-grid .fico-project-archive-card h3 a{text-decoration:none}
.fico-landing-project-grid .fico-project-archive-card__body>p{color:var(--fico-muted)}

.fico-hechos-gateways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;min-height:0}
.fico-hechos-gateways>a{display:flex;flex-direction:column;min-height:230px;padding:1.5rem;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);background:rgba(10,39,68,.65);text-decoration:none}
.fico-hechos-gateways>a:nth-child(1){border-top-color:var(--fico-orange)}.fico-hechos-gateways>a:nth-child(2){border-top-color:var(--fico-cyan)}.fico-hechos-gateways>a:nth-child(3){border-top-color:var(--fico-lime)}
.fico-hechos-gateways span{font-size:.7rem;letter-spacing:.08em;font-weight:900;color:var(--fico-cyan)}
.fico-hechos-gateways strong{font-size:clamp(3.5rem,6vw,6rem);line-height:1;margin-top:auto;color:var(--fico-white)}
.fico-hechos-gateways small{color:var(--fico-muted);margin-top:.45rem}

.fico-landing-proof{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr) auto;gap:2rem;align-items:center;padding-top:clamp(4rem,7vw,6rem);padding-bottom:clamp(4rem,7vw,6rem)}
.fico-landing-proof h2{font-size:clamp(2.1rem,4vw,4rem);line-height:.92;margin:.4rem 0 0}.fico-landing-proof>p{color:var(--fico-muted);line-height:1.7;margin:0}

.fico-ideas-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem;margin-top:2rem}
.fico-ideas-flow>div{min-height:190px;padding:1.25rem;border:1px solid var(--fico-border);border-radius:var(--fico-card-radius,14px);background:rgba(10,39,68,.55);display:flex;flex-direction:column}
.fico-ideas-flow span{color:var(--fico-cyan);font-weight:900;font-size:.75rem}.fico-ideas-flow strong{font-size:1.05rem;margin-top:auto}.fico-ideas-flow small{color:var(--fico-muted);margin-top:.45rem;line-height:1.4}

@media(max-width:980px){
  .fico-landing-hero{grid-template-columns:1fr}.fico-landing-hero__media{order:-1}.fico-landing-hero__image,.fico-landing-hero__placeholder{min-height:340px}
  .fico-landing-section__head{grid-template-columns:1fr;gap:1rem}.fico-landing-section__head h2{max-width:16ch}
  .fico-hechos-gateways{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fico-landing-proof{grid-template-columns:1fr}.fico-landing-proof .fico-button{justify-self:start}
  .fico-ideas-flow{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:680px){
  .fico-landing-hero__copy h1{font-size:clamp(3.4rem,17vw,5.4rem)}
  .fico-hechos-gateways{grid-template-columns:1fr}.fico-hechos-gateways>a{min-height:150px}
  .fico-ideas-flow{grid-template-columns:1fr}.fico-ideas-flow>div{min-height:135px}
  .fico-landing-actions{flex-direction:column;align-items:stretch}.fico-landing-actions .fico-button{width:100%}
}

/* --------------------------------------------------------------------------
   FICO v0.25.0 · Sprint 7.5 · Revisión editorial y UX global
   -------------------------------------------------------------------------- */

/* Accessible focus and reliable touch targets across native + Gutenberg UI. */
body.fico-site :where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid var(--fico-cyan);
  outline-offset:3px;
}
body.fico-site :where(button,.wp-element-button,.wp-block-button__link,.fico-button,.fico-search-link,.fico-menu-toggle){min-height:44px}
body.fico-site :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea){min-height:44px}

/* Headings stay editorial without producing accidental horizontal overflow. */
body.fico-site :where(h1,h2,h3,h4){text-wrap:balance;overflow-wrap:normal;word-break:normal;hyphens:none}
body.fico-site :where(p,li,dd,figcaption){overflow-wrap:break-word}
.fico-landing-hero__copy h1,.fico-landing-section__head h2,.fico-current-lead__body h2,.fico-current-single__intro h1,.fico-idea-hero h1{max-width:min(100%,14ch)}

/* Consistent interaction language for cards and primary calls to action. */
.fico-button,.wp-element-button,.wp-block-button__link,.fico-project-archive-card,.fico-idea-card__link,.fico-current-card,.fico-archive-card,.fico-hechos-gateways>a{
  transition:transform .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease,opacity .18s ease;
}
@media (hover:hover) and (pointer:fine){
  .fico-button:hover,.wp-element-button:hover,.wp-block-button__link:hover{transform:translateY(-1px)}
  .fico-project-archive-card:hover,.fico-current-card:hover,.fico-archive-card:hover{transform:translateY(-3px);border-color:rgba(25,188,232,.58)}
  .fico-project-archive-card:hover h3 a,.fico-project-archive-card:hover h2 a{color:var(--fico-lime)}
  .fico-hechos-gateways>a:hover{transform:translateY(-3px);background:rgba(10,39,68,.88)}
}

/* Navigation: active state is visible without relying on color alone. */
.fico-nav__list a{position:relative;padding:.45rem .05rem}
.fico-nav__list .current-menu-item>a::after,.fico-nav__list a[aria-current="page"]::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--fico-lime);border-radius:999px;
}
.fico-menu-toggle{width:44px;height:44px;align-items:center;justify-content:center;cursor:pointer}
body.fico-menu-open{overflow:hidden}

/* Landing page rhythm: slightly tighter on tablets/mobile while preserving air. */
@media(max-width:980px){
  .fico-landing-hero{gap:2rem;padding-top:clamp(3rem,8vw,5rem);padding-bottom:clamp(3.5rem,8vw,5rem)}
  .fico-landing-hero__media{order:initial}
  .fico-landing-section{padding-top:clamp(3.75rem,8vw,5.5rem);padding-bottom:clamp(3.75rem,8vw,5.5rem)}
  .fico-landing-section__head{margin-bottom:1.8rem}
  .fico-landing-section__head h2{font-size:clamp(2.6rem,8vw,4.6rem)}
  .fico-hechos-gateways>a{min-height:180px}
  .fico-ideas-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fico-search-link{display:inline-grid}
  .fico-menu-toggle{display:flex}
}
@media(max-width:720px){
  .fico-container,.fico-section-shell{width:min(calc(100% - 28px),var(--fico-container))}
  .fico-header__inner{min-height:68px;gap:.7rem;grid-template-columns:auto 1fr auto}
  .fico-brand .custom-logo{max-height:32px}
  .fico-nav{inset:68px 0 auto 0;max-height:calc(100dvh - 68px);overflow:auto;padding:1rem 14px 1.4rem}
  .fico-nav__list{gap:.35rem}.fico-nav__list li,.fico-nav__list a{width:100%}.fico-nav__list a{display:flex;align-items:center;min-height:48px;padding:.65rem .5rem;font-size:1rem}
  .fico-search-link{width:44px;height:44px}
  .fico-landing-hero__copy h1{font-size:clamp(3.15rem,16vw,5rem);line-height:.9}
  .fico-landing-lead{font-size:1.08rem;line-height:1.55}
  .fico-landing-hero__image,.fico-landing-hero__placeholder{min-height:280px}
  .fico-landing-section__head h2{font-size:clamp(2.45rem,13vw,4.1rem);line-height:.93}
  .fico-hechos-gateways{grid-template-columns:1fr}.fico-hechos-gateways>a{min-height:132px;padding:1.2rem}
  .fico-hechos-gateways strong{font-size:3.3rem}
  .fico-ideas-flow{grid-template-columns:1fr}.fico-ideas-flow>div{min-height:120px}
  .fico-project-archive-card__body,.fico-current-card__body{padding:1.1rem}
  .fico-footer{padding-top:3rem}.fico-footer__bottom{align-items:flex-start;flex-direction:column}
  .fico-newsletter-form input[type="email"],.fico-current-search input,.fico-current-filter-row select{font-size:16px}
}
@media(max-width:420px){
  .fico-landing-actions{gap:.6rem}.fico-button{padding:.8rem 1rem}
  .fico-landing-hero__copy h1{font-size:clamp(2.8rem,15vw,4.2rem)}
  .fico-landing-section__head h2{font-size:clamp(2.25rem,12vw,3.6rem)}
}

/* Reduced motion keeps the experience fully usable. */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* ========================================================================== 
   FICO v0.29.0 · navegación semántica y soporte SEO
   ========================================================================== */
.fico-nav__item{display:flex;align-items:center;align-self:stretch}
.fico-nav__topline{display:flex;align-items:center;height:100%;gap:.18rem}
.fico-nav__primary-link{display:inline-flex;align-items:center;height:100%}
.fico-nav__submenu-toggle{
  display:inline-grid;place-items:center;width:26px;min-height:34px!important;height:34px;padding:0;border:0;background:transparent;color:rgba(255,255,255,.58);cursor:pointer;border-radius:6px;
}
.fico-nav__submenu-toggle svg{width:10px;height:7px;transition:transform .18s ease}
.fico-nav__item--has-mega.is-mega-open .fico-nav__submenu-toggle,.fico-nav__item--has-mega:focus-within .fico-nav__submenu-toggle{color:var(--fico-lime)}
.fico-nav__item--has-mega.is-mega-open .fico-nav__submenu-toggle svg{transform:rotate(180deg)}
.fico-nav__item.is-current-universe>.fico-nav__topline>.fico-nav__primary-link{color:var(--fico-lime)}
.fico-nav__item.is-current-universe>.fico-nav__topline>.fico-nav__primary-link::after{
  content:"";position:absolute;left:.05rem;right:.05rem;bottom:0;height:2px;background:var(--fico-lime);border-radius:999px
}

.fico-mega-menu{
  position:absolute;left:0;right:0;top:100%;z-index:1001;background:rgba(4,22,41,.985);border-top:1px solid rgba(255,255,255,.055);border-bottom:1px solid var(--fico-border);
  opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease;box-shadow:0 24px 50px rgba(0,0,0,.24)
}
.fico-nav__item--has-mega.is-mega-open>.fico-mega-menu,.fico-nav__item--has-mega:focus-within>.fico-mega-menu{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.fico-mega-menu__inner{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,2fr);gap:clamp(2rem,5vw,5.5rem);padding-top:2rem;padding-bottom:2.2rem}
.fico-mega-menu__intro{padding-right:1rem;border-right:1px solid rgba(255,255,255,.08)}
.fico-mega-menu__eyebrow,.fico-mega-menu__group-title{margin:0 0 .7rem;color:var(--fico-cyan);font-size:.66rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.fico-mega-menu__title{display:block;max-width:13ch;font-size:clamp(1.35rem,2vw,2.05rem);line-height:1.03;letter-spacing:-.035em}
.fico-mega-menu__intro>p:not(.fico-mega-menu__eyebrow){max-width:38ch;margin:.75rem 0 1rem;color:var(--fico-muted);font-size:.83rem;line-height:1.55}
.fico-mega-menu__cta{display:inline-flex;color:var(--fico-lime)!important;font-weight:900;font-size:.77rem;text-decoration:none}
.fico-mega-menu__groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 2rem;min-width:0}
.fico-mega-menu__groups>.fico-mega-menu__group:only-child{grid-column:1/-1}
.fico-mega-menu__links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
.fico-mega-menu__groups>.fico-mega-menu__group:only-child .fico-mega-menu__links{grid-template-columns:repeat(3,minmax(0,1fr))}
.fico-mega-menu__link{display:flex;flex-direction:column;gap:.3rem;min-height:82px;padding:.85rem .95rem;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(10,39,68,.36);text-decoration:none!important}
.fico-mega-menu__link:hover,.fico-mega-menu__link:focus-visible{border-color:rgba(25,188,232,.5);background:rgba(10,39,68,.72);transform:translateY(-1px)}
.fico-mega-menu__link-head{display:flex;align-items:baseline;justify-content:space-between;gap:.7rem}
.fico-mega-menu__link-head strong{font-size:.88rem;line-height:1.2;color:#fff}
.fico-mega-menu__link-head small{flex:0 0 auto;color:var(--fico-lime);font-size:.58rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.fico-mega-menu__link-desc{color:var(--fico-muted);font-size:.68rem;line-height:1.45}

.fico-breadcrumbs-wrap{border-bottom:1px solid rgba(255,255,255,.04);background:rgba(4,22,41,.4)}
.fico-breadcrumbs{min-height:42px;display:flex;align-items:center}
.fico-breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;list-style:none;margin:0;padding:.45rem 0;font-size:.68rem;color:var(--fico-muted)}
.fico-breadcrumbs li{display:inline-flex;align-items:center;gap:.35rem}
.fico-breadcrumbs li+li::before{content:"/";color:rgba(170,184,200,.42);margin-right:.05rem}
.fico-breadcrumbs a{color:var(--fico-cyan)!important;text-decoration:none}
.fico-breadcrumbs a:hover{text-decoration:underline;text-underline-offset:3px}
.fico-breadcrumbs [aria-current="page"]{color:rgba(255,255,255,.76);max-width:62ch;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media(max-width:1180px) and (min-width:981px){
  .fico-nav__list{gap:clamp(.55rem,1.6vw,1.35rem)}
  .fico-nav__list a{font-size:.82rem}
  .fico-nav__submenu-toggle{width:20px}
  .fico-mega-menu__inner{grid-template-columns:minmax(220px,.62fr) minmax(0,2fr);gap:2rem}
}

@media(max-width:980px){
  .fico-nav__item{display:block;width:100%;align-self:auto;border-bottom:1px solid rgba(255,255,255,.055)}
  .fico-nav__topline{height:auto;width:100%;gap:.35rem}
  .fico-nav__primary-link{flex:1;width:auto!important;min-width:0}
  .fico-nav__submenu-toggle{display:grid;flex:0 0 44px;width:44px;height:44px;min-height:44px!important;border:1px solid rgba(255,255,255,.08)}
  .fico-nav__item.is-current-universe>.fico-nav__topline>.fico-nav__primary-link::after{display:none}
  .fico-mega-menu{position:static;border:0;box-shadow:none;background:transparent;transform:none;display:none;opacity:1;visibility:visible;pointer-events:auto;transition:none}
  .fico-nav__item--has-mega.is-mega-open>.fico-mega-menu{display:block}
  .fico-nav__item--has-mega:focus-within>.fico-mega-menu{display:none}
  .fico-nav__item--has-mega.is-mega-open:focus-within>.fico-mega-menu{display:block}
  .fico-mega-menu__inner{width:100%;display:block;padding:.3rem .45rem 1rem}
  .fico-mega-menu__intro{padding:.6rem .45rem .85rem;border-right:0;border-bottom:1px solid rgba(255,255,255,.065)}
  .fico-mega-menu__title{font-size:1.15rem;max-width:none}
  .fico-mega-menu__intro>p:not(.fico-mega-menu__eyebrow){display:none}
  .fico-mega-menu__groups{display:block}
  .fico-mega-menu__group{padding-top:.85rem}
  .fico-mega-menu__links,.fico-mega-menu__groups>.fico-mega-menu__group:only-child .fico-mega-menu__links{grid-template-columns:1fr;gap:.25rem}
  .fico-mega-menu__link{min-height:0;padding:.72rem .8rem;background:rgba(10,39,68,.28)}
  .fico-mega-menu__link-desc{display:none}
  .fico-mega-menu__link-head strong{font-size:.88rem}
  .fico-mega-menu__group-title{margin-left:.25rem}
}

@media(max-width:720px){
  .fico-breadcrumbs [aria-current="page"]{max-width:42vw}
}
