/* fuentes */
* {
    font-family: 'Lato', sans-serif;
}

/*{font-family: 'Roboto', sans-serif;}*/
/*{font-family: 'Engagement', cursive;}*/

/* enlaces y botones */
/*.btn {
    border-radius: 0;
}*/
/* colores */
/*.tx-grey,
.tx-grey:focus,
.tx-grey:active,
.th-grey:hover {
    color: grey;
}
.bg-grey,
.bh-grey:hover {
    background-color: grey;
}*/
/* formulario */
/*.form-control {
    border-color: #2B2D2E;
    border-radius: 0;
    box-shadow: 0;
    background-color: white;
    color: #2B2D2E;
}
.form-control::-moz-placeholder {
    color: #2B2D2E;
}
.form-control:-ms-input-placeholder {
    color: #2B2D2E;
}
.form-control::-webkit-input-placeholder {
    color: #2B2D2E;
}*/

/* varios */
h1,
h2,
h3,
h4,
h5 {
    margin-top: 0;
    margin-bottom: 10px;
}

.text-ellipsis {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}



/* estructura */
#body {
    /*height: 100vh;*/
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    /*overflow: auto;*/
    color: #2B2D2E;
}

.menu-fixed {
    position: relative;
    z-index: 10;
}

.fixed-elem {
    position: absolute;
    z-index: 10;
}

.container1230 {
    width: 1230px;
    max-width: 100%;
}

.container1000 {
    width: 1000px;
    max-width: 100%;
}

.row75 {
    margin-left: -7.5px;
    margin-right: -7.5px;
}

.col75 {
    padding-left: 7.5px;
    padding-right: 7.5px;
}

.row20 {
    margin-left: -20px;
    margin-right: -20px;
}

.col20 {
    padding-left: 20px;
    padding-right: 20px;
}

.text-engagement {
    font-family: 'Engagement', cursive;
}

/*header .ranking{
    width: 10px;
    height: 10px;
    border-radius: 5px;
    font-size: 6px;
    line-height: 9px;
    left: -2px;
    top: -2px;
}*/
.ranking {
    width: 10px;
    height: 10px;
    border-radius: 5px;
    font-size: 7px;
    line-height: 9px;
    border: 1px solid black;
    text-align: center;
    display: inline-block;
    position: absolute;
    left: -2px;
    top: -2px;
}

.rankingNegro {
    background-color: #2B2D2E;
    color: white;
}

.rankingBlanco {
    background-color: white;
    color: #2B2D2E;
}

.titulo-confidencial>* {
    font-family: 'Engagement', monospace;
    text-align: center;
}

.titulo-confidencial h1 {
    font-size: 60px;
    margin-bottom: 0;
}

.titulo-confidencial h2 {
    font-size: 30px;
}

.titulo-columna img,
.titulo-columna>div {
    display: inline-block;
    vertical-align: top;
}

.titulo-columna>div {
    padding-left: 10px;
}

.titulo-columna h2 {
    margin-bottom: 0;
}

.titulo-engagement {
    font-family: 'Engagement', cursive;
    font-size: 40px;
}

.subtitulo {
    font-style: italic;
    font-size: 14px;
}

.titulo-seccion {
    height: 70px;
    margin-top: 20px;
    margin-bottom: 25px;
    border-bottom: 5px solid #7CB342;
}

.titulo-seccion img,
.titulo-seccion h1,
.titulo-seccion h2 {
    display: inline-block;
    vertical-align: middle;
}

.titulo-seccion h1,
.titulo-seccion h2 {
    font-family: 'Engagement', cursive;
    font-size: 40px;
}

.titulo-seccion .btn,
.titulo-confidencial .btn {
    padding: 3px 10px;
    margin-top: 25px;
    border-radius: 0;
    background-color: #37aadc;
    color: white;
    font-size: 12px;
    font-style: italic;
    text-transform: uppercase;
    float: right;
}

.titulo-seccion .btn:hover,
.titulo-confidencial .btn:hover {
    background-color: #2B2D2E;
}

.titulo-seccion .btn span,
.titulo-confidencial .btn span {
    display: inline-block;
    vertical-align: middle;
}

.titulo-seccion .btn span+span,
.titulo-confidencial .btn span+span {
    padding-left: 5px;
}

.titulo-seccion .btn .fa,
.titulo-confidencial .btn .fa {
    font-size: 20px;
}

@media (max-width: 639px) {
    .titulo-seccion .btn {
        display: none;
    }
}


.texto-seccion {
    font-size: 16px;
    text-align: justify;
}

.texto-seccion p {
    margin-bottom: 20px;
}

.tx-azul {
    color: #37aadc;
}

.display-tablerow {
    display: table-row;
}

.redes .fa {
    border-radius: 50%;
    color: white;
    text-align: center;
    display: inline-block;
    vertical-align: middle;
}

.redes .fa-facebook {
    border: 1px solid #005291;
    background-color: #005291;
}

.redes .fa-instagram {
    border: 1px solid #A537B4;
    background-color: #A537B4;
}

.redes .fa-twitter,
.redes .fa-skype {
    border: 1px solid #37aadc;
    background-color: #37aadc;
}

.redes .fa-google-plus,
.redes .fa-youtube {
    border: 1px solid #ff0000;
    background-color: #ff0000;
}

.redes .fa:hover {
    background-color: white;
}

.redes .fa-facebook:hover,
.redes .fa-instagram:hover {
    color: #005291;
}

.redes .fa-twitter:hover,
.redes .fa-skype:hover {
    color: #37aadc;
}

.redes .fa-google-plus:hover,
.redes .fa-youtube:hover {
    color: #ff0000;
}




#cuerpo {
    padding-bottom: 50px;
}

/* header */
header .container-fluid,
footer .container-fluid {
    max-width: 1200px;
}

header .container-fluid .flex,
footer .container-fluid .flex {
    display: flex;
    justify-content: space-between;
}

/* header-top */
header #header-cookies {
    padding: 5px 15px;
    font-size: 12px;
    text-align: center;
}

header #header-top {
    background-image: url('../images/imagesestaticasFront/header-fondo01.jpg');
    background-size: cover;
    background-position: center center;
    font-size: 14px;
    line-height: 1.1;
}

header #header-top .flex {
    height: 110px;
}

header #header-top .header-top-blq {
    white-space: nowrap;
}

header #header-top .header-top-blq>* {
    display: inline-block;
    vertical-align: middle;
}

header #header-top .header-top-blq>*+* {
    margin-left: 7px;
}

header #header-top .header-top-blq>div>div+div {
    margin-top: 3px;
}

header #header-top #header-logo {
    margin-bottom: -30px;
    position: relative;
    z-index: 1;
}

.header-movil #header-top #header-logo {
    margin-bottom: 0;
}

header #header-top #header-directo,
header #header-top #header-pdf,
header #header-top #header-app,
header #header-top #header-toplider {
    text-align: left;
}

header #header-top #header-directo {
    width: 185px;
}

header #header-top #header-directo #header-directo-cont {
    padding-right: 10px;
    border-top-left-radius: 35px;
    border-bottom-left-radius: 35px;
    background-color: #2B2D2E;
    color: white;
    position: relative;
}

header #header-top #header-directo:hover #header-directo-cont {
    color: #7CB342 !important;
}

header #header-top #header-directo .sonando {
    color: #7CB342 !important;
}

header #header-top #header-directo #header-directo-txt {
    width: calc(100% - 35px);
    margin-left: 4px;
}

header #header-top #header-directo #header-directo-txt span {
    display: block;
}

header #header-top #header-directo #header-directo-play {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background-color: #2B2D2E;
    background-image: url('../images/headerTop-directoPlayBla.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 24px 24px;
    position: absolute;
    top: -15px;
    right: -10px;
}

header #header-top #header-directo:hover #header-directo-play {
    background-image: url('../images/play-icon.png');
}

header #header-top #header-directo .sonando #header-directo-play {
    background-image: url('../images/play-icon.png');
}

header #header-top #header-pdf {
    margin-bottom: 20px;
}

header #header-top #header-reproductor {
    text-align: right;
}

header #header-top #header-redes {
    margin-bottom: 15px;
}

.header-movil #header-top #header-redes {
    margin-bottom: 0;
}

header #header-top #header-redes>div {
    display: block;
}

header #header-top #header-redes>div+div {
    margin-left: 0;
    margin-top: 5px;
}

header #header-top #header-redes .fa {
    width: 24px;
    height: 24px;
    line-height: 22px;
    font-size: 13px;
}

header #header-top #header-redes .fa+.fa {
    margin-left: 5px;
}

header #header-top #header-toplider {
    margin-bottom: 10px;
}

header #header-top #header-toplider #header-toplider-txt {
    font-family: 'Engagement', cursive;
    color: white;
    font-size: 24px;
}

header #header-top #header-toplider:hover #header-toplider-txt {
    color: #7CB342;
}

header #header-top #header-toplider #header-toplider-txt+div {
    margin-top: 0;
}

header #header-top #header-toplider #header-toplider-cancion {
    padding-top: 6px;
    padding-left: 6px;
    color: #2B2D2E;
    font-size: 10px;
    line-height: 7px;
    position: relative;
}

header #header-top #header-toplider #header-toplider-cancion img {
    width: 30px;
}

header #header-top #header-toplider #header-toplider-cancion .ranking {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    margin-left: 0;
    background-color: #2B2D2E;
    color: white;
    line-height: 10px;
    position: absolute;
    top: 0;
    left: 0;
}

header #header-top #header-toplider #header-toplider-cancion .cancion {
    font-weight: bold;
}

header #header-top #header-toplider #header-toplider-cancion .disco {
    font-style: italic;
    /*font-weight: 300;*/
}

header #header-top {
    position: relative;
}

header #header-top #header-menu-mini .menu {
    text-align: center;
    white-space: nowrap;
}

header #header-top #header-menu-mini .menu nav {
    display: none;
}

header #header-top #header-menu-mini .menuOpen>nav {
    display: block !important;
}

header #header-top #header-menu-mini .menu .nav1 {
    min-width: 100%;
    background-color: white;
    font-size: 14px;
    position: absolute;
    z-index: 50;
    top: 100%;
    right: 0;
}

header #header-top #header-menu-mini .menu .menu-elem {
    line-height: 28px;
    padding: 0 15px;
}

header #header-top #header-menu-mini .menu .menu-elem+.menu-elem {
    border-top: 1px solid #2B2D2E;
}

header #header-top #header-menu-mini .menu .menu-elem .menu-sub {
    margin-left: 5px;
}

header #header-top #header-menu-mini .menu .nav2 .menu-elem {
    padding-left: 25px;
}

/* header-menu */
header .header-menu {
    background-color: #2B2D2E;
    font-weight: 300;
    font-size: 18px;
    text-transform: uppercase;
    text-align: center;
}

header .header-menu .container-fluid {
    max-width: 1100px;
}

header .header-menu a {
    padding: 0 5px;
    color: white;
    line-height: 50px;
    display: block;
}

header .header-menu a:hover {
    color: #7CB342;
}

header .header-menu a.menu-activo {
    background-color: #7CB342;
    color: white;
}

header .header-menu a>* {
    vertical-align: middle;
}

header .header-menu a>*+* {
    margin-left: 5px;
}

header #header-menu2 .menu-elem:last-of-type a {
    display: inline-block;
}

/* header-tiempo */
header #header-tiempo {
    padding-top: 4px;
    padding-bottom: 4px;
    background-color: white;
    font-size: 12px;
    font-weight: 300;
    line-height: 1;
    text-align: center;
    overflow: hidden;
}

header #header-tiempo #header-tiempo-cont {
    position: relative;
    white-space: nowrap;
}

header #header-tiempo #header-tiempo-cont>div,
header #header-tiempo .emisora,
header #header-tiempo .maximas,
header #header-tiempo .minimas,
header #header-tiempo img {
    display: inline-block;
    vertical-align: middle;
}

header #header-tiempo img {
    max-height: 26px;
}

header #header-tiempo #header-tiempo-cont>div {
    padding-left: 10px;
    padding-right: 10px;
}

header #header-tiempo #header-tiempo-cont>div+div {
    border-left: 1px solid black;
}

header #header-tiempo .maximas {
    color: #7CB342;
}

header #header-tiempo .minimas {
    color: #37aadc;
}

/* cols */
#ppalIzda,
#ppalDcha {
    padding-top: 30px;
}

#ppalIzda #lat-programas .programa {
    padding: 10px 15px;
    padding-left: 50px;
    background-image: url('../images/ppalIzda-programasCronometro.png');
    background-repeat: no-repeat;
    background-position: 15px center;
    background-color: #2B2D2E;
    color: white;
    font-size: 13px;
    display: block;
}

#ppalIzda #lat-programas .programa:hover {
    background-color: #7CB342;
}

#ppalIzda #lat-programas .programa+.programa {
    margin-top: 5px;
}

#ppalIzda #lat-programas .programa .programa-tit,
#ppalIzda #lat-programas .programa .programa-tmp {
    display: inline-block;
    vertical-align: middle;
}

#ppalIzda #lat-programas .programa .programa-tit {
    width: calc(100% - 80px);
}

#ppalIzda #lat-programas .programa .programa-tmp {
    width: 80px;
    padding: 3px 5px 5px 5px;
    border: 1px solid white;
    font-size: 14px;
    line-height: 1;
}

#ppalIzda #lat-programas #duacode {
    margin-top: 15px;
    margin-bottom: 15px;
}

#ppalIzda #lat-programas #duacode p {
    padding-left: 5px;
    margin-bottom: 2px;
    font-style: italic;
    font-size: 12px;
}

#ppalIzda #lat-programas #duacode a {
    padding: 15px;
    border: 1px solid black;
    display: block;
}

#ppalIzda #lat-programas #duacode a:hover {
    background-color: #ddd;
}

#ppalIzda #lat-podcast {
    padding: 15px;
    border: 1px solid #7CB342;
    margin-top: 15px;
}

#ppalIzda #lat-podcast iframe {
    margin-top: 15px;
}

#ppalDcha #lat-facebook,
#ppalDcha #lat-banner,
#ppalDcha #lat-twitter,
#ppalDcha #lat-instagram {
    margin-top: 15px;
}

@media (min-width: 992px) {
    header .container-fluid .flex>* {
        align-self: flex-end;
    }

    header #header-top #header-menu-mini {
        display: none;
    }

    header .header-menu .header-menu-cont {
        display: flex;
        justify-content: space-between;
    }

    header .header-menu .menu-elem {
        flex-grow: 1;
    }

    header #header-menu2 .menu-elem+.menu-elem {
        border-left: 1px solid white;
    }
}

@media (max-width: 991px) {
    header .container-fluid .flex>* {
        align-self: center;
    }

    header #header-top #header-directo,
    header #header-top #header-reproductor,
    header #header-top #header-app,
    header #header-top #header-toplider,
    header #header-menu1,
    header #header-menu2 .menu-elem {
        display: none;
    }

    header #header-menu2 .menu-elem:last-of-type {
        display: block;
    }

    header #header-top #header-menu-mini .menu .menu-root {
        width: 75px;
        height: 56px;
        display: inline-block;
    }
}

/* footer */
footer {
    min-height: 140px;
    padding-top: 10px;
    padding-bottom: 10px;
    background-color: #2B2D2E;
    color: white;
    font-size: 13px;
    text-align: center;
}

footer a {
    color: white;
}

footer a:hover {
    color: #7CB342;
}

footer #footer-directo a {
    padding: 10px;
    border: 1px solid white;
    line-height: 1.0;
}

footer #footer-directo a img,
footer #footer-directo a span {
    display: inline-block;
    vertical-align: middle;
}

footer #footer-directo a img {
    padding-right: 5px;
}

footer #footer-directo a:hover {
    border: 1px solid #7CB342;
}

footer #footer-directo a #playNaranja,
footer #footer-directo a:hover #playBlanco {
    display: none;
}

footer #footer-directo a:hover #playNaranja {
    display: inline-block;
}

footer #footer-redes .fa {
    width: 20px;
    height: 20px;
    line-height: 18px;
    font-size: 11px;
}

footer #footer-legal {
    font-size: 10px;
    margin-top: 10px;
}

footer #footer-duacode {
    font-size: 8px;
    font-style: italic;
}

/* formulario */
form .form-control {
    border-radius: 0;
}

form .control-label {
    margin-bottom: 0;
    font-weight: 500;
}

form #imprescindibles {
    margin-top: -10px;
    color: #37aadc;
    font-size: 12px;
    line-height: 12px;
    text-align: right;
}

form .checkbox {
    font-size: 12px;
}

form .checkbox a {
    color: #2B2D2E;
}

form .checkbox:hover a {
    color: #37aadc;
}

form .checkbox input {
    margin-top: 1px;
}

form .btn {
    width: 100%;
    border-radius: 0;
    background-color: #37aadc;
    color: white;
    text-transform: uppercase;
}

form .btn:hover {
    background-color: #2B2D2E;
    color: white;
}

@media (min-width: 1366px) {
    #cuerpo {
        width: 1340px;
        max-width: 100%;
        padding-left: 20px;
        padding-right: 20px;
    }

    #cuerpo #ppalIzda {
        width: 24%;
        right: 56%;
    }

    #cuerpo #ppalCtro {
        width: 56%;
        left: 24%;
    }

    #cuerpo #ppalDcha {
        width: 20%;
    }
}

@media (max-width: 899px) {
    footer #footer-directo {
        display: none;
    }
}

@media (min-width: 768px) {
    footer #footer-cont {
        display: flex;
    }

    footer #footer-cont>* {
        flex-grow: 1;
        text-align: center;
        align-self: center;
    }

    footer #footer-cont>*>* {
        text-align: left;
        display: inline-block;
    }

    footer #footer-contratacion {
        border-left: 1px solid white;
    }

    footer #footer-redes,
    footer #footer-legal {
        display: block !important;
        text-align: center !important;
    }
}

@media (max-width: 767px) {
    footer #footer-cont>*+* {
        margin-top: 10px;
    }
}

@media (min-width: 380px) {
    .header-movil #header-top #header-logo img {
        height: 110px;
    }
}

@media (max-width: 379px) {
    header #header-logo img {
        width: 120px;
    }
}

#mobile-online {
    border-bottom: 1px solid black;
    line-height: 28px;
    text-align: center;
}