/* Conscripto Bernardi — main.css
   Tema oficial WordPress
   ──────────────────────────── */

:root{
  --green-500:#7DC242;
  --green-600:#69a832;
  --blue-500:#1FB6E8;
  --blue-600:#0e9bcc;
  --orange-500:#F5A04A;
  --ink:#1a1a1a;
  --ink-2:#3a3a3a;
  --muted:#6b7280;
  --bg:#ffffff;
  --bg-2:#f5f5f5;
  --bg-3:#ececec;
  --border:#e5e5e5;
  --radius:14px;
  --radius-lg:24px;
  --radius-pill:999px;
  --ease:cubic-bezier(.2,.8,.2,1);
  --shadow-sm:0 1px 2px rgba(0,0,0,.04), 0 1px 6px rgba(0,0,0,.04);
  --shadow-md:0 8px 24px rgba(0,0,0,.08);
  --max:1200px;
}
[data-theme="dark"]{
  --ink:#f3f4f6;
  --ink-2:#cbd0d6;
  --muted:#9aa0a6;
  --bg:#0f1115;
  --bg-2:#171a20;
  --bg-3:#1f2229;
  --border:#262a33;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.55;
  color:var(--ink);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%; height:auto; display:block}
a{color:inherit; text-decoration:none; transition:color .2s var(--ease)}
a:hover{color:var(--blue-600)}
/* Links dentro de cards no se pintan en hover */
.cb-news-card a, .cb-news-link, .cb-news-link:hover,
.cb-tramite-row a, .cb-aut-card a,
.cb-shortcuts-grid a, .cb-shortcuts-grid a:hover{color:var(--ink)}
.container{max-width:var(--max); margin:0 auto; padding:0 24px}

/* ── Skip link ── */
.cb-skip{position:absolute; left:-9999px; top:auto}
.cb-skip:focus{position:fixed; left:16px; top:16px; background:var(--ink); color:#fff; padding:10px 16px; border-radius:8px; z-index:10000}

/* ── Loader ── */
.cb-loader{position:fixed; inset:0; z-index:9999; background:var(--bg); display:grid; place-items:center; transition:opacity .4s var(--ease), visibility .4s var(--ease)}
.cb-loader.hide{opacity:0; visibility:hidden; pointer-events:none}
.cb-loader-iso{width:84px; height:84px; animation:cb-pulse 1.6s ease-in-out infinite}
.cb-loader-pct{position:fixed; transform:translate(-50%,-50%); font-size:12px; color:var(--muted); pointer-events:none}
@keyframes cb-pulse{0%,100%{transform:scale(.92); opacity:.7} 50%{transform:scale(1.04); opacity:1}}

/* ── Header ── */
.cb-header{position:sticky; top:0; z-index:50; transition:background .3s var(--ease), box-shadow .3s var(--ease)}
.cb-header-home{position:fixed; inset:0 0 auto 0; background:transparent}
.cb-header-home.is-scrolled{background:var(--bg); box-shadow:var(--shadow-sm); position:fixed}
.cb-header-solid{background:var(--bg); box-shadow:var(--shadow-sm)}
.cb-header-inner{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 24px}
.cb-logo{display:block; position:relative}
.cb-logo img{height:64px; width:auto}
.cb-logo-white{display:none}
.cb-header-home:not(.is-scrolled) .cb-logo-color{display:none}
.cb-header-home:not(.is-scrolled) .cb-logo-white{display:block}
.cb-header-home:not(.is-scrolled) .cb-nav a{color:#fff}
.cb-header-home:not(.is-scrolled) .cb-theme-toggle{color:#fff}

.cb-nav-menu{list-style:none; display:flex; gap:36px; margin:0; padding:0}
.cb-nav-menu > li > a{font-weight:500; font-size:15px; padding:10px 0; position:relative}
.cb-nav-menu .sub-menu{position:absolute; background:var(--bg); color:var(--ink); list-style:none; padding:8px; margin:0; box-shadow:var(--shadow-md); border-radius:12px; min-width:220px; opacity:0; visibility:hidden; transform:translateY(8px); transition:opacity .2s var(--ease), transform .2s var(--ease), visibility .2s}
.cb-nav-menu li:hover > .sub-menu, .cb-nav-menu li:focus-within > .sub-menu{opacity:1; visibility:visible; transform:translateY(0)}
.cb-nav-menu .sub-menu a{display:block; padding:9px 12px; border-radius:8px; font-size:14px; color:var(--ink) !important; background:transparent}
.cb-nav-menu .sub-menu a:hover{background:var(--bg-2); color:var(--blue-500) !important}
/* Submenu siempre con texto oscuro aunque el header sea transparente */
.cb-header-home:not(.is-scrolled) .cb-nav-menu .sub-menu a{color:var(--ink) !important}

.cb-theme-toggle{background:none; border:0; cursor:pointer; color:var(--ink); padding:8px; border-radius:50%; transition:background .2s}
.cb-theme-toggle:hover{background:var(--bg-2)}

/* ── Hero ── */
.cb-hero{position:relative; min-height:560px; display:grid; align-items:end; color:#fff; isolation:isolate}
.cb-hero-home{min-height:680px}
.cb-hero-compact{min-height:380px}
.cb-hero-bg{position:absolute; inset:0; z-index:-1; background-image:linear-gradient(180deg, rgba(0,0,0,.3) 0%, rgba(0,0,0,.6) 100%), var(--hero); background-size:cover; background-position:center}
/* Contenido del hero anclado a la izquierda con padding responsivo,
   en vez de centrado dentro del container (el container.cb-hero-content
   sobreescribe margin/max-width del .container). */
.cb-hero-content.cb-hero-content{
  padding:120px 24px 56px;
  padding-left:clamp(24px, 6vw, 80px);
  margin:0;
  max-width:none;
}
.cb-hero-content > *{max-width:880px}
.cb-hero-eyebrow{font-size:24px; margin:0; font-weight:500; opacity:.95}
.cb-hero h1{font-size:clamp(38px, 5vw, 64px); line-height:1.05; font-weight:800; margin:8px 0 24px; max-width:760px}
.cb-hero-sub{max-width:760px; font-size:16px; line-height:1.6; opacity:.95}
.cb-crumbs{font-size:14px; opacity:.9; display:flex; gap:8px; margin-bottom:8px}
.cb-crumbs-light{color:var(--muted); margin-bottom:16px}

.cb-hero-search{display:flex; align-items:center; max-width:520px; background:rgba(255,255,255,.95); border-radius:var(--radius-pill); padding:6px 6px 6px 20px; box-shadow:var(--shadow-md); margin-top:8px}
.cb-hero-search input{flex:1; border:0; background:transparent; padding:12px 0; font-size:15px; outline:none; color:var(--ink)}
.cb-hero-search button{background:var(--green-500); color:#fff; border:0; width:42px; height:42px; border-radius:50%; cursor:pointer; display:grid; place-items:center}

/* ── Weather widget (Inicio hero) ── */
.cb-weather{
  display:inline-flex; gap:16px; align-items:center;
  background:rgba(255,255,255,.18); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  padding:16px 22px; border-radius:18px; margin-top:18px;
  border:1px solid rgba(255,255,255,.25);
  color:#fff;
}
.cb-weather-icon{display:grid; place-items:center; width:48px; height:48px; color:#fff; flex-shrink:0}
.cb-weather-svg{width:42px; height:42px}
.cb-weather-temp{font-size:36px; font-weight:800; line-height:1; letter-spacing:-.02em; font-variant-numeric:tabular-nums}
.cb-weather-temp sup{font-size:.55em; font-weight:700; vertical-align:super; margin-left:2px}
.cb-weather-meta{display:flex; flex-direction:column; gap:2px; line-height:1.2}
.cb-weather-cond{font-size:13px; font-weight:700; letter-spacing:.04em}
.cb-weather-loc{font-size:11px; letter-spacing:.06em; opacity:.85; font-weight:500}

.cb-hero-social{display:flex; gap:10px; margin-top:18px}
.cb-hero-social a{width:36px; height:36px; border-radius:50%; background:rgba(255,255,255,.18); display:grid; place-items:center; color:#fff; font-weight:700}

.cb-tramite-filters{display:flex; gap:12px; margin-top:18px; flex-wrap:wrap}

/* ── Botones ── */
.cb-btn{display:inline-flex; align-items:center; gap:8px; padding:14px 28px; border-radius:var(--radius-pill); font-weight:700; font-size:13px; letter-spacing:.06em; text-transform:uppercase; cursor:pointer; border:0; transition:transform .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease)}
.cb-btn:hover{transform:translateY(-1px); box-shadow:var(--shadow-md)}
.cb-btn-primary{background:var(--blue-500); color:#fff}
.cb-btn-primary:hover{background:var(--blue-600); color:#fff}
.cb-btn-blue{background:var(--blue-500); color:#fff}
.cb-btn-blue:hover{background:var(--blue-600); color:#fff}
.cb-btn-green{background:var(--green-500); color:#fff}
.cb-btn-green:hover{background:var(--green-600); color:#fff}

/* ── Chips ── */
.cb-chip{display:inline-flex; align-items:center; padding:5px 14px; border-radius:var(--radius-pill); font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:#fff}
.cb-chip-blue{background:var(--blue-500)}
.cb-chip-green{background:var(--green-500)}
.cb-chip-orange{background:var(--orange-500)}
.cb-chip-gray{background:#9aa0a6}

/* ── Atajos portada ── */
.cb-shortcuts-portada{margin-top:-60px; position:relative; z-index:5; padding:0 0 60px}
.cb-shortcuts-grid{list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(5,1fr); gap:24px}
.cb-shortcuts-grid a{display:flex; flex-direction:column; align-items:center; gap:12px; transition:transform .2s var(--ease)}
.cb-shortcuts-grid a:hover{transform:translateY(-4px)}
.cb-circle{width:96px; height:96px; border-radius:50%; display:grid; place-items:center; color:#fff; transition:transform .25s var(--ease), box-shadow .25s var(--ease)}
.cb-circle svg{width:44px; height:44px; color:#fff}
.cb-circle img{width:44px; height:44px}
.cb-shortcuts-grid a:hover .cb-circle{box-shadow:0 12px 30px -8px rgba(0,0,0,.25)}
.cb-c-green{background:var(--green-500)}
.cb-c-blue{background:var(--blue-500)}
.cb-c-dark{background:#2c2f33}
.cb-c-green-script{background:var(--green-500); font-family:'Caveat',cursive; font-size:22px; line-height:1}
.cb-c-green-script .cb-script-text{color:#fff; font-weight:600}
.cb-shortcut-label{font-size:14px; font-weight:500; text-align:center}

/* ── Section ── */
.cb-section{padding:64px 0}
.cb-eyebrow{font-size:13px; letter-spacing:.12em; color:var(--muted); margin:0 0 4px; text-transform:uppercase}
.cb-h2{font-size:36px; font-weight:800; margin:0 0 32px}
.cb-h2-blue{font-size:30px; color:var(--blue-500); text-align:center; margin:48px 0 24px; font-weight:800}
.cb-accent{color:var(--blue-500)}
.cb-center{text-align:center; margin-top:32px}

/* ── Noticias ── */
.cb-news-feature{display:grid; grid-template-columns:1.6fr 1fr; grid-template-rows:1fr 1fr; gap:24px}
.cb-news-card{
  position:relative; border-radius:var(--radius); overflow:hidden;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease);
  background:var(--bg-2);
}
.cb-news-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-md)}
.cb-news-link{display:block; height:100%; color:var(--ink)}
.cb-news-link:hover{color:var(--ink)}

/* Card grande (featured) — ocupa las 2 filas a la izquierda */
.cb-news-big{grid-row:span 2; min-height:480px}
.cb-news-big .cb-news-link{position:relative; height:100%; min-height:480px}
.cb-news-big .cb-news-thumb{
  position:absolute; inset:0;
  background:linear-gradient(135deg, #1FB6E8 0%, #7DC242 100%);
}
.cb-news-big .cb-news-thumb img{
  width:100%; height:100%; object-fit:cover; display:block;
  transition:transform .35s var(--ease);
}
.cb-news-big:hover .cb-news-thumb img{transform:scale(1.04)}
.cb-news-big::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg, transparent 30%, rgba(0,0,0,.85) 100%);
  pointer-events:none; z-index:1;
}
.cb-news-big .cb-news-overlay{
  position:absolute; left:24px; right:24px; bottom:24px; top:24px;
  display:flex; flex-direction:column; justify-content:space-between;
  z-index:2; pointer-events:none;
}
.cb-news-big .cb-chip{align-self:flex-start; pointer-events:auto}
.cb-news-big h3{
  color:#fff; font-size:26px; line-height:1.2; font-weight:700; margin:0;
  text-wrap:pretty; max-width:560px;
}

/* Card pequeña — imagen 4:3 a la izquierda + cuerpo a la derecha */
.cb-news-small{background:var(--bg-2); display:block; overflow:hidden}
.cb-news-small .cb-news-link{
  display:grid; grid-template-columns:160px 1fr; gap:0; height:100%;
  align-items:stretch; min-height:160px;
}
.cb-news-small .cb-news-thumb{
  position:relative; aspect-ratio:1/1; overflow:hidden;
  background:linear-gradient(135deg, #1FB6E8 0%, #7DC242 100%);
  flex-shrink:0;
}
.cb-news-small .cb-news-thumb img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;
  transition:transform .35s var(--ease);
}
.cb-news-small:hover .cb-news-thumb img{transform:scale(1.04)}
.cb-news-small .cb-news-body{
  padding:18px 20px; display:flex; flex-direction:column; gap:10px;
  align-items:flex-start; justify-content:center;
  min-width:0; /* permite que el contenido shrink */
  overflow:hidden;
}
.cb-news-small h3{
  font-size:15px; font-weight:700; margin:0; color:var(--ink);
  line-height:1.35; text-wrap:pretty; word-wrap:break-word;
  display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Chips de categoría: pill compacto, una sola línea, ancho automático */
.cb-chip{
  display:inline-flex; align-items:center;
  padding:6px 14px; border-radius:var(--radius-pill);
  font-size:11px; font-weight:700; letter-spacing:.04em;
  text-transform:uppercase; color:#fff; white-space:nowrap;
  line-height:1.2; flex-shrink:0;
}
@supports (text-wrap: balance){
  .cb-chip{ text-wrap:balance }
}
/* En las cards de noticia los chips pueden tener nombres largos:
   se mantienen como pill inline, envuelven en varias líneas y nunca
   se estiran a todo el ancho ni se desbordan. */
.cb-news-card .cb-chip,
.cb-news-card-grid .cb-chip{
  white-space:normal;
  text-align:center;
  max-width:100%;
  line-height:1.25;
  align-self:flex-start;
}
/* Override explícito si querés un chip que sí wrap forzado */
.cb-chip-multiline{white-space:normal; max-width:240px; text-align:center; line-height:1.25}

/* Grid genérico (archive/category/novedades) */
.cb-news-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px}
.cb-news-card-grid{background:var(--card, var(--bg-2)); border-radius:var(--radius); overflow:hidden; display:flex; flex-direction:column}
.cb-news-card-grid .cb-news-thumb{aspect-ratio:16/10; overflow:hidden}
.cb-news-card-grid .cb-news-thumb img,
.cb-news-card-grid .cb-news-thumb-fallback{
  width:100%; height:100%; object-fit:cover;
  background:linear-gradient(135deg, #B5D9F2, #A4C76A);
  transition:transform .35s var(--ease);
}
.cb-news-card-grid:hover .cb-news-thumb img{transform:scale(1.04)}
.cb-news-body-padded{padding:16px 18px 18px; display:flex; flex-direction:column; gap:8px; align-items:flex-start; flex:1}
.cb-news-card-grid h2{font-size:17px; font-weight:700; line-height:1.35; margin:0; color:var(--ink); text-wrap:pretty}
.cb-news-excerpt{font-size:14px; color:var(--ink-2); margin:0; line-height:1.5}
.cb-news-date{font-size:12px; color:var(--muted); margin-top:auto}

/* ── Trámites listado ── */
.cb-tramites-list{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:36px}
.cb-tramite-row{padding:0; transition:transform .2s var(--ease)}
.cb-tramite-row:hover{transform:translateX(4px); background:transparent}
.cb-tramite-link{
  display:grid; grid-template-columns:120px 1fr; gap:36px;
  align-items:start; padding:0; color:var(--ink);
}
.cb-tramite-link:hover{color:var(--ink)}
.cb-tramite-row .cb-circle{
  width:104px; height:104px; flex-shrink:0; margin-top:4px;
  transition:transform .25s var(--ease);
}
.cb-tramite-row .cb-circle svg{width:48px; height:48px}
.cb-tramite-row:hover .cb-circle{transform:scale(1.04)}
.cb-tramite-row h2{
  font-size:24px; font-weight:800; margin:0 0 10px;
  display:flex; gap:14px; align-items:center; flex-wrap:wrap;
}
.cb-tramite-row h2 .cb-chip{font-size:11px; letter-spacing:.08em}
.cb-tramite-row p{
  margin:0; color:var(--ink-2); font-size:15px; line-height:1.65;
  max-width:720px;
}

/* ── Paginación ── */
.cb-pagination{
  display:flex; justify-content:center; gap:6px; margin-top:36px;
  align-items:center;
}
.cb-pagination .page-numbers{
  display:inline-grid; place-items:center;
  min-width:38px; height:38px; padding:0 12px;
  border-radius:999px; font-weight:600; font-size:14px;
  color:var(--ink-2); transition:background .2s, color .2s;
}
.cb-pagination .page-numbers:hover{background:var(--bg-2); color:var(--ink)}
.cb-pagination .page-numbers.current{background:var(--blue-500); color:#fff}
.cb-pagination .dots{color:var(--muted)}

/* ── Trámite individual ── */
.cb-tramite{padding-top:40px}
.cb-tramite h1{font-size:38px; font-weight:800; margin:8px 0 16px}
.cb-chips{display:flex; gap:10px; margin:24px 0 40px}
.cb-tramite-grid{display:grid; grid-template-columns:1.5fr 1fr; gap:48px; align-items:start}
.cb-info-card{background:var(--bg-2); border-radius:var(--radius); padding:32px}
.cb-info-card h2{font-size:20px; margin:0 0 20px}
.cb-info-card p{margin:0 0 16px; font-size:14px}
.cb-info-card strong{color:var(--muted); font-size:11px; letter-spacing:.06em}
.cb-pasos{list-style:none; padding:0; margin:32px 0 0; display:grid; gap:32px; position:relative}
.cb-pasos li{display:grid; grid-template-columns:48px 1fr; gap:20px; align-items:start; position:relative}
.cb-pasos li:not(:last-child)::after{content:''; position:absolute; left:23px; top:48px; bottom:-32px; width:2px; background:var(--border)}
.cb-paso-num{width:48px; height:48px; border-radius:50%; background:var(--green-500); color:#fff; display:grid; place-items:center; font-weight:700}
.cb-pasos h3{font-size:18px; margin:0 0 6px}
.cb-pasos p{margin:0; color:var(--muted); font-size:14px; line-height:1.6}

/* ── Autoridades ── */
.cb-aut-grid{display:grid; gap:32px}
.cb-aut-ejec{grid-template-columns:repeat(2,1fr); max-width:720px; margin:0 auto}
.cb-aut-concejo{grid-template-columns:repeat(3,1fr)}
.cb-aut-card{text-align:center}
.cb-aut-img-wrap{position:relative; display:inline-block}
.cb-aut-img{width:160px; height:160px; border-radius:50%; object-fit:cover; margin:0 auto}
.cb-aut-partido{position:absolute; bottom:8px; left:50%; transform:translateX(-50%)}
.cb-aut-name{color:var(--green-500); font-size:18px; margin:14px 0 4px}
.cb-aut-role{font-size:11px; color:var(--muted); letter-spacing:.06em; margin:0}
.cb-gabinete-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:32px 48px; max-width:960px; margin:0 auto 48px}
.cb-gab-item{text-align:left}

/* ── Singular noticia ── */
.cb-singular-grid{display:grid; grid-template-columns:1.5fr 1fr; gap:48px; align-items:start; padding-top:40px}
.cb-singular h1{font-size:36px; font-weight:800; margin:16px 0}
.cb-lede{font-size:17px; color:var(--ink-2); line-height:1.6}
.cb-date{color:var(--muted); font-size:14px; margin:8px 0 24px}
.cb-feat-img{margin-bottom:24px; border-radius:var(--radius); overflow:hidden}
.cb-share{display:flex; align-items:center; gap:8px; font-size:11px; letter-spacing:.06em; color:var(--muted); margin-bottom:24px}
.cb-share a{width:32px; height:32px; border-radius:50%; background:var(--green-500); color:#fff; display:grid; place-items:center; font-weight:700; font-size:13px}
.cb-prose p{line-height:1.7; margin:0 0 16px}
.cb-prose ul{padding-left:20px}
.cb-prose h2{font-size:24px; font-weight:800; margin:28px 0 12px}
.cb-prose h3{font-size:18px; font-weight:700; margin:22px 0 10px}
.cb-sidebar{background:var(--bg-2); border-radius:var(--radius); padding:32px; min-height:300px}
.cb-sidebar-empty{color:var(--muted); font-size:14px}
.cb-sidebar-empty h3{margin:0 0 8px; font-size:15px; color:var(--ink)}
.cb-sidebar .widget + .widget{margin-top:20px}
.cb-sidebar .widget-title{font-size:15px; font-weight:700; margin:0 0 12px}

/* ── Share buttons ── */
.cb-share{display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:18px 0 28px; padding:14px 18px; background:var(--bg-2); border-radius:999px; width:fit-content; max-width:100%}
.cb-share-label{font-size:11px; letter-spacing:.08em; font-weight:700; color:var(--muted); margin-right:4px}
.cb-share-btn{
  display:inline-grid; place-items:center; width:36px; height:36px;
  border-radius:50%; background:var(--bg); color:var(--ink-2); border:0;
  cursor:pointer; transition:transform .2s, background .2s, color .2s;
}
.cb-share-btn:hover{transform:translateY(-2px)}
.cb-share-btn svg{width:18px; height:18px}
.cb-share-fb:hover{background:#1877f2; color:#fff}
.cb-share-tw:hover{background:#000; color:#fff}
.cb-share-wa:hover{background:#25d366; color:#fff}
.cb-share-em:hover{background:var(--blue-500); color:#fff}
.cb-share-cp{position:relative}
.cb-share-cp:hover{background:var(--green-500); color:#fff}
.cb-share-cp.is-copied::after{
  content:'¡Copiado!'; position:absolute; bottom:calc(100% + 6px); left:50%;
  transform:translateX(-50%); background:var(--ink); color:#fff;
  font-size:11px; padding:4px 10px; border-radius:999px; white-space:nowrap;
}

/* ── Related posts ── */
.cb-related{margin:48px 0 24px; padding:32px 0 0; border-top:1px solid var(--border)}
.cb-related h2{font-size:20px; font-weight:800; margin:0 0 18px}
.cb-related-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px}
.cb-related-card{background:var(--bg-2); border-radius:12px; overflow:hidden; transition:transform .2s, box-shadow .2s}
.cb-related-card:hover{transform:translateY(-3px); box-shadow:var(--shadow-md)}
.cb-related-card img{width:100%; height:140px; object-fit:cover; display:block}
.cb-related-card h3{font-size:14px; font-weight:600; margin:12px 14px; line-height:1.4; color:var(--ink)}

/* ── Filtros en tiempo real (archive trámites) ── */
.cb-tramite-filters{display:flex; flex-wrap:wrap; gap:12px; margin-top:18px; align-items:center}
.cb-filter-select{
  background:rgba(255,255,255,.92); color:var(--ink); border:0; border-radius:999px;
  padding:12px 18px; font-family:inherit; font-size:14px; min-width:180px;
  appearance:none; -webkit-appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat:no-repeat; background-position:right 14px center; background-size:14px;
  padding-right:36px; cursor:pointer;
}
.cb-filter-toggle{display:inline-flex; align-items:center; gap:8px; padding:10px 16px; background:rgba(255,255,255,.18); border:1px solid rgba(255,255,255,.3); border-radius:999px; color:#fff; font-size:13px; cursor:pointer}
.cb-filter-toggle input{accent-color:var(--green-500)}
.cb-result-count{color:var(--muted); font-size:14px; margin:0 0 24px}

.cb-chip-soft{background:rgba(31,182,232,.12); color:var(--blue-600)}

/* ── Autoridad single ── */
.cb-autoridad-single .cb-crumbs-light{margin-bottom:24px}
.cb-autoridad-hero{display:grid; grid-template-columns:auto 1fr; gap:36px; align-items:center; padding:24px 0 36px; border-bottom:1px solid var(--border); margin-bottom:32px}
.cb-autoridad-photo{position:relative; width:200px}
.cb-autoridad-photo img, .cb-autoridad-photo .cb-aut-placeholder{
  width:200px; height:200px; border-radius:50%; object-fit:cover; display:block;
  border:4px solid var(--bg-2);
}
.cb-aut-placeholder{
  background:linear-gradient(180deg, #B5D9F2 0%, #B5D9F2 60%, #A4C76A 60%, #A4C76A 100%);
}
.cb-autoridad-photo .cb-aut-partido{position:absolute; bottom:6px; left:50%; transform:translateX(-50%)}
.cb-autoridad-info .cb-aut-role{font-size:12px; letter-spacing:.08em; color:var(--blue-600); margin:0 0 6px; font-weight:600}
.cb-autoridad-info h1{font-size:36px; font-weight:800; margin:0 0 12px}
.cb-autoridad-info .cb-lede{font-size:17px; color:var(--ink-2); line-height:1.6; margin:0 0 14px}
.cb-autoridad-contact{list-style:none; padding:0; margin:0; display:flex; gap:24px; flex-wrap:wrap}
.cb-autoridad-contact li{display:flex; flex-direction:column; gap:2px}
.cb-c-label{font-size:11px; letter-spacing:.06em; color:var(--muted); font-weight:600; text-transform:uppercase}
.cb-autoridad-contact a{color:var(--ink); font-weight:600}
.cb-autoridad-contact a:hover{color:var(--blue-600)}

.cb-autoridad-docs{list-style:none; padding:0; margin:16px 0; display:grid; grid-template-columns:repeat(2,1fr); gap:14px}
.cb-doc-card{display:flex; align-items:center; gap:14px; padding:16px 18px; background:var(--bg-2); border-radius:12px; transition:transform .2s, background .2s; color:var(--ink)}
.cb-doc-card:hover{transform:translateY(-2px); background:rgba(31,182,232,.08); color:var(--ink)}
.cb-doc-icon{width:42px; height:42px; border-radius:10px; background:var(--blue-500); color:#fff; display:grid; place-items:center; flex-shrink:0}
.cb-doc-card strong{display:block; font-size:15px}
.cb-doc-card span{font-size:12px; color:var(--muted)}
.cb-autoridad-body.cb-singular-grid{padding-top:0}
.cb-aut-link{display:block; color:var(--ink)}
.cb-aut-link:hover{color:var(--ink)}
.cb-aut-link:hover .cb-aut-img{transform:scale(1.04)}
.cb-aut-img{transition:transform .25s var(--ease)}

/* ── Search results ── */
.cb-search-results{list-style:none; padding:0; margin:0; display:grid; gap:14px}
.cb-search-results a{display:block; padding:18px 20px; background:var(--bg-2); border-radius:12px; transition:background .2s, transform .2s; color:var(--ink)}
.cb-search-results a:hover{background:rgba(31,182,232,.08); transform:translateY(-2px); color:var(--ink)}
.cb-search-type{display:inline-block; font-size:11px; letter-spacing:.06em; font-weight:700; color:var(--blue-600); background:rgba(31,182,232,.12); padding:3px 10px; border-radius:999px; text-transform:uppercase}
.cb-search-results h3{font-size:18px; font-weight:700; margin:8px 0 6px}
.cb-search-results p{color:var(--muted); font-size:14px; margin:0}
.cb-no-results{text-align:center; padding:60px 24px; color:var(--muted)}
.cb-no-results h2{color:var(--ink); margin:0 0 8px}

.cb-anchor-pills{display:flex; gap:10px; flex-wrap:wrap; margin-top:18px}

/* ── Emergency ── */
.cb-emergency{background:var(--bg-3); padding:40px 0}
.cb-emergency-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:24px; text-align:center}
.cb-emergency-item{display:block; padding:8px 4px; border-radius:12px; transition:background .2s, transform .2s}
.cb-emergency-item:hover{background:rgba(0,0,0,.04); transform:translateY(-2px)}
.cb-emergency-item:hover .cb-em-num{color:var(--green-600)}
.cb-em-label{font-size:13px; font-weight:700; letter-spacing:.04em; margin:0; color:var(--ink)}
.cb-em-num{color:var(--blue-500); font-size:32px; font-weight:800; margin:4px 0 0}

/* ── Footer ── */
.cb-footer{background:var(--bg); padding:64px 0 0}
.cb-footer-inner{display:flex; flex-direction:column; align-items:center; gap:32px}
.cb-footer-logo img{height:96px}
.cb-social{display:flex; gap:16px}
.cb-social a{
  width:38px; height:38px; border-radius:50%;
  display:grid; place-items:center; color:var(--ink);
  background:var(--bg-2); transition:transform .2s, color .2s, background .2s;
}
.cb-social a:hover{transform:translateY(-2px); color:#fff; background:var(--blue-500)}
.cb-social a svg{width:20px; height:20px}
.cb-social a img{width:22px; height:22px; object-fit:contain}
.cb-social-fallback{font-size:14px; font-weight:700}
.cb-footer-cols{display:grid; grid-template-columns:repeat(2,minmax(160px,1fr)); gap:64px; text-align:left}
.cb-footer-cols h3{color:var(--green-500); font-size:18px; margin:0 0 12px}
.cb-footer-cols ul{list-style:none; padding:0; margin:0}
.cb-footer-cols li{margin-bottom:6px}
.cb-footer-cols a{font-size:14px; color:var(--ink-2)}
.cb-pluspagos-bar{display:flex; align-items:center; gap:16px; background:#1a1a1a; color:#fff; padding:12px 20px; border-radius:8px; margin-top:16px}
.cb-pluspagos-bar b{display:block; font-size:13px}
.cb-pluspagos-bar span{font-size:11px}
.cb-er-bar img{height:50px; opacity:.9}
.cb-footer-strip{background:var(--ink); color:#fff; margin-top:32px; padding:14px 0; font-size:13px}
.cb-footer-strip-inner{display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap}
.cb-heart{color:var(--green-500)}

/* ── Fade-in ── */
.cb-fade{opacity:0; transform:translateY(16px); transition:opacity .6s var(--ease), transform .6s var(--ease)}
.cb-fade.is-visible{opacity:1; transform:none}

/* ── Responsive ── */
@media (max-width:960px){
  .cb-nav{display:none}
  .cb-shortcuts-grid{grid-template-columns:repeat(3,1fr); gap:16px}
  .cb-circle{width:72px; height:72px}
  .cb-news-feature{grid-template-columns:1fr; grid-template-rows:auto}
  .cb-news-big{grid-row:auto; min-height:380px}
  .cb-news-big .cb-news-link{min-height:380px}
  .cb-news-grid{grid-template-columns:1fr}
  .cb-tramite-grid, .cb-singular-grid{grid-template-columns:1fr}
  .cb-aut-concejo, .cb-gabinete-grid{grid-template-columns:repeat(2,1fr)}
  .cb-emergency-grid{grid-template-columns:repeat(2,1fr); gap:16px}
  .cb-em-num{font-size:24px}
  .cb-footer-strip-inner{justify-content:center; text-align:center}
}
@media (max-width:560px){
  .cb-shortcuts-grid{grid-template-columns:repeat(2,1fr)}
  .cb-aut-concejo, .cb-gabinete-grid, .cb-aut-ejec{grid-template-columns:1fr}
  .cb-hero h1{font-size:32px}
  .cb-autoridad-hero{grid-template-columns:1fr; text-align:center}
  .cb-autoridad-info h1{font-size:28px}
  .cb-autoridad-photo{margin:0 auto}
  .cb-autoridad-docs{grid-template-columns:1fr}
  .cb-related-grid{grid-template-columns:1fr}
  .cb-share{padding:10px 14px}
  .cb-share-label{display:none}
}
