/* Banco de la Gente — banner de la home y página /banco-de-la-gente.html
   Archivo propio (no toca main.css ni branding.css). Todas las clases llevan el prefijo bdg-.
   Paleta: azul #0d3b66 · amarillo #e8b210. Animaciones solo con CSS y apagadas con prefers-reduced-motion. */

.bdg-wrap{max-width:64rem;margin:0 auto;padding:0 1rem;}
.bdg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}

/* ── Banner / hero ─────────────────────────────────────────────── */
.bdg-banner{position:relative;overflow:hidden;color:#fff;
  background:linear-gradient(135deg,#061c33 0%,#0d3b66 55%,#0a2f52 100%);
  padding:2.25rem 0;font-family:'Inter',sans-serif;}
.bdg-banner::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.10;
  background-image:radial-gradient(circle,rgba(255,255,255,.4) 1px,transparent 1px);background-size:28px 28px;}
.bdg-banner::after{content:"";position:absolute;top:-30%;bottom:-30%;left:0;width:28%;pointer-events:none;
  background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.16) 50%,transparent 100%);
  transform:translateX(-160%) skewX(-18deg);animation:bdg-brillo 7s ease-in-out infinite;}
@keyframes bdg-brillo{0%,55%{transform:translateX(-160%) skewX(-18deg);}100%{transform:translateX(480%) skewX(-18deg);}}

.bdg-banner__in{position:relative;z-index:1;max-width:80rem;margin:0 auto;padding:0 1rem;
  display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.25rem;}
.bdg-banner__txt{width:100%;}
.bdg-pill{display:inline-block;background:#e8b210;color:#0d3b66;font-weight:800;font-size:.8125rem;
  letter-spacing:.14em;text-transform:uppercase;padding:.4rem 1rem;border-radius:999px;margin-bottom:1rem;}
.bdg-titulo{font-family:'Raleway',sans-serif;font-weight:900;color:#fff;margin:0 0 .85rem;
  font-size:clamp(1.9rem,6.4vw,3.1rem);line-height:1.08;}
.bdg-titulo--pag{font-size:clamp(2rem,6vw,3rem);}
.bdg-acento{color:#e8b210;}
.bdg-bajada{margin:0 auto 1.5rem;max-width:38rem;font-size:1.0625rem;line-height:1.6;color:rgba(255,255,255,.92);}
.bdg-acciones{display:flex;flex-direction:column;gap:.75rem;width:100%;}

.bdg-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.25rem;
  padding:.75rem 1.5rem;border-radius:.85rem;font-family:'Inter',sans-serif;font-weight:700;font-size:1rem;
  line-height:1.25;text-decoration:none;text-align:center;border:2px solid transparent;
  transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease;}
.bdg-btn:hover{transform:translateY(-1px);}
.bdg-btn:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px #0d3b66;}
.bdg-btn svg{width:1.35rem;height:1.35rem;flex-shrink:0;}
.bdg-btn--amarillo{background:#e8b210;color:#0d3b66;box-shadow:0 8px 24px rgba(232,178,16,.28);}
.bdg-btn--amarillo:hover{background:#f2c230;}
.bdg-btn--borde{background:transparent;color:#fff;border-color:#fff;}
.bdg-btn--borde:hover{background:rgba(255,255,255,.12);}
/* Botones sobre fondo claro */
.bdg-btn--azul{background:#0d3b66;color:#fff;}
.bdg-btn--azul:hover{background:#12508a;}
.bdg-btn--wa{background:#0a6c3d;color:#fff;}
.bdg-btn--wa:hover{background:#0c8049;}
.bdg-btn--linea{background:#fff;color:#0d3b66;border-color:#0d3b66;}
.bdg-btn--linea:hover{background:#eef3f9;}
.bdg-pagina .bdg-btn:focus-visible,.bdg-claro .bdg-btn:focus-visible{outline-color:#0d3b66;box-shadow:0 0 0 6px #fff;}
.bdg-banner .bdg-btn:focus-visible,.bdg-hero .bdg-btn:focus-visible{outline-color:#fff;box-shadow:0 0 0 6px #0d3b66;}

/* Gráfico (billete + moneda) con pulso suave */
.bdg-grafico{display:none;flex-shrink:0;}
.bdg-grafico svg{width:100%;height:auto;display:block;animation:bdg-pulso 3.2s ease-in-out infinite;transform-origin:center;}
@keyframes bdg-pulso{0%,100%{transform:scale(1);}50%{transform:scale(1.06);}}

@media (min-width:768px){
  .bdg-banner{padding:3.25rem 0;}
  .bdg-banner__in{flex-direction:row;justify-content:space-between;text-align:left;gap:3rem;padding:0 1.5rem;}
  .bdg-banner__txt{flex:1 1 auto;}
  .bdg-bajada{margin-left:0;margin-right:0;}
  .bdg-acciones{flex-direction:row;flex-wrap:wrap;width:auto;}
  .bdg-grafico{display:block;width:min(24rem,36%);}
}

/* ── Página ─────────────────────────────────────────────────────── */
.bdg-hero{padding:2.5rem 0 2.75rem;}
.bdg-hero .bdg-banner__in{max-width:64rem;}
.bdg-migas{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-size:.8125rem;color:rgba(255,255,255,.8);margin-bottom:1.25rem;justify-content:center;}
.bdg-migas a{color:#fff;text-decoration:underline;text-underline-offset:3px;}
@media (min-width:768px){.bdg-migas{justify-content:flex-start;}}

.bdg-main{max-width:64rem;margin:0 auto;padding:2rem 1rem 3.5rem;font-family:'Inter',sans-serif;color:#1f2937;}
.bdg-sec{margin-top:2.75rem;}
.bdg-sec h2{font-family:'Raleway',sans-serif;font-weight:900;color:#0d3b66;font-size:clamp(1.5rem,4.5vw,2rem);line-height:1.15;margin:0 0 1rem;}
.bdg-sec h2::after{content:"";display:block;width:56px;height:4px;margin-top:10px;border-radius:2px;background:linear-gradient(90deg,#e8b210,#c99708 60%,transparent);}
.bdg-sec p{font-size:1.0625rem;line-height:1.7;margin:0 0 1rem;}

/* Caja de asistencia municipal */
.bdg-ayuda{background:#fff;border:3px solid #e8b210;border-radius:1.25rem;padding:1.5rem 1.25rem;text-align:center;
  box-shadow:0 12px 32px rgba(13,59,102,.16);}
.bdg-ayuda h2{font-family:'Raleway',sans-serif;font-weight:900;color:#0d3b66;font-size:clamp(1.5rem,5vw,2rem);line-height:1.15;margin:0 0 .35rem;}
.bdg-ayuda h2::after{display:none;}
.bdg-ayuda__sub{display:inline-block;background:#0d3b66;color:#fff;font-weight:800;font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .85rem;border-radius:999px;margin-bottom:.9rem;}
.bdg-ayuda p{font-size:1.0625rem;line-height:1.6;margin:0 0 .75rem;color:#374151;}
.bdg-numero{font-family:'Raleway',sans-serif;font-weight:900;color:#0d3b66;font-size:clamp(2.25rem,10vw,3.5rem);line-height:1.05;margin:.25rem 0 1rem;letter-spacing:.02em;}
.bdg-ayuda .bdg-acciones{justify-content:center;margin:0 auto;}
@media (min-width:768px){.bdg-ayuda{padding:2rem;}.bdg-ayuda .bdg-acciones{flex-direction:row;}}

/* Tarjetas de líneas */
.bdg-lineas{display:grid;gap:1rem;grid-template-columns:1fr;list-style:none;margin:0;padding:0;}
@media (min-width:768px){.bdg-lineas{grid-template-columns:repeat(3,1fr);}}
.bdg-linea{background:#fff;border:1px solid #dbe5f0;border-top:5px solid #e8b210;border-radius:1rem;padding:1.4rem;display:flex;flex-direction:column;gap:.75rem;height:100%;}
.bdg-linea h3{font-family:'Raleway',sans-serif;font-weight:800;color:#0d3b66;font-size:1.25rem;line-height:1.2;margin:0;}
.bdg-linea p{margin:0;font-size:1rem;line-height:1.55;color:#374151;flex:1 1 auto;}
.bdg-nota{font-size:.9375rem!important;color:#4b5563;margin-top:1rem!important;}

/* Listas de requisitos */
.bdg-check{list-style:none;margin:0;padding:0;display:grid;gap:.75rem;}
.bdg-check li{position:relative;background:#fff;border:1px solid #dbe5f0;border-radius:.85rem;padding:1rem 1rem 1rem 3.1rem;font-size:1.0625rem;line-height:1.55;}
.bdg-check li::before{content:"✓";position:absolute;left:1rem;top:.9rem;width:1.5rem;height:1.5rem;border-radius:50%;background:#0d3b66;color:#fff;font-weight:900;font-size:.9rem;display:flex;align-items:center;justify-content:center;}

/* Pasos numerados en tarjetas */
.bdg-pasos{list-style:none;margin:0;padding:0;display:grid;gap:.85rem;counter-reset:bdg;}
.bdg-paso{counter-increment:bdg;position:relative;background:#fff;border:1px solid #dbe5f0;border-radius:1rem;padding:1.1rem 1.1rem 1.1rem 4.4rem;font-size:1.0625rem;line-height:1.6;min-height:4rem;}
.bdg-paso::before{content:counter(bdg);position:absolute;left:1rem;top:1rem;width:2.5rem;height:2.5rem;border-radius:.75rem;background:#0d3b66;color:#fff;font-family:'Raleway',sans-serif;font-weight:900;font-size:1.1rem;display:flex;align-items:center;justify-content:center;}
.bdg-paso .bdg-btn{margin-top:.85rem;}
.bdg-paso--cierre{background:#fff8e1;border-color:#e8b210;}
.bdg-paso--cierre::before{background:#e8b210;color:#0d3b66;}

.bdg-botones{display:flex;flex-direction:column;gap:.75rem;margin-top:1.25rem;}
@media (min-width:640px){.bdg-botones{flex-direction:row;flex-wrap:wrap;}}

.bdg-aviso{margin-top:1.25rem;background:#fff8e1;border:2px solid #e8b210;border-left-width:8px;border-radius:.85rem;padding:1rem 1.15rem;font-size:1.0625rem;line-height:1.55;color:#3d2e00;}
.bdg-aviso strong{color:#0d3b66;}
.bdg-ayuda-final{margin-top:1.25rem;background:#eef3f9;border:1px solid #c7d6e6;border-radius:1rem;padding:1.25rem;text-align:center;}
.bdg-ayuda-final p{margin:0 0 .85rem;font-weight:700;color:#0d3b66;}

/* Contactos */
.bdg-contactos{display:grid;gap:1rem;grid-template-columns:1fr;}
@media (min-width:768px){.bdg-contactos{grid-template-columns:1fr 1fr;}}
.bdg-contacto{background:#fff;border:1px solid #dbe5f0;border-radius:1rem;padding:1.4rem;}
.bdg-contacto--muni{border:3px solid #e8b210;box-shadow:0 8px 24px rgba(13,59,102,.12);}
.bdg-contacto h3{font-family:'Raleway',sans-serif;font-weight:800;color:#0d3b66;font-size:1.25rem;line-height:1.2;margin:0 0 .5rem;}
.bdg-contacto p{margin:0 0 .6rem;font-size:1rem;line-height:1.55;}
.bdg-contacto .bdg-numero{font-size:2rem;margin:.1rem 0 .85rem;}

@media (prefers-reduced-motion:reduce){
  .bdg-banner::after{animation:none;display:none;}
  .bdg-grafico svg{animation:none;}
  .bdg-btn{transition:none;}
  .bdg-btn:hover{transform:none;}
}
