.elecciones-2026{--azul:#092e60;--rojo:#a00d25;--gris:#f3f6fa;color:#18263a;font-family:Arial,Helvetica,sans-serif;line-height:1.55;background:#fff}
.elecciones-2026 *{box-sizing:border-box}.elecciones-2026 .elec-container{max-width:1150px;margin:auto;padding:0 22px}
.elec-hero{background:linear-gradient(115deg,#06234d,#124d91);color:#fff;border-bottom:7px solid #a00d25;padding:56px 0 52px}
.elec-tag{display:inline-block;background:#a00d25;padding:6px 14px;border-radius:6px;font-weight:700;letter-spacing:.05em}
.elec-hero h1{font-size:clamp(2.1rem,5.8vw,4.4rem);margin:8px 0 0;font-weight:900;line-height:1.1;color:white}
.elec-hero p{font-size:clamp(1.05rem,2.5vw,1.55rem);font-weight:700;text-transform:uppercase;margin:10px 0}
.elec-periodo{display:inline-block;background:#e9c16b;color:#122948;padding:5px 20px;font-size:1.2rem;border-radius:4px}
.elec-hero small{display:block;margin-top:14px;font-size:.9rem}.elec-section{margin:38px 0}
.elec-heading{display:flex;align-items:center;gap:13px;margin-bottom:15px}.elec-heading h2{color:var(--azul);font-size:clamp(1.25rem,2.4vw,1.8rem);line-height:1.2;margin:0;font-weight:800}.elec-heading p{margin:3px 0 0}
.elec-symbol{display:flex;justify-content:center;align-items:center;flex-shrink:0;width:47px;height:47px;background:var(--rojo);color:white;border-radius:8px;font-size:1.4rem;font-weight:bold}
.elec-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}.elec-card{background:var(--gris);padding:21px;display:flex;gap:15px;align-items:center;border-radius:12px}.elec-card>span{font-size:1.9rem}.elec-card b{color:var(--azul)}.elec-card p{margin:4px 0 0}.elec-nota{background:#edf4fc;border-left:4px solid #124d91;padding:15px 20px;border-radius:6px}
.elec-panel{background:var(--gris);padding:26px;border-radius:15px}.elec-timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px}.elec-evento{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:start;gap:10px;border-left:3px solid var(--rojo);padding-left:12px}.elec-evento time{display:block;background:var(--rojo);color:#fff;font-size:.84rem;font-weight:bold;padding:8px;border-radius:5px;text-align:center}.elec-evento p{background:white;padding:8px 10px;border-radius:5px;margin:0;min-height:40px;font-size:.91rem}
.elec-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.elec-price{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--gris);padding:9px 10px;margin-bottom:8px;border-radius:7px}.elec-price b{background:var(--rojo);color:white;padding:8px 14px;border-radius:5px;white-space:nowrap}.elec-muted{color:#606e7b;font-size:.88rem}.elec-btn{display:inline-block;background:var(--rojo);color:#fff!important;padding:11px 18px;border-radius:6px;text-decoration:none;font-weight:700;margin-top:10px}.elec-btn:hover{background:#7d071a}
.elec-docs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.elec-docs a{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid #e0e6ef;padding:17px;border-radius:9px;text-decoration:none;color:var(--azul);box-shadow:0 3px 12px #001a3410}.elec-docs a>span{font-size:1.8rem}.elec-docs a b{flex:1 1 120px}.elec-docs a small{background:var(--rojo);color:#fff;padding:7px 12px;border-radius:5px}.elec-docs a:hover{border-color:var(--rojo)}
@media(max-width:800px){.elec-timeline,.elec-bottom-grid{grid-template-columns:1fr}.elec-cards,.elec-docs{grid-template-columns:1fr}.elec-panel{padding:17px}}
@media(max-width:420px){.elec-evento{grid-template-columns:105px minmax(0,1fr);gap:6px;padding-left:6px}.elec-evento time{font-size:.75rem}.elec-evento p{font-size:.83rem}.elec-hero{padding:35px 0}.elec-price{font-size:.9rem}}

/* Consulta externa de habilidad: no requiere conexión a base de datos */
.elecciones-2026 .elec-consulta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:32px 0;padding:26px 30px;background:linear-gradient(110deg,#900c22,#bc1835);border-radius:13px;color:#fff;box-shadow:0 7px 22px rgba(84,7,25,.14)}
.elecciones-2026 .elec-consulta-copy{display:flex;align-items:center;gap:17px;min-width:0}
.elecciones-2026 .elec-consulta-icon{display:grid;place-items:center;flex:none;width:55px;height:55px;border:2px solid #ffffff88;border-radius:50%;font-size:2rem;font-weight:800}
.elecciones-2026 .elec-consulta h2{color:#fff;font-size:clamp(1.15rem,2.2vw,1.6rem);line-height:1.2;margin:0 0 7px;font-weight:800}
.elecciones-2026 .elec-consulta p{margin:0;max-width:650px;font-size:.94rem}
.elecciones-2026 .elec-consulta-btn{flex:none;display:inline-block;padding:14px 22px;border-radius:8px;background:#fff;color:#920d24;text-decoration:none;font-weight:800;text-align:center;transition:background .2s,transform .2s}
.elecciones-2026 .elec-consulta-btn:hover,.elecciones-2026 .elec-consulta-btn:focus-visible{background:#f6dc8b;color:#70091b;transform:translateY(-2px)}
@media(max-width:800px){.elecciones-2026 .elec-consulta{flex-direction:column;align-items:stretch;padding:22px}.elecciones-2026 .elec-consulta-btn{width:100%}}
@media(max-width:480px){.elecciones-2026 .elec-consulta-copy{align-items:flex-start}.elecciones-2026 .elec-consulta-icon{width:42px;height:42px;font-size:1.5rem}}

.elec-hero {
    background-image:
        linear-gradient(
            rgba(0, 35, 85, 0.35),
            rgba(0, 35, 85, 0.35)
        ),
        url("../images/elecciones/banner-elecciones.jpg");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 300px;
}
/* Ajustes exclusivos de Elecciones 2026; no altera header ni footer */
.elecciones-2026 { width:100%; max-width:none; overflow-x:clip; }
.elecciones-2026 .elec-container { width:calc(100% - 48px); max-width:1600px; margin-left:auto; margin-right:auto; }
.elecciones-2026 .elec-convocatoria-grid { display:grid; grid-template-columns:minmax(0, 1.8fr) minmax(220px, .8fr); gap:24px; align-items:start; }
.elecciones-2026 .elec-convocatoria-texto { min-width:0; }
.elecciones-2026 .elec-convocatoria-imagen { width:100%; margin:0; display:flex; justify-content:center; align-items:flex-start; }
.elecciones-2026 .elec-convocatoria-imagen img { display:block; width:100%; max-width:320px; height:auto; max-height:420px; object-fit:contain; border:1px solid #e2e6eb; border-radius:8px; box-shadow:0 4px 14px #0002; }
.elecciones-2026 .elec-comunicado-imagen { display:flex; justify-content:center; margin:14px 0 0; }
.elecciones-2026 .elec-comunicado-imagen img { display:block; width:100%; max-width:190px; max-height:260px; height:auto; object-fit:contain; border:1px solid #e2e6eb; border-radius:6px; box-shadow:0 4px 14px #0002; }
.elecciones-2026 .elec-bottom-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.elecciones-2026 .elec-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.elecciones-2026 .elec-card { min-width:0; }
.elecciones-2026 .elec-docs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
@media(max-width:900px) { .elecciones-2026 .elec-convocatoria-grid { grid-template-columns:minmax(0,1fr) 220px; } .elecciones-2026 .elec-bottom-grid {grid-template-columns:1fr;} }
@media(max-width:700px) { .elecciones-2026 .elec-container {width:calc(100% - 24px);} .elecciones-2026 .elec-convocatoria-grid {grid-template-columns:1fr;} .elecciones-2026 .elec-convocatoria-imagen img {max-width:250px;max-height:330px;} .elecciones-2026 .elec-comunicado-imagen img {max-width:180px;} .elecciones-2026 .elec-cards,.elecciones-2026 .elec-docs {grid-template-columns:1fr;} }


/* BANNER PRINCIPAL */
.elecciones-2026 .elec-hero {
    background-color: #082b70;
    background-image:
        linear-gradient(110deg, #06265e 0%, #104c93 100%);
    background-size: cover;
    background-position: center;
    min-height: 350px;
    padding: 45px 0;
}

/* CONTENIDO DEL BANNER */
.elecciones-2026 .elec-hero-inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 10px;
}

/* ETIQUETA PROCESO ELECTORAL */
.elecciones-2026 .elec-tag {
    display: inline-block;
    background: #a60824;
    color: #fff;
    padding: 8px 18px;
    border-radius: 7px;
    font-size: 18px;
    font-weight: 700;
    margin: 0;
}

/* TÍTULO ELECCIONES 2026 */
.elecciones-2026 .elec-hero h1 {
    display: block;
    width: fit-content;
    max-width: 100%;
    background: #fff;
    color: #082b70 !important;
    font-size: clamp(34px, 5vw, 66px);
    font-weight: 900;
    line-height: 1.1;
    padding: 10px 20px;
    margin: 0;
    border-radius: 8px;
    text-transform: uppercase;
}

/* RENOVACIÓN DEL CONSEJO DIRECTIVO */
.elecciones-2026 .elec-hero p {
    color: #fff;
    font-size: clamp(18px, 2.3vw, 27px);
    font-weight: 700;
    margin: 0;
}

/* PERIODO 2027-2028 */
.elecciones-2026 .elec-periodo {
    display: inline-block;
    background: #efc35e;
    color: #082b70;
    padding: 8px 22px;
    border-radius: 5px;
    font-size: clamp(18px, 2vw, 24px);
    font-weight: 800;
}

/* FRASE INSTITUCIONAL */
.elecciones-2026 .elec-hero small {
    display: block;
    color: #fff;
    font-size: 15px;
    margin-top: 5px;
}

/* ADAPTACIÓN A CELULARES */
@media (max-width: 768px) {
    .elecciones-2026 .elec-hero {
        min-height: auto;
        padding: 35px 0;
    }

    .elecciones-2026 .elec-hero-inner {
        align-items: flex-start;
        gap: 12px;
    }

    .elecciones-2026 .elec-tag {
        font-size: 14px;
    }

    .elecciones-2026 .elec-hero h1 {
        font-size: clamp(28px, 8vw, 42px);
        padding: 10px 12px;
        overflow-wrap: anywhere;
    }

    .elecciones-2026 .elec-hero p {
        font-size: 18px;
    }

    .elecciones-2026 .elec-periodo {
        font-size: 17px;
    }
}

