/* =====================================================
   ELECCIONES SINDICALES 2026
   CCOO HÁBITAT PROSEGUR TENERIFE
===================================================== */

:root{

--rojo:#d6001c;
--rojo-hover:#b30018;

--negro:#0b0f16;

--panel:#171c24;

--panel2:#1f2630;

--texto:#f5f7fa;

--texto2:#c8d1dc;

--borde:#2b3440;

--sombra:0 18px 45px rgba(0,0,0,.35);

}

/* HERO */

.hero{

background:
linear-gradient(145deg,#0b0f16,#151b24);

padding:90px 20px;

text-align:center;

position:relative;

overflow:hidden;

}

.hero::before{

content:"";

position:absolute;

right:-250px;

top:-250px;

width:700px;

height:700px;

background:
radial-gradient(circle,
rgba(214,0,28,.20),
transparent 70%);

}

.hero h1{

font-size:62px;

font-weight:900;

line-height:1.1;

color:white;

margin-bottom:20px;

text-transform:uppercase;

letter-spacing:2px;

}

.hero span{

color:var(--rojo);

}

.hero p{

font-size:22px;

max-width:900px;

margin:auto;

color:#d6dbe2;

}

.hero-buttons{

margin-top:45px;

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.hero-image{

display:block;

width:100%;

max-width:900px;

height:auto;

margin:40px auto;

border-radius:18px;

box-shadow:0 20px 45px rgba(0,0,0,.45);

transition:.3s;

}

/* BOTONES */

.btn{

display:inline-block;

padding:16px 34px;

border-radius:50px;

font-weight:700;

transition:.30s;

}

.btn-primary{

background:var(--rojo);

color:white;

}

.btn-primary:hover{

background:var(--rojo-hover);

transform:translateY(-3px);

}

.btn-secondary{

border:1px solid var(--rojo);

color:white;

}

.btn-secondary:hover{

background:rgba(214,0,28,.18);

}

/* CONTADOR */

.contador{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:20px;

margin-top:60px;

}

.contador .card{

text-align:center;

padding:30px;

background:var(--panel);

border:1px solid var(--borde);

border-radius:18px;

}

.contador h2{

font-size:58px;

font-weight:900;

color:var(--rojo);

}

.contador p{

margin-top:10px;

color:#b9c1ca;

}

/* TARJETAS */

.banner{

background:var(--panel);

padding:25px;

border-radius:20px;

box-shadow:var(--sombra);

border:1px solid var(--borde);

}

.banner img{

display:block;

width:70%;

max-width:700px;

height:auto;

margin:0 auto;

border-radius:12px;

}

.grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

gap:28px;

}

.card{

background:var(--panel);

padding:30px;

border-radius:18px;

border:1px solid var(--borde);

transition:.25s;

box-shadow:var(--sombra);

}

.card:hover{

transform:translateY(-8px);

}

.card h3{

margin-bottom:15px;

font-size:24px;

color:white;

}

.card p{

color:var(--texto2);

line-height:1.7;

}

/* TÍTULOS */

.titulo{

font-size:42px;

font-weight:900;

text-align:center;

margin-bottom:18px;

text-transform:uppercase;

color:white;

}

.subtitulo{

max-width:900px;

margin:auto;

margin-bottom:55px;

text-align:center;

font-size:20px;

color:var(--texto2);

}

/* CANDIDATURA */

.candidatos{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:30px;

margin-top:45px;

}

.lista{

background:var(--panel);

padding:30px;

border-radius:18px;

border:1px solid var(--borde);

box-shadow:var(--sombra);

}

.lista h3{

margin-bottom:25px;

color:var(--rojo);

}

.lista ul{

list-style:none;

}

.lista li{

padding:11px 0;

border-bottom:1px solid #2f3945;

color:white;

}

.lista li:last-child{

border-bottom:none;

}

.numero{

display:inline-flex;

align-items:center;

justify-content:center;

width:34px;

height:34px;

margin-right:12px;

border-radius:50%;

background:var(--rojo);

color:white;

font-weight:700;

}

/* MESAS */

.mesas{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

gap:30px;

}

.mesa{

background:var(--panel);

padding:30px;

border-left:6px solid var(--rojo);

border-radius:16px;

box-shadow:var(--sombra);

}

.mesa h3{

color:white;

margin-bottom:15px;

}

.mesa p{

color:var(--texto2);

}

/* CTA */

.cta{

background:

linear-gradient(135deg,

#d6001c,

#860010);

padding:90px 20px;

text-align:center;

color:white;

}

.cta h2{

font-size:50px;

font-weight:900;

margin-bottom:20px;

}

.cta p{

font-size:22px;

margin-bottom:35px;

}

/* RESPONSIVE */

@media(max-width:900px){

.hero h1{

font-size:42px;

}

.hero p{

font-size:18px;

}

.contador{

grid-template-columns:repeat(2,1fr);

}

.candidatos{

grid-template-columns:1fr;

}

}

@media(max-width:600px){

.contador{

grid-template-columns:1fr;

}

.titulo{

font-size:30px;

}

.subtitulo{

font-size:18px;

}

.hero{

padding:70px 20px;

}

.hero h1{

font-size:34px;

}

/* Cabecera */

.header-info{
    text-align:center;
    padding:10px 0;
    border-bottom:1px solid #333;
}

.header-info-container{
    max-width:1200px;
    margin:auto;
}

.fecha-web{
    color:#aaa;
    font-size:14px;
    margin-bottom:3px;
}

.descripcion-web{
    color:#ccc;
    font-size:16px;
    font-style:italic;
}
   
}
