a {
    color: black;
}
a:hover {
    font-weight: bold;
}
body {
    font-family: 'Roboto', sans-serif;
    display: grid;
    grid-template-rows: auto 1fr auto;
    grid-template-columns: 1fr;
    grid-template-areas:
    'header '
    'main'
    'footer';
    height: 100vh;
    font-size: 16px;
}

header {
    grid-area: header;
}

main {
    grid-area: main;
    padding: 10px;

}

footer {
    grid-area: footer;
    justify-content: center;
    background: #EEE;
    padding: 10px;
    text-align: center;
    font-size: 0.8rem;
}

form {
    width: 100%;
}
.accordion-collapse {
    transition: 1s;
}
.accordion-button:after {
    background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ad2937'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !important;
}

.barra_ajt {
    background: #ad2937;
    color: white;
}
.barra .titol-eleccions {
    color: #ad2937;
    font-size: 1.5rem;
    width: 100%;
}
.barra,
.barra_ajt {

    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding: 10px;
    /*text-align: center;*/
}

.barra_ajt img {
    max-height: 30px;
    display: block;
}

.caixa {
    background: rgba(173, 41, 55,0.1);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    border-radius: 5px;
    border: 2px solid rgba(173, 41, 55,0.2);
    align-items: center;
    margin-bottom: 15px;
    overflow: hidden;
    flex-direction: column;
    padding: 15px;
}

.caixa.seleccionar_eleccions {
    width: 100%;
    padding: 10px;
}
.central {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding-top: 10px;
    /*height: 100%;*/
}
.seleccionar_eleccions select {
    padding: 10px;
    background: rgba(173, 41, 55,0.1);
    border: 0px;
    border-radius: 5px;
    font-size: 1rem;
    width: 100%;
}
.offcanvas {
    /*padding: 10px;*/
    max-width: 220px;
}
.offcanvas > div {
    overflow: auto;
    height: 100vh;
}
.titol_menu {
    font-weight: bold;
    background: #ad2937;
    padding: 5px 10px;
    color: white;
}
ul.opcions {
    list-style: none;
    padding-left: 10px;
}
ul.opcions li {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
}
.subtitol {
    color: #ad2937 !important;
    font-weight: bold;
}
a.menu-item {
    padding: 2px 10px;
    color: black;
    text-decoration: none;
    transition: 1s;
}
a.menu-item:hover {
    text-decoration: underline;
}
.contingut {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px;
    gap: 20px;
    flex-direction: column-reverse;
}
.contingut-central .grafica {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: column;
}

.contingut-central .grafica .titol-grafica {
    margin-bottom: 15px;
    font-weight: bold;
    text-align: center;
}

.contingut-central .grafica > div {
    margin-bottom: 30px;
    /*width: 100%;*/
}

.contingut-central .grafica .llegenda,
.contingut-central .grafica .llegenda > div {
    width: 100%;
}
.contingut-central .grafica .llegenda img {
    float: left;
    padding-right: 15px;
}
button.accordion-button {
    padding: 5px 15px;
}
.accordion-button:focus {
    box-shadow: none;
}

.accordion-item {
    border: 0px;
}
.accordion-item:first-of-type>.accordion-header .accordion-button {
    border-radius: unset;
    padding-top: 10px;
}

.accordion-body {
    padding: 0px;
}

.accordion-body > a {
    padding: 5px 30px;
    display: block;
    padding-right: 10px;
}
.opcio > a.seleccionat,
.accordion-body > a.seleccionat {
    background: white;
    font-weight: bold;
}

.opcio > a {
    display: block;
    padding: 5px 10px;
}
.opcio img {
    padding-right: 10px;
    max-width: 30px !important;
}
.titol {
    color: #ad2937;
    font-size: 1.3rem;
}

.menu {
    overflow: hidden;
    margin-bottom: 15px;
    background: rgba(173, 41, 55, 0.1) !important;
}

.menu.opcions {
    border: 1px solid rgba(173, 41, 55, 0.1);
    border-radius: 5px;
}

.menu_dret {
    width: 100%;
}

.menu_esquerra {
    width: 0px;
    height: 0px;
}

.menu_central {
    width:100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    /*flex-direction: column;*/
    gap: 20px;
    height: 100%;
}

.menu_central img {
    /*max-width: 100%;*/
}
.navbar-toggler {
    margin-right: 10px;
}

.filtre {
    width: 100%;
    display: flex;
    justify-content: center;
    max-width: 840px;
    margin: 0 auto;
}

.filtre .content-filter{
    background: rgba(173, 41, 55, 0.1) !important;
    border: 1px solid rgba(173, 41, 55, 0.1);
    border-radius: 5px;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
    overflow: hidden;
    width: 100%;
}

.filtre .content-filter select{
    background: inherit;
    border: 0;
    width: 100%;
}
.filtre .titol-filtre {
    width: 100%;
    background: #ad2937;
    color: white;
    padding: 5px 10px;
    padding-left: 15px;
}

.filtre .form-filtres {
    padding: 5px 10px;
    display: flex;
    gap: 20px;
    padding-right: 15px;
}
.banners {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}
.banners img {
    width: 100%;
    display: block;
    max-width: 250px;
}
.banners .item-banner {
    width: 100%;
    max-width: 250px;
}



.separador {
    width: 100%;
    border-bottom: 1px solid rgba(0,0,0,0.1);
}

.quadrat {
    width: 30px;
    height: 30px;
    border: 1px solid black;
    float: left;
    margin-right: 10px;
}

.contingut-central {
    width: 100%;
}
.taula a {
    text-decoration: none;
    color: black;
}

.taula a:hover {
    text-decoration: underline;
    color: black;
}

.taula.tau th {
    background: #ad2937;
    color: white;

}
.taula.tau img {
    max-width: none;
}
.taula.tau th,
.taula.tau td {
    padding: 2px 10px;
}
.taula.tau tr:nth-child(odd) {
    background: rgba(0,0,0,0.1);
}

.taula_gran {
    width: calc(100vw - 35px);
    overflow: auto;
    display: flex;
}
.titol-candidatura {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    align-items: end;
}
.logo-candidatura {
    width: 80px;
}
.noproclamat {
    background: rgba(0,0,0,0.2);
    color: #999999;
}
.noproclamat img {
    filter: grayscale(100%);
    opacity: 0.5;
}
.btn:hover,
.btn {
    background: #ad2937;
    border-color: #ad2937;
    color: white;
}
.form-group {
    margin: 15px 0px;
}

.resultat-cens {
    width: 100%;
    align-items: start;
    max-width: 500px;
}

.resultat-cens div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: end;
}


.titol-caixa {
    width: 80px;
    font-weight: bold;
}
.escrutinis {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    width: 100%;
    justify-content: flex-end;
    flex-direction: column;
    gap: 10px;
}
.escrutat {
    display: flex;
    gap: 20px;
    align-items: center;
    border: 1px solid rgba(173, 41, 55,0.2);
    background: rgba(173, 41, 55,0.1);
    padding: 0px;
    border-radius: 5px;
    overflow: hidden;
}

.escrutat > div:first-child {
    background: #ad2937;
    color: white;

}
.escrutat > div {
    padding: 2px 15px;
}

.div_provisional {
    display: flex;
    justify-content: center;
    background: #d7e4ec;
    padding: 3px;
    font-size: 0.8rem;
    font-weight: bold;
}

.div_validar {
    display: flex;
    justify-content: center;
    background: #a5cfe9;
    padding: 3px;
    font-size: 0.8rem;
    font-weight: bold;
}

.div_validar.senat {
    background: #f9c051;
}

.w100 {
    width: 100% !important;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: column;
}

.container-col .valor-col {
    width: 200px;
}

.titol-col {
    font-weight: bold;
    width: 100%;
    flex-grow: 1;
}

.container-col {
    display: flex;
    gap: 10px;
    width: 100%;
    justify-content: center;
    font-size: 0.9rem;
}

.taula.col {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}
.taula.col > div {
    width: 100%;
}

.taula.col.participacio  {
     gap: 10px;
}
.taula.col.participacio .container-col {
    width: 270px;
}
.taula.col.participacio > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.altres_enllacos {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: space-evenly;
    margin-top: 20px;

    opacity:0.8;
}

.enllac_extern {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
    width: 150px;
    justify-content: center;
    gap: 10px;
    text-decoration: none;
}
.enllac_extern img {
    height: 40px;
    filter: grayscale(1);
}

.enllac_extern p {
    text-align: center;
}

.mapa-container {
    margin: 0 auto;
    border: 1px solid #ccc;
    border-radius: 4px;
    max-width: 840px;
}

.mapa {
    width: 100%;
    border-radius: 4px;
    display: block;
}

.mapa-label {
    margin: 0 auto;
    max-width: 840px;
    text-align: right;
}

.mapa-llegenda {
    display: flex;
    margin: 0 auto;
    max-width: 840px;
}

.mapa-llegenda img {
    margin: 0 auto;
    max-width: 100%;
}


@media only screen and (min-width: 768px)
{ /*Mida M */
    .offcanvas > div {
        overflow: auto;
        height: auto;
    }
    .contingut {
        flex-direction: row;
    }

    .caixa.seleccionar_eleccions {
        width: 80%;
        padding: 20px 50px;
    }
    .seleccionar_eleccions select {
        font-size: 1.2rem;
    }
    .barra {
        justify-content: space-between;
    }
    .barra .titol-eleccions {
        width: auto;
    }
    .barra,
    .barra_ajt {
        padding: 10px 5%;
    }
    main {
        padding: 10px 5%;
        padding-top: 0px;
    }
    .navbar-expand-md .offcanvas {
        /*background: rgba(173, 41, 55,0.1) !important;*/
        /*border-radius: 5px;*/
        /*padding-top: 0px;*/
    }
    .accordion-collapse,
    button.accordion-button {
        background: rgba(173, 41, 55,0.1) !important;
    }

    .menu {
        border-radius: 5px;
        border: 1px solid rgba(173, 41, 55, 0.1);
    /*    overflow: hidden;*/
    /*    margin-bottom: 15px;*/
    }

    .menu_esquerra {
        margin-bottom: 15px;
        width: 220px;
        overflow: hidden;
        height: auto;
    }

    .menu_central {
        width: calc(100% - 220px - 20px);
    }
    .titol {
        font-size: 1.7rem;
        width: 100%;
    }
    .navbar-toggler {
        display: none;
    }
    .filtre {
        justify-content: flex-end;
    }
    .filtre .titol-filtre {
        width: 150px;
        flex: auto;
    }
    .filtre .form-filtres {
        flex-grow: 1;
        width: auto;
    }

    .filtre .content-filter{
        width:auto;
    }
    .banners .item-banner {
        width: calc(50% - 20px);
    }
    .taula_gran {
        width: auto;
        max-width: 100%;
    }
    .escrutinis {
        width: auto;
    }
    .taula.col:not(.participacio) > div {

        width: 320px;
    }
}


@media only screen and (min-width: 992px)
{ /*Mida L */
    .barra .titol-eleccions {
        font-size: 2rem;
    }


    .central {
        /*align-items: center;*/
        /*height: 100%;*/
    }

}

@media only screen and (min-width: 1201px) /* Mida XL*/
{
    main,
    .barra,
    .barra_ajt {
        padding: 10px 5%;
    }
    .menu_dret {
        width: 250px;
    }
    .contingut-central {
        width: calc(100% - 250px - 20px);
    }
    .banners .item-banner {
        width: 100%;
    }
}