:root {
    --grisclaro: #f8f8f8;
    --blanco: #ffffff;
    --negro: #222222;
    --azuloscuro: #0b3a60;
    --azul: #105487;
    --rojo: #e1251b;
}
body {
    color: var(--negro);
    font-family: 'Lato', sans-serif;
    font-weight: 400;
    background-color: var(--grisclaro);
    overflow-y: auto;
}
body::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: white;
}
body::-webkit-scrollbar {
    width: 10px;
    background-color: gray;
}

body::-webkit-scrollbar-thumb {
    /*border-radius: 10px;*/
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
    background-color: darkgray;
    border-radius: 8px;
}

body * {
    margin: 0;
    padding: 0;
}
nav {
    background-color: var(--blanco);
    padding: 0.5rem 4rem !important;
    border-bottom: 1px solid var(--grisclaro);
}
nav a.nav-link {
    text-transform: uppercase;
    color: var(--azul);
}
nav a.nav-link:hover {
    opacity: 0.75;
}
.navbar-toggler {
    border: 1px solid var(--azul);
}
.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(11, 58, 96, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
footer {
    background-color:var(--azuloscuro) ;
    color: var(--blanco);
    padding: 3rem;
}
footer i {
    font-size: 3em;
}
footer p {
    font-size: 1.2em;
}
footer a {
    color: var(--blanco);
}
footer a:hover {
    opacity: 0.75;
    color: var(--blanco);
    text-decoration: none;
}
footer h3 {
    font-size: 1.6em;
    font-weight: 400;
}
.card {
    border: 0;
    border-radius: 0;
}
.card-img-top {
    border-radius: 0;
}
h1 {
    font-weight: 300;
    font-size: 2.5em;
}
h2 {
    font-weight: 400;
    font-size: 2.5em;
}
p {
    font-size: 1.4em;
    line-height: 1.4em;
    font-weight: 300;
}

/* 01. Home */
header .top {
    background: url(../img/bg-header-home.png);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    padding: 12rem 3rem;
}
header .box {
    background-color: var(--azul);
    color: var(--blanco);
    padding: 2rem;
    width: 80%;
    margin: auto;
    border-radius: 8px;
    box-shadow: black 1px 1px 7px 1px;

}
header .texto {
    background-color: var(--azuloscuro);
    color: var(--blanco);
    padding: 3rem;
}
section.home1 {
    background-color: var(--blanco);
    padding: 1rem;
}
section.home1 h2 {
    font-weight: 300;
    color: var(--azul);
}
section.home1 .card-body {
    background-color: var(--rojo);
    text-align: center;
    position: relative;
}
section.home1 .card-body a {
    color: var(--blanco);
    text-transform: uppercase;
    display: block;
    font-size: 1.6em;
}
section.home1 .card-body a:hover {
    text-decoration: none;
    opacity: 0.75;
}
section.home1 .card-body a i {
    position: absolute;
    right: 40px;
    top: 15px;
    font-size: 2em;
}
section.home2 {
    background-color: var(--blanco);
    padding: 3rem;
}
section.home2 h2 {
    font-weight: 300;
    color: var(--azul);
}
section.home2 p {
    color: var(--azul);
}
section.home3 .box {
    background-color: var(--azul);
    padding: 10rem 0;
}
section.home3 button {
    color: var(--blanco);
    font-size: 4em;
}
section.home3 button:hover {
    color: var(--blanco);
    opacity: 0.75;
}
section.home3 .modal-content {
    position: relative;
    padding-bottom: 56.25%; /* 16/9 ratio */
    height: 0;
    overflow: hidden;
}
section.home3 .modal-content .video-contenedor iframe,
section.home3 .modal-content .video-contenedor {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
section.home4 .box {
    /*background-color: var(--azul);*/
    color: var(--blanco);
    padding: 8rem 3rem;
    margin-top: 130px;
    width: 130%;
    z-index: 9;
    position: relative;
}
section.home4 .box h2 {
    text-transform: uppercase;
    font-size: 1.6em;
}
section.home4 .box ul {
    font-size: 1.6em;
    font-weight: 400;
}
section.home4 .box a {
    color: var(--blanco);
}
section.home4 .box a:hover {
    opacity: 0.75;
    color: var(--blanco);
    text-decoration: none;
}

/* 02. PÃ¡gina Listas nacionales */
header.page1 .top {
    background: url(../img/bg-header-listas.jpg);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    padding: 6rem 3rem;
}
header.page1 .box {
    background-color: var(--rojo);
}
header.page1 .box h2 {
    font-weight: 300;
    font-size: 1.4em;
    margin: 1rem 0 0 0;
}
section.page1-1 h2,
section.page1-2 h2 {
    color: var(--azul);
    text-transform: uppercase;
}
section.page1-1 p,
section.page1-2 p {
    color: var(--azul);
}
.accordion.listas {
    border: 1px solid #d8d8d8;
}
.accordion.listas .card-header,
.accordion.listas .card-body {
    padding: 0;
}
.accordion.listas button.lista {
    font-size: 0.7em;
    color: var(--azul);
    text-transform: uppercase;
    padding: 0.5em 1em;
    background-color: #F8F0F0;
    border-radius: 0;
    border-bottom: 1px solid #d8d8d8;
}
.accordion.listas button.lista:hover {
    text-decoration: none;
    opacity: 0.75;
    border-radius: 0;
}
.accordion.listas button.lista.collapsed {
    background-color: var(--blanco);
    border-radius: 0;
}
.accordion.listas a.ir-patrocinar {
    font-size: 0.7em;
    color: var(--azul);
    text-transform: uppercase;
    position: absolute;
    right: 30px;
    top: 20px;
}
.accordion.listas a.ir-patrocinar:hover {
    text-decoration: none;
    opacity: 0.75;
}
.accordion.listas .card-body table {
    background-color: #EFE1E1;
    margin: 0;
}
.accordion.listas .card-body table tr {
    font-size: 1.2em;
    color: var(--azul);
    text-transform: uppercase;
}
.accordion.listas .card-body table td {
    padding: 1.2rem 3rem;
    border-top: 1px solid #d8d8d8;
}
.listas-regionales {
    background-color: var(--blanco);
    border: 1px solid #d8d8d8;
    border-top: 1px solid #00000000;
}
.listas-regionales li {
    border-top: 1px solid #d8d8d8;
    padding: 0.5em 2em;
    list-style: none;
    border-bottom: 1px solid #00000000;
}
.listas-regionales li a {
    font-size: 1.6em;
    color: var(--azul);
    display: block;
}
.listas-regionales li a:hover {
    opacity: 0.75;
    text-decoration: none;
}
.listas-regionales li a:before {
    content: "â€¢";
    margin-right: 10px;
}

/* 03. PÃ¡gina Listas de mÃ©dicos */
header.page2 .top {
    background: url(../img/bg-header-listas.jpg);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    padding: 6rem 3rem;
}
header.page2 .box {
    background-color: var(--rojo);
}
header.page2 .box h2 {
    font-weight: 400;
    font-size: 1.4em;
    margin: 1rem 0 0 0;
}
section.page2-1 h2 {
    color: var(--azul);
}
section.page2-1 p {
    color: var(--azul);
}
section.page2-1 table {
    background-color: #EFE1E1;
    margin: 0;
}
section.page2-1 table tr {
    font-size: 1.2em;
    color: var(--azul);
    text-transform: uppercase;
}
section.page2-1 table td {
    padding: 1.2rem 3rem;
    border-top: 1px solid #d8d8d8;
}
section.page2-2 .box {
    width: 50%;
    margin: 0 auto;
}
section.page2-2 .box .form-control {
    border-radius: 0;
    padding: 2rem;
    color: var(--azul);
    text-transform: uppercase;
}
section.page2-2 .box .btn-1 {
    color: var(--blanco);
    background-color: var(--rojo);
    border-radius: 0;
    border: 0;
    text-transform: uppercase;
    padding: 1rem 0;
    width: 70%;
    margin: 0 2% 0 0;
    font-size: 1.2em;
}
section.page2-2 .box .btn-1:hover {
    opacity: 0.75;
}
section.page2-2 .box .btn-2 {
    color: var(--blanco);
    background-color: var(--azul);
    border-radius: 0;
    border: 0;
    text-transform: uppercase;
    padding: 1rem 0;
    width: 27%;
    font-size: 1.2em;
}
section.page2-2 .box .btn-2:hover {
    opacity: 0.75;
}


/* 04. PÃ¡gina Consulta de datos de membresÃ­a */
header.page3 .top {
    background: url(../img/bg-header-consulta.jpg);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    padding: 6rem 3rem;
}
header.page3 .box {
    background-color: var(--rojo);
}
header.page3 .box h2 {
    font-weight: 400;
    font-size: 1.4em;
    margin: 1rem 0 0 0;
}
section.page3-1 h2 {
    color: var(--azul);
    font-size: 1.4em;
}
section.page3-1 .box {
    width: 50%;
    margin: 0 auto;
}
section.page3-1 .box .form-control {
    border-radius: 0;
    padding: 2rem;
    color: var(--azul);
    text-transform: uppercase;
}
section.page3-1 .box .btn-1 {
    color: var(--blanco);
    background-color: var(--rojo);
    border-radius: 0;
    border: 0;
    text-transform: uppercase;
    padding: 1rem 0;
    width: 70%;
    margin: 0 2% 0 0;
    font-size: 1.2em;
}
section.page3-1 .box .btn-1:hover {
    opacity: 0.75;
}
section.page3-1 .box .btn-2 {
    color: var(--blanco);
    background-color: var(--azul);
    border-radius: 0;
    border: 0;
    text-transform: uppercase;
    padding: 1rem 0;
    width: 27%;
    font-size: 1.2em;
}
section.page3-1 .box .btn-2:hover {
    opacity: 0.75;
}


.btnvote {
	background-color: var(--rojo);
	width: 100%;
    margin: 0 auto;
	display: block;
	position: relative;
    border-radius: 5px;
	text-align: center;
    line-height: 1.5em;
    color: #FFF;
}
.btnvote a {
    /*background-color: var(--rojo);*/
    color: #FFF;
    text-decoration: none;
}

/* mediaqueries */

/* Small devices */
@media (min-width: 0px) and (max-width: 575px){  
    nav {
        padding: 0rem 1rem !important;
    }
    nav img {
        width: 200px;
    }
    footer {
        padding: 1rem 1rem !important;
    }
    footer h3 {
        font-size: 1.2em;
        margin: 0 0 2rem 0;
    }
    footer i {
        font-size: 2em;
    }
    footer p {
        font-size: 0.8em;
    }
    
    h1 {
        font-size: 1.2em;
    }
    h3{
        font-size: 0.9rem;
    }
    h2 {
		font-weight: 400;
        font-size: 1.8em;
    }
    p {
        font-size: 1.2em;
    }
    /* 01. home */
    header .top {
        padding: 6rem 0 6rem 2rem;
    }
    header .box {
        padding: 0.5rem 0;
    }
    header .texto {
        padding: 2rem 1rem;
    }
    section.home1 {
        padding: 1rem 1rem;
    }
    section.home1 .card-body a {
        font-size: 1em;
    }
    section.home1 .card-body a i {
        right: 20px;
        top: 20px;
    }
    section.home2 {
        padding: 2rem 1rem;
    }
    section.home3 .box {
        padding: 3rem 0;
    }
    section.home4 .box {
        padding: 2rem 1rem 2rem 2rem;
        margin-top: 0px;
        width: 100%;
    }
    section.home4 .box ul {
        font-size: 1.2em;
    }
    /* 02. PÃ¡gina Listas nacionales */
    header.page1 .top {
        padding: 6rem 0 6rem 2rem;
    }
    header.page1 .box {
        padding: 0.5rem 0;
    }
    header.page1 .box h2 {
        font-size: 1em;
        margin: 0.5rem 0 0 0;
    }
    section.page1-1 {
        padding: 0rem 1rem;
    }
    .accordion.listas {
        margin-bottom: 0 !important;
    }
    .accordion.listas button.lista {
        font-size: 0.5em; 
    }
    .accordion.listas a.ir-patrocinar {
        font-size: 0.5em;
        right: 14px;
        top: 10px;
    }
    .accordion.listas .card-body table td {
        padding: 0.5rem 0.5rem;
    }
    .accordion.listas .card-body table tr {
        font-size: 0.8em;
    }
    section.page1-2 {
        padding: 0 1rem 0 1rem;
    }
    .listas-regionales li {
        padding: 0.2em 0.5em;
    }
    .listas-regionales li a {
        font-size: 1em;
    }

    /* 03. PÃ¡gina lista mÃ©dicos */
    header.page2 .top {
        padding: 6rem 0 6rem 2rem;
    }
    header.page2 .box {
        padding: 0.5rem 0;
    }
    header.page2 .box h2 {
        font-size: 1em;
        margin: 0.5rem 0 0 0;
		font-weight: 400;
    }
    section.page2-1 {
        padding: 0rem 1rem;
        margin-bottom: 1rem !important;
    }
    section.page2-1 table {
        margin: 1rem 0 !important;
    }
    section.page2-1 table td {
        padding: 0.5rem 0.5rem;
    }
    section.page2-1 table tr {
        font-size: 0.8em;
    }
    section.page2-2 {
        padding: 0rem 1rem;
    }
    section.page2-2 .box {
        width: 100%;
    }
    section.page2-2 .box .btn-1 {
        width: 100%;
        font-size: 1em;
        margin: 0.5rem 0 !important;
    }
    section.page2-2 .box .btn-2 {
        width: 100%;
        font-size: 1em;
    }

    /* 04. PÃ¡gina consulta de datos */
    header.page3 .top {
        padding: 6rem 0 6rem 2rem;
    }
    header.page3 .box {
        padding: 0.5rem 0;
    }
    header.page3 .box h2 {
        font-size: 1em;
        margin: 0.5rem 0 0 0;
    }
    section.page3-1 {
        padding: 0rem 1rem;
    }
    section.page3-1 h2 {
        margin-bottom: 1rem !important;
    }
    section.page3-1 .box {
        width: 100%;
    }
    section.page3-1 .box .btn-1 {
        width: 100%;
        font-size: 1em;
        margin: 0.5rem 0 !important;
    }
    section.page3-1 .box .btn-2 {
        width: 100%;
        font-size: 1em;
    }

} 

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 575px) and (max-width: 767px) {  
    h1 {
        font-size: 2em;
    }
    section.home4 .box {
        width: 100%;
    }
    footer h3 {
        margin-bottom: 2rem;
    }
    header .box{
        width: 100%;
    }
    header .box h2 {
        font-size: 1.5em;
    }
    header .box h3{
        font-size: 1.2em;
    }
    header .box h1{
        font-size: 1.5em;
    }
    header .box
    ,
    header.page1 .box,
    header.page2 .box,
    header.page3 .box {
        padding: 1rem;
    }
    .accordion.listas .card-body table td,
    section.page2-1 table td {
        padding: 1rem 1rem;
    }
    .accordion.listas button.lista {
        font-size: 0.6em;
    }
    .accordion.listas a.ir-patrocinar {
        font-size: 0.6em;
        top: 17px;
    }
    .listas-regionales li a {
        font-size: 1.4em;
    }
    .accordion.listas .card-body table tr,
    section.page2-1 table tr {
        font-size: 1em;
    }
    section.page2-2 .box,
    section.page3-1 .box {
        width: 80%;
    }
}
 
/* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */
@media (min-width: 768px) and (max-width: 991px){  
    section.home4 .box {
        width: 100%;
    }
    section.page2-2 .box,
    section.page3-1 .box {
        width: 70%;
    }
}
 
/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) and (max-width: 1199px){ 
    section.home4 .box {
        padding: 4rem 3rem;
        margin-top: 60px;
    }
    section.home1 .card-body a {
        font-size: 1.4em;
    }
}
 
/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) and (max-width: 1399px){  
    section.home4 .box {
        margin-top: 60px;
    }
}
/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1400px) {  
    .container {
        max-width: 1320px !important;
    }
}
