#wpadminbar {
    position: fixed !important;
    top: 0px !important;
}

/* ICONOS */
@font-face {
    font-family: "red";
    src: url("../fonts/red.eot");
    src: url("../fonts/red.eot?#iefix") format("embedded-opentype"), url("../fonts/red.woff") format("woff"), url("../fonts/red.ttf") format("truetype"), url("../fonts/red.svg#red") format("svg");
    font-weight: normal;
    font-style: normal;
}
[data-icon]:before {
    font-family: "red" !important;
    content: attr(data-icon);
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    speak: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
[class^="icon-"]:before,
[class*="icon-"]:before {
    font-family: "red" !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    speak: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.icon-a:before {
    content: "\61";
}
.icon-b:before {
    content: "\62";
}
.icon-bip:before {
    content: "\63";
}
.icon-bus:before {
    content: "\64";
}
.icon-metro:before {
    content: "\65";
}
.icon-metro-logo:before {
    content: "\66";
}
.icon-metrotren:before {
    content: "\67";
}
.icon-peaton:before {
    content: "\68";
}
.icon-reloj:before {
    content: "\69";
}
.icon-error:before {
    content: "\6a";
}

.favoritos.cbp-spmenu .recorrido,
.favoritos.cbp-spmenu .recorrido,
.mis-estaciones-metro li a,
.mis-estaciones-metrotren li a,
div.recorrido,
div.servicio {
    vertical-align: middle;
}

.favoritos.cbp-spmenu .recorrido > [class^="icon-"],
.favoritos.cbp-spmenu .servicio > [class^="icon-"],
.mis-estaciones-metro li a [class^="icon-"],
.mis-estaciones-metrotren li a [class^="icon-"],
div.recorrido > [class^="icon-"],
div.servicio > [class*="icon-"] {
    position: relative;
}

.favoritos.cbp-spmenu .recorrido > [class^="icon-"]:before,
.favoritos.cbp-spmenu .servicio > [class^="icon-"]:before,
.mis-estaciones-metro li a [class^="icon-"]:before,
.mis-estaciones-metrotren li a [class^="icon-"]:before,
div.recorrido > [class^="icon-"]:before,
div.servicio > [class*="icon-"]:before {
    position: absolute;
    left: -5px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}


/* FIN ICONOS */

@font-face {
    font-family: 'Bariol-Regular';
    src: url('../fonts/Bariol-Regular.eot');
    src: url('../fonts/Bariol-Regular.eot?#iefix') format('embedded-opentype'), url('../fonts/Bariol-Regular.svg#Bariol-Regular') format('svg'), url('../fonts/Bariol-Regular.ttf') format('truetype'), url('../fonts/Bariol-Regular.woff') format('woff'), url('../fonts/Bariol-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Bariol-Bold';
    src: url('../fonts/Bariol-Bold.eot');
    src: url('../fonts/Bariol-Bold.eot?#iefix') format('embedded-opentype'), url('../fonts/Bariol-Bold.svg#Bariol-Bold') format('svg'), url('../fonts/Bariol-Bold.ttf') format('truetype'), url('../fonts/Bariol-Bold.woff') format('woff'), url('../fonts/Bariol-Bold.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'TSInfo2018-Regular';
    src: url('../fonts/TSInfo2018-Regular.eot');
    src: url('../fonts/TSInfo2018-Regular.eot?#iefix') format('embedded-opentype'), url('../fonts/TSInfo2018-Regular.svg#TSInfo2018-Regular') format('svg'), url('../fonts/TSInfo2018-Regular.ttf') format('truetype'), url('../fonts/TSInfo2018-Regular.woff') format('woff'), url('../fonts/TSInfo2018-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'TSInfo2018-Gruesa';
    src: url('../fonts/TSInfo2018-Gruesa.eot');
    src: url('../fonts/TSInfo2018-Gruesa.eot?#iefix') format('embedded-opentype'), url('../fonts/TSInfo2018-Gruesa.svg#TSInfo2018-Gruesa') format('svg'), url('../fonts/TSInfo2018-Gruesa.ttf') format('truetype'), url('../fonts/TSInfo2018-Gruesa.woff') format('woff'), url('../fonts/TSInfo2018-Gruesa.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

* {
    margin: 0;
    padding: 0;
}

/* POR ACCESIBILIDAD
*,
*:hover,
*:focus,
*:active {
    outline: none !important;
}*/
#wpadminbar {
    height: 6px !important;
    overflow: hidden;
    -webkit-transition: height 0.3s ease-in-out;
    -moz-transition: height 0.3s ease-in-out;
    -o-transition: height 0.3s ease-in-out;
    transition: height 0.3s ease-in-out;
}

#wpadminbar:hover {
    height: 32px !important;
    overflow: auto;
}

html.js,
html.no-js {
    margin-top: 0 !important;
}

html {
    background: #FFFFFF;
}

body {
    font-family: 'Bariol-Regular', sans-serif;
    font-weight: normal;
    line-height: 1.5;
    color: #000000;
    background: #FFFFFF;
    overflow-x: hidden;
}


/* ICONOS */

.paradero {
    font-family: 'TSInfo2018-Regular', sans-serif;
    font-weight: normal;
    color: #FFFFFF;
    background-color: #757778; /*#888B8D;*/
    line-height: 1;
    padding: 8px 15px 5px 15px;
    -moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    width: max-content;
    height: 32px;
    min-height: 32px;
    position: relative;
}

.paradero,
.paradero:hover,
.paradero:focus,
.paradero:active {
    color: #FFFFFF;
}

.bus {
    font-family: 'TSInfo2018-Regular', sans-serif;
    font-weight: normal;
    line-height: 1;
    background-color: #000000;
    padding: 8px 15px 5px 35px;
    vertical-align: middle;
    text-align: left;
    -moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    width: max-content;
    height: 31px;
    min-height: 31px;
    position: relative;
}

.bus:before {
    content: "";
    position: absolute;
    left: 12px;
    top: 50%;
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 15px;
    height: 22px;
    background-image: url('../images/iconos/icono-bus.png');
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
}

.bus,
.bus:hover,
.bus:focus,
.bus:active {
    color: #FFFFFF;
}

.metro {
    font-family: 'TSInfo2018-Regular', sans-serif;
    font-weight: normal;
    line-height: 1;
    background-color: #000000;
    padding: 8px 15px 5px 38px;
    vertical-align: middle;
    text-align: left;
    -moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    width: max-content;
    height: 31px;
    min-height: 31px;
    position: relative;
}

.metro:before {
    content: "";
    position: absolute;
    left: 10px;
    top: 50%;
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    background-image: url('../images/iconos/icono-metro.png');
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
}

.metro,
.metro:hover,
.metro:focus,
.metro:active {
    color: #FFFFFF;
}

.estacion-metro {
    font-family: 'TSInfo2018-Regular', sans-serif;
    font-weight: normal;
    line-height: 1;
    background-color: #000000;
    padding: 8px 15px 5px 38px;
    vertical-align: middle;
    text-align: left;
    -moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    width: max-content;
    height: 31px;
    min-height: 31px;
    position: relative;
}

.estacion-metro:before {
    content: "";
    position: absolute;
    left: 10px;
    top: 50%;
    -moz-transform: translateY(-52%);
    -ms-transform: translateY(-52%);
    -o-transform: translateY(-52%);
    -webkit-transform: translateY(-52%);
    transform: translateY(-52%);
    width: 22px;
    height: 22px;
    background-image: url('../images/iconos/icono-estacion-metro.png');
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
}

.estacion-metro,
.estacion-metro:hover,
.estacion-metro:focus,
.estacion-metro:active {
    color: #FFFFFF;
}

.metrotren {
    font-family: 'TSInfo2018-Regular', sans-serif;
    font-weight: normal;
    line-height: 1;
    background-color: #0d5dab;
    padding: 8px 15px 5px 35px;
    vertical-align: middle;
    text-align: left;
    -moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    width: max-content;
    height: 31px;
    min-height: 31px;
    position: relative;
}

.metrotren:before {
    content: "";
    position: absolute;
    left: 12px;
    top: 50%;
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 15px;
    height: 22px;
    background-image: url('../images/iconos/icono-metrotren.png');
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
}

.metrotren,
.metrotren:hover,
.metrotren:focus,
.metrotren:active {
    color: #FFFFFF;
}

.linea-metro {
    font-family: 'TSInfo2018-Regular', sans-serif;
    font-weight: normal;
    line-height: 1;
    background-color: #000000;
    padding: 8px 15px 5px 35px;
    vertical-align: middle;
    text-align: left;
    -moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    width: max-content;
    height: 31px;
    min-height: 31px;
    position: relative;
}

.linea-metro:before {
    content: "";
    position: absolute;
    left: 12px;
    top: 50%;
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 19px;
    height: 22px;
    background-image: url('../images/iconos/icono-metro-logo.png');
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
}
.linea-metro.l2:before {
        -webkit-filter: grayscale(1) invert(1);
    filter: grayscale(1) invert(1);
}

.linea-metro,
.linea-metro:hover,
.linea-metro:focus,
.linea-metro:active {
    color: #FFFFFF;
}

.itinerario {
    padding-right: 35px;
}

.itinerario:after {
    content: "";
    position: absolute;
    right: 7px;
    top: 50%;
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    background-image: url('../images/iconos/icono-reloj.png');
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
}
section.texto .content [class^="icon-"],
section.texto .content .paradero,
section.texto .content .bus,
section.texto .content .metro,
section.texto .content .metrotren,
section.texto .content .linea-metro {
    display: inline-block;
    margin-bottom: .25rem;
}

section.texto .content td > .paradero,
section.texto .content td > .bus,
section.texto .content td > .metro,
section.texto .content td > .metrotren,
section.texto .content td > .linea-metro {
    margin-bottom: 0;
}

section.texto .content .icon-a,
section.texto .content .icon-b,
section.texto .content .icon-bip,
section.texto .content .icon-bus,
section.texto .content .icon-metro,
section.texto .content .icon-metro-logo,
section.texto .content .icon-metrotren,
section.texto .content .icon-peaton,
section.texto .content .icon-reloj,
section.texto .content .icon-error {
    font-size: 25px;
    position: relative;
    display: inline-block;
    text-align: center;
    vertical-align: top;
    width: 25px;
    height: 25px;
    margin-bottom: 0 .25rem;
}

section.texto .content table .icon-a,
section.texto .content table .icon-b,
section.texto .content table .icon-bip,
section.texto .content table .icon-bus,
section.texto .content table .icon-metro,
section.texto .content table .icon-metro-logo,
section.texto .content table .icon-metrotren,
section.texto .content table .icon-peaton,
section.texto .content table .icon-reloj,
section.texto .content table .icon-error {
    vertical-align: text-bottom;
    margin: 0 .25rem 0;
    height: 27px;
}

section.texto .content .icon-a:before,
section.texto .content .icon-b:before,
section.texto .content .icon-bip:before,
section.texto .content .icon-bus:before,
section.texto .content .icon-metro:before,
section.texto .content .icon-metro-logo:before,
section.texto .content .icon-metrotren:before,
section.texto .content .icon-peaton:before,
section.texto .content .icon-reloj:before,
section.texto .content .icon-error:before {
    position: absolute;
    left: 0;
    top: 50%;
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

section.texto .content td .icon-metro-logo {
    margin: 0;
}

section.texto .content td .icon-metro-logo:before {
    -moz-transform: translateY(-43%);
    -ms-transform: translateY(-43%);
    -o-transform: translateY(-43%);
    -webkit-transform: translateY(-43%);
    transform: translateY(-43%);
}


section.texto .content .icon-metro,
section.texto .content .icon-metro-logo,
section.texto .content .icon-error {
    margin: 0 .25rem .25rem;
}

section.texto .content .icon-bus {
    top: -1px;
}


/**/

.sin-saltos {
    white-space: nowrap;
}

.page-template-page-cerca-de-mi .table-responsive p.texto-paradero,
.page-template-page-cerca-de-mi .table-responsive td.td-right-last a.cerca-de-mi {
    margin-top: 8px;
    line-height: 1;
}

.page-template-page-cerca-de-mi .table-responsive td.td-right-last a.cerca-de-mi {
    display: block;
}


/* ************************************************************* */


/* ************************************************************* */


/* MENU LATERAL */

.cbp-spmenu,
.favoritos {
    background: #CF152D;
    position: fixed;
}

.cbp-spmenu form span,
.favoritos form span {
    color: #FFFFFF;
    margin-right: 10px;
    font-size: 22px;
    vertical-align: middle;
}

.cbp-spmenu h3,
.favoritos h3 {
    color: #FFFFFF;
    font-size: 1.9em;
    padding: 20px;
    margin: 0;
    font-weight: 300;
}

#menuprincipal.cbp-spmenu a {
    display: inline-block;
    color: #FFFFFF;
    font-size: 20px;
    font-weight: 400;
    padding: 10px 0;
}

#menuprincipal.cbp-spmenu a:hover{
    color: #000;
}
#favoritos .mis-como-llegar a:hover {
    color: #fff;
    font-weight: bold;
}

#favoritos .mis-recorridos a.bus:hover,
#favoritos .mis-paraderos a.paradero:hover,
#favoritos .mis-estaciones-metro a.metro:hover,
#favoritos .mis-estaciones-metro a.estacion-metro:hover,
#favoritos .mis-estaciones-metrotren a.metrotren:hover,
#favoritos .mis-recorridos a.bus:focus,
#favoritos .mis-paraderos a.paradero:focus,
#favoritos .mis-estaciones-metro a.metro:focus,
#favoritos .mis-estaciones-metro a.estacion-metro:focus,
#favoritos .mis-estaciones-metrotren a.metrotren:focus {
    color: #fff;
    opacity: .8;
}

.cbp-spmenu a {
    display: inline-block;
    color: #FFFFFF;
}

.cbp-spmenu .list-inline > li,
.favoritos .list-inline > li {
    display: block;
}


/* Orientation-dependent styles for the content of the menu */

.cbp-spmenu-vertical {
    width: 320px;
    height: 100%;
    top: 0;
    z-index: 1100;
    overflow: auto;
}

.cbp-spmenu-vertical a {}


/* Vertical menu that slides from the left or right */

.cbp-spmenu-left {
    left: auto !important;
    right: -320px !important;
}

.cbp-spmenu-left.cbp-spmenu-open {
    left: auto !important;
    right: 0px !important;
}


/* Transitions */

.cbp-spmenu,
.cbp-spmenu-push {
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.cbp-spmenu ul.list-inline {
    margin: 0;
    padding: 0;
}

.cbp-spmenu .open > .dropdown-menu {
    position: relative;
    width: 100%;
    float: none;
    min-width: auto;
    margin: 0;
    padding: 0;
    font-size: 16px;
    text-align: left !important;
    background: transparent;
    border: none;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.cbp-spmenu .open > .dropdown-menu > li > a {
    display: block;
    font-family: 'Kumbh Sans', sans-serif;
    font-weight: normal !important;
    line-height: 1.25;
    margin: 0;
    padding: 7px 0 7px 15px;
    white-space: normal;
}

.cbp-spmenu .open > .dropdown-menu > li > a,
.cbp-spmenu .open > .dropdown-menu > li > a:hover,
.cbp-spmenu .open > .dropdown-menu > li > a:focus,
.cbp-spmenu .open > .dropdown-menu > li > a:active {
    color: #FFFFFF;
    background: transparent;
}

.cbp-spmenu-vertical.cbp-spmenu-open {}

.cbp-spmenu-vertical ul {
    margin: 40px 0 0;
    padding: 0;
    clear: both;
}

.cbp-spmenu-vertical ul li {
    list-style-type: none;
    color: #fff;
}


/*.cbp-spmenu-vertical ul li.wpml-ls-current-language,*/

#menuprincipal.cbp-spmenu-vertical ul li.wpml-ls-first-item {
    margin-top: 30px;
    padding-top: 40px;
    border-top: 1px solid #fff;
}

#menuprincipal.cbp-spmenu-vertical ul li.wpml-ls-item a {
    font-size: 15px;
    padding: 5px 0;
}

#menuprincipal.cbp-spmenu-vertical .wpml-ls-current-language a.nav-link {
    opacity: .5;
    cursor: not-allowed !important;
    pointer-events: none !important;
}

#menuprincipal.cbp-spmenu-vertical ul li.show > .dropdown-menu.show {
    width: 100%;
    display: block;
    background: transparent none repeat scroll 0% 0%;
    margin: 0 5px 12px 12px !important;
    padding: 0 0 0 12px !important;
    position: relative !important;
    top: -34px !important;
    border: none;
}

#menuprincipal.cbp-spmenu-vertical ul li.show > .dropdown-menu.show li {
    list-style-type: circle;
    color: #FFFFFF;
}

#menuprincipal.cbp-spmenu-vertical ul li.show > .dropdown-menu.show li a,
#menuprincipal.cbp-spmenu-vertical ul li.show > .dropdown-menu.show li a:hover {
    color: #FFFFFF;
    background: transparent;
}

#backMenu {
    opacity: .5;
}

.cbp-spmenu,
.favoritos {
    padding: 50px 55px 0;
}

.cbp-spmenu .cerrarMenu,
.favoritos .cerrarMenuFavoritos {
    display: block;
    float: left;
    margin-bottom: 15px;
    text-align: right;
}

.cbp-spmenu .cerrarMenu:hover,
.favoritos .cerrarMenuFavoritos:hover {
    -webkit-filter: grayscale(1) invert(1);
    filter: grayscale(1) invert(1);
}


/* ************************************************************* */


/* ************************************************************* */

b,
strong,
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.bloque-relacionados .banner-relacionado h3 strong {
    font-family: 'Bariol-Bold', sans-serif;
    font-weight: normal;
}
section.bloque-paraderos > .row > div > h2,
.lineas-de-metro h2,
article section.destacado h2,
.titular,
.titular-peq,
.titular-grande,
.bloque-titular-pagina > h1,
.bloque-titular-pagina > h2,
.bloque-relacionados .banner-relacionado h3,
.subencabezado h2,
.subencabezado .nombre-parada,
.subencabezado .desde,
.subencabezado .hasta,
.subencabezado .hacia {
    font-family: 'Bariol-Regular', sans-serif;
    font-weight: normal;
}

.rojo,
a {
    color: #CF152D;
}

a,
a:focus,
a:hover {
    text-decoration: none !important;
    /**/
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.hidden {
    display: none !important;
}

.fondo-gris {
    background: #F3F4F4;
}

.btn-back {
    float: left;
    margin-right: .75rem;
}

.btn-back > img {
    vertical-align: sub;
}

.btn.btn-primary {
    color: #FFFFFF;
    background-color: #CF152D;
    border: none;
    padding: .75rem 1.25rem;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

.btn.btn-secondary {
    color: #FFFFFF;
    background-color: #58595b;
    border: none;
    padding: .75rem 1.25rem;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

.tab-content > .tab-pane {
    margin-bottom: 2rem;
}

body.home .tab-content > .tab-pane {
    margin-bottom: 0;
}

.alert.alert-danger {
    margin: 0;
    background-color: #CF152D;
    border: none !important;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
}

.alert.alert-danger,
.alert.alert-danger a {
    color: #FFFFFF;
}

.alert .close {
    font-size: 40px;
    font-weight: normal;
    color: #FFFFFF;
    text-shadow: none;
    opacity: 1;
    padding: 0 !important;
}

.alert .bus,
.alert .metrotren,
.alert .linea-metro {
    display: inline-block;
}

.ts-iconos {
    font-family: 'TSInfo2018-Gruesa', sans-serif !important;
    font-weight: normal;
    font-size: 21px;
    line-height: 0;
    vertical-align: middle;
    padding: 0;
    text-transform: none !important;
}

.lineas-de-metro ul.linea-metrotren li div.recorrido > strong,
.mis-estaciones-metro li a,
.mis-estaciones-metrotren li a,
.tab-todos,
a.servicio,
div.servicio,
span.servicio,
a.recorrido,
div.recorrido,
span.recorrido {
    font-family: 'TSInfo2018-Regular', sans-serif;
    font-weight: normal;
    line-height: 1;
    display: inline-block;
    text-align: left;
    -moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    min-width: max-content;
}

.tab-todos {
    color: #FFFFFF;
    background-color: #000;
}

a.servicio,
div.servicio,
span.servicio {
    color: #FFFFFF;
    background-color: #757778;
}

a.recorrido,
div.recorrido,
span.recorrido {
    color: #FFFFFF;
    background-color: #000000;
}

.mis-estaciones-metro li a {
    color: #FFFFFF;
    background-color: #454545;
}

.mis-estaciones-metrotren li a {
    color: #FFFFFF;
    background-color: #0d5dab;
}

.transantiago {
    color: #FFFFFF;
    background-color: #70Af00;
}

.active > .tab-todos,
.active > .recorrido {
    background: #CF152D;
}

header.header h1 {
    margin-bottom: 0;
}

header.header .logotipo {
    vertical-align: top;
}

header.header a.favorito,
header.header a.no-favorito {
    color: #000000;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: 0 0;
}

header.header a.menu-favorito {
    background-image: url(../images/iconos/favoritos-rojo.png) !important;
}

a.favorito-anadir,
a.no-favorito {
    background-image: url(../images/iconos/favoritos-gris.png);
}

a.favorito {
    background-image: url(../images/iconos/favoritos-verde.png);
}

a.favorito-anadir,
a.favorito-anadido {
    display: inline-block;
    width: 27px;
    height: 27px;
    vertical-align: middle;
}

.xdsoft_datetimepicker {
    margin-top: 5px;
    border: 0;
    border-radius: 6px;
}

.show > .dropdown-toggle:focus {
    box-shadow: none !important;
}

.bloque-filtros .form-control,
.bloque-estados .form-control {
    border: none;
}

.bloque-filtros .form-group {
    margin-bottom: 1rem;
}

.bloque-filtros .form-group:last-child {
    margin-bottom: 0rem;
}

.bloque-filtros .form-group input.form-control {
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.bloque-filtros .pr-4 {
    padding-right: 2rem !important;
}

.bloque-filtros .col-sm-3 .dropdown {
    position: relative;
}

.bloque-filtros .col-sm-3 .dropdown.show > button {
    position: relative;
    z-index: 10;
}

.bloque-filtros .dropdown .btn,
.bloque-filtros .dropdown .dropdown-menu {
    width: 100%;
    min-width: 100%;
}

.bloque-distributiva .bloque-filtros .input-search input.form-control,
.bloque-filtros .dropdown .btn-primary,
.dropdown-toggle.bs-placeholder.btn-light,
.btn-cuando-llega {
    text-align: left;
    color: #000000;
    background: #F3F4F4;
    border: none;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    -moz-box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
    box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
    width: 100% !important;
}

.dropdown-toggle.bs-placeholder.btn-light:hover,
.dropdown-toggle.bs-placeholder.btn-light:focus,
.dropdown-toggle.bs-placeholder.btn-light:active {
    color: #000000;
}

.bloque-filtros .dropdown.btn-cuando-llega,
.bloque-filtros .dropdown.btn-cuando-llega.show {
    vertical-align: top;
}

.bloque-filtros .btn-cuando-llega .bs-searchbox input.form-control,
.bloque-filtros .btn-cuando-llega .inner.show a.dropdown-item {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.btn-cuando-llega .dropdown-menu.show .inner.show ul.dropdown-menu.inner.show .dropdown-item span.text {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 100%;
}

.bloque-filtros .btn-cuando-llega button.btn {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}

.btn-cuando-llega .btn-light .filter-option-inner-inner:before {
    content: " ";
    background: url(../images/iconos/filtro-cuando-llega.png);
    background-repeat: no-repeat;
    display: block;
    float: left;
    width: 40px;
    height: 40px;
    background-size: cover;
    margin-right: 10px;
}
.btn-cuando-llega.btn-recorrido .btn-light .filter-option-inner-inner:before {
    background: url(../images/iconos/filtro-recorrido.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 33px;
}

.ico-bus.btn-cuando-llega .btn-light .filter-option-inner-inner:before {
    content: none;
}

.btn-cuando-llega .filter-option-inner-inner {
    line-height: 42px;
}

.btn-cuando-llega .bs-searchbox {
    margin-bottom: 10px;
}

.btn-cuando-llega.show .btn-light .filter-option-inner-inner:before {
    filter: brightness(.01) invert(.99) !important;
}

.bootstrap-select > .dropdown-menu.show {
    max-height: 320px !important;
    overflow: hidden !important;
}

.bootstrap-select > .dropdown-menu.show .inner.show {
    max-height: 220px !important;
    overflow: hidden !important;
}

.btn-cuando-llega .dropdown-menu.show .inner.show ul.dropdown-menu.inner.show {
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 0 !important;
    overflow: auto !important;
}

.btn-cuando-llega .dropdown-menu.show .inner.show ul.dropdown-menu.inner.show .dropdown-item {
    padding: .25rem .5rem !important;
}

.btn-cuando-llega .dropdown-menu.show .inner.show ul.dropdown-menu.inner.show .dropdown-item:hover {
    color: #000;
}

.bloque-distributiva .bloque-filtros .input-search input.form-control,
.bloque-distributiva .bloque-filtros .dropdown .btn-primary,
.bloque-distributiva .btn-cuando-llega .btn-light {
    background: #FFFFFF;
}

.bloque-filtros .dropdown .btn-primary:not(:disabled):not(.disabled).active,
.bloque-filtros .dropdown .btn-primary:not(:disabled):not(.disabled):active,
.bloque-filtros .show > .btn-primary.dropdown-toggle {
    color: #000000;
    background: #E3E4E4;
}

.bloque-filtros .dropdown.show .btn-primary,
.btn-cuando-llega.show .btn-light,
.btn-cuando-llega.show .btn-light:hover {
    color: #FFFFFF;
    background: #CF152D;
    -moz-border-bottom-right-radius: 0;
    -webkit-border-bottom-right-radius: 0;
    border-bottom-right-radius: 0;
    -moz-border-bottom-left-radius: 0;
    -webkit-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
    position: absolute;
    z-index: 6;
}

.bloque-filtros .dropdown .dropdown-menu.show {}

.bloque-filtros .dropdown.show .btn-primary > img {
    filter: brightness(.01) invert(.99) !important;
}

.bloque-filtros .dropdown .dropdown-toggle:after {
    position: absolute;
    border: 0;
    content: url(../images/iconos/flecha-abajo-rojo.png);
}

.bloque-filtros .dropdown.show .dropdown-toggle:after {
    border: 0;
    content: url(../images/iconos/flecha-arriba-blanco.png);
}

.bloque-filtros .dropdown .dropdown-menu {
    padding: 30px 20px;
    margin: 0 0;
    font-size: 16px;
    background-color: #CF152D;
    border: 0;
    -moz-border-top-left-radius: 0;
    -webkit-border-top-left-radius: 0;
    border-top-left-radius: 0;
    -moz-border-top-right-radius: 0;
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
    -moz-border-bottom-right-radius: 10px;
    -webkit-border-bottom-right-radius: 10px;
    border-bottom-right-radius: 10px;
    -moz-border-bottom-left-radius: 10px;
    -webkit-border-bottom-left-radius: 10px;
    border-bottom-left-radius: 10px;
    -webkit-box-shadow: 0px 10px 12px 0px rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0px 10px 12px 0px rgba(0, 0, 0, 0.15);
    box-shadow: 0px 10px 12px 0px rgba(0, 0, 0, 0.15);
}

.bloque-filtros .dropdown .dropdown-menu,
.bloque-filtros .dropdown .dropdown-menu a {
    color: #FFFFFF;
}

.bloque-filtros .dropdown .dropdown-menu .ts-iconos {
    font-size: 30px;
    margin-right: 5px;
}

.bloque-distributiva .bloque-filtros .input-search .form-group,
.bloque-filtros .dropdown .dropdown-menu .form-group {
    position: relative;
}

.bloque-distributiva .bloque-filtros .input-search .form-group > button,
.bloque-filtros .dropdown .dropdown-menu .form-group button {
    background: transparent;
    border: none;
    position: absolute;
    bottom: 5px;
    right: 5px;
}

.bloque-filtros .dropdown .dropdown-menu .form-group button.btn.btn-secondary {
    background: #000000;
    position: initial;
    bottom: auto;
    right: auto;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.bloque-filtros .dropdown .dropdown-menu .form-group button.btn.btn-secondary:focus {
    background: #333;
}

.bloque-filtros .dropdown .dropdown-menu .form-group button.btn.btn-secondary:hover {
    background: #333;
}

.bloque-filtros > .container > .row {
    margin-right: -5px;
    margin-left: -5px;
}

.bloque-filtros > .container > .row > div {
    padding-right: 5px;
    padding-left: 5px;
}

.bloque-filtros .custom-select {
    border: 0;
    padding: .375rem .75rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    -moz-box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
    box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
}

.bloque-filtros .dropdown-mapas-horarios a {
    display: block;
    margin: 2px 0;
}

.bloque-filtros .dropdown-mapas-horarios [class^="icon-"] {
    font-size: 24px;
    margin-right: 5px;
    vertical-align: middle;
}

.bloque-filtros .dropdown-mapas-horarios a:first-child {
    display: block;
    margin-top: 0;
}

.bloque-filtros .dropdown-mapas-horarios a:after {
    position: absolute;
    right: 22px;
    content: url(../images/iconos/flecha-dcha-blanco.png);
    margin-top: 4px;
}

.buscador-encabezado.bloque-filtros .dropdown {
    min-width: 300px;
}

.bloque-filtros .dropdown-item:hover,
.bloque-filtros .dropdown-item:focus,
.bloque-filtros .dropdown-item:active {
    background-color: transparent;
}

.btn-ubicacion {
    display: block;
    margin-top: 1em;
    margin-bottom: 0;
    font-size: 15px;
}

.form-group:last-child .btn-ubicacion {
    margin-bottom: 0;
}

form + .btn-ubicacion {
    margin-top: 0;
}

.bloque-carrusel .carousel .carousel-item .texto,
.bloque-carrusel .carousel .carousel-item .texto a {
    color: #FFFFFF;
}

.bloque-carrusel .carousel .carousel-indicators li {
    width: 12px;
    height: 12px;
    margin-right: 5px;
    margin-left: 5px;
    background-color: rgba(255, 255, 255, .5);
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    border-radius: 100%;
}

.bloque-carrusel .carousel .carousel-indicators li.active {
    background-color: rgba(255, 255, 255, 1);
}

.bloque-estados .estados .nav-tabs {
    border-bottom: 1px solid #FFFFFF;
}

.bloque-estados .estados .nav-tabs .nav-link {
    color: #000000;
    background-color: #F3F4F4;
    border: 1px solid #F3F4F4;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.bloque-estados .estados .nav-tabs .nav-link [class^="icon-"] {
    color: #CF152D;
}

.bloque-estados .estados .nav-tabs .nav-link.active,
.bloque-estados .estados .nav-tabs .nav-link.active:hover {
    color: #FFFFFF;
    background-color: #CF152D;
    border: 1px solid #CF152D;
}

.bloque-estados .estados .nav-tabs .nav-link.active [class^="icon-"] {
    color: #FFFFFF;
}

.bloque-estados .tab-encabezado {
    background-color: #CF152D;
}

.bloque-estados .tab-encabezado,
.bloque-estados .tab-encabezado a {
    color: #FFFFFF;
}

.bloque-estados .tab-encabezado .form-group {
    margin-bottom: 0;
}

.bloque-estados .tab-encabezado form label,
.bloque-estados .tab-encabezado form .input {
    display: inline-block;
}

.bloque-estados .tab-encabezado form .input {
    position: relative;
}

.bloque-estados .tab-encabezado form .input button {
    /*background: transparent;
    border: none;
    position: absolute;
    bottom: 5px;
    right: 5px;*/
    padding: 0 50px 0 10px;
    background: #F3F4F4;
    font-size: 16px;
    margin: 0;
}

.bloque-estados .tab-encabezado form .input .show button {
    position: relative;
}

.bloque-estados .tab-encabezado .input .show input {
    min-width: auto;
    background: transparent;
}

.bloque-estados .tab-encabezado .bs-actionsbox,
.bloque-estados .tab-encabezado .bs-donebutton,
.bloque-estados .tab-encabezado .bs-searchbox {
    padding: 0;
}

.bloque-estados .tab-encabezado form .input .show button {
    color: #000;
    background: #fff !important;
}

.bloque-estados .dropdown.show .dropdown-toggle:after {
    border: 0;
    content: url(../images/iconos/flecha-arriba-rojo.png);
}

.bloque-estados .tab-encabezado .dropdown-menu.show {
    padding: 10px !important;
}

.bloque-estados .bloque-filtros {
    margin: 0;
}

.bloque-estados .bloque-filtros .dropdown .dropdown-toggle:after {
    right: 10px;
    top: 3px;
}

.bloque-estados .table-responsive tbody th[scope="row"],
.bloque-estados .table-responsive tbody td[scope="row"]{
    font-size: 16px;
}

.bloque-estados .tab-content,
.bloque-estados .tab-content-interior {
    background-color: #F3F4F4;
}

.bloque-estados .tab-content,
.bloque-estados .tab-content > .tab-pane,
.bloque-estados .tab-content-interior {
    -moz-border-bottom-left-radius: 10px;
    -webkit-border-bottom-left-radius: 10px;
    border-bottom-left-radius: 10px;
    -moz-border-bottom-right-radius: 10px;
    -webkit-border-bottom-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

.bloque-estados .tab-encabezado .dropdown-menu.show .bs-searchbox input {
    background: #fff;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
}

.bloque-estados .tab-encabezado .dropdown-menu.show .bloque-estados .tab-encabezado .dropdown-menu.show .bs-searchbox input,
.bloque-estados .tab-encabezado .dropdown-menu.show .bs-searchbox input:focus {
    border: none !important;
    transition: none !important;
    box-shadow: none !important;
}

.bloque-estados .tab-encabezado .dropdown-menu.show {
    background-color: #F3F4F4;
}

.bloque-estados .tab-encabezado .dropdown-menu.show,
.bloque-estados .tab-encabezado .dropdown-menu.show a,
.bloque-estados .tab-encabezado .dropdown-menu.show a:hover,
.bloque-estados .tab-encabezado .dropdown-menu.show a:focus,
.bloque-estados .tab-encabezado .dropdown-menu.show a:active {
    color: #000000;
}

.bloque-estados .dropdown-item:hover {
    background: #fff;
    color: #000 !important;
}

form .autocompletar ul.sugerencias {
    position: absolute;
    z-index: 1;
    width: 100%;
    max-width: 100%;
    background: #FFFFFF;
    -webkit-box-shadow: 0px 10px 12px 0px rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0px 10px 12px 0px rgba(0, 0, 0, 0.15);
    box-shadow: 0px 10px 12px 0px rgba(0, 0, 0, 0.15);
}

form .autocompletar ul.sugerencias li {
    padding: .25rem 1rem;
    color: #888B8D;
    list-style-type: none;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    line-height: 1.3em;
    border-top: 1px solid #ccc;
}
form .autocompletar ul.sugerencias li.selected,
form .autocompletar ul.sugerencias li.selected:hover,
form .autocompletar ul.sugerencias li:hover { 
    background: #000;
    color: #fff !important;
}

.bloque-servicios-web .servicio-web,
.bloque-servicios-web .servicio-web:hover {
    color: #000000;
}


.home .bloque-red-comunica {
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.07) 0%, rgba(0, 0, 0, 0) 80px);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.07) 0%, rgba(0, 0, 0, 0) 80px);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.07) 0%, rgba(0, 0, 0, 0) 80px);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#1a000000', endColorstr='#00000000', GradientType=0);
}

.bloque-red-comunica .recomendaciones a {
    position: relative;
    display: block;
    background: #CF152D;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    min-height: 100%;
}

.bloque-red-comunica .listado-recomendaciones a {
    background: #F3F4F4;
}

.bloque-red-comunica .recomendaciones a span.enlace {
    position: relative;
}

.bloque-red-comunica .recomendaciones a,
.bloque-red-comunica .recomendaciones a:hover {
    color: #FFFFFF;
}

.bloque-red-comunica .recomendaciones a,
.bloque-red-comunica .recomendaciones .imagen {
    overflow: hidden;
}

.bloque-red-comunica .recomendaciones .imagen > img {
    width: 100%;
}

.bloque-red-comunica .listado-recomendaciones a,
.bloque-red-comunica .listado-recomendaciones a:hover {
    color: #000;
}

.bloque-red-comunica .recomendaciones a h2,
.bloque-red-comunica .recomendaciones a h3,
.bloque-red-comunica .recomendaciones a h4,
.bloque-red-comunica .mejoras a h2,
.bloque-red-comunica .mejoras a h3,
.bloque-red-comunica .mejoras a h4,
.bloque-red-comunica .noticias a h2,
.bloque-red-comunica .noticias a h3,
.bloque-red-comunica .noticias a h4 {
    font-family: 'Bariol-Regular', sans-serif;
    font-weight: normal;
    line-height: 1.15em;
}
.bloque-red-comunica .recomendaciones a h2 strong,
.bloque-red-comunica .recomendaciones a h3 strong,
.bloque-red-comunica .recomendaciones a h4 strong,
.bloque-red-comunica .mejoras a h2 strong,
.bloque-red-comunica .mejoras a h3 strong,
.bloque-red-comunica .mejoras a h4 strong,
.bloque-red-comunica .noticias a h2 strong,
.bloque-red-comunica .noticias a h3 strong,
.bloque-red-comunica .noticias a h4 strong {
    display: block;
    font-family: 'Bariol-Bold', sans-serif;
    font-weight: 600;
}

.bloque-red-comunica .mejoras a,
.bloque-red-comunica .noticias a {
    position: relative;
    display: block;
    background: #F3F4F4;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

.bloque-red-comunica .mejoras a span,
.bloque-red-comunica .mejoras a h2,
.bloque-red-comunica .mejoras a h3,
.bloque-red-comunica .mejoras a h4,
.bloque-red-comunica .noticias a span,
.bloque-red-comunica .noticias a h2,
.bloque-red-comunica .noticias a h3,
.bloque-red-comunica .noticias a h4 {
    color: #000000;
}

.bloque-red-comunica .titular-peq .ver-mas > img {
    max-width: 16px;
    margin: -4px 2px 0 0;
    position: relative;
}

.table-responsive {
    margin-bottom: 30px;
}

.table-responsive .table {
    margin-bottom: 0;
}

.table-responsive .table th,
.table-responsive .table td {
    /*line-height: 1.25;*/
    vertical-align: middle;
    border-top: 1px solid #BFBDBD;
}
.table.tabla-liquida td.td-right-last {
    text-align: right;
}

td .paradero,
td .bus,
td .metro,
td .metrotren,
td .linea-metro {
    display: inline-block;
}

.table-responsive .table thead th {
    border-top: none;
    border-bottom: none;
}

.table-responsive thead tr > :first-child,
.table-responsive tbody tr > :first-child,
.table-responsive tfoot tr > :first-child {
    padding-left: 0 !important;
}

.table-responsive thead tr > :last-child,
.table-responsive tbody tr > :last-child,
.table-responsive tfoot tr > :last-child {
    padding-right: 0 !important;
}

.table-responsive thead th {
    font-family: 'Bariol-Regular', sans-serif;
    font-weight: normal;
}

.table-responsive tbody th,
.table-responsive tbody td {
    font-family: 'TSInfo2018-Regular', sans-serif;
    font-weight: normal;
}

.table-responsive table .enlace > img {
    vertical-align: bottom;
    margin-right: 5px;
}

.table-responsive table .ver-mas {
    font-family: 'Bariol-Regular', sans-serif;
    font-weight: normal;
}

.table-responsive table .ver-mas > img {
    max-width: 16px;
    margin: -2px 5px 0 0;
    position: relative;
}


/*.table-responsive table tr td:last-child,*/

.table-responsive table .ampliar-info {
    text-align: right;
}

.table-responsive table a.ampliar-info {
    color: #000000;
    line-height: 1.5;
}

.table-responsive table .ampliar-info > img {
    margin-left: 5px;
    margin-top: -1px;
}

.table-responsive table .incidencia,
.table-responsive table .incidencia,
.table-responsive table .incidencia a,
.table-responsive table .incidencia a:hover {
    color: #CF152D;
}

.table-responsive table .incidencia a:hover {
    color: #000;
}

.table-responsive table th.tiempo-llegada,
.table-responsive table td.tiempo-llegada {
    text-align: right;
}
table td.tiempo-llegada span {
    font-size: 13px;
}

table tr td .recorrido {
    /*  margin-top: .25rem; */
}

table tr td span.operativa {
    background-image: url('../images/iconos/estacion-operativa.png');
}

table tr td span.cerrada {
    background-image: url('../images/iconos/estacion-cerrada-temporalmente.png');
}

table tr td span.no-habilitada {
    background-image: url('../images/iconos/estacion-no-habilitada.png');
}

table tr td span.operativa,
table tr td span.cerrada,
table tr td span.no-habilitada {
    display: block;
    min-height: 23px;
    padding-left: 30px;
    background-repeat: no-repeat;
    background-position: 0 3px;
}

table tr td > p.listado-servicios {
    margin-bottom: 0;
}

table tr td > p.listado-servicios > a > .recorrido {
    margin-bottom: .35rem;
}

.guia .imagen:before {
    content: " ";
    background: url(../images/img-guias.png);
    background-size: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.listado-recomendaciones .guia .imagen:before {
    content: " ";
    background: url(../images/img-guias-alt.png);
    background-size: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    /*left: 0;*/
    top: 0;
    right: 0;
}

.mejora .imagen:before {
    content: " ";
    background: url(../images/img-mejoras.png);
    background-size: cover;
    width: 100%;
    height: 100%;
    height: calc(100% + 1px);
    position: absolute;
    left: 0;
    top: 0;
}

.noticia .imagen {
    border-radius: 6px;
    position: relative;
    overflow: hidden;
}

.noticia .imagen:before {
    content: " ";
    background: url(../images/img-noticias.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.ruta-migas {}

.ruta-migas .breadcrumb {
    padding: 0;
    background-color: transparent;
    border: 0;
    color: #CF152D;
}

.ruta-migas .breadcrumb-item + .breadcrumb-item:before,
.ruta-migas ol.breadcrumb li:after {
    content: " | ";
    color: #CF152D;
}
.ruta-migas ol.breadcrumb li:last-child:after {
    content: "";
    display: none;
}
.ruta-migas ol.breadcrumb li {
    margin-right: 10px;
}
.ruta-migas ol.breadcrumb li > a {
    padding-right: 5px;
}

.breadcrumb-item.active {
    color: #CF152D;
}

.bloque-titular-pagina > h1 {
    float: left;
    margin-bottom: 0;
}

.buscador-encabezado .form-group {
    position: relative;
    margin-bottom: 0;
}

.buscador-encabezado.bloque-filtros .form-group {
    position: initial;
    margin-bottom: 1rem;
}

.buscador-encabezado .form-group > label {
    /*display: none;*/
}

.buscador-encabezado .form-group .form-control {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    padding-right: 50px;
    border: 1px solid #EBEBEB;
}

.buscador-encabezado.bloque-filtros .form-group .form-control {
    padding-right: .75rem;
}

.buscador-encabezado .form-group button {
    background: transparent;
    border: none;
    position: absolute;
    bottom: 6px;
    right: 6px;
}


/* Subencabezado */

.subencabezado {
    background-color: #F3F4F4;
    margin-bottom: 1.5rem;
    padding: 30px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

.subencabezado.ico-recorrido {
    padding: 30px 30px 24px 30px;
}

.subencabezado .servicio {
    text-align: center;
}

.subencabezado .nombre-parada {
    margin-bottom: 0;
}

.subencabezado .acciones > a {
    vertical-align: top;
}

.subencabezado .acciones > a,
.subencabezado .mas-info > a {
    color: #000000;
}

.subencabezado.ico-recorrido {
    background-image: url('../images/iconos/ico-recorrido.png');
    background-repeat: no-repeat;
}

.subencabezado.ico-cercade {
    background-image: url('../images/iconos/filtro-cerca-de-mi.png');
    background-repeat: no-repeat;
}

.subencabezado.ico-cercade h2 {
    margin-bottom: 0;
}


/* Pestañas paradas */

nav.recorridos {
    margin-bottom: 1rem;
}

nav.recorridos .nav-tabs {
    border-bottom: none;
}

nav.recorridos .nav-tabs .nav-link {
    background-color: transparent;
    border: none;
    padding: .5rem 0;
    vertical-align: top;
    margin-bottom: .5rem;
}

nav.recorridos .nav-tabs .nav-link.active .bus {
    background-color: #CF152D;
}

nav.recorridos .nav-tabs .nav-link:last-child {
    margin-right: 0;
}


/* ACTIVAR ESTE ESTILO SI SE ELIMINA EL CÓDIGO DE COLORES DE LAS PARADAS
nav.recorridos .nav-tabs .nav-link.active .servicio,
nav.recorridos .nav-tabs .nav-link.active:hover .servicio {
    background-color: #000000;
}
*/

.page-template-page-cerca-de-mi .icon-bip {
    font-size: 45px;
    width: 45px;
    height: 45px;
    position: relative;
    display: inline-block;
    vertical-align: middle;
}

.page-template-page-cerca-de-mi .icon-bip:before {
    position: absolute;
    top: 0;
    left: 0;
}

.bloque-mapa .container {
    padding-right: 0;
    padding-left: 0;
}

.single-estaciones-metro .bloque-mapa .container,
.single-estaciones-metrotren .bloque-mapa .container {
    padding-right: 15px;
    padding-left: 15px;
}

.bloque-mapa .card.card-body {
    border: none;
    padding: 0 0;
    margin-bottom: 1.5rem;
    overflow: hidden;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

.bloque-mapa a.btn-mapa {
    display: block;
    font-size: 18px;
    margin-bottom: 1.5rem;
}

.bloque-mapa a.btn-mapa > img {
    vertical-align: bottom;
    margin-right: 7px;
}

.bloque-mapa #map,
.bloque-mapa .mapa {
    background: #F3F4F4;
}

.bloque-relacionados a {
    display: block;
    overflow: hidden;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

.bloque-relacionados .titular {
    margin-top: 1rem;
}

.bloque-relacionados .row > div:last-child > a {
    margin-bottom: 0 !important
}

.bloque-relacionados a > img,
.bloque-relacionados .banner-relacionado .imagen > img {
    width: 100%;
}

.bloque-relacionados .banner-rojo {
    background-color: #CF152D;
}

.bloque-relacionados .banner-rojo,
.bloque-relacionados .banner-rojo:hover {
    color: #FFFFFF;
}

.bloque-relacionados .banner-gris {
    background-color: #F3F4F4;
}

.bloque-relacionados .banner-gris,
.bloque-relacionados .banner-gris:hover {
    color: #000000;
}

.bloque-relacionados .banner-relacionado .imagen {
    position: relative;
    overflow: hidden;
}

.bloque-relacionados .banner-rojo .imagen:before,
.bloque-relacionados .banner-gris .imagen:before {
    content: " ";
    background-size: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
}

.bloque-relacionados .banner-rojo .imagen:before {
    background-image: url(../images/bg-banner-rojo.png);
}

.bloque-relacionados .banner-gris .imagen:before {
    background-image: url(../images/bg-banner-gris.png);
}

.bloque-relacionados .banner-relacionado .enlace > img {
    vertical-align: sub;
    margin-left: 5px;
}

.bloque-relacionados .banner-relacionado .datos p {
    margin-bottom: 0;
}


/*  
.mapboxgl-control-container {
    display: none;
}

.mapboxgl-canvas-container {
    position: relative;
    z-index: 2;
}

.mapboxgl-canvas {
    border-radius: 10px;
}*/

#map .loader,
.mapa .loader {
    position: absolute;
    left: 50%;
    top: 50%;
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    z-index: 0;
}

.mas-info {
    position: relative;
    display: block;
    margin-top: 0;
    margin-bottom: 0;
}

.page-template-page-cuando-llega .subencabezado .mas-info {
    margin-top: 0;
}

.hora-prediccion {
    font-size: 16px;
    margin-bottom: 0;
}

.accordion-como-llegar .card {
    margin-bottom: 1.5rem;
    border: none;
}

.accordion-como-llegar .card-body {
    padding-left: 0;
    padding-right: 0;
}

.accordion-como-llegar .card .card-header {
    padding: 0;
    background-color: transparent;
    border-bottom: none;
}

.accordion-como-llegar .card .card-header [class^="icon-"],
.accordion-como-llegar .card .card-header [class*="icon-"] {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 40px;
}

.accordion-como-llegar .card .card-header [class^="icon-"]:before,
.accordion-como-llegar .card .card-header [class*="icon-"]:before {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
}

.accordion-como-llegar .card .card-header button [class^="icon-"],
.accordion-como-llegar td.icono [class^="icon-"] {
    font-size: 40px;
    vertical-align: middle;
    color: #CF152D;
}

.accordion-como-llegar td.icono [class^="icon-"] {
    display: block;
    background: #fff;
    padding: 7px 0 0 0;
}

.accordion-como-llegar .card .card-header button .icon-metro {
    margin-left: 10px;
    margin-right: 10px;
}

.accordion-como-llegar .card .card-header button .icon-metro + .icon-metro {
    margin-left: 7px;
}

.accordion-como-llegar .card .card-header button .icon-peaton,
.accordion-como-llegar td.icono .icon-peaton {
    color: #999;
}

.accordion-como-llegar .card .card-header,
.accordion-como-llegar .card .card-header h3 {
    margin-bottom: 0;
}

.accordion-como-llegar .card .card-header button {
    background-color: #F3F4F4;
    -moz-border-radius: 10px !important;
    -webkit-border-radius: 10px !important;
    border-radius: 10px !important;
    -moz-box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
    box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
}

.accordion-como-llegar .card .card-header button[aria-expanded="true"],
.accordion-como-llegar .card .card-header button.active,
.accordion-como-llegar .card .card-header button:active {
    color: #FFFFFF;
    background-color: #CF152D;
}

.accordion-como-llegar .card .card-header button:after {
    position: absolute;
    border: 0;
    content: url(../images/iconos/flecha-abajo-rojo.png);
}

.accordion-como-llegar td.icono > span.ts-iconos,
.accordion-como-llegar .card .card-header button span.ts-iconos {
    color: #CF152D;
}

.accordion-como-llegar .card .card-header button:active [class^="icon-"],
.accordion-como-llegar .card .card-header button[aria-expanded="true"] [class^="icon-"] {
    color: #FFFFFF;
}

.accordion-como-llegar table td.icono > img,
.accordion-como-llegar .card .card-header button > img {
    opacity: .35;
}

.accordion-como-llegar .card .card-header button:active > img,
.accordion-como-llegar .card .card-header button[aria-expanded="true"] > img {
    opacity: 1;
    filter: brightness(0) invert(1);
}

.accordion-como-llegar .card .card-header button:active:after,
.accordion-como-llegar .card .card-header button[aria-expanded="true"]:after {
    content: url(../images/iconos/flecha-arriba-blanco.png);
}

.accordion-como-llegar .table-responsive td.icono {
    text-align: center;
    background: url(../images/linea-tabla-como-llegar-icono.png);
    background-repeat: no-repeat;
    background-position: 19px center;
}

.accordion-como-llegar .table-responsive tbody > tr:first-child > td.icono {
    background: url(../images/linea-tabla-como-llegar-icono-first.png);
    background-repeat: no-repeat;
    background-position: 19px center;
}

.accordion-como-llegar .table-responsive tbody > tr:last-child > td.icono {
    background: url(../images/linea-tabla-como-llegar-icono-last.png);
    background-repeat: no-repeat;
    background-position: 19px center;
}

.accordion-como-llegar .table td {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.accordion-como-llegar .table td .bus,
.accordion-como-llegar .table td .metro,
.accordion-como-llegar .table td .estacion-metro,
.accordion-como-llegar .table td .metrotren {
    display: inline-block;
    margin-bottom: .25rem;
}

.distributiva .bloque-distributiva {
    background: #F3F4F4;
}

.distributiva .bloque-distributiva .titular {
    margin-bottom: 1rem;
}

.distributiva .bloque-distributiva .descripcion {
    margin-bottom: 0;
}

.distributiva .bloque-distributiva .imagen {
    position: relative;
    overflow: hidden;
}

.distributiva .bloque-distributiva .imagen:before {
    content: " ";
    background-image: url(../images/bg-imagen-distributiva.png);
    background-size: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
}

.distributiva .bloque-distributiva .imagen {
    margin-top: 1.5rem;
}

.distributiva .bloque-distributiva .imagen > img {
    width: 100%;
}

.distributiva .bloque-distributiva .pr-4 {
    padding-right: 2.75rem !important;
}

.distributiva .bloque-distributiva .titular > img,
.distributiva .bloque-distributiva .titular [class^="icon-"],
.distributiva .bloque-distributiva .enlace a,
.distributiva .bloque-distributiva .enlaces a {
    display: block;
}

.distributiva .bloque-distributiva .titular [class^="icon-"] {
    font-size: 66px;
    color: #CF152D;
    margin-left: -12px;
}

.distributiva .bloque-distributiva .titular strong {
    display: block;
}

.distributiva .bloque-distributiva .enlace a > img {
    margin-left: 7px;
}

.distributiva .bloque-distributiva .enlace a,
.distributiva .bloque-distributiva .enlaces a {
    position: relative;
    font-family: 'Bariol-Bold', sans-serif;
    font-weight: normal;
    padding: .25rem 0;
}

.distributiva .bloque-distributiva .enlaces a:after {
    position: absolute;
    border: 0;
    content: url(../images/iconos/flecha-dcha-rojo.png);
    right: 0;
    top: 8px;
}

.page-template-page-distributiva .distributiva .bloque-distributiva .enlace {
    margin-bottom: 0 !important;
}

.cabecera .cabecera-content {
    background-color: #F3F4F4;
}

.cabecera .cabecera-content h1,
.cabecera .cabecera-content .titular {
    margin-bottom: 0;
}

.cabecera .cabecera-content .datos .fecha {
    display: block;
    margin-bottom: .5rem;
    text-transform: uppercase;
}

.cabecera .cabecera-content .imagen {
    position: relative;
}

.cabecera .cabecera-content .imagen .bg-imagen {
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url('../images/bg-detalle-noticia.png');
    background-repeat: no-repeat;
    background-size: contain;
    top: 0;
    right: -15px;
}

.cabecera .cabecera-content .imagen .bg-imagen > img {
    width: 100%;
}

section.desplegable .acordeon {
    border-top: 1px solid #E9E9E9;
}

section.desplegable .acordeon .card {
    word-wrap: break-word;
    border: none;
    border-bottom: 1px solid #E9E9E9;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
}

section.desplegable .acordeon .card-header {
    padding: 0 0;
    background-color: transparent;
    border-bottom: none;
}

section.desplegable .acordeon .card .card-header h2,
section.desplegable .acordeon .card .card-header h3,
section.desplegable .acordeon .card .card-header h5 {
    margin: 0;
}

section.desplegable .acordeon .card .card-header .btn.btn-link,
section.desplegable .acordeon .card .card-header .btn.btn-link:hover {
    color: #000000;
    text-decoration: none;
}

section.desplegable .acordeon .card .card-header .btn.btn-link:after {
    border: 0;
    content: url(../images/iconos/flecha-arriba-rojo.png);
    position: absolute;
    right: 0;
}

section.desplegable .acordeon .card .card-header .btn.collapsed:after {
    content: url(../images/iconos/flecha-abajo-rojo.png);
}

section.desplegable .acordeon .card .card-header button {
    text-align: left;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 100%;
}

section.desplegable .acordeon .card .card-body {
    margin: 0;
    padding: 0;
}

section.desplegable .acordeon .card .card-body p:last-child {
    margin-bottom: 26px;
}

section.etiquetas .category > a {
    color: #58595b;
}

section.etiquetas .category > img {
    margin-right: 7px;
}

.bloque-leyenda,
section.texto .content,
section.texto .content p,
section.entradilla .content,
section.entradilla .content p {
    color: #58595b;
    text-align: justify;
}

.bloque-leyenda,
section.texto .content td,
section.entradilla .content td {
    text-align: left;
}

.bloque-leyenda,
section.texto .content th,
section.entradilla .content th {
    text-align: left;
    font-weight: normal;
    font-size: 16px;
    padding: .75rem .5rem;
    border-top: 0;
    color: #58595b;
}

.bloque-leyenda {
    padding: .75rem 15px;
}

section.destacado h3,
section.entradilla .content p:only-child,
section.entradilla .content p:last-child,
section.imagen-grande figure {
    margin-bottom: 0;
}

section.texto .content h2 {
    font-family: 'Bariol-Regular', sans-serif;
    font-weight: normal;
    color: #000000;
}

.acordeon .card-body ul,
section.texto .content ul {
    list-style: none;
    margin-left: 1.5rem;
}

.acordeon .card-body ul li:before,
section.texto .content ul li:before {
    content: "\2022";
    color: #CF152D;
    font-weight: bold;
    display: inline-block;
    width: 1em;
    margin-left: -1em;
    font-size: 27px;
}
section.texto .content ul li {
    margin-bottom: 1rem;
}
section.texto .content ul li:before {
    line-height: 1;
}

.acordeon .card-body ol,
section.texto .content ol {
    counter-reset: numeracion;
}
.acordeon .card-body ol li,
section.texto .content ol li {
    margin-bottom: 1rem;
    padding-left: 1.5rem;
    list-style-type: none;
    position: relative;
}
.acordeon .card-body ol li:last-child,
section.texto .content ol li:last-child {
    margin-bottom: 0;
}
.acordeon .card-body ol li:before,
section.texto .content ol li:before {
    position: absolute;
    top: 0;
    counter-increment: numeracion;
    content: "" counter(numeracion) ".";
    color: #CF152D;
    display: inline-block;
    width: 1em;
    font-weight: 700;
    margin-left: -1.5em;
    text-align: center;
    direction: ltr;
}

section.matriz .elemento h3,
section.entradilla .content,
section.entradilla .content p {
    font-family: 'Bariol-Bold', sans-serif;
    font-weight: normal;
}

section.video figcaption,
section.imagen-grande figure > figcaption {
    margin-top: .75rem;
    font-size: 15px;
    color: #58595b;
}

section.enlaces .content ul > li > .btn:last-child {
    margin-right: 0;
}

section.bloque-paraderos > .row > div > h2 {
    margin-bottom: 1.5rem !important;
}


footer.footer {}

footer.footer .franja-roja {
    background-color: #CF152D;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}
footer.footer .franja-roja ul.telefonos,
footer.footer .franja-roja ul.enlaces,
footer.footer .franja-roja ul.social {
    margin-bottom: 0;
}
footer.footer .franja-roja ul.telefonos li,
footer.footer .franja-roja ul.enlaces li,
footer.footer .franja-roja ul.social li {
    display: inline-block;
}
footer.footer .franja-roja,
footer.footer .franja-roja a {
    color: #FFFFFF;
}

footer.footer .enlaces li {
    list-style-type: none;
}

.bloque-distributiva .social {
    display: block;
    text-align: left;
    float: none !important;
    min-height: 30px;
}

.social a {
    display: inline-block;
    background-repeat: no-repeat;
    background-position: 0 0;
}

.bloque-distributiva .social {
    margin: 0;
}

.bloque-distributiva .social li {
    list-style: none;
    display: inline-block;
}

.bloque-distributiva .social a {
    display: inline-block !important;
    margin: 0 10px 0 0;
}

.social a span {
    display: none;
}

.social a.facebook {
    width: 16px;
    height: 30px;
    background-image: url(../images/iconos/rrss-facebook.png);
}

.bloque-distributiva .social a.facebook {
    background-image: url(../images/iconos/rrss-facebook-rojo.png);
}

.social a.twitter {
    width: 26px;
    height: 30px;
    background-image: url(../images/iconos/rrss-x.png);
}
.social a.tiktok {
    width: 26px;
    height: 30px;
    background-image: url(../images/iconos/rrss-tiktok.png);
}

.bloque-distributiva .social a.twitter {
    background-image: url(../images/iconos/rrss-twitter-rojo.png);
}

.social a.youtube {
    width: 32px;
    height: 30px;
    background-image: url(../images/iconos/rrss-youtube.png);
}

.bloque-distributiva .social a.youtube {
    background-image: url(../images/iconos/rrss-youtube-rojo.png);
}

.social a.instagram {
    width: 32px;
    height: 30px;
    background-image: url(../images/iconos/instagram-blanco.png);
}

.bloque-distributiva .social a.instagram {
    background-image: url(../images/iconos/instagram-rojo.png);
}

.bloque-red-comunica .noticias > div,
.bloque-red-comunica .listado-recomendaciones > div {
    margin-bottom: 50px;
}

.image-header-page {
    overflow: hidden;
    display: block;
    border-radius: 10px;
    margin-bottom: 50px;
    position: relative;
}

.image-header-page:before {
    background: url(../images/page-header.png);
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    content: " ";
    width: 499px;
    height: 248px;
    background-size: cover;
}

.contenidoFavoritos h2,
.contenidoAlteraciones h2 {
    color: #fff;
    margin: 20px 0 20px;
    font-size: 22px;
    padding: 0;
    line-height: 3em;
    font-weight: normal;
    clear: both;
    /*border-bottom: 1px solid #e78a96;*/
    border-bottom: none;
    font-family: 'Bariol-Regular', sans-serif;
}

.contenidoFavoritos h2 img,
.contenidoAlteraciones h2 img {
    display: inline-block;
    vertical-align: text-bottom;
}

.contenidoAlteraciones {
    font-size: 18px;
    line-height: 1em;
}

.contenidoAlteraciones h2,
.contenidoAlteraciones a {
    color: #CF152D;
    padding: 0;
    margin-bottom: 0;
}

.contenidoAlteraciones .ctf-context a {
    font-size: 14px;
    padding: 0;
}

.contenidoAlteraciones .ctf-tweet-actions {
    display: block;
    margin-top: 10px !important;
}

#ctf .ctf-tweet-actions a.ctf-like,
#ctf .ctf-tweet-actions a.ctf-reply,
#ctf .ctf-tweet-actions a.ctf-retweet {
    color: #CF152D !important;
}

#ctf .ctf-item {
    /*border-top: 1px solid #CF152D !important;*/
    border-top: 1px solid #BEBEBE !important;
}

#ctf {
    margin-bottom: 20px;
}

.contenidoFavoritos h3 {
    color: #fff;
    font-size: 22px;
    margin: 0 0 20px;
    padding: 0;
    font-weight: normal;
    font-family: 'Bariol-Regular', sans-serif;
}

.contenidoFavoritos li {
    position: relative;
    padding-right: 25px;
}

.contenidoFavoritos .favorito-eliminar {
    background: url(../images/iconos/menu-cerrar.png);
    display: inline-block;
    width: 20px;
    height: 20px;
    cursor: pointer;
    position: absolute;
    right: 0;
    top: 50%;
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    padding-left: 0;
    margin-top: 2px;
}

.contenidoFavoritos .favorito-eliminar:hover {
    filter: invert(.99) !important;
}

#cercade {
    padding-right: 40px;
}

#cercademi button {
    bottom: auto;
    top: 4px;
}

#show-hide-div .bloque-filtros {
    margin: 0;
}

.cbp-spmenu-vertical ul.lista-favoritos {
    margin-top: 0;
    border-bottom: 1px solid #e78a96;
    padding-bottom: 10px;
    margin-bottom: 25px;
}

.cbp-spmenu-vertical ul.lista-favoritos li {
    margin-bottom: 15px;
}


/* addtoany */

.a2a_kit .a2a_button_facebook path {
    fill: #3a589e !important;
}

.a2a_kit .a2a_button_twitter path {
    fill: #4a9ff2 !important;
}

.addtoany_list a,
.widget .addtoany_list a {
    padding: 0 !important;
}

.servicio .icon-reloj,
.recorrido .icon-reloj {
    padding-left: 2px;
}

#nav-tabEstados tfoot th {
    padding-bottom: 0;
}

.single-desvios .subencabezado span img {
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
}

.single-desvios .subencabezado .table-responsive {
    margin-bottom: 0;
    padding-bottom: 0;
}

.single-desvios .subencabezado .table-responsive tbody th[scope="row"] {
    min-width: 25%;
    width: 25%;
}

.loader-white {
    display: none;
}

.loader-container {
    position: relative;
    min-height: 300px;
}

.loader {
    display: block;
    width: 100%;
    padding: 100px 0;
    height: 100px;
    position: absolute;
    left: 0;
    top: 0;
    text-align: center;
    color: #CF152D;
}

.loader img {
    display: block;
    margin: 0 auto 10px;
}

.aviso-error {
    padding: 70px 30px 200px;
    color: #CF152D;
    font-size: 18px;
    position: relative;
}

.aviso-error i {
    font-size: 80px;
    margin-bottom: 5px;
    color: #CF152D;
}

.aviso-error h1 {
    font-size: 30px;
    color: #CF152D;
    margin: 0 auto 5px;
    font-weight: normal;
}

.aviso-scroll:before {
    content: " ";
    background: url(../images/scroll-tabla.png);
    background-repeat: no-repeat;
    display: block;
    width: 40px;
    height: 30px;
    position: sticky;
    left: 50%;
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    top: -10px;
}

.bloque-leyenda .item > img {
    vertical-align: text-bottom;
}

.lineas-de-metro,
.lineas-de-metro h2 {
    font-family: 'TSInfo2018-Regular', sans-serif;
    font-weight: normal;
}

.linea-metro.l2,
.lineas-de-metro h2.l2{
    color: #000;
}

.lineas-de-metro h2 {
    color: #FFFFFF;
    margin-bottom: 1rem;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

body.post-type-archive-estaciones-metrotren .lineas-de-metro h2 {
    background-color: #0d5dab;
}

.lineas-de-metro ul.linea-metro {
    background-color: transparent;
    margin-top: 2rem !important;
    margin-bottom: .75rem !important;
    height: 100%;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
}

.lineas-de-metro ul.linea-metro li {
    list-style-type: none;
    padding: 0 0;
}

.lineas-de-metro ul.linea-metro li:last-child {
    padding-bottom: 0 !important;
    position: relative;
}

.lineas-de-metro ul.linea-metro li:last-child:before {
    content: "";
    position: absolute;
    top: 4px;
    left: -30px;
    width: 20px;
    height: 40px;
    display: block;
    background: #FFFFFF;
}

.lineas-de-metro ul.linea-metro li.operativa:after {
    content: url('../images/iconos/estacion-operativa.png');
}

.lineas-de-metro ul.linea-metro li.cerrada:after {
    content: url('../images/iconos/estacion-cerrada-temporalmente.png');
}

.lineas-de-metro ul.linea-metro li.no-habilitada:after {
    content: url('../images/iconos/estacion-no-habilitada.png');
}

.lineas-de-metro ul.linea-metro li.operativa:after,
.lineas-de-metro ul.linea-metro li.cerrada:after,
.lineas-de-metro ul.linea-metro li.no-habilitada:after {
    position: relative;
    top: -30px;
    left: -30px;
    width: 23px;
    height: 23px;
    display: block;
}

@-moz-document url-prefix() {

    .lineas-de-metro ul.linea-metro li.operativa:after,
    .lineas-de-metro ul.linea-metro li.cerrada:after,
    .lineas-de-metro ul.linea-metro li.no-habilitada:after {
        left: -32px;
    }
}

.lineas-de-metro ul.linea-metro li a,
.lineas-de-metro ul.linea-metrotren li a {
    color: #000000;
}

.lineas-de-metro ul.linea-metro li a {
    display: block;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.lineas-de-metro ul.linea-metrotren li {
    line-height: 1;
    list-style-type: none;
}

.lineas-de-metro ul.linea-metrotren li.operativa:after {
    content: url('../images/iconos/estacion-operativa.png');
}

.lineas-de-metro ul.linea-metrotren li.cerrada:after {
    content: url('../images/iconos/estacion-cerrada-temporalmente.png');
}

.lineas-de-metro ul.linea-metrotren li.no-habilitada:after {
    content: url('../images/iconos/estacion-no-habilitada.png');
}

.lineas-de-metro ul.linea-metrotren li.operativa:after,
.lineas-de-metro ul.linea-metrotren li.cerrada:after,
.lineas-de-metro ul.linea-metrotren li.no-habilitada:after {
    position: absolute;
    top: 40px;
    left: 0;
    width: 23px;
    height: 23px;
}

.lineas-de-metro ul.linea-metrotren li div.recorrido {
    background: transparent !important;
    padding: 0 !important;
    margin-left: 5px;
}

.lineas-de-metro ul.linea-metrotren li div.recorrido > span {
    font-size: 24px;
    margin-right: 5px;
    padding-left: 20px;
}

.lineas-de-metro ul.linea-metrotren li div.recorrido > strong {
    color: #000000;
}

body.post-type-archive-estaciones-metro .lineas-de-metro h2 > [class^="icon-"],
body.post-type-archive-estaciones-metrotren .lineas-de-metro h2 [class^="icon-"] {
    position: relative;
    padding-left: 32px;
}

body.post-type-archive-estaciones-metro .lineas-de-metro h2 > [class^="icon-"]:before,
body.post-type-archive-estaciones-metrotren .lineas-de-metro h2 [class^="icon-"]:before {
    position: absolute;
    top: -1px;
    left: -2px;
}

.table-responsive .tabla-paradero tbody td:last-child,
.table-responsive .tabla-linea-autobus tbody td:last-child,
.accordion-como-llegar .table-responsive tbody td:last-child {
    text-align: right;
}

table.tabla-linea-autobus td {
    padding: 8px;
}

.mis-como-llegar {
    font-size: 15px;
}

.mis-como-llegar li a:hover {
    color: #fff;
    font-weight: bold;
}

.pagination {
    margin-bottom: 2rem;
    margin-top: 1.6em;
}

.pagination .page-link {
    border: none;
    color: #CF152D;
    padding-top: 0;
}

.pagination .page-link:hover {
    color: #000000;
}

.pagination .page-link,
.pagination .page-link:hover,
.pagination .page-link:focus,
.pagination .page-link:active,
.page-item.active .page-link,
.page-item.active .page-link:hover,
.page-item.active .page-link:focus,
.page-item.active .page-link:active,
.page-item .page-link.current,
.page-item .page-link.current:hover,
.page-item .page-link.current:focus,
.page-item .page-link.current:active {
    background-color: transparent;
}

.page-item.active .page-link,
.page-item.active .page-link:hover,
.page-item .page-link.current,
.page-item .page-link.current:hover {
    /*color: #888B8D;*/
    color: #000000;
    cursor: default;
    pointer-events: none;
}

.alert.alert-danger.alerta-cabecera {
    padding-bottom: 14px;
    text-align: center;
    display: block;
}

.alerta-cabecera p:first-child:before {
    content: " ";
    background: url(../images/iconos/alerta-blanco.png);
    background-repeat: no-repeat;
    width: 22px;
    height: 28px;
    display: inline-block;
    padding-right: 5px;
    margin-right: 5px;
    vertical-align: text-bottom;
}

.alerta-cabecera img {
    float: left;
}

.alerta-cabecera p .bus,
.alerta-cabecera p .paradero,
.alerta-cabecera p .metro,
.alerta-cabecera p .metrotren {
    vertical-align: baseline !important;
    display: inline-block;
    margin-left: 2px;
}

section.desplegable .titular,
section.cifras .titular,
section.enlaces .titular,
section.matriz .titular,
section.texto .content h2 {
    text-align: left;
}

.tabla-cerca-de-mi .td-right-last a {
    display: inline-block;
    margin-top: 3px;
}

.single-estaciones-metrotren .subencabezado .mas-info {
    margin-top: 10px;
}

.single-estaciones-metrotren .subencabezado .mas-info p.horarios {
    margin-bottom: 0;
}

.distributiva .distributiva-bus .bloque-filtros {
    min-height: 51px;
    display: block;
}

.cifras .cifra {
    margin-bottom: 20px;
    line-height: 1.2em
}

.cifras .titular-grande {
    margin-bottom: 5px;
    color: #CF152D;
    font-weight: bold;
}

.dropdown-item.active,
.dropdown-item:active {
    background: #000;
    color: #fff !important;
}

.tabla-horario th,
.tabla-horario td {
    width: 33%;
    text-align: center;
}

.post-type-archive-itinerarios .bloque-estados .tab-encabezado {
    min-height: 5px;
    padding: 5px;
    margin-bottom: 10px;
}

.post-type-archive-itinerarios .bloque-estados .estados .nav-tabs .nav-link {
    min-width: 50px;
}

.post-type-archive-itinerarios .bloque-estados table th,
.page-template-page-recorrido table th {
    padding-left: 8px;
    padding-right: 8px;
}
.post-type-archive-itinerarios .btn-light {
    -moz-box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: inset 2px 2px 2px 0px rgb(0 0 0 / 10%);
    box-shadow: inset 2px 2px 2px 0px rgb(0 0 0 / 10%);
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    position: relative !important;
}

.post-type-archive-itinerarios .modal-header {
    padding: 15px 30px;
}
.post-type-archive-itinerarios .modal-body {
    padding: 15px 30px 30px;
}

.post-type-archive-itinerarios .modal-header img {
    -webkit-filter: grayscale(1) invert(1);
    filter: grayscale(1) invert(1);
}

.post-type-archive-itinerarios .modal-title span {
    vertical-align: middle;
}

.post-type-archive-itinerarios .modal-title .nombre {
    display: block;
    clear: both;
    font-size: 16px;
    padding-top: 10px;
    line-height: 1.2em;
} 

.post-type-archive-itinerarios .modal-body .table-responsive {
    margin-bottom: 0;
}

.post-type-archive-itinerarios .modal-body table td {
    padding: 5px !important;
}

#nav-metro td,
#nav-metrotren td {
    vertical-align: text-top;
}
#nav-metro td p:last-child,
#nav-metrotren td p:last-child{
    margin-bottom: 0;
}

#nav-metro td span span,
#nav-metrotren td span span{
    text-transform: lowercase;
}
.category img {
    display: inline-block;
}
.listado-etiquetas {
    margin: 0;
    display: inline-block;
}
.listado-etiquetas li {
    list-style: none;
    display: inline-block;
}
.listado-etiquetas li:after {
    content: ", ";
}
.listado-etiquetas li:last-child:after {
    content: "";
}
.listado-etiquetas li a {
    color: #000;
}
.listado-etiquetas li a:hover {
    color: #CF152D;
}
.elemento {
    word-wrap: break-word;
}
.mapboxgl-popup-close-button {
    font-size: 26px;
    right: 10px !important;
    top: 9px !important;
    color: #fff !important;
}
.mapboxgl-popup-close-button:hover {
    background: none !important;
    opacity: .7;
}
.mapboxgl-popup-content {
    padding: 0 !important;
    min-width: 250px;
    border-radius: 10px !important;
    overflow: hidden;
}
.mapboxgl-popup-content .icono {
    font-size: 26px;
    margin-bottom: 10px;
    background: #CF152D;
    display: block;
    color: #fff;
    padding: 5px 11px 7px;
}
.mapboxgl-popup-content .icono .paradero {
    padding: 0 5px;
    background: none;
    line-height: 35px;
}
.mapboxgl-popup-content .ampliar-info {
    font-size: 13px;
    display: inline-block;
    margin-top: 5px;
}
.mapboxgl-popup-content .icono-cerca {
    padding: 5px 11px;
}
.mapboxgl-popup-content .icono span {
    background: none;
    padding: 5px 0 0;
}
.page-template-page-cerca-de-mi .mapboxgl-popup-content .icon-bip {
    font-size: 26px;
    width: 26px;
    height: 26px;
}

.mapboxgl-popup-content .indicaciones {
    font-size: 14px;
    line-height: 31px;
    margin-bottom: 10px;
    padding: 0 15px;
}

.mapboxgl-popup-content .datos {
    font-size: 14px;
    line-height: 1.4em;
    margin-bottom: 10px;
    padding: 0 15px;
}

.mapboxgl-popup-content .datos img {
    display: inline-block;
    margin-left: 4px;
}
.mapboxgl-popup-content .indicaciones-recorridos {
    line-height: 34px;
}
.mapboxgl-popup-content .indicaciones a,
.mapboxgl-popup-content .indicaciones div,
.mapboxgl-popup-content .indicaciones span {
    display: inline-block;
    margin-left: 3px;
    margin-right: 3px;
    font-size: 19px;
}
.mapboxgl-popup-content .indicaciones-recorridos a {
    margin-left: 0;
}
.mapboxgl-popup-content .desvio {
    font-size: 12px;
    padding: 0 15px;
}
.mapboxgl-popup-content .tiempo {
    font-size: 12px;
    padding: 0 15px;
    color: #CF152D;    
}
.aviso-error .buscador-encabezado {
    width: 300px;
    left: 50%;
    right: auto;
    top: auto;
    bottom: auto;
    margin: 20px auto 0;
    display: block;
    position: absolute;
    transform: translateX(-50%);
    z-index: 2;
}
.aviso-error .dropdown-toggle {
    left: 0;
}
.aviso-error .show-hide #show-hide-div {
    margin: 0 !important;
}
.pagination {
    margin-top: 0;
}
.bloque-red-comunica.interior,
.bloque-red-comunica.interior .row {
    margin-bottom: 0;
}
@media only screen and (min-width: 545px) and (max-width: 766px) {
    #page-content .cabecera .cabecera-content {
        overflow: hidden;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
    }
    #page-content .cabecera .cabecera-content .datos,
    #page-content .cabecera .cabecera-content .imagen {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    #page-content .cabecera .cabecera-content .imagen > img {
        width: calc(100% - 15px) !important;
        padding: 10px 0 !important;
    }

    #page-content .cabecera .cabecera-content .imagen > .bg-imagen {
        width: calc(100% - 15px) !important;
        left: 0 !important;
    }
    #page-content section.imagen-grande .container > .row > div {
        padding-right: 30px;
        padding-left: 30px;
    }
}
.bootstrap-select .no-results {
    background: transparent !important;
    white-space: normal;
}
.bloque-filtros .dropdown .dropdown-menu .inner a:hover {
    background: #000;
    color: #fff;
}
.bloque-filtros .dropdown .dropdown-menu .inner a:hover span {
    color: #fff;
}
#verDesvios {
    padding: 4px 10px;
    margin-top: -4px;
    color: #fff;
    font-weight: bold;
    background: #CF152D;
    border-radius: 8px;
}
section.desplegable .acordeon .card .card-body {
    text-align: justify;
}
.bloque-filtros .bootstrap-select .dropdown-toggle .filter-option-inner-inner {
    padding-right: 20px;
    text-overflow: ellipsis;
}

@media (max-width: 767px) {
    #nav-metro .enlaces,
    #nav-metrotren .enlaces {
        padding-top: 15px;
    }
    .subencabezado .acciones a#verDesvios {
        margin-bottom: 10px;
    }
    .post-type-archive-itinerarios .bloque-estados .tab-content-interior {
        padding: 15px 30px 25px;
    }
    .post-type-archive-itinerarios .modal-body table tr {
        display: flex !important;
        padding: 0;
    }

    .post-type-archive-itinerarios .modal-body table thead {
        display: block !important;
    }

    .post-type-archive-itinerarios .modal-body table th,
    .post-type-archive-itinerarios .modal-body table td {
        padding: 5px !important;
        width: 33% !important;
        float: none !important;
        clear: none !important;
        min-width: 1% !important;
        text-align: center !important;
    }

    .post-type-archive-itinerarios .modal-body table th {
        font-size: 12px;
        font-weight: 700;
        border-top: 0;
    }

    .post-type-archive-itinerarios .modal-body table thead tr {
        border-top: 0;
    }

    .post-type-archive-itinerarios .modal-body .table-responsive {
        margin-bottom: 10px;
    }

    html {
        overflow-x: hidden !important;
    }

    body {
        font-size: 16px;
    }

    /* ICONOS */
    .paradero,
    .bus,
    .metro,
    .metrotren,
    .linea-metro {
        font-size: 16px;
    }

    section.texto .content .icon-a,
    section.texto .content .icon-b,
    section.texto .content .icon-bip,
    /*section.texto .content .icon-bus,*/
    section.texto .content .icon-metro,
    section.texto .content .icon-metro-logo,
    section.texto .content .icon-metrotren,
    section.texto .content .icon-peaton,
    section.texto .content .icon-reloj,
    section.texto .content .icon-error {
        top: -2px;
    }

    section.texto .content .icon-bus {
        top: -3px;
    }

    /* ************************************************************* */
    /* ************************************************************* */
    /* MENU LATERAL */
    header.header .navbar-toggle > img {
        max-width: 30px;
    }

    header.header {
        padding-top: 25px;
    }

    .cerrarMenu > img {
        max-width: 30px;
    }

    .cbp-spmenu,
    .favoritos {
        padding: 30px 30px 0 30px;
    }

    .cbp-spmenu,
    .favoritos.cbp-spmenu {
        padding-top: 15px;
    }

    .cbp-spmenu a {
        font-size: 18px;
    }

    .cbp-spmenu a,
    .cbp-spmenu a:hover,
    .cbp-spmenu a:focus,
    .cbp-spmenu a:active {
        color: #FFFFFF !important;
    }

    .alteraciones.cbp-spmenu a,
    .alteraciones.cbp-spmenu a:hover,
    .alteraciones.cbp-spmenu a:focus,
    .alteraciones.cbp-spmenu a:active {
        color: #000000 !important;
    }

    /*.cbp-spmenu-vertical ul li.wpml-ls-current-language,*/
    .cbp-spmenu-vertical ul li.wpml-ls-first-item {
        margin-top: 10px;
        padding-top: 20px;
    }

    #menuprincipal.cbp-spmenu a {
        padding: 8px 0;
    }

    .cbp-spmenu .cerrarMenu,
    .cbp-spmenu .cerrarMenuAlteraciones,
    .favoritos .cerrarMenuFavoritos {
        margin-bottom: 0;
    }

    .cbp-spmenu a.cerrarMenu,
    .cbp-spmenu .cerrarMenuAlteraciones,
    .favoritos a.cerrarMenuFavoritos {
        padding: 0 0;
    }

    .contenidoFavoritos h2,
    .contenidoFavoritos h3,
    .contenidoAlteraciones h2 {
        font-size: 18px;
    }

    .contenidoFavoritos h2 img,
    .contenidoAlteraciones h2 img {
        margin-right: 5px;
        margin-top: 30px;
    }

    /* ************************************************************* */
    /* ************************************************************* */
    header.header .logotipo {
        max-width: 160px;
    }

    header.header .iconos {
        position: relative;
    }

    a.favorito-anadir,
    a.favorito-anadido,
    header.header a.favorito,
    header.header a.no-favorito {
        display: inline-block;
        width: 27px;
        height: 27px;
        margin-right: 10px;
    }

    header.header a.favorito,
    header.header a.no-favorito {
        position: absolute;
        top: 9px;
        right: 32px;
    }

    header.header .navbar-toggle {
        position: absolute;
        top: 10px;
        right: 0;
    }

    .hidden-xs {
        display: none !important;
    }

    .visible-xs {
        display: block !important;
    }

    .show-hide a.link-show-div {
        display: block;
        position: absolute;
        top: -5px;
        right: 0;
    }

    .show-hide #show-hide-div {
        display: none;
    }

    .alert {
        padding: 20px 30px;
    }

    .alert .container {
        padding-right: 0;
        padding-left: 0;
    }

    .alert .close {
        top: -15px;
        right: 15px;
    }

    .alert .info-alert {
        margin-bottom: 15px;
    }

    .alert .info-alert a,
    .alert .info-alert .servicio {
        margin-right: 10px;
    }

    .alert .info-alert img.campanita {
        vertical-align: top;
        margin-right: 5px;
    }

    a,
    a:hover {
        color: #CF152D;
    }

    header.header,
    header.cabecera,
    .bloque-filtros,
    .bloque-carrusel,
    .bloque-estados,
    .bloque-servicios-web,
    .bloque-red-comunica,
    .bloque-titular-pagina,
    .bloque-alertas,
    .bloque-relacionados,
    .bloque-relacionados .titular,
    .bloque-leyenda,
    .lineas-de-metro > div,
    body.post-type-archive-estaciones-metrotren .lineas-de-metro h2,
    .distributiva .bloque-distributiva,
    body.single-post .ruta-migas,
    article section.entradilla,
    article section.destacado,
    article section.imagen-grande,
    article section.dos-imagenes,
    article section.video,
    article section.matriz,
    article section.desplegable,
    article section.enlaces,
    article section.cifras,
    .accordion,
    #content-page > .container > .row > div > .titular,
    .bloque-relacionados a,
    footer.footer {
        margin-bottom: 25px;
    }

    article section.texto .table-responsive {
        margin-bottom: 15px;
    }

    article section.texto {
        margin-bottom: 10px;
    }

    /*.post-type-archive-estaciones-metro .row.lineas-de-metro > div,*/
    .category-noticias .bloque-red-comunica,
    .category-mejoras-del-sistema .bloque-red-comunica,
    .category-guias-y-recomendaciones .bloque-red-comunica,
    body.page-template-page-estado-del-servicio .bloque-estados {
        margin-bottom: 0;
    }

    .fondo-gris {
        padding: 25px 0;
    }

    .matriz.fondo-gris {
        padding-bottom: 0;
    }

    .matriz li.col-xs-12 {
        padding-bottom: 9px;
    }

    section.texto .content .titular,
    section.texto .content ul,
    section.texto .content ol,
    /*section.texto .content ul li,*/
    /*section.texto .content ol li,*/
    article section.etiquetas,
    article section.texto .content p,
    .bloque-distributiva .bloque-filtros {
        margin-bottom: 15px;
    }
    section.texto .content ul li:last-child,
    section.texto .content ol li:last-child {
        margin-bottom: 0;
    }
    article section.etiquetas .category {
        display: none;
    }
    article section.etiquetas .category + .a2a_kit {
        margin-top: 0;
    }
    article section.texto .content blockquote {
        padding-left: 50px;
        font-style: italic;
    }
    section.imagen-grande .container > .row > div {
        padding-right: 0;
        padding-left: 0;
    }

    header.header > .container,
    .bloque-filtros > .container,
    .bloque-estados > .container,
    .bloque-servicios-web > .container,
    .bloque-red-comunica > .container,
    /*.bloque-mapa a.btn-mapa,*/
    .bloque-mapa > .container,
    #content-page > .container,
    body.post-type-archive-estaciones-metro section.texto .container,
    section.texto > .container,
    section.destacado > .container,
    section.entradilla > .container,
    footer.footer > .container,
    article > .container,
    .single #page-content > .container {
        padding-right: 30px;
        padding-left: 30px;
    }

    .single-desvios .subencabezado {
        border-radius: 0;
        padding: 30px;
    }

    .single-desvios .subencabezado .nombre-parada {
        display: block;
    }

    .single-desvios .subencabezado .table-responsive tbody th[scope="row"] {
        min-width: 70%;
        display: inline-block;
        vertical-align: top;
        padding: .75rem .5rem !important;
    }

    .single-desvios .subencabezado .table-responsive tbody td:nth-child(2) {
        min-width: 30%;
        display: inline-block;
        vertical-align: top;
        padding: .5rem .5rem;
        text-align: right;
    }

    .single-desvios .subencabezado .table-responsive tbody td:nth-child(3),
    .single-desvios .subencabezado .table-responsive tbody td:nth-child(4) {
        display: block;
        width: 100%;
        padding: .75rem .5rem;
    }

    .page section.entradilla > .container,
    .page section.texto > .container {
        padding-left: 0;
        padding-right: 0;
    }

    section.destacado h2,
    section.destacado h3 {
        font-size: 20px;
    }

    .bloque-carrusel > .container {
        padding-right: 0;
        padding-left: 0;
    }

    section.texto .content h2,
    .titular-grande,
    section.cifras h2 {
        font-size: 20px;
        margin-bottom: 15px
    }

    a.servicio,
    div.servicio,
    span.servicio,
    a.recorrido,
    div.recorrido,
    span.recorrido {
        /*font-size: 20px;*/
        font-size: 16px;
        padding: 4px 8px 2px 8px;
        min-width: max-content;
        /*text-transform: uppercase;*/
    }

    .servicio [class^="icon-"],
    .recorrido [class^="icon-"] {
        font-size: 16px;
    }

    a.recorrido,
    div.recorrido,
    span.recorrido {
        padding: 3px 8px 1px 8px;
    }

    .tab-todos {
        /*font-size: 14px;*/
        font-size: 16px;
        /*padding: 6px 12px 5px 12px;*/
        padding: 8px 18px 5px 18px;
    }

    .bloque-filtros > .container > .row > div {
        margin-bottom: 15px;
    }

    .bloque-filtros > .container > .row > div:last-child {
        margin-bottom: 0;
    }

    .bloque-filtros .dropdown .dropdown-toggle:after {
        right: 20px;
        top: 17px;
    }

    .bloque-filtros .dropdown .btn-primary > img {
        max-width: 30px;
        margin-right: 5px;
    }

    .bloque-filtros .dropdown .dropdown-menu {
        width: 100% !important;
    }

    .bloque-carrusel .carousel .carousel-item .texto .titular {
        font-size: 1.5rem;
    }
    .bloque-carrusel .carousel .carousel-item .imagen {
        position: relative;
        overflow: hidden;
    }

    .bloque-carrusel .carousel .carousel-item .imagen img {
        max-width: none;
        width: 140% !important;
        margin-left: -20%;
    }

    .bloque-carrusel .carousel .carousel-item .imagen .background {
        position: absolute;
        left: 0;
        bottom: 0;
        background-image: url(../images/imagen-principal-bg-texto-xs.png);
        background-repeat: no-repeat;
        background-position: left bottom;
        /*background-size: cover;*/
        background-size: 100%;
        width: 100%;
        min-height: 100%;
        max-width: none;
    }

    .bloque-carrusel .carousel .carousel-item .texto {
        background-color: #CF152D;
        position: relative;
        right: 0;
        bottom: 0;
        padding: 15px 30px;
        min-height: 250px;
    }

    .bloque-carrusel .carousel .carousel-item .texto a,
    .bloque-carrusel .carousel .carousel-item .texto a:hover {
        background-color: #FFFFFF;
    }

    .bloque-carrusel .carousel .carousel-item .texto .enlace > img {
        vertical-align: sub;
        margin-left: 5px;
    }

    .carousel-indicators {
        left: auto;
        right: -15px;
        bottom: 20px;
    }

    .bloque-estados .estados .nav-tabs .nav-link {
        padding: .5rem 0;
        margin-right: 2%;
        font-size: 16px;
        text-align: center;
        min-width: unset;
        width: 25%;
    }

    .bloque-estados .estados .nav-tabs .nav-link [class^="icon-"] {
        display: none;
    }

    .bloque-estados .estados .nav-tabs .nav-link:first-child {
        width: 25%;
    }

    .bloque-estados .estados .nav-tabs .nav-link:last-child {
        width: 46%;
        margin-right: 0;
    }

    .bloque-estados .estados .ts-iconos {
        font-size: 30px;
    }

    .bloque-estados .table-responsive,
    .bloque-estados .table-responsive .table {
        margin-bottom: 0;
    }

    .bloque-estados .tab-content-interior .servicio .icon-bus,
    .bloque-estados .tab-content-interior .recorrido .icon-bus {
        vertical-align: middle;
    }

    .bloque-estados .tab-encabezado {
        padding: 15px 20px;
        margin-bottom: 15px;
    }

    .bloque-estados .tab-encabezado .enlaces,
    .bloque-estados .tab-encabezado form label,
    .bloque-estados .tab-encabezado .input input {
        display: block;
    }

    .bloque-estados .tab-encabezado .input,
    .bloque-estados .tab-encabezado .input input {
        min-width: 100%;
    }

    .bloque-estados .tab-encabezado form label,
    .bloque-estados .tab-encabezado .input input {
        margin-bottom: 10px;
    }

    .bloque-estados .tab-encabezado form .input button {
        bottom: 0;
    }

    .bloque-estados .bootstrap-select {
        margin-bottom: 15px;
    }

    .bloque-estados .bloque-filtros .dropdown .dropdown-toggle:after {
        top: 50%;
        -moz-transform: translateY(-43%);
        -ms-transform: translateY(-43%);
        -o-transform: translateY(-43%);
        -webkit-transform: translateY(-43%);
        transform: translateY(-43%);
    }

    .bloque-estados .tab-content-interior {
        padding: 0 20px 15px 20px;
    }

    .bloque-estados .tab-content .titular {
        font-size: 18px;
        margin: 15px 0;
    }

    .bloque-estados .tab-content .openMenuAlteraciones > img {
        vertical-align: bottom;
        margin-right: 5px;
    }

    .bloque-estados .tab-content .titular > img {
        vertical-align: top;
        margin-right: 5px;
    }

    .bloque-estados .tab-encabezado form .input button {
        font-size: 16px;
    }

    .bloque-estados .tab-content td.recorrido .servicio [class^="icon-"] {
        top: 0 !important;
    }

    .bloque-servicios-web .text-center {
        text-align: left !important;
    }

    .bloque-servicios-web .servicio-web {
        display: block;
        width: 100%;
        font-size: 14px;
        text-align: center;
    }

    .bloque-servicios-web .servicio-web > img {
        max-width: 130px;
        margin: 10px auto;
        display: block;
    }

    .bloque-servicios-web .container > .row > div {
        margin-bottom: 15px;
    }

    .bloque-servicios-web .container > .row > div:last-child {
        margin-bottom: 0;
    }

    .home .bloque-red-comunica {
        padding-top: 30px;
    }

    .bloque-red-comunica .titular-peq {
        font-size: 16px;
        margin-bottom: 20px;
        position: relative;
    }

    .bloque-red-comunica .titular-peq .ver-mas {
        font-size: 14px;
        position: absolute;
        right: 0;
        top: 50%;
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    .bloque-red-comunica .recomendaciones > div,
    .bloque-red-comunica .mejoras > div,
    .bloque-red-comunica .noticias > div,
    .bloque-red-comunica .listado-recomendaciones > div {
        margin-bottom: 30px;
    }
    .single .relacionados.bloque-red-comunica .recomendaciones > div:last-child,
    .single .relacionados.bloque-red-comunica .mejoras > div:last-child {
        margin-bottom: 5px;
    }

    .bloque-red-comunica .recomendaciones a {
        /*padding: 20px 20px 155px 20px;*/
        padding: 20px 20px 160px 20px;
        overflow: hidden;
        height: 235px;
    }

    .bloque-red-comunica .recomendaciones a > .imagen {
        /*width: 190px;*/
        width: 255px;
        /*height: 152px;*/
        height: auto;
        /*bottom: 15px;*/
        top: 100px;
        position: absolute;
        right: 0;
    }

    .guia .imagen:before {
        background: url(../images/img-guias-xs.png);
        background-size: contain;
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
    }

    .listado-recomendaciones .guia .imagen:before {
        background: url(../images/img-guias-alt-xs.png);
        background-size: contain;
        width: 100%;
        height: 100%;
        position: absolute;
        /*left: 0;*/
        top: 0;
        right: 0;
    }

    .bloque-red-comunica .recomendaciones a h2,
    .bloque-red-comunica .recomendaciones a h3,
    .bloque-red-comunica .recomendaciones a h4 {
        position: relative;
    }
    .bloque-red-comunica .recomendaciones a h2,
    .bloque-red-comunica .recomendaciones a h3,
    .bloque-red-comunica .recomendaciones a h4,
    .bloque-red-comunica .mejoras a h2,
    .bloque-red-comunica .mejoras a h3,
    .bloque-red-comunica .mejoras a h4,
    .bloque-red-comunica .noticias a h2,
    .bloque-red-comunica .noticias a h3,
    .bloque-red-comunica .noticias a h4 {
        font-size: 18px;
    }

    .bloque-red-comunica .mejoras a {
        overflow: hidden;
        padding: 20px 20px 200px 20px;
        min-height: 100%;
    }

    .mejora .imagen {
        width: 230px;
        height: 194px;
        position: absolute;
        right: 0;
        bottom: 10px;
    }

    .mejora .imagen:before {
        height: calc(100% + 1px);
    }

    .bloque-red-comunica .noticias a {
        padding: 20px;
    }

    .bloque-red-comunica .noticias a .imagen {
        margin-top: 20px;
    }

    .bloque-red-comunica .mejoras a .datos,
    .bloque-red-comunica .noticias a .datos {
        border-left: 5px solid #CF152D;
        padding-left: 15px;
        margin-left: -20px;
    }
    .bloque-red-comunica .noticias a .datos {
        border-left: none !important;
        padding-left: 0 !important;
        margin-left: -15px !important;
    }
    .bloque-red-comunica .noticias a .datos > div:first-child {
        border-left: 5px solid #CF152D;
        padding-left: 15px;
        margin-left: -5px;
    }

    .bloque-red-comunica .mejoras a .datos {
        margin-bottom: 15px;
    }

    .table-responsive table thead {
        display: none;
    }

    .table-responsive table .servicio,
    .table-responsive table a.recorrido {
        display: inline-block;
    }

    .table-responsive table .servicio {
        margin-right: .75rem;
    }

    .table-responsive .table td,
    .table-responsive .table th {
        padding: .75rem .5rem;
    }

    .table-responsive th,
    .table-responsive td {
        /*font-size: 18px;*/
        font-size: 16px;
    }

    .table-responsive tbody th[scope="row"],
    .table-responsive tbody td[scope="row"] {
        min-width: 95px;
        width: 95px;
    }

    /**/
    .table-responsive .tabla-liquida td.tiempo-llegada {
        color: #9d9fa2;
    }

    .table-responsive .tabla-linea-autobus tr,
    .table-responsive .tabla-liquida tr {
        border-top: 1px solid #BFBDBD;
        display: block;
        padding: .75rem 20px .75rem .5rem;
        position: relative;
        clear: both;
    }

    .table-responsive .tabla-paradero tr {
        padding: .75rem .5rem .5rem .5rem;
    }

    .table-responsive .tabla-linea-autobus th,
    .table-responsive .tabla-linea-autobus td,
    .table-responsive .tabla-liquida th,
    .table-responsive .tabla-liquida td {
        display: block;
        border: none;
        padding: 0;
        vertical-align: top;
    }

    .table-responsive .tabla-linea-autobus,
    .table-responsive .tabla-liquida {
        width: 100%;
        border-bottom: 1px solid #BFBDBD;
    }

    .table-responsive .tabla-linea-autobus thead,
    .table-responsive .tabla-liquida thead {
        display: none;
    }

    .table-responsive .tabla-linea-autobus tbody td:before,
    .table-responsive .tabla-liquida tbody td:before {
        content: attr(data-th);
        display: block;
    }

    .table-responsive .tabla-linea-autobus tr td.td-dividido,
    .table-responsive .tabla-liquida tr td.td-dividido {
        width: 65%;
        float: left;
        display: block;
        clear: both;
    }

    .table-responsive .tabla-linea-autobus tr td.recorrido,
    .table-responsive .tabla-liquida tr td.recorrido {
        width: 100px;
        max-width: 100px;
    }

    .table-responsive .tabla-linea-autobus tr td.td-dividido.td-dividido-last,
    .table-responsive .tabla-liquida tr td.td-dividido.td-dividido-last {
        width: 100%;
    }

    .table-responsive .tabla-linea-autobus tr td.td-dividido,
    .table-responsive .tabla-liquida tr td.td-dividido {
        padding-bottom: 7px;
    }

    .table-responsive .tabla-paradero tr td.td-dividido {
        padding-bottom: 0;
    }

    .table-responsive .tabla-linea-autobus tr td.td-right,
    .table-responsive .tabla-liquida tr td.td-right {
        float: right;
        text-align: right;
        position: absolute;
        right: 40px;
        top: 15px;
    }

    .table-responsive .tabla-linea-autobus tr td.td-right.td-right-last,
    .table-responsive .tabla-liquida tr td.td-right.td-right-last {
        right: 0;
    }

    .table-responsive .tabla-linea-autobus tr td.tiempo-llegada,
    .table-responsive .tabla-liquida tr td.tiempo-llegada {
        /*max-width: 180px;*/
        max-width: 120px;
    }

    .table-responsive .tabla-linea-autobus td.td-right-last {
        position: absolute;
        top: 45px;
        right: 0;
    }

    .table-responsive .tabla-linea-autobus td.td-right-last .ampliar-info {
        position: absolute;
        /*bottom: 12px;*/
        bottom: -22px;
        right: 0;
    }

    .table-responsive .tabla-linea-autobus td.vacio {
        display: none;
    }

    .table-responsive .tabla-linea-autobus .servicio {
        margin-bottom: .5rem;
        margin-left: 1.25rem;
    }

    .table-responsive .tabla-linea-autobus a > .servicio {
        margin-left: 0;
    }

    .table-responsive .tabla-linea-autobus td.pto {
        position: absolute;
        top: 15px;
        left: 0;
        width: 21px;
    }

    .table-responsive .tabla-linea-autobus td.texto-parada {
        padding-left: 25px;
        line-height: 1.2em;
        padding-top: 5px;
    }

    .table-responsive .tabla-linea-autobus tr th {
        margin-left: 25px !important;
    }

    .table-responsive .tabla-linea-autobus tr.line {
        background: url(../images/linea-autobus-roja.png);
        background-repeat: repeat-y;
        background-position: 9px 0;
    }

    .table-responsive .tabla-linea-autobus tr.line:first-child {
        background: none;
    }

    .table-responsive .tabla-linea-autobus tr.line:nth-child(2),
    .post-type-archive-itinerarios .table-responsive .tabla-linea-autobus tr.line:nth-child(1) {
        background: url(../images/linea-autobus-roja-first.png);
        background-repeat: no-repeat;
        background-position: 9px -209px;
    }

    .post-type-archive-itinerarios .table-responsive .tabla-linea-autobus tr.line:nth-child(1):last-child {
        background: none;
    }

    .post-type-archive-itinerarios .table-responsive .tabla-linea-autobus tr.line:nth-child(2) {
        background: url(../images/linea-autobus-roja.png);
        background-repeat: repeat-y;
        background-position: 9px 0;
    }


    .table-responsive .tabla-linea-autobus tr.line:last-child {
        background: url(../images/linea-autobus-roja-last.png);
        background-repeat: no-repeat;
        background-position: 9px -25px;
    }

    .post-type-archive-itinerarios .table-responsive .tabla-linea-autobus tr.line:nth-child(1):last-child > td.pto {
        background: none;
    }

    .table-responsive .tabla-liquida td {
        display: block !important;
        position: unset !important;
        float: none !important;
        clear: both !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        text-align: left !important;
    }

    .table-responsive .tabla-liquida td.td-right-last {
        position: absolute !important;
        float: right !important;
        top: 15px !important;
        right: 0px !important;
        text-align: right !important;
        min-width: 1px;
        width: 20px !important;
    }

    .table-responsive table .ver-mas {
        font-size: 14px;
    }

    .page-template-page-cerca-de-mi .table-responsive .tabla-linea-autobus tr,
    .page-template-page-cuando-llega .table-responsive .tabla-paradero tr {
        padding-left: 0;
        padding-right: 0;
    }

    .page-template-page-cerca-de-mi .table-responsive table .ampliar-info {}

    .page-template-page-cerca-de-mi .table-responsive p.texto-paradero,
    .page-template-page-cerca-de-mi .table-responsive td.td-right-last a.cerca-de-mi {
        margin-top: 1rem;
    }

    .page-template-page-cerca-de-mi .table-responsive p.tiempo {
        margin-top: .5rem;
        margin-bottom: 0;
    }

    .page-template-page-cerca-de-mi .table-responsive td .bus {
        display: inline-block;
        margin-bottom: .5rem;
    }

    .page-template-page-cuando-llega .table-responsive td .bus {
        display: block;
        margin-bottom: .5rem;
    }

    /**/
    .ruta-migas {
        font-size: 14px;
    }

    section.bloque-paraderos > .row > div > h2,
    .bloque-titular-pagina > h1,
    .bloque-titular-pagina > h2 {
        font-size: 18px;
        float: none;
        display: block;
        margin-bottom: 15px;
    }
    .relacionados .bloque-titular-pagina > h1,
    .relacionados .bloque-titular-pagina > h2 {
        margin-bottom: 0;
    }
    #content-page > .container > .row > div > .titular,
    .bloque-relacionados .titular {
        font-size: 18px;
        margin-bottom: 25px;
    }


    .subencabezado,
    .subencabezado h2,
    .subencabezado .nombre-parada,
    .subencabezado .desde,
    .subencabezado .hasta,
    .subencabezado .hacia {
        font-size: 16px;
    }

    /*.single-estaciones-metro .subencabezado .nombre-parada,*/
    .page-template-page-cuando-llega .subencabezado .nombre-parada {
        margin-top: 1rem;
    }

    .subencabezado > img.icono {
        margin-bottom: 15px;
    }

    .subencabezado .hacia span.visible-xs {
        font-size: 13px;
    }

    .subencabezado .hacia {
        min-height: 35px;
        margin-bottom: 1rem;
    }

    .subencabezado .nombre-parada {
        font-size: 16px;
        margin-bottom: 10px;
        font-weight: 600;
    }

    .subencabezado {
        position: relative;
        padding: 20px;
    }

    .subencabezado .servicio {
        margin-bottom: 1rem;
    }

    .subencabezado .acciones > a.favorito-anadir,
    .subencabezado .acciones > a.favorito-anadido {
        position: absolute;
        top: 15px;
        right: 5px;
    }

    .page-template-page-recorrido .subencabezado .acciones a.favorito-anadir,
    .page-template-page-recorrido .subencabezado .acciones a.favorito-anadido,
    .page-template-page-cuando-llega .subencabezado .acciones a.favorito-anadir,
    .page-template-page-cuando-llega .subencabezado .acciones a.favorito-anadido,
    .page-template-page-como-llegar .subencabezado .acciones > a.favorito-anadir,
    .page-template-page-como-llegar .subencabezado .acciones > a.favorito-anadido,
    .single-estaciones-metro .subencabezado .acciones > a.favorito-anadir,
    .single-estaciones-metro .subencabezado .acciones > a.favorito-anadido {
        top: 20px;
        right: 10px;
    }

    .page-template-page-como-llegar .subencabezado .nombre-parada .desde {
        padding-bottom: 5px;
    }

    .subencabezado .d-inline-block {
        display: block !important;
    }

    .subencabezado .mas-info a.btn-horario {
        display: block;
        position: relative;
    }

    a#verDesvios:after,
    a#verAlteraciones:after {
        content: url(../images/iconos/flecha-dcha-rojo.png);
        position: absolute;
        right: 22px;
    }

    .subencabezado .mas-info a.btn-horario:after {
        content: url(../images/iconos/flecha-abajo-rojo.png);
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-45%);
        -webkit-transform: translateY(-45%);
    }

    .subencabezado .mas-info a.btn-horario[aria-expanded="true"]:after {
        content: url(../images/iconos/flecha-arriba-rojo.png);
    }

    .subencabezado a#cambiarDireccion {
        position: absolute;
        top: 70px;
        right: 15px;
    }

    .subencabezado a#cambiarDireccion > span {
        display: none;
    }

    .subencabezado.ico-recorrido,
    .subencabezado.ico-cercade {
        background-position: 20px 50%;
        background-size: 35px;
        padding-left: 70px;
    }

    .subencabezado.ico-recorrido .recorrido,
    .subencabezado.ico-recorrido .cercade {
        margin-left: 25px;
        margin-bottom: 15px;
    }

    a#verDesvios,
    a#verAlteraciones {
        display: block;
    }

    .page-template-page-recorrido .subencabezado.ico-recorrido {
        background-size: 10px;
        background-position: 20px 15px;
        padding: 20px;
    }

    .page-template-page-recorrido .subencabezado.ico-recorrido .bus {
        margin-left: 25px;
    }

    .page-template-page-recorrido .subencabezado .hacia {
        margin-top: 1rem;
        margin-right: 2.5rem;
    }

    .page-template-page-recorrido .subencabezado a#cambiarDireccion {
        top: 77px;
        right: 12px;
    }

    .page-template-page-recorrido .subencabezado .acciones a,
    .page-template-page-recorrido .subencabezado .acciones .imagen,
    .page-template-page-recorrido .subencabezado a.btn-horario,
    .page-template-page-recorrido .subencabezado a.btn-horario .imagen {
        display: inline-block;
    }

    .page-template-page-recorrido .subencabezado a.btn-horario {
        width: 100%;
    }

    .page-template-page-recorrido .subencabezado a#verDesvios .imagen,
    .page-template-page-recorrido .subencabezado a#verAlteraciones .imagen,
    .page-template-page-recorrido .subencabezado a.btn-horario .imagen {
        width: 30px;
        text-align: center;
    }

    .page-template-page-recorrido .subencabezado .imagen {
        position: relative;
    }

    .page-template-page-recorrido .subencabezado .imagen > img {
        margin-right: 7px;
    }

    .recorridos > .dropdown > button {
        width: 100%;
        min-width: 100%;
        min-height: 42px;
        display: block !important;
        text-align: left;
        color: #000000;
        background: #F3F4F4;
        border: none;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
        -moz-box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
        -webkit-box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
        box-shadow: inset 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
    }

    .recorridos > .dropdown-item.active,
    .recorridos > .dropdown-item:active {
        background: transparent;
    }

    .recorridos > .dropdown > button:after {
        position: absolute;
        right: 15px;
        top: 13px;
        border: 0;
        content: url(../images/iconos/flecha-abajo-rojo.png);
    }

    .recorridos > .dropdown.show > button:after {
        border: 0;
        content: url(../images/iconos/flecha-arriba-rojo.png);
    }

    .recorridos > .dropdown.show > .dropdown-toggle:focus {
        box-shadow: none;
    }

    .recorridos > .dropdown.show > .dropdown-toggle:focus,
    .recorridos > .dropdown.show > .dropdown-toggle:active,
    .recorridos > .dropdown.show > .btn-primary.active,
    .recorridos .btn-primary:not(:disabled):not(.disabled).active,
    .recorridos > .dropdown.show > .btn-primary.dropdown-toggle {
        color: #000000 !important;
        background-color: #F3F4F4 !important;
    }

    .recorridos .dropdown-menu.show {
        border: none;
        min-width: 100%;
        padding: 10px 15px;
        -moz-box-shadow: 0 -1px 27px 10px rgba(0, 0, 0, .25) !important;
        -webkit-box-shadow: 0 -1px 27px 10px rgba(0, 0, 0, .25) !important;
        box-shadow: 0 -1px 27px 10px rgba(0, 0, 0, .25) !important;
    }

    .recorridos .dropdown-menu.show a {
        margin-bottom: 0;
    }

    .bloque-mapa {
        margin-right: -30px;
        margin-left: -30px;
    }

    .single-estaciones-metro .bloque-mapa,
    .single-estaciones-metrotren .bloque-mapa {
        margin-right: 0;
        margin-left: 0;
    }

    .single-estaciones-metro .bloque-mapa > .container,
    .single-estaciones-metro section.texto > .container,
    .single-estaciones-metrotren .bloque-mapa > .container,
    .single-estaciones-metrotren section.texto > .container {
        padding-right: 0;
        padding-left: 0;
    }

    .single-estaciones-metro .subencabezado .nombre-parada,
    .single-estaciones-metrotren .subencabezado .nombre-parada {
        margin-top: .5rem !important;
        margin-bottom: 0 !important;
    }

    .bloque-mapa .card.card-body {
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
    }

    .bloque-mapa #map,
    .bloque-mapa .mapa {
        min-height: 520px;
    }

    .accordion-como-llegar .bloque-mapa a.btn-mapa {
        margin-left: 30px;
    }

    .bloque-relacionados .banner-relacionado .datos {
        padding: 0 30px 30px 30px;
    }

    .bloque-relacionados .banner-relacionado .datos h4,
    .bloque-relacionados .banner-relacionado .datos p {
        margin-bottom: .5rem;
    }

    .bloque-titular-pagina {
        position: relative;
    }

    .ruta-migas .breadcrumb {
        margin: 0 0 15px;
        font-size: 14px;
    }

    .buscador-encabezado.bloque-filtros .dropdown {
        width: 100%;
        max-width: none;
        min-width: auto;
    }

    .hora-prediccion {}

    .mas-info {
        margin: 0;
    }

    .accordion-como-llegar .card .card-body {
        padding-bottom: 0;
    }

    .accordion-como-llegar .card .card-body .container {
        padding-right: 0;
        padding-left: 0;
    }

    .accordion-como-llegar .bloque-mapa .mapaContainer,
    .accordion-como-llegar .bloque-mapa .mapaContainer.show {
        margin-left: 30px;
        margin-right: 30px;
    }

    .accordion-como-llegar .card .card-header button span.ts-iconos {
        font-size: 30px;
        vertical-align: -moz-middle-with-baseline;
    }

    .accordion-como-llegar td.icono span.ts-iconos {
        font-size: 40px;
    }

    .accordion-como-llegar .card .card-header button {
        min-height: 85px;
    }

    .accordion-como-llegar .card .card-header button img {
        max-width: 15px;
    }

    .accordion-como-llegar .card .card-header button img,
    .accordion-como-llegar .card .card-header button span.ts-iconos {
        display: inline-block;
        margin-top: 2rem;
        margin-left: .15rem;
        margin-right: .15rem;
    }

    .accordion-como-llegar .card .card-header button:first-child {
        margin-left: 0;
    }

    .accordion-como-llegar .card .card-header button:after {
        right: 20px;
        top: 18px;
    }

    .accordion-como-llegar .card .card-header button > strong {
        display: block;
        /*margin-top: 25px;*/
    }

    .accordion-como-llegar .card .card-header button span.tiempo {
        position: absolute;
        top: 15px;
        left: 15px;
    }

    .accordion-como-llegar a.alteraciones .ts-iconos {
        font-family: 'TSInfo2018-Regular', sans-serif !important;
        font-weight: normal;
        font-size: 32px;
    }

    .accordion-como-llegar .table-responsive td.icono,
    .accordion-como-llegar .table-responsive tbody > tr:first-child > td.icono,
    .accordion-como-llegar .table-responsive tbody > tr:last-child > td.icono {
        background-position: 14px center;
    }

    @-moz-document url-prefix() {

        .accordion-como-llegar .table-responsive td.icono,
        .accordion-como-llegar .table-responsive tbody > tr:first-child > td.icono,
        .accordion-como-llegar .table-responsive tbody > tr:last-child > td.icono {
            background-position: 17px center;
        }
    }

    .accordion-como-llegar .card .table-responsive td.icono {
        background: url(../images/linea-tabla-como-llegar-icono.png);
        background-repeat: no-repeat;
    }

    .accordion-como-llegar .card .table-responsive tbody > tr:first-child > td.icono {
        background: url(../images/linea-tabla-como-llegar-icono-first.png);
        background-repeat: no-repeat;
    }

    .accordion-como-llegar .card .table-responsive tbody > tr:last-child > td.icono {
        background: url(../images/linea-tabla-como-llegar-icono-last.png);
        background-repeat: no-repeat;
    }

    .accordion-como-llegar .card .table-responsive td.icono,
    .accordion-como-llegar .card .table-responsive tbody > tr:first-child > td.icono,
    .accordion-como-llegar .card .table-responsive tbody > tr:last-child > td.icono {
        background-position: 19px center;
    }

    .accordion-como-llegar .table-responsive tbody > tr > td:last-child {
        min-width: 60px;
    }

    .accordion-como-llegar .card .card-header button {
        padding-top: 40px;
        padding-bottom: 15px;
    }

    .accordion-como-llegar .card:firts-child .card-header button {
        padding-top: 40px;
    }

    .accordion-como-llegar .card .card-header button [class^="icon-"] {
        font-size: 27px;
    }

    .accordion-como-llegar .card .card-header [class^="icon-"],
    .accordion-como-llegar .card .card-header [class*="icon-"] {
        width: 27px;
        height: 27px;
    }

    body.page-template-page-como-llegar .accordion-como-llegar {
        margin-bottom: 40px;
    }

    body.page-template-page-como-llegar .accordion-como-llegar .table-responsive {
        margin-bottom: 0;
    }

    section.distributiva > .row {
        margin-right: -30px;
        margin-left: -30px;
    }

    section.distributiva > .row > div {
        padding-right: 0;
        padding-left: 0;
    }

    .distributiva .bloque-distributiva {
        padding: 25px 0 15px 0;
    }

    .distributiva .bloque-distributiva .enlace,
    .distributiva .bloque-distributiva .enlaces,
    .distributiva .bloque-distributiva .titular,
    .distributiva .bloque-distributiva .descripcion,
    .distributiva .bloque-distributiva .bloque-filtros {
        padding: 0 30px;
    }

    .distributiva .bloque-distributiva .titular {
        font-size: 26px;
        margin-bottom: 10px;
    }

    .distributiva .bloque-distributiva .titular > img {
        max-height: 50px;
        margin-bottom: 10px;
    }

    .distributiva .bloque-distributiva .descripcion {
        font-size: 16px;
        margin-bottom: 20px;
    }

    .distributiva .bloque-distributiva .input-search {
        margin-top: 15px;
    }

    .distributiva .bloque-distributiva .enlaces {
        margin-bottom: 15px;
    }

    .distributiva .bloque-distributiva .descripcion + .enlace {
        margin-top: -10px;
    }

    header.cabecera > .container,
    header.cabecera .cabecera-content .imagen {
        padding-right: 0;
        padding-left: 0;
    }

    header.cabecera .cabecera-content {
        padding: 30px 0;
    }

    header.cabecera .cabecera-content .datos .datos-content {
        border-left: 7px solid #CF152D;
        padding: 0 30px 0 23px;
    }

    .etiquetas .container {
        padding: 0 30px;
    }

    .single .etiquetas .a2a_kit {
        margin-left: -11px;
    }

    .cabecera .cabecera-content h1,
    .cabecera .cabecera-content .titular {
        margin-bottom: 10px;
    }

    .cabecera .cabecera-content .datos .fecha {
        font-size: 14px;
    }

    .lineas-de-metro h2,
    .cabecera .cabecera-content .datos h1,
    .cabecera .cabecera-content .datos .titular {
        font-size: 18px;
    }
    header.cabecera .cabecera-content .imagen {
        margin-right: 20px;
        margin-left: 20px;
        text-align: right;
    }
    header.cabecera .cabecera-content .imagen .bg-imagen {
        background-image: url('../images/bg-detalle-noticia-xs.png');
        background-size: contain;
        right: 0;
        height: 100%;
    }

    section.desplegable .acordeon .card .card-header {
        padding: 12px 0;
    }

    section.desplegable .acordeon .card .card-header .btn.btn-link {
        font-size: 16px;
        padding: 0 25px 0 0;
    }

    section.desplegable .acordeon .card .card-body {
        padding-right: 25px;
    }

    section.destacado .content {
        border-left: 7px solid #CF152D;
        padding: 0 15px;
    }

    footer.footer {
        font-size: 16px;
    }

    footer.footer .legales {
        font-size: 14px;
    }

    footer.footer > .container > .row:first-child {
        margin-right: 0;
        margin-left: 0;
    }

    footer.footer .franja-roja {
        text-align: center;
        padding: 30px 30px;
        margin-bottom: 30px;
    }

    footer.footer ul.telefonos li > img,
    footer.footer .telefonos > img {
        display: block;
        margin: 0 auto 15px auto;
    }
    footer.footer ul.telefonos > li:first-child {
        text-align: center;
        display: block;
    }

    footer.footer .enlaces {
        margin: 15px 0 25px 0;
    }
    footer.footer .franja-roja ul.enlaces {
        margin-bottom: 25px;
    }
    footer.footer .franja-roja ul.enlaces li,
    footer.footer ul.enlaces li > a,
    footer.footer .enlaces > a {
        display: block;
    }

    footer.footer ul.social li > a,
    .social > a {
        margin: 0 10px;
    }

    footer.footer img.logotipo,
    footer.footer .legales .dtpm-logo img,
    footer.footer .legales .transporte-logo img {
        max-height: 70px;
    }

    footer.footer .legales {
        position: relative;
    }

    footer.footer .legales a {
        display: block;
        text-align: center;
    }
    footer.footer .legales li {
        margin-bottom: 5px;
    }
    footer.footer .legales li:first-child {
        margin-top: 30px;
    }

    footer.footer .legales .dtpm-logo,
    footer.footer .legales .transporte-logo {
        position: absolute;
        top: 0;
        margin: 0;
    }

    footer.footer .legales .dtpm-logo {
        right: 15px;
    }

    footer.footer .legales .transporte-logo {
        right: 80px;
    }

    .bloque-red-comunica .noticias > div,
    .bloque-red-comunica .listado-recomendaciones > div {
        margin-bottom: 30px;
    }
    .single .relacionados.bloque-red-comunica .noticias > div:last-child {
        margin-bottom: 5px;
    } 

    .category-red-comunica .bloque-red-comunica .noticias > div:last-child,
    .home .bloque-red-comunica .noticias > div {
        margin-bottom: 0;
    }

    .image-header-page {
        margin-bottom: 28px;
    }

    .image-header-page {
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .image-header-page img {
        position: relative;
        z-index: 1;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        height: 260px;
        max-width: none;
        width: auto
    }

    .header-page.container {
        max-width: 100%;
        padding: 0;
        margin: 0;
    }

    .image-header-page:before {
        background: url(../images/page-header.png);
        position: absolute;
        right: 0;
        bottom: 0;
        display: block;
        content: " ";
        width: 70%;
        height: 55%;
        background-size: cover;
        z-index: 2;
    }

    .btn-cuando-llega .btn-light .filter-option-inner-inner:before {
        content: " ";
        background: url(../images/iconos/filtro-cuando-llega.png);
        background-repeat: no-repeat;
        display: block;
        float: left;
        background-size: cover;
        width: 30px;
        height: 30px;
        margin: 6px 10px 0 0;
    }
    .btn-cuando-llega.btn-recorrido .btn-light .filter-option-inner-inner:before {
        background: url(../images/iconos/filtro-recorrido.png);
        background-repeat: no-repeat;
        width: 30px;
        background-size: cover;
    }

    .home .carousel-indicators {
        margin-bottom: 0;
    }

    .single .category img {
        max-width: 22px;
    }

    .category + .a2a_kit {
        /*margin-top: 15px;*/
    }

    .a2a_kit {
        display: block !important;
        width: 100%;
        margin-top: -5px;
        text-align: left;
    }

    .bloque-filtros .dropdown.btn-cuando-llega .dropdown-menu {
        padding: 15px 20px 20px;
    }

    .bootstrap-select > .dropdown-menu.show .inner.show {
        max-height: 170px !important;
    }

    .bloque-filtros .dropdown .dropdown-menu.show {
        z-index: 5;
        border-radius: 10px;
        padding-top: 70px !important;
        transform: none !important;
    }

    .bloque-estados .tab-content .bloque-filtros .dropdown .dropdown-menu.show {
        padding-top: 40px !important;
    }

    .cbp-spmenu-vertical.alteraciones {
        right: -95% !important;
        width: 95%;
        background: #F3F4F4;
        color: #000;
    }

    .cbp-spmenu-vertical.alteraciones.cbp-spmenu-open {
        width: 95%;
        right: 0 !important;
    }

    #nav-metrotren td.recorrido {
        display: none;
    }

    .bloque-leyenda > .item:not(.descargar-mapa) {
        font-size: 14px;
    }

    .bloque-leyenda > .item:not(.descargar-mapa) img {
        max-height: 18px;
    }

    .bloque-leyenda > .item img {
        margin-right: 5px;
    }

    .bloque-leyenda .descargar-mapa {
        margin-top: 25px;
    }

    .lineas-de-metro h2 {
        position: relative;
        display: block;
        padding: 10px 15px;
        margin-bottom: 0;
    }

    .lineas-de-metro h2:after {
        position: absolute;
        content: url(../images/iconos/flecha-abajo-blanco.png);
        right: 15px;
        top: 12px;
    }

    body.post-type-archive-estaciones-metrotren .lineas-de-metro h2:after {
        display: none;
    }

    .lineas-de-metro h2[aria-expanded="true"]:after {
        content: url(../images/iconos/flecha-arriba-blanco.png);
    }

    .lineas-de-metro h2 > .icon-metrotren,
    .lineas-de-metro h2 > .icon-metro-logo {
        vertical-align: middle !important;
        line-height: 0 !important;
        font-size: 21px !important;
    }

    .subencabezado .icon-metrotren,
    .subencabezado .icon-metro-logo {
        line-height: 0 !important;
        font-size: 20px !important;
    }

    .lineas-de-metro ul.linea-metro {
        border-left-width: 3px;
        border-left-style: solid;
        margin: 15px 0 0 20px;
        margin-bottom: -20px !important;
        padding: 0 0 0 17px;
    }

    @-moz-document url-prefix() {
        .lineas-de-metro ul.linea-metro {
            padding: 0 0 0 19px;
        }
    }

    .lineas-de-metro ul.linea-metro li > a {
        position: relative;
        top: -8px;
    }

    .lineas-de-metro ul.linea-metro li:last-child {
        /*max-height: 15px;*/
    }

    .lineas-de-metro ul.linea-metrotren {
        background: url(../images/bg-metrotren.png);
        background-repeat: repeat-y;
        background-position: 25px 0;
        margin: 0 !important;
    }

    .lineas-de-metro ul.linea-metrotren li {
        display: block;
        width: 100%;
        min-width: 100%;
        padding: 10px 0 10px 60px;
    }

    .lineas-de-metro ul.linea-metrotren li.operativa:after,
    .lineas-de-metro ul.linea-metrotren li.cerrada:after,
    .lineas-de-metro ul.linea-metrotren li.no-habilitada:after {
        top: 5px;
        left: 15px;
    }

    .lineas-de-metro ul.linea-metrotren li a {
        display: block;
        margin-bottom: 1rem;
    }

    .lineas-de-metro ul.linea-metrotren li:last-child {
        padding-bottom: 0;
        background: url(../images/bg-metrotren-last-xs.png);
        background-repeat: no-repeat;
        background-position: 25px 0;
    }

    .lineas-de-metro ul.linea-metrotren li:last-child a {
    }

    .lineas-de-metro ul.linea-metrotren li p,
    .lineas-de-metro ul.linea-metrotren li div.recorrido {
        margin-left: 10px;
    }

    .lineas-de-metro ul.linea-metrotren li div.recorrido + p {
        margin-top: -10px;
    }

    .lineas-de-metro ul.linea-metrotren li p {
        font-size: 15px;
    }

    .lineas-de-metro ul.linea-metrotren li.con-conexiones:before {
        content: url('../images/bg-metrotren-conexion-xs.png');
        position: absolute;
        top: 6px;
        left: 10px;
        width: 35px;
        height: 35px;
    }

    .lineas-de-metro ul.linea-metrotren:before {
        content: "";
        position: absolute;
        top: 55px;
        left: 35px;
        width: 15px;
        height: 15px;
        display: block;
        background: #FFFFFF;
    }

    body.post-type-archive-estaciones-metrotren .lineas-de-metro h2 {
        margin-bottom: 15px;
    }

    body.post-type-archive-estaciones-metro .lineas-de-metro h2 > [class^="icon-"],
    body.post-type-archive-estaciones-metrotren .lineas-de-metro h2 [class^="icon-"] {
        padding-left: 25px;
    }

    .pagination .page-link {
        padding: 0 .5rem;
    }

    .cbp-spmenu .mis-como-llegar a {
        font-size: 15px;
    }

    section.texto .content table .icon-a,
    section.texto .content table .icon-b,
    section.texto .content table .icon-bip,
    section.texto .content table .icon-bus,
    section.texto .content table .icon-metro,
    section.texto .content table .icon-metro-logo,
    section.texto .content table .icon-metrotren,
    section.texto .content table .icon-peaton,
    section.texto .content table .icon-reloj,
    section.texto .content table .icon-error {
        vertical-align: middle;
    }

    .bloque-leyenda,
    section.texto .content th,
    section.entradilla .content th {
        text-align: left;
        font-weight: normal;
        font-size: 15px;
        padding: .3rem .5rem;
        border-top: 0;
        color: #58595b;
    }

    .table-responsive .tabla-linea-autobus td.info-parada {
        padding-left: 25px;
    }

    .bloque-estados .table-responsive tbody th[scope="row"],
    .bloque-estados .table-responsive tbody td[scope="row"]{
        min-width: 115px;
    }

    .bloque-estados #nav-bus .table-responsive tbody td:last-child {
        text-align: right;
    }

    .distributiva .distributiva-bus .bloque-filtros {
        min-height: 54px;
        display: block;
    }

    .cifras .titular-grande {
        font-size: 26px;
    }

    .cifras > .container {
        padding: 0;
    }

    .acciones .btn-horarios {
        display: none !important;
    }

    .subencabezado .horarios a {
        display: block;
    }
    .horarios .btn-horarios {
        margin-top: 10px;
    }
    
    .post-type-archive-itinerarios .bloque-estados .estados .nav-tabs .nav-link {
        width: 40%;
    }
    #nav-metro tr,
    #nav-metrotren tr {
        display: block;
        position: relative;
        border-top: 1px solid #BFBDBD;
        clear: both;
    }
    #nav-metro td:nth-child(1),
    #nav-metrotren td:nth-child(1) {
        display: inline-block;
        width: 25%;
        border: 0;
        float: left;
    }
    #nav-metro td:nth-child(2),
    #nav-metrotren td:nth-child(2) {
        display: inline-block;
        width: 70%;
        border: 0;
        float: right;
        line-height: 2em;
        padding-right: 0;
        text-align: right;
    }
    #nav-metro td:nth-child(3),
    #nav-metrotren td:nth-child(3){
        display: block;
        width: 100%;
        border: 0;
        clear: both;
        padding: 0 0 .75rem 0;
    }
    table tr td span.operativa,
    table tr td span.cerrada,
    table tr td span.no-habilitada {
        background-position: 0 -2px;
        font-size: 15px;
        padding-left: 27px;
    }
    #nav-metro td p,
    #nav-metrotren td p {
        margin-bottom: .25rem;
    }
    .matriz .col-12 > .text-center {
    padding-bottom: 25px;
}
}

@media (min-width: 768px) {
    body {
        font-size: 18px;
    }

    .visible-xs {
        display: none !important;
    }

    /* ICONOS */
    .paradero,
    .bus,
    .metro,
    .metrotren,
    .linea-metro {
        font-size: 16px;
    }

    /* ************************************************************* */
    /* ************************************************************* */
    /* MENU LATERAL */
    header.header .navbar-toggle {
        width: 60px;
        height: 60px;
        background-color: #CF152D;
        -moz-border-radius: 50px;
        -webkit-border-radius: 50px;
        border-radius: 50px;
        display: block;
        text-align: center;
        position: relative;
    }

    header.header .navbar-toggle > img {
        position: absolute;
        left: 50%;
        top: 50%;
        -moz-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
        -o-transform: translateX(-50%) translateY(-50%);
        -webkit-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
    }

    header.header .navbar-toggle:hover {
        background-color: #000000;
    }

    header.header .navbar-toggle > img,
    header.header .navbar-toggle:hover > img {
        filter: brightness(.01) invert(.99) !important;
    }

    .cbp-spmenu {}

    .cbp-spmenu-vertical {
        width: 400px;
    }

    .cbp-spmenu-left {
        right: -400px !important;
    }

    #menulareal.cbp-spmenu a {
        font-size: 20px;
        padding: 10px 0;
    }

    /*.cbp-spmenu a:hover,
    .cbp-spmenu a:active,
    .favoritos a:hover,
    .favoritos a:active{
        color: #000;
    }*/
    .cbp-spmenu a:hover,
    .cbp-spmenu a:focus,
    .cbp-spmenu a:active {
        color: #000000;
    }

    .favoritos.cbp-spmenu a.servicio:hover,
    .favoritos.cbp-spmenu a.servicio:focus,
    .favoritos.cbp-spmenu a.servicio:active,
    .favoritos.cbp-spmenu a.recorrido:hover,
    .favoritos.cbp-spmenu a.recorrido:focus,
    .favoritos.cbp-spmenu a.recorrido:active,
    .favoritos.cbp-spmenu .mis-estaciones-metro > li > a:hover,
    .favoritos.cbp-spmenu .mis-estaciones-metro > li > a:focus,
    .favoritos.cbp-spmenu .mis-estaciones-metro > li > a:active,
    .favoritos.cbp-spmenu .mis-estaciones-metrotren > li > a:hover,
    .favoritos.cbp-spmenu .mis-estaciones-metrotren > li > a:focus,
    .favoritos.cbp-spmenu .mis-estaciones-metrotren > li > a:active,
    .favoritos.cbp-spmenu .mis-como-llegar li a:hover,
    .favoritos.cbp-spmenu .mis-como-llegar li a:focus,
    .favoritos.cbp-spmenu .mis-como-llegar li a:active {
        color: #FFFFFF;
    }

    /* ************************************************************* */
    /* ************************************************************* */
    .hidden-sm {
        display: none !important;
    }

    section.enlaces .btn.btn-primary:hover,
    section.enlaces .btn.btn-secondary:hover {
        background-color: #000000;
    }

    .show-hide a.link-show-div {
        display: none;
    }

    .show-hide #show-hide-div {
        display: block;
    }

    .alert {
        padding: 30px 0;
    }

    .alert .close {
        padding: 0 15px 0 0 !important;
    }

    .alert .info-alert {
        float: left;
    }

    .alert .info-alert a,
    .alert .info-alert .servicio {
        margin-right: 10px;
    }

    .alert .info-alert img.campanita {
        vertical-align: middle;
        margin-right: 5px;
    }

    .alert .texto-alert {
        float: right;
        padding-right: 5%;
        width: 75%;
    }

    a:hover {
        color: #000000;
    }

    header.header {
        margin-top: 35px;
    }

    header.header .logotipo {
        max-width: 253px;
    }

    header.header .iconos a {
        display: inline-block;
        vertical-align: top;
    }

    header.header a.favorito,
    header.header a.no-favorito {
        font-size: 17px;
        padding-left: 35px;
        margin-right: 25px;
        margin-top: 18px;
    }

    header.header a.favorito:hover,
    header.header a.no-favorito:hover {
        color: #B2B2B2;
    }

    header.header,
    header.cabecera,
    .bloque-filtros,
    .bloque-carrusel,
    .bloque-estados,
    .bloque-servicios-web,
    .bloque-red-comunica,
    .bloque-titular-pagina,
    .bloque-alertas,
    .bloque-relacionados,
    .bloque-relacionados .titular,
    .bloque-leyenda,
    .lineas-de-metro > div,
    body.post-type-archive-estaciones-metrotren .lineas-de-metro h2,
    .distributiva .bloque-distributiva,
    body.single-post .ruta-migas,
    article section.entradilla,
    article section.destacado,
    article section.imagen-grande,
    article section.dos-imagenes,
    article section.video,
    article section.matriz,
    article section.desplegable,
    article section.enlaces,
    article section.cifras,
    .accordion,
    #content-page > .container > .row > div > .titular,
    footer.footer {
        margin-bottom: 35px;
    }

    article section.texto .table-responsive {
        margin-bottom: 25px;
    }

    article section.texto {
        margin-bottom: 15px;
    }

    .post-type-archive-estaciones-metrotren .lineas-de-metro > div,
    .post-type-archive-estaciones-metro .row.lineas-de-metro > div,
    .category-mejoras-del-sistema .bloque-red-comunica,
    .category-guias-y-recomendaciones .bloque-red-comunica,
    body.page-template-page-estado-del-servicio .bloque-estados {
        margin-bottom: 0;
    }

    .fondo-gris {
        padding: 35px 0;
    }

    .matriz.fondo-gris {
        padding-bottom: 0;
    }

    .matriz li.col-xs-12 {
        padding-bottom: 14px;
    }

    section.texto .content .titular,
    section.texto .content ul,
    section.texto .content ol,
    /*section.texto .content ul li,*/
    /*section.texto .content ol li,*/
    article section.etiquetas,
    article section.texto .content p,
    .bloque-distributiva .bloque-filtros {
        margin-bottom: 20px;
    }
    section.texto .content ul li:last-child,
    section.texto .content ol li:last-child {
        margin-bottom: 0;
    }

    article section.texto .content blockquote {
        padding-left: 50px;
        font-style: italic;
    }

    .titular-grande {
        font-size: 25px;
        margin-bottom: 20px
    }

    a.servicio,
    div.servicio,
    span.servicio,
    a.recorrido,
    div.recorrido,
    span.recorrido {
        font-size: 18px;
        padding: 4px 12px 2px 12px;
    }

    .servicio [class^="icon-"],
    .recorrido [class^="icon-"] {
        font-size: 18px;
    }

    .tab-todos {
        font-size: 16px;
        /*padding: 4px 12px 2px 12px;*/
        padding: 8px 18px 5px 18px;
    }

    .bloque-filtros .dropdown .dropdown-toggle:after {
        right: 15px;
        top: 14px;
    }

    .bloque-filtros .dropdown .btn-primary > img {
        display: none;
    }

    .bloque-carrusel .carousel {
        overflow: hidden;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
    }

    .bloque-carrusel .carousel .carousel-item .background {
        position: absolute;
        right: 0;
        bottom: 0;
        background-image: url(../images/imagen-principal-bg-texto.png);
        background-repeat: no-repeat;
        background-size: cover;
        width: 100%;
        /*min-height: 220px;*/
        min-height: 320px;
    }

    .bloque-carrusel .carousel .carousel-item .texto {
        position: absolute;
        max-width: none;
        /*width: 310px;*/
        width: 240px;
        /*right: 40px;*/
        /*bottom: 45px;*/
        top: 120px;
        right: 30px;
    }

    .bloque-carrusel .carousel .carousel-item .texto .titular,
    .bloque-carrusel .carousel .carousel-item .texto p {
        margin-bottom: 1rem;
    }

    .bloque-carrusel .carousel .carousel-item .texto .titular {
        font-size: 24px;
    }

    .bloque-carrusel .carousel .carousel-item .texto p {
        display: none;
    }

    .bloque-carrusel .carousel .carousel-item .texto .enlace > img {
        margin-left: 10px;
    }

    .bloque-carrusel .carousel .carousel-item a:hover .texto .enlace > img {
        margin-left: 20px;
    }

    .bloque-carrusel .carousel .carousel-indicators li:hover {
        cursor: pointer;
    }

    form .autocompletar ul.sugerencias {
        right: 0;
        top: 35px;
        max-width: 100%;
        width: 100%;
        border-bottom: 0 0 .25rem .25rem;
    }
    form .autocompletar ul.sugerencias li:hover {
        color: #000000;
        cursor: pointer;
    }

    .bloque-estados .estados .nav-tabs .nav-link {
        margin-right: 1%;
        padding: 10px 12px;
        font-size: 14px;
        min-width: 30.985%;
        line-height: 28px;
    }

    .bloque-estados .estados .nav-tabs .nav-link:last-child {
        margin-right: 0;
    }

    .bloque-estados .estados .nav-tabs .nav-link:hover {
        color: #CF152D;
        background-color: #FFFFFF;
        border: 1px solid #FFFFFF;
    }

    .bloque-estados .estados .nav-tabs .nav-link .ts-iconos,
    .bloque-estados .estados .nav-tabs .nav-link [class^="icon-"] {
        font-size: 28px;
        vertical-align: top;
        margin-right: 3px;
        height: 28px;
        display: inline-block;
        overflow: hidden;
    }

    .bloque-estados .tab-encabezado {
        font-size: 14px;
        padding: 25px 25px;
        min-height: 77px;
        margin-bottom: 30px;
    }

    .bloque-estados .tab-encabezado form {
        float: left;
    }

    .bloque-estados .tab-encabezado .enlaces {
        float: right;
    }

    .bloque-estados .tab-encabezado form label {
        margin-right: 15px;
    }

    .bloque-estados .tab-encabezado .input input {
        min-width: 240px;
    }

    .bloque-estados .tab-content-interior {
        padding: 0 25px 10px 25px;
    }

    .bloque-estados .tab-content .titular {
        font-size: 18px;
        margin: 15px 0;
    }

    .bloque-estados .tab-content .openMenuAlteraciones > img {
        vertical-align: bottom;
        margin-right: 5px;
    }

    .bloque-estados .tab-content .titular > img {
        vertical-align: top;
        margin-right: 5px;
    }

    .bloque-estados .bloque-filtros .dropdown .dropdown-toggle:after {
        right: 12px;
        top: 8px;
    }

    .bloque-estados .tab-encabezado form .input {
        top: -5px;
    }

    .bloque-servicios-web .servicio-web {
        font-size: 16px;
    }

    .bloque-servicios-web .servicio-web > img {
        margin: 0 auto 20px;
        max-width: 75%;
        display: block;
    }

    .bloque-servicios-web .servicio-web:hover > img {
        filter: brightness(0.9) invert(.1) !important;
    }

    .home .bloque-red-comunica {
        padding-top: 40px;
    }

    .bloque-red-comunica .titular-peq {
        font-size: 18px;
        margin-bottom: 20px;
        position: relative;
    }

    .bloque-red-comunica .titular-peq .ver-mas {
        font-size: 18px;
        position: absolute;
        right: 0;
        top: 50%;
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    .bloque-red-comunica .recomendaciones,
    .bloque-red-comunica .mejoras,
    .bloque-red-comunica .noticias {
        margin-bottom: 30px;
    }

    .home .bloque-red-comunica .noticias,
    .home .bloque-red-comunica .noticias > div,
    .category-mejoras-del-sistema .bloque-red-comunica .mejoras,
    .category-red-comunica .bloque-red-comunica .noticias,
    .category-red-comunica .bloque-red-comunica .noticias > div:last-child,
    .category-guias-y-recomendaciones .bloque-red-comunica .recomendaciones {
        margin-bottom: 0;
    }

    .bloque-red-comunica .recomendaciones a {
        /*padding: 20px 20px 205px 20px;*/
        padding: 20px 20px 175px 20px;
    }

    .bloque-red-comunica .recomendaciones a > .imagen {
        position: absolute;
        right: 0;
        /*bottom: 25px;*/
        bottom: 0;
        /*width: 240px;*/
        width: 100%;
        /*height: 192px;*/
        height: 175px;
    }

    .bloque-red-comunica .recomendaciones .imagen > img {
        max-width: 290px;
        float: right;
    }

    .recomendaciones .guia .imagen:before {
        left: 9px;
        top: 0;
    }

    .bloque-red-comunica .recomendaciones a h2,
    .bloque-red-comunica .recomendaciones a h3,
    .bloque-red-comunica .recomendaciones a h4,
    .bloque-red-comunica .mejoras a h2,
    .bloque-red-comunica .mejoras a h3,
    .bloque-red-comunica .mejoras a h4,
    .bloque-red-comunica .noticias a h2,
    .bloque-red-comunica .noticias a h3,
    .bloque-red-comunica .noticias a h4 {
        font-size: 21px;
    }

    .bloque-red-comunica .mejoras a {
        padding: 30px 30px 260px 30px;
        min-height: 100%;
    }

    .mejora .imagen {
        width: 290px;
        height: 225px;
        position: absolute;
        right: 0;
        bottom: 15px;
    }

    .bloque-red-comunica .noticias a {
        padding: 20px;
    }

    .bloque-red-comunica .mejoras a .datos,
    .bloque-red-comunica .noticias a .datos {
        border-left: 7px solid #CF152D;
        padding-left: 15px;
        margin-left: -20px;
    }

    .table-responsive thead th {
        font-size: 14px;
    }

    .table-responsive tbody th,
    .table-responsive tbody td {
        font-size: 18px;
    }

    .table-responsive .tabla-paradero tbody th,
    .table-responsive .tabla-paradero tbody td,
    .table-responsive .tabla-linea-autobus tbody th,
    .table-responsive .tabla-linea-autobus tbody td,
    .accordion-como-llegar .table-responsive tbody th,
    .accordion-como-llegar .table-responsive tbody td {
        font-size: 16px;
    }

    .table-responsive tbody th[scope="row"],
    .table-responsive tbody td[scope="row"] {
        font-size: 16px;
        min-width: 107px;
        width: 107px;
    }

    .btn-cuando-llega.show .btn-light,
    .btn-cuando-llega.show .btn-light:hover,
    .bloque-leyenda .descargar-mapa a > img,
    .bloque-leyenda .descargar-mapa a:hover > img,
    .distributiva .bloque-distributiva .enlace a > img,
    .distributiva .bloque-distributiva .enlace a:hover > img,
    .distributiva .bloque-distributiva .enlaces a:after,
    .distributiva .bloque-distributiva .enlaces a:hover:after,
    .bloque-relacionados a.banner-relacionado .datos,
    .bloque-relacionados a.banner-relacionado:hover .datos,
    .bloque-mapa a.btn-mapa > img,
    .bloque-mapa a.btn-mapa:hover > img,
    .btn-back > img,
    .btn-back:hover > img,
    .bloque-red-comunica .titular-peq .ver-mas > img,
    .bloque-red-comunica .titular-peq .ver-mas:hover > img,
    .subencabezado .acciones a > .imagen > img,
    .subencabezado .acciones a:hover > .imagen > img,
    .subencabezado .acciones a > img,
    .subencabezado .acciones a:hover > img,
    .bloque-carrusel .carousel .carousel-item a .texto .enlace > img,
    .bloque-carrusel .carousel .carousel-item a:hover .texto .enlace > img,
    .bloque-servicios-web .servicio-web > img,
    .bloque-servicios-web .servicio-web:hover > img,
    .table-responsive table a > img,
    .table-responsive table a:hover > img {
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
    }

    .bloque-mapa a.btn-mapa:hover > img,
    .btn-back:hover > img,
    .bloque-red-comunica .titular-peq .ver-mas:hover > img,
    .table-responsive table a:hover > img {
        filter: brightness(.01) invert(0) !important;
    }

    .table-responsive table .ampliar-info:hover {
        /*background: url(../images/iconos/flecha-dcha-rojo.png);*/
    }

    .table-responsive table .servicio {
        margin-right: .75rem;
    }

    .table-responsive td.descripcion,
    .table-responsive td.incidencia {
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .table-responsive td.descripcion {
        max-width: 220px;
        width: 220px;
    }

    .table-responsive td.incidencia {
        /*max-width: 180px;
        width: 180px;*/
    }

    .table-responsive table th.recorrido,
    .table-responsive table td.recorrido {
        /*min-width: 80px;*/
        /*width: 80px;*/
    }

    .table-responsive table th.recorrido.no-icon,
    .table-responsive table td.recorrido.no-icon {
        min-width: 120px;
        width: 120px;
    }

    .accordion-como-llegar .table-responsive td.icono,
    .accordion-como-llegar .table-responsive table th.recorrido.no-icon,
    .accordion-como-llegar .table-responsive table td.recorrido.no-icon {
        min-width: 50px;
        width: 50px;
    }

    .accordion-como-llegar .card-body .table-responsive {
        margin-bottom: 0;
    }

    .table-responsive tbody tr:last-child th,
    .table-responsive tbody tr:last-child td {
        border-bottom: 1px solid #BFBDBD;
    }

    .table-responsive table a.ampliar-info {
        font-size: 14px;
    }

    .table-responsive .tabla-linea-autobus th {
        padding: 15px 8px;
    }

    .page-template-page-cerca-de-mi .table-responsive .tabla-linea-autobus th {
        padding: .75rem 0;
    }

    .table-responsive .tabla-linea-autobus tr.line > th:first-child,
    .table-responsive .tabla-linea-autobus td.pto {
        background: url(../images/linea-autobus-roja.png);
        background-repeat: repeat-y;
        background-position: 9px 0;
    }

    .table-responsive .tabla-linea-autobus tr.line:first-child > th:first-child,
    .table-responsive .tabla-linea-autobus tr:first-child > td.pto {
        background: none;
    }

    .table-responsive .tabla-linea-autobus tr:nth-child(2) > td.pto,
    .post-type-archive-itinerarios .table-responsive .tabla-linea-autobus tr:nth-child(1) > td.pto {
        background: url(../images/linea-autobus-roja-first.png);
        background-repeat: no-repeat;
        background-position: 9px center;
    }

    .post-type-archive-itinerarios .table-responsive .tabla-linea-autobus tr:nth-child(2) > td.pto {
        background: url(../images/linea-autobus-roja.png);
        background-repeat: repeat-y;
        background-position: 9px 0;
    }

    .table-responsive .tabla-linea-autobus tr:last-child > td.pto {
        background: url(../images/linea-autobus-roja-last.png);
        background-repeat: no-repeat;
        background-position: 9px center;
    }

    .post-type-archive-itinerarios .table-responsive .tabla-linea-autobus tr.line:nth-child(1):last-child > td.pto {
        background: none;
    }

    .table-responsive table .ver-mas {
        font-size: 16px;
    }

    .page-template-page-cerca-de-mi .table-responsive .table td {
        vertical-align: top;
    }

    .page-template-page-cerca-de-mi .table-responsive td.td-right-last a.cerca-de-mi > span,
    .page-template-page-cerca-de-mi .table-responsive td.td-right-last a.cerca-de-mi > img {
        display: inline-block !important;
    }

    .page-template-page-cerca-de-mi .table-responsive td.td-right-last a.cerca-de-mi > img {
        display: inline-block;
        margin-left: 7px;
        vertical-align: middle;
    }

    .page-template-page-cerca-de-mi .table-responsive td .bus {
        display: inline-block;
        margin-bottom: .5rem;
    }

    .page-template-page-cuando-llega .subencabezado .paradero,
    .page-template-page-cuando-llega .table-responsive td.recorrido .bus {
        display: inline-block;
    }

    .page-template-page-cuando-llega .subencabezado .paradero {
        margin-right: 15px;
        vertical-align: middle;
    }

    /**/
    .ruta-migas {
        font-size: 14px;
    }

    .bloque-titular-pagina .buscador-encabezado {
        margin-top: -10px;
        min-width: 240px;
    }

    section.bloque-paraderos > .row > div > h2,
    .lineas-de-metro h2,
    #content-page > .container > .row > div > .titular,
    .bloque-relacionados .titular,
    .subencabezado .nombre-parada,
    .bloque-titular-pagina > h1,
    .bloque-titular-pagina > h2 {
        font-size: 20px;
    }

    .bloque-titular-pagina {
        display: flex;
        position: relative;
    }

    .buscador-encabezado {
        position: absolute;
        top: 0;
        right: 0;
    }

    .subencabezado,
    .subencabezado h2,
    .subencabezado .nombre-parada,
    .subencabezado .desde,
    .subencabezado .hasta,
    .subencabezado .hacia {
        font-size: 16px;
    }

    /*.single-estaciones-metro .subencabezado .nombre-parada,*/
    .page-template-page-cuando-llega .subencabezado .nombre-parada {
        font-size: 18px;
    }

    .subencabezado .servicio,
    .subencabezado .nombre-parada {
        display: inline-block;
        vertical-align: middle;
    }

    .subencabezado > img.icono {
        margin-right: 10px;
    }

    .subencabezado .acciones {
        position: relative;
        float: right;
        text-align: right;
        width: 100%;
        display: block;
        margin-top: .5rem;
        margin-bottom: .75rem;
        clear: both;
    }

    .page-template-page-como-llegar .subencabezado {
        position: relative;
    }

    .page-template-page-como-llegar .subencabezado .acciones {
        position: absolute;
        top: 30px;
        right: 30px;
        width: auto;
        margin: 0;
    }

    .page-template-page-como-llegar .subencabezado .acciones a.favorito-anadir,
    .page-template-page-como-llegar .subencabezado .acciones a.favorito-anadido {
        position: initial;
        top: auto;
        right: auto;
    }

    .page-template-page-cuando-llega .subencabezado .mas-info,
    .page-template-page-como-llegar .subencabezado .mas-info {
        margin-top: 1rem;
    }

    .subencabezado .acciones a.favorito-anadir,
    .subencabezado .acciones a.favorito-anadido {
        position: absolute;
        top: -45px;
        right: 0;
    }

    .subencabezado .servicio {
        margin-right: 1rem;
    }

    .subencabezado .hacia,
    .subencabezado .acciones > a {
        margin-left: 1rem;
    }

    .subencabezado .acciones > a:first-child {
        margin-left: 0;
    }

    .subencabezado .nombre-parada {
        /*max-width: 370px;*/
        max-width: 100%;
        margin-top: 1rem;
        position: relative;
        display: block;
    }

    .subencabezado .nombre-parada > .desde {
        /*position: absolute;
        top: 0;*/
        top: auto;
        position: inherit; 
    }

    .subencabezado.ico-recorrido {
        padding-left: 60px;
        background-position: 30px 25px;
    }

    .subencabezado.ico-cercade {
        padding-left: 75px;
        background-position: 25px 50%;
    }

    .subencabezado .acciones a:hover > .imagen > img,
    .subencabezado .acciones a:hover > img {
        filter: brightness(.01) invert(0) !important;
    }
    .subencabezado .acciones a#verDesvios:hover img {
        filter: none !important;
    }
    .subencabezado .acciones a#verDesvios:hover {
        background: #000;
    }
    .subencabezado .mas-info a.btn-horario > img,
    .subencabezado .mas-info .btn-horario {
        display: none !important;
    }

    .subencabezado .mas-info .collapse:not(.show) {
        display: block !important;
    }

    .subencabezado .mas-info p.horarios {
        min-height: 25px;
        margin-bottom: 0;
    }

    .single-estaciones-metro .subencabezado {
        position: relative;
    }

    .single-estaciones-metro .subencabezado .nombre-parada {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        display: inline-block;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        max-width: 500px;
    }

    .single-estaciones-metro .subencabezado .acciones {
        position: absolute;
        right: 30px;
        top: 50%;
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        min-height: 27px;
        margin: 0 !important;
    }

    .single-estaciones-metro .subencabezado > .linea-metro,
    .single-estaciones-metrotren .subencabezado > .metrotren {
        display: inline-block;
        margin-right: 12px;
    }

    .single-estaciones-metro .subencabezado .acciones a.favorito-anadir,
    .single-estaciones-metro .subencabezado .acciones a.favorito-anadido {
        margin-top: -2px;
        top: auto;
    }

    .page-template-page-cuando-llega .subencabezado {
        position: relative;
    }

    .page-template-page-cuando-llega .subencabezado .acciones {
        position: absolute;
        top: 30px;
        right: 30px;
        width: auto;
        margin: 0;
    }

    .page-template-page-cuando-llega .subencabezado .acciones a.favorito-anadir,
    .page-template-page-cuando-llega .subencabezado .acciones a.favorito-anadido {
        top: 0;
    }

    .page-template-page-recorrido .subencabezado {
        position: relative;
    }

    .page-template-page-recorrido .subencabezado .bus {
        display: inline-block;
        top: -7px;
    }

    .page-template-page-recorrido .subencabezado .hacia {
        margin: 3px 0 0 1rem;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        max-width: 460px;
    }

    .page-template-page-recorrido .subencabezado .acciones {
        position: initial;
        float: left;
        text-align: left;
    }

    .page-template-page-recorrido .subencabezado .acciones a,
    .page-template-page-recorrido .subencabezado .acciones .imagen {
        display: inline-block;
    }

    .page-template-page-recorrido .subencabezado .acciones .imagen > img {
        vertical-align: bottom;
        max-height: 25px;
        margin-right: 5px;
    }

    .page-template-page-recorrido .subencabezado .acciones a.favorito-anadir,
    .page-template-page-recorrido .subencabezado .acciones a.favorito-anadido {
        top: 30px;
        right: 30px;
    }

    .page-template-page-recorrido .subencabezado .mas-info {
        margin-top: .5rem;
    }

    .recorridos > .dropdown > button {
        display: none !important;
    }

    .recorridos .dropdown-menu {
        display: block !important;
        position: initial !important;
        min-width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
    }

    .recorridos .dropdown-menu > .dropdown-item {
        padding: 0 !important;
        width: auto !important;
        display: inline-block !important;
        clear: none !important;
    }

    nav.recorridos .nav-tabs .nav-link {
        margin-right: .15rem;
    }

    .bloque-mapa #map,
    .bloque-mapa .mapa {
        min-height: 320px;
    }

    .bloque-relacionados .banner-relacionado {
        height: 350px;
        min-height: 350px;
    }

    .bloque-relacionados .banner-relacionado .datos {
        padding: 0 20px;
    }

    .bloque-relacionados a.banner-rojo:hover .datos {
        opacity: .6;
    }

    .bloque-relacionados a.banner-gris:hover .datos {
        color: #CF152D;
    }

    .bloque-relacionados .banner-relacionado h3 {
        font-size: 20px;
    }

    .bloque-relacionados .banner-relacionado h3 strong {
        display: block;
    }

    .bloque-relacionados .banner-relacionado p,
    .bloque-relacionados .banner-relacionado .enlace {
        font-size: 14px;
    }

    .bloque-relacionados .banner-relacionado .enlace {
        position: absolute;
        bottom: 30px;
    }

    .bloque-relacionados .banner-relacionado .imagen {
        max-height: 165px;
    }

    .bloque-relacionados .banner-relacionado .enlace {
        bottom: 25px;
    }

    .mas-info .hora-prediccion {}

    .accordion-como-llegar .card .card-header button span.ts-iconos,
    .accordion-como-llegar td.icono span.ts-iconos {
        font-size: 48px;
        vertical-align: -moz-middle-with-baseline;
    }

    .accordion-como-llegar .card .card-header button img {
        max-width: 24px;
    }

    .accordion-como-llegar .card .card-header button img,
    .accordion-como-llegar .card .card-header button span.ts-iconos {
        margin-left: .5rem;
        margin-right: .5rem;
    }

    .accordion-como-llegar .card .card-header button {
        padding: 10px 20px;
        padding-right: 150px;
        min-height: 60px;
    }

    .accordion-como-llegar .card .card-header button:after {
        right: 20px;
        top: 18px;
    }

    .accordion-como-llegar .card .card-header button:first-child {
        margin-left: 0;
    }

    .accordion-como-llegar .card .card-header button span.tiempo {
        position: absolute;
        right: 60px;
        top: 17px;
    }

    .accordion-como-llegar .alteraciones {
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .distributiva .bloque-distributiva {
        /*min-height: 410px;*/
        /*padding: 35px 0 15px 0;*/
        min-height: 440px;
        padding: 35px 0 0 0;
        display: block;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
        position: relative;
    }

    .distributiva .bloque-distributiva .enlace,
    .distributiva .bloque-distributiva .enlaces,
    .distributiva .bloque-distributiva .titular,
    .distributiva .bloque-distributiva .descripcion,
    .distributiva .bloque-distributiva .bloque-filtros {
        padding: 0 20px;
    }

    .distributiva .bloque-distributiva .titular {
        font-size: 20px;
    }

    .distributiva .bloque-distributiva .titular > img {
        max-height: 50px;
        margin-bottom: 15px;
    }

    .distributiva .bloque-distributiva .descripcion {
        font-size: 16px;
        min-height: 90px;
    }

    .bloque-distributiva .bloque-filtros .input-search input.form-control {
        min-height: auto;
    }

    .bloque-distributiva .bloque-filtros .input-search .form-group > button {
        bottom: 5px;
        right: 8px;
    }

    .distributiva .bloque-distributiva .enlace a,
    .distributiva .bloque-distributiva .enlaces a {
        font-size: 14px;
    }

    .distributiva .bloque-distributiva .enlace {
        margin-bottom: 27px;
    }

    .distributiva .bloque-distributiva .enlace a > img {
        margin-left: 3px;
    }

    .distributiva .bloque-distributiva .enlace a:hover > img {
        margin-left: 7px;
    }

    .distributiva .bloque-distributiva .descripcion + .enlace {
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .distributiva .bloque-distributiva .enlaces a {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        width: 100%;
        padding-right: 15px;
    }

    .distributiva .bloque-distributiva .enlace a:hover > img {
        filter: brightness(0) invert(0) !important;
    }

    .distributiva .bloque-distributiva .enlaces a:hover:after {
        content: url(../images/iconos/flecha-dcha-negro.png);
    }

    .cabecera .cabecera-content {
        overflow: hidden;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
    }

    .cabecera .cabecera-content .datos {}

    .cabecera .cabecera-content .datos > .datos-content {
        position: absolute;
        top: 50%;
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        border-left: 12px solid #CF152D;
        padding-left: 50px;
    }
    .cabecera .cabecera-content .imagen {
        text-align: right;
        padding-right: 0;
        padding-left: 0;
    }
    .cabecera .cabecera-content .imagen > img {
        padding: 30px 0;
    }
    .cabecera .cabecera-content .imagen .bg-imagen {
        right: 0;
    }
    .cabecera .cabecera-content .datos .fecha {
        font-size: 16px;
    }

    section.texto .content h2,
    .cabecera .cabecera-content .datos h1,
    .cabecera .cabecera-content .datos .titular,
    section.cifras h2 {
        font-size: 20px;
    }

    section.etiquetas .category > a:hover {
        color: #CF152D;
    }

    section.desplegable .acordeon .card .card-header {
        padding: 15px 0;
    }

    section.desplegable .acordeon .card .card-header .btn.btn-link {
        font-size: 18px;
        padding: 0 30px 0 0;
    }

    section.desplegable .acordeon .card .card-body {
        padding-right: 30px;
    }

    section.destacado .content {
        border-left: 12px solid #CF152D;
        padding-left: 30px;
    }

    section.destacado .content h2 {
        font-size: 21px;
    }

    footer.footer {
        font-size: 16px;
    }

    footer.footer .legales {
        font-size: 14px;
    }

    footer.footer ul.telefonos,
    footer.footer ul.enlaces li > a,
    footer.footer .telefonos,
    footer.footer .enlaces > a {
        /*margin-right: 15px;*/
        margin-right: 0;
    }

    footer.footer .enlaces {
        margin: 15px 0 25px 0;
    }
    footer.footer .legales ul.enlaces {
        margin: 20px 0 0 0 !important;
    }

    footer.footer .enlaces > a:last-child {
        margin-right: 0;
    }

    footer.footer ul.telefonos li:first-child {
        display: block;
        text-align: center;
    }

    footer.footer ul.telefonos li > img,
    footer.footer .telefonos > img {
        margin: 0 0 15px 0;
    }

    footer.footer ul.enlaces {
        /*margin: 0 !important;*/
        margin: 15px 0 20px 0 !important;
    }
    footer.footer ul.enlaces li {
        display: block !important;
        margin: 0 0;
        text-align: center;
    }
    footer.footer .legales ul.enlaces li {
        display: inline-block !important;
        margin: 0 15px 0 0;
        text-align: left;
    }
    footer.footer .legales ul.enlaces li:last-child {
        margin: 0 0 0 0;
    }

    footer.footer ul.social li > a,
    .social > a {
        margin-right: 8px;
        margin-left: 8px;
    }

    footer.footer > .container > .row:first-child {
        margin-right: 0;
        margin-left: 0;
    }

    footer.footer .franja-roja {
        padding: 20px 30px;
        margin-bottom: 40px;
    }

    footer.footer .telefonos,
    /*footer.footer .enlaces,*/
    .social {
        float: none;
        text-align: center;
    }

    footer.footer img.logotipo {
        float: left;
        margin-right: 50px;
    }

    footer.footer .legales .dtpm-logo,
    footer.footer .legales .transporte-logo {
        position: absolute;
        top: 0;
        right: 15px;
        margin: 0;
    }
    footer.footer img.logotipo, footer.footer .legales .dtpm-logo img,
    footer.footer .legales .transporte-logo img {
        max-height: 70px;
    }
    footer.footer .legales .transporte-logo {
        right: 80px;
    }

    .recorridos .dropdown-menu {
        z-index: 1
    }

    .bloque-red-comunica .noticias > div,
    .bloque-red-comunica .listado-recomendaciones > div,
    .bloque-red-comunica .recomendaciones > div,
    .bloque-red-comunica .row.mejoras > div {
        margin-bottom: 30px;
    }


    .image-header-page {
        margin-bottom: 38px;
    }

    .image-header-page:before {
        width: 310px;
        height: 154px;
    }

    .btn-cuando-llega .btn-light .filter-option-inner-inner:before {
        content: none;
    }

    .single .category img {
        max-width: 22px;
    }

    .a2a_kit {
        position: absolute;
        top: 0;
        left: -50px;
    }

    .addtoany_list a,
    .widget .addtoany_list a {
        margin: 0 -2px;
    }

    .a2a_kit > a:hover path {
        fill: #000000 !important;
    }

    .btn-cuando-llega .filter-option-inner-inner {
        line-height: 36px;
    }

    .bloque-filtros .dropdown.btn-cuando-llega .dropdown-menu.show {
        padding: 15px 10px;
    }

    .bloque-filtros .dropdown:not(.btn-cuando-llega) .dropdown-menu.show {
        z-index: 5;
        border-radius: 10px;
        padding-top: 68px;
        transform: none !important;
    }

    .cbp-spmenu-vertical.alteraciones {
        right: -75% !important;
        width: 75%;
        background: #F3F4F4;
        color: #000;
    }

    .cbp-spmenu-vertical.alteraciones.cbp-spmenu-open {
        width: 75%;
        right: 0 !important;
    }

    body.post-type-archive-estaciones-metrotren section.texto .col-md-10,
    body.post-type-archive-estaciones-metro section.texto .col-md-10 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    body.post-type-archive-estaciones-metrotren section.texto p,
    body.post-type-archive-estaciones-metro section.texto p {
        margin-bottom: 10px !important;
    }

    .bloque-leyenda > .item {
        font-size: 14px;
    }

    .bloque-leyenda > .item img {
        margin-right: 2px;
    }

    .bloque-leyenda > .item:not(.descargar-mapa) img {
        max-height: 17px;
    }

    .bloque-leyenda .item {
        margin-right: .5rem;
        display: inline-block;
    }

    .bloque-leyenda .descargar-mapa {
        margin-right: 0 !important;
        float: right;
    }

    .bloque-leyenda .descargar-mapa a:hover > img {
        filter: brightness(0) invert(0) !important;
    }

    .lineas-de-metro h2 {
        padding: 10px 15px;
    }

    .lineas-de-metro h2,
    .lineas-de-metro h2:hover {
        cursor: not-allowed !important;
        pointer-events: none !important;
    }

    .lineas-de-metro h2 > .icon-metrotren,
    .lineas-de-metro h2 > .icon-metro-logo {
        vertical-align: middle !important;
        line-height: 0 !important;
        font-size: 27px !important;
    }

    .subencabezado .icon-metrotren,
    .subencabezado .icon-metro-logo {
        line-height: 0 !important;
        font-size: 24px !important;
    }

    .lineas-de-metro ul.linea-metro {
        border-left-width: 3px;
        border-left-style: solid;
        margin: 0 0 0 20px;
        padding: 0 0 0 17px;
    }

    @-moz-document url-prefix() {
        .lineas-de-metro ul.linea-metro {
            padding: 0 0 0 19px;
        }
    }

    /* vertical en tablet */
    .lineas-de-metro ul.linea-metro {
        border-left-width: 3px;
        border-left-style: solid;
        margin: 15px 0 0 20px;
        margin-bottom: -20px !important;
        padding: 0 0 0 17px;
    }

    @-moz-document url-prefix() {
        .lineas-de-metro ul.linea-metro {
            padding: 0 0 0 19px;
        }
    }

    .lineas-de-metro ul.linea-metro li > a {
        position: relative;
        top: -8px;
    }

    .lineas-de-metro ul.linea-metro li:last-child {
        /*max-height: 15px;*/
    }

    .lineas-de-metro ul.linea-metrotren {
        background: url(../images/bg-metrotren.png);
        background-repeat: repeat-y;
        background-position: 25px 0;
        margin: 0 0 15px 0 !important;
    }

    .lineas-de-metro ul.linea-metrotren li {
        display: block;
        width: 100%;
        min-width: 100%;
        padding: 10px 0 10px 60px;
    }

    .lineas-de-metro ul.linea-metrotren li.operativa:after,
    .lineas-de-metro ul.linea-metrotren li.cerrada:after,
    .lineas-de-metro ul.linea-metrotren li.no-habilitada:after {
        top: 5px;
        left: 15px;
    }

    .lineas-de-metro ul.linea-metrotren li a {
        display: block;
        margin-bottom: 1rem;
    }

    .lineas-de-metro ul.linea-metrotren li:last-child {
        padding-bottom: 0;
        background: url(../images/bg-metrotren-last-xs.png);
        background-repeat: no-repeat;
        background-position: 25px 0;
    }

    .lineas-de-metro ul.linea-metrotren li:last-child a {
    }

    .lineas-de-metro ul.linea-metrotren li p,
    .lineas-de-metro ul.linea-metrotren li div.recorrido {
        margin-left: 10px;
        margin-bottom: .75rem;
    }

    .lineas-de-metro ul.linea-metrotren li div.recorrido + p {
        margin-top: -10px;
    }

    .lineas-de-metro ul.linea-metrotren li p {
        font-size: 15px;
    }

    .lineas-de-metro ul.linea-metrotren li.con-conexiones:before {
        content: url('../images/bg-metrotren-conexion-xs.png');
        position: absolute;
        top: 6px;
        left: 10px;
        width: 35px;
        height: 35px;
    }

    .lineas-de-metro ul.linea-metrotren:before {
        content: "";
        position: absolute;
        top: 55px;
        left: 35px;
        width: 15px;
        height: 15px;
        display: block;
        background: #FFFFFF;
    }
    /**/

    .lineas-de-metro ul.linea-metrotren li a,
    .lineas-de-metro ul.linea-metrotren li div.recorrido,
    .lineas-de-metro ul.linea-metrotren li div.recorrido strong,
    .lineas-de-metro ul.linea-metrotren li p {
        font-size: 16px;
    }

    body.post-type-archive-estaciones-metrotren .lineas-de-metro h2 {
        margin-bottom: 15px;
    }

    #nav-tabEstados tfoot th {
        padding-bottom: 15px;
    }

    section.texto .content table .icon-a,
    section.texto .content table .icon-b,
    section.texto .content table .icon-bip,
    section.texto .content table .icon-bus,
    section.texto .content table .icon-metro,
    section.texto .content table .icon-metro-logo,
    section.texto .content table .icon-metrotren,
    section.texto .content table .icon-peaton,
    section.texto .content table .icon-reloj,
    section.texto .content table .icon-error {
        vertical-align: bottom;
    }

    .distributiva .bloque-distributiva .imagen {
        position: absolute;
        right: 0;
        bottom: 15px;
        overflow: hidden;
    }

    .distributiva .bloque-distributiva .imagen img {
        border-radius: 0 0 0 12px;
    }

    .single-desvios .subencabezado .table-responsive tbody th,
    .single-desvios .subencabezado .table-responsive tbody td {
        border-bottom: 0;
        padding-bottom: 0;
    }

    .collapse.dont-collapse-sm {
        display: block;
        height: auto !important;
        visibility: visible;
    }

    .cifras .titular-grande {
        font-size: 30px;
    }

    .subencabezado .horarios a {
        display: none;
    }

    .post-type-archive-itinerarios .bloque-estados .estados .nav-tabs .nav-link {
        min-width: 50px;
        padding-left: 60px;
        padding-right: 60px;
    }
    #nav-metro td:first-child,
    #nav-metrotren td:first-child {
        width: 151px;
    }
    #nav-metro td:nth-child(2),
    #nav-metrotren td:nth-child(2) {
        width: 220px;
    }
    .matriz .col-12 > .text-center {
        padding-bottom: 35px;
    }    
}

@media (min-width: 992px) {
    .matriz .col-12 > .text-center {
        padding-bottom: 50px;
    }
    .cifras .titular-grande {
        font-size: 40px;
    }

    .bloque-estados .tab-encabezado {
        min-height: 90px;
    }

    section.texto .content table .icon-a,
    section.texto .content table .icon-b,
    section.texto .content table .icon-bip,
    section.texto .content table .icon-bus,
    section.texto .content table .icon-metro,
    section.texto .content table .icon-metro-logo,
    section.texto .content table .icon-metrotren,
    section.texto .content table .icon-peaton,
    section.texto .content table .icon-reloj,
    section.texto .content table .icon-error {
        vertical-align: text-bottom;
    }

    .bloque-titular-pagina .buscador-encabezado {
        margin-top: -10px;
    }

    body {
        font-size: 20px;
    }

    /* ICONOS */
    .paradero,
    .bus,
    .metro,
    .metrotren,
    .linea-metro {
        font-size: 17px;
    }

    .hidden-sm {
        display: block !important;
    }

    .table-responsive .ampliar-info > .hidden-sm {
        display: inline-block !important;
    }

    .alert .texto-alert {
        width: 80%;
    }

    header.header {
        margin-top: 40px;
    }

    header.header .logotipo {
        max-width: 253px;
    }

    header.header a.favorito,
    header.header a.no-favorito {
        font-size: 18px;
        padding-left: 35px;
        margin-right: 35px;
        margin-top: 18px;
    }

    header.header,
    header.cabecera,
    .bloque-filtros,
    .bloque-carrusel,
    .bloque-estados,
    .bloque-servicios-web,
    .bloque-red-comunica,
    .bloque-titular-pagina,
    .bloque-alertas,
    .bloque-relacionados,
    .bloque-relacionados .titular,
    .bloque-leyenda,
    .lineas-de-metro > div,
    body.post-type-archive-estaciones-metrotren .lineas-de-metro h2,
    .distributiva .bloque-distributiva,
    body.single-post .ruta-migas,
    article section.entradilla,
    article section.destacado,
    article section.imagen-grande,
    article section.dos-imagenes,
    article section.video,
    article section.matriz,
    article section.desplegable,
    article section.enlaces,
    article section.cifras,
    .accordion,
    #content-page > .container > .row > div > .titular,
    footer.footer {
        margin-bottom: 40px;
    }

    article section.texto,
    article section.texto .table-responsive {
        margin-bottom: 25px;
    }

    .post-type-archive-estaciones-metrotren .lineas-de-metro > div,
    .post-type-archive-estaciones-metro .row.lineas-de-metro > div,
    .category-mejoras-del-sistema .bloque-red-comunica,
    .category-guias-y-recomendaciones .bloque-red-comunica {
        margin-bottom: 0;
    }

    .fondo-gris {
        padding: 40px 0;
    }

    .matriz.fondo-gris {
        padding-bottom: 0;
    }

    .matriz li.col-xs-12 {
        padding-bottom: 24px;
    }

    section.texto .content .titular,
    section.texto .content ul,
    section.texto .content ol,
    /*section.texto .content ul li,*/
    /*section.texto .content ol li,*/
    article section.etiquetas,
    article section.texto .content p,
    .bloque-distributiva .bloque-filtros {
        margin-bottom: 25px;
    }

    .titular-grande {
        font-size: 35px;
        margin-bottom: 30px
    }

    a.servicio,
    div.servicio,
    span.servicio,
    a.recorrido,
    div.recorrido,
    span.recorrido {
        /*font-size: 20px;*/
        font-size: 19px;
        padding: 4px 15px 2px 15px;
    }

    .servicio [class^="icon-"],
    .recorrido [class^="icon-"] {
        /*font-size: 15px;*/
        font-size: 19px;
    }

    .tab-todos {
        /*font-size: 18px;*/
        font-size: 17px;
        /*padding: 4px 15px 2px 15px;*/
        padding: 8px 18px 5px 18px;
    }

    .bloque-filtros .dropdown .dropdown-toggle:after {
        right: 20px;
        top: 14px;
    }

    .bloque-filtros .dropdown .btn-primary > img {
        display: inline-block;
        max-width: 25px;
        margin-right: 7px;
    }

    .bloque-carrusel .carousel .carousel-item .background {
        /*min-height: 300px;*/
        min-height: 432px;
    }

    .bloque-carrusel .carousel .carousel-item .texto {
        /*max-width: 390px;*/
        max-width: 330px;
        width: auto;
        /*right: 50px;*/
        /*bottom: 50px;*/
        top: 125px;
        right: 45px;
    }

    .bloque-carrusel .carousel .carousel-item .texto .titular {
        font-size: 28px;
    }

    .bloque-carrusel .carousel .carousel-item .texto p {
        display: block;
        font-size: 18px;
    }

    .bloque-carrusel .carousel .carousel-item .texto p.enlace {
        font-size: 20px;
    }

    .bloque-estados .estados .nav-tabs .nav-link {
        padding: 10px 20px;
        font-size: 18px;
        min-width: 31.615%;
        line-height: 32px;
    }

    .bloque-estados .estados .nav-tabs .nav-link .ts-iconos,
    .bloque-estados .estados .nav-tabs .nav-link [class^="icon-"] {
        font-size: 32px;
        vertical-align: top;
        margin-right: 3px;
        height: 32px;
        display: inline-block;
    }

    .bloque-estados .tab-encabezado {
        font-size: 16px;
        padding: 30px 30px;
    }

    .bloque-estados .tab-content-interior {
        padding: 0 30px;
    }

    .bloque-estados .tab-content .titular {
        font-size: 20px;
    }

    .bloque-estados .bloque-filtros .dropdown .dropdown-toggle:after {
        right: 12px;
        top: 10px;
    }

    .bloque-servicios-web .servicio-web {
        font-size: 18px;
    }

    .bloque-servicios-web .servicio-web > img {
        max-width: 80%;
    }

    .home .bloque-red-comunica {
        padding-top: 60px;
    }

    .bloque-red-comunica .titular-peq {
        font-size: 25px;
        margin-bottom: 25px;
        position: relative;
    }

    .bloque-red-comunica .row.mejoras,
    .bloque-red-comunica .row.recomendaciones {
        margin-left: -30px;
        margin-right: -30px;
    }

    .bloque-red-comunica .row.mejoras > div,
    .bloque-red-comunica .row.recomendaciones > div {
        padding-left: 30px;
        padding-right: 30px;
    }
    /*.bloque-red-comunica.interior .row.mejoras,
    .bloque-red-comunica.interior .listado-recomendaciones {
        margin-bottom: -20px;
    }
    .bloque-red-comunica.interior .row.noticias {
        margin-bottom: -20px;
    }*/

    .bloque-red-comunica .recomendaciones a {
        /*padding: 30px 30px 205px 30px;*/
        padding: 30px 30px 230px 30px;
    }

    .bloque-red-comunica .recomendaciones a > .imagen {
        /*width: 240px;*/
        width: 100%;
        /*height: 192px;*/
        height: 230px;
    }

    .bloque-red-comunica .recomendaciones .imagen > img {
        max-width: 390px;
    }

    .recomendaciones .guia .imagen:before {
        left: 4px;
        top: 0;
    }

    .bloque-red-comunica .recomendaciones a h2,
    .bloque-red-comunica .recomendaciones a h3,
    .bloque-red-comunica .recomendaciones a h4,
    .bloque-red-comunica .mejoras a h2,
    .bloque-red-comunica .mejoras a h3,
    .bloque-red-comunica .mejoras a h4,
    .bloque-red-comunica .noticias a h2,
    .bloque-red-comunica .noticias a h3,
    .bloque-red-comunica .noticias a h4 {
        font-size: 25px;
    }

    .bloque-red-comunica .mejoras a {
        padding: 30px 30px 350px 30px;
        min-height: 100%;
    }

    .mejora .imagen {
        width: 390px;
        height: 303px;
        position: absolute;
        right: 0;
        bottom: 25px;
    }

    .bloque-red-comunica .noticias a {
        padding: 30px;
    }

    .bloque-red-comunica .mejoras a .datos,
    .bloque-red-comunica .noticias a .datos {
        border-left: 10px solid #CF152D;
        padding-left: 20px;
        margin-left: -30px;
    }

    .table-responsive tbody th,
    .table-responsive tbody td {
        font-size: 20px;
    }

    .table-responsive table .enlace,
    .table-responsive tbody th[scope="row"],
    .table-responsive tbody td[scope="row"] {
        font-size: 20px;
    }

    .table-responsive td.descripcion {
        max-width: 320px;
        width: 320px;
    }

    .table-responsive td.incidencia {
        /*max-width: 240px;
        width: 240px;*/
    }

    .table-responsive table th.recorrido.no-icon,
    .table-responsive table td.recorrido.no-icon {
        min-width: 120px;
        width: 120px;
    }

    .accordion-como-llegar .table-responsive td.icono,
    .accordion-como-llegar .table-responsive table th.recorrido.no-icon,
    .accordion-como-llegar .table-responsive table td.recorrido.no-icon {
        min-width: 50px;
        width: 50px;
    }

    .table-responsive table a.ampliar-info {
        font-size: 18px;
    }

    .page-template-page-cerca-de-mi .icon-bip {
        font-size: 52px;
        width: 52px;
        height: 52px;
    }

    .ruta-migas {
        font-size: 16px;
    }

    section.bloque-paraderos > .row > div > h2,
    .lineas-de-metro h2,
    #content-page > .container > .row > div > .titular,
    .bloque-relacionados .titular,
    .subencabezado .nombre-parada,
    .bloque-titular-pagina > h1,
    .bloque-titular-pagina > h2 {
        font-size: 25px;
    }

    /*.single-estaciones-metro .subencabezado .nombre-parada,*/
    .page-template-page-cuando-llega .subencabezado .nombre-parada {
        font-size: 18px;
    }

    .subencabezado > img.icono {
        margin-right: 15px;
    }

    .subencabezado .acciones {
        width: auto;
        clear: none;
        margin: 0;
    }

    .subencabezado .acciones a.favorito-anadir,
    .subencabezado .acciones a.favorito-anadido {
        position: initial;
        top: auto;
        right: auto;
    }

    .subencabezado .nombre-parada {
        max-width: 560px;
        margin-top: 0;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        display: inline-block;
    }

    .subencabezado.ico-recorrido {
        background-position: 30px 22px;
    }

    subencabezado.ico-cercade {
        background-position: 25px 50%;
    }

    .page-template-page-cuando-llega .subencabezado .mas-info,
    .page-template-page-como-llegar .subencabezado .mas-info {
        margin-top: 0;
    }

    .page-template-page-cuando-llega .subencabezado .acciones {
        position: relative;
        float: right;
        text-align: right;
        width: auto;
        display: block;
        margin-top: 1px;
        margin-bottom: 0;
        clear: both;
        top: auto;
        right: auto;
    }

    .single-estaciones-metro .subencabezado .nombre-parada {
        max-width: 720px;
    }

    .page-template-page-recorrido .subencabezado .hacia {
        max-width: 245px;
    }

    .page-template-page-recorrido .subencabezado .acciones {
        position: absolute;
        top: 30px;
        right: 30px;
        float: right;
        text-align: right;
    }

    .page-template-page-recorrido .subencabezado .acciones a.favorito-anadir,
    .page-template-page-recorrido .subencabezado .acciones a.favorito-anadido {
        margin-top: -2px;
    }

    nav.recorridos .nav-tabs .nav-link {
        margin-right: .5rem;
    }

    .bloque-mapa #map,
    .bloque-mapa .mapa {
        min-height: 420px;
    }

    .bloque-relacionados .banner-relacionado {
        height: 450px;
        min-height: 450px;
    }

    .bloque-relacionados .banner-relacionado .imagen {
        max-height: 225px;
    }

    .bloque-relacionados .banner-relacionado .datos {
        padding: 0 30px;
    }

    .bloque-relacionados .banner-relacionado .enlace {
        bottom: 35px;
    }

    .bloque-relacionados .banner-relacionado h3 {
        font-size: 30px;
    }

    .bloque-relacionados .banner-relacionado p,
    .bloque-relacionados .banner-relacionado .enlace {
        font-size: 16px;
    }

    .mas-info .hora-prediccion {
        position: absolute;
        right: 0px;
        top: -27px;
    }

    .page-template-page-como-llegar .mas-info .hora-prediccion {
        top: -23px;
    }

    .accordion-como-llegar .card .card-header button span.ts-iconos,
    .accordion-como-llegar td.icono span.ts-iconos {
        font-size: 48px;
        vertical-align: -moz-middle-with-baseline;
    }

    .accordion-como-llegar .card .card-header button img,
    .accordion-como-llegar .card .card-header button span.ts-iconos {
        margin-left: .5rem;
        margin-right: .5rem;
    }

    .accordion-como-llegar .card .card-header button {
        min-height: 60px;
    }

    .accordion-como-llegar .card .card-header button:first-child {
        margin-left: 0;
    }

    .accordion-como-llegar .card .card-header button span.tiempo {
        position: absolute;
        right: 60px;
        top: 17px;
    }

    .distributiva .bloque-distributiva {
        /*min-height: 455px;*/
        /*padding: 35px 0 15px 0;*/
        min-height: 450px;
        padding: 35px 0 0 0;
    }

    .distributiva .bloque-distributiva .enlace,
    .distributiva .bloque-distributiva .enlaces,
    .distributiva .bloque-distributiva .titular,
    .distributiva .bloque-distributiva .descripcion,
    .distributiva .bloque-distributiva .bloque-filtros {
        padding: 0 30px;
    }

    .distributiva .bloque-distributiva .titular {
        font-size: 20px;
    }

    .distributiva .bloque-distributiva .titular > img {
        max-height: 66px;
        margin-bottom: 23px;
    }

    .distributiva .bloque-distributiva .descripcion {
        font-size: 16px;
        min-height: 90px;
    }

    .bloque-distributiva .bloque-filtros .input-search input.form-control {
        min-height: auto;
    }

    .bloque-distributiva .bloque-filtros .input-search .form-group > button {
        bottom: 5px;
        right: 8px;
    }

    .distributiva .bloque-distributiva .enlace a,
    .distributiva .bloque-distributiva .enlaces a {
        font-size: 16px;
    }

    .distributiva .bloque-distributiva .enlace {
        margin-bottom: 30px;
    }

    .distributiva .bloque-distributiva .enlace a > img {
        margin-left: 5px;
    }

    .distributiva .bloque-distributiva .enlace a:hover > img {
        margin-left: 10px;
    }

    .distributiva .bloque-distributiva .descripcion + .enlace {
        margin-top: 0;
        /*margin-bottom: 30px;*/
        margin-bottom: 20px;
    }

    .cabecera .cabecera-content .imagen {
        padding-right: 0;
        padding-left: 0;
    }
    .cabecera .cabecera-content .imagen > img {
        padding: 40px 0;
    }
    .cabecera .cabecera-content .imagen .bg-imagen {
        right: 0;
    }
    .cabecera .cabecera-content .datos .fecha {
        font-size: 18px;
    }

    .cabecera .cabecera-content .datos h1,
    .cabecera .cabecera-content .datos .titular {
        font-size: 25px;
    }

    section.desplegable .acordeon .card .card-header {
        padding: 20px 0;
    }

    section.desplegable .acordeon .card .card-header .btn.btn-link {
        font-size: 21px;
        padding: 0 40px 0 0;
    }

    section.desplegable .acordeon .card .card-body {
        padding-right: 40px;
    }

    .lineas-de-metro,
    .bloque-leyenda,
    section.enlaces .btn,
    section.desplegable .acordeon .card .card-body,
    section.matriz .elemento p,
    section.etiquetas .category,
    section.texto .content,
    section.texto .content p,
    section.entradilla .content,
    section.entradilla .content p {
        font-size: 18px;
    }

    section.matriz .elemento h3 {
        font-size: 21px;
    }

    section.desplegable .titular,
    section.cifras .titular,
    section.enlaces .titular,
    section.matriz .titular,
    section.texto .content h2 {
        font-size: 25px;
        margin-bottom: 30px;
        text-align: left;
    }

    section.destacado .content {
        border-left: 12px solid #CF152D;
        padding-left: 30px;
    }

    section.destacado .content h2 {
        font-size: 25px;
    }

    section.enlaces .content ul > li > .btn {
        margin-right: .5rem;
    }

    footer.footer {
        font-size: 18px;
    }

    footer.footer .legales {
        font-size: 16px;
    }
    footer.footer img.logotipo, footer.footer .legales .dtpm-logo img,
    footer.footer .legales .transporte-logo img {
        max-height: unset;
    }

    footer.footer ul.telefonos li:first-child {
        display: inline-block;
        text-align: left;
    }

    footer.footer ul.telefonos li > img,
    footer.footer .telefonos > img {
        margin-right: 7px;
        margin-bottom: 0;
    }
    footer.footer .telefonos,
    footer.footer .enlaces {
        float: left;
    }
    .social {
        float: right;
        height: 1px;
    }
    footer.footer .telefonos,
    footer.footer .enlaces,
    .social {
        text-align: left;
    }

    footer.footer ul.telefonos,
    footer.footer ul.enlaces li > a,
    footer.footer .telefonos,
    footer.footer .enlaces > a {
        margin-right: 30px;
    }

    footer.footer ul.enlaces {
        margin: 0 !important;
    }
    footer.footer ul.enlaces li {
        display: inline-block !important;
    }
    footer.footer .enlaces > a:last-child {
        margin-right: 0;
    }

    footer.footer ul.telefonos li > img,
    footer.footer .telefonos > img {
        margin-right: 15px;
    }

    footer.footer ul.social li > a,
    .social > a {
        margin-right: 0;
        margin-left: 15px;
    }
    footer.footer .legales .dtpm-logo,
    footer.footer .legales .transporte-logo {
        position: initial;
        top: auto;
        right: auto;
        margin: initial;
        margin-left: 15px;
    }

    .image-header-page {
        margin-bottom: 53px;
    }

    .image-header-page:before {
        width: 400px;
        height: 199px;
    }

    .btn-cuando-llega .btn-light .filter-option-inner-inner:before {
        content: " ";
        background: url(../images/iconos/filtro-cuando-llega.png);
        background-repeat: no-repeat;
        display: block;
        float: left;
        background-size: cover;
        width: 25px;
        height: 25px;
        margin: 8px 10px 0 0;
    }
    .btn-cuando-llega.btn-recorrido .btn-light .filter-option-inner-inner:before {
        background: url(../images/iconos/filtro-recorrido.png);
        background-repeat: no-repeat;
        background-size: cover;
    }

    .page-template-page-cuando-llega .bloque-titular-pagina .buscador-encabezado,
    .page-template-page-recorrido .bloque-titular-pagina .buscador-encabezado {
        min-width: 300px;
    }

    .bloque-red-comunica .row.mejoras > div,
    .bloque-red-comunica .listado-recomendaciones > div {
        margin-bottom: 50px;
    }
    /*.bloque-red-comunica.interior .row.mejoras,
    .bloque-red-comunica.interior .listado-recomendaciones {
        margin-bottom: -40px;
    }
    .bloque-red-comunica.interior .row.noticias {
        margin-bottom: -20px;
    }*/

    .single .category img {
        max-width: 25px;
    }

    .a2a_kit {
        left: -65px;
    }

    .addtoany_list a,
    .widget .addtoany_list a {
        margin: 0 0;
        padding: 0 2px !important;
    }

    .bloque-filtros .dropdown:not(.btn-cuando-llega) .dropdown-menu.show {
        z-index: 5;
        border-radius: 10px;
        padding-top: 71px;
        transform: none !important;
    }

    .bloque-filtros .dropdown.btn-cuando-llega .dropdown-menu.show {
        padding: 15px 20px;
    }

    .btn-cuando-llega .filter-option-inner-inner {
        line-height: 39px;
    }

    .cbp-spmenu-vertical.alteraciones {
        right: -55% !important;
        width: 55%;
        background: #F3F4F4;
        color: #000;
    }

    .cbp-spmenu-vertical.alteraciones.cbp-spmenu-open {
        width: 55%;
        right: 0 !important;
    }

    .lineas-de-metro h2 {
        padding: 10px 15px;
    }

    .bloque-leyenda > .item {
        font-size: 17px;
    }

    .bloque-leyenda > .item img {
        margin-right: 5px;
    }

    .bloque-leyenda > .item:not(.descargar-mapa) img {
        max-height: 18px;
    }

    .bloque-leyenda .item {
        margin-right: 1.5rem;
    }

    .lineas-de-metro ul.linea-metro li > a {
        position: relative;
        top: -8px;
    }

    .lineas-de-metro ul.linea-metro li a:hover,
    .lineas-de-metro ul.linea-metrotren li a:hover {
        color: #9d9fa2;
    }

    .lineas-de-metro ul.linea-metrotren {
        text-align: center;
        background: url(../images/bg-metrotren.png);
        background-repeat: repeat-x;
        background-position: 0 50px;
        margin-right: 0;
        margin-left: 0;
    }

    .lineas-de-metro ul.linea-metrotren li {
        display: inline-block;
        min-width: auto;
        background-position: 5px 40px;
        padding-right: 5px;
        padding-left: 5px;
    }

    .lineas-de-metro ul.linea-metrotren li:first-child {
        background: url(../images/bg-metrotren-first.png);
        background-repeat: no-repeat;
        background-position: 50% 50px;
    }
    .lineas-de-metro ul.linea-metrotren li:last-child {
        background: url(../images/bg-metrotren-last.png);
        background-repeat: no-repeat;
        background-position: 50% 50px;
    }

    .lineas-de-metro ul.linea-metrotren li {
        position: relative;
    }
    .lineas-de-metro ul.linea-metrotren li.operativa:after,
    .lineas-de-metro ul.linea-metrotren li.cerrada:after,
    .lineas-de-metro ul.linea-metrotren li.no-habilitada:after {
        top: 40px;
        left: 50%;
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .lineas-de-metro ul.linea-metrotren li.con-conexiones:before {
        left: 50%;
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }

    .lineas-de-metro ul.linea-metrotren li a {
        display: block;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        margin-bottom: 60px;
    }

    .lineas-de-metro ul.linea-metrotren li a,
    .lineas-de-metro ul.linea-metrotren li div.recorrido,
    .lineas-de-metro ul.linea-metrotren li div.recorrido strong,
    .lineas-de-metro ul.linea-metrotren li p {
        font-size: 17px;
    }

    .lineas-de-metro ul.linea-metrotren li p,
    .lineas-de-metro ul.linea-metrotren li div.recorrido {
        margin-left: 0;
        margin-bottom: 1rem;
    }

    .lineas-de-metro ul.linea-metrotren li.con-conexiones:before {
        content: url('../images/bg-metrotren-conexion.png');
        position: absolute;
        top: 35px;
        left: 11px;
        width: 3px;
        height: 35px;
    }
    .lineas-de-metro ul.linea-metrotren li.con-conexiones:before {
        left: 50%;
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }

    /*
    .lineas-de-metro ul.linea-metrotren:before {
        content: "";
        position: absolute;
        top: 152px;
        left: 12px;
        width: 15px;
        height: 15px;
        display: block;
        background: #FFFFFF;
    }
    */

    body.post-type-archive-estaciones-metrotren .lineas-de-metro h2 {
        margin-bottom: 20px;
    }

    .table-responsive .tabla-paradero tbody th,
    .table-responsive .tabla-paradero tbody td,
    .table-responsive .tabla-linea-autobus tbody th,
    .table-responsive .tabla-linea-autobus tbody td,
    .accordion-como-llegar .table-responsive tbody th,
    .accordion-como-llegar .table-responsive tbody td {
        font-size: 18px;
    }
}

@media (min-width: 1200px) {
    body {
        font-size: 20px;
    }

    /* ICONOS */
    .paradero,
    .bus,
    .metro,
    .metrotren,
    .linea-metro {
        font-size: 18px;
    }

    .cbp-spmenu-vertical.alteraciones {
        right: -35% !important;
        width: 35%;
        background: #F3F4F4;
        color: #000;
    }

    .cbp-spmenu-vertical.alteraciones.cbp-spmenu-open {
        width: 35%;
        right: 0 !important;
    }

    .btn-cuando-llega .filter-option-inner-inner {
        line-height: 42px;
    }

    .alert .texto-alert {
        width: 82%;
    }

    header.header {
        margin-top: 50px;
    }

    header.header .logotipo {
        max-width: 253px;
    }

    header.header,
    header.cabecera,
    .bloque-filtros,
    .bloque-carrusel,
    .bloque-estados,
    .bloque-servicios-web,
    .bloque-red-comunica,
    .bloque-titular-pagina,
    .bloque-alertas,
    .bloque-relacionados,
    .bloque-relacionados .titular,
    .bloque-leyenda,
    .lineas-de-metro > div,
    body.post-type-archive-estaciones-metrotren .lineas-de-metro h2,
    .distributiva .bloque-distributiva,
    body.single-post .ruta-migas,
    article section.entradilla,
    article section.destacado,
    article section.imagen-grande,
    article section.dos-imagenes,
    article section.video,
    article section.matriz,
    article section.desplegable,
    article section.enlaces,
    article section.cifras,
    .accordion,
    #content-page > .container > .row > div > .titular,
    footer.footer {
        margin-bottom: 50px;
    }

    article section.texto {
        margin-bottom: 20px;
    }

    .post-type-archive-estaciones-metrotren .lineas-de-metro > div,
    .post-type-archive-estaciones-metro .row.lineas-de-metro > div,
    .category-mejoras-del-sistema .bloque-red-comunica,
    .category-guias-y-recomendaciones .bloque-red-comunica {
        margin-bottom: 0;
    }

    .fondo-gris {
        padding: 50px 0;
    }

    .matriz.fondo-gris {
        padding-bottom: 0;
    }

    .matriz li.col-xs-12 {
        padding-bottom: 34px;
    }

    section.texto .content .titular,
    section.texto .content ul,
    section.texto .content ol,
    /*section.texto .content ul li,*/
    /*section.texto .content ol li,*/
    article section.etiquetas,
    article section.texto .content p {
        margin-bottom: 30px;
    }

    .titular-grande {
        font-size: 40px;
        margin-bottom: 40px
    }

    a.servicio,
    div.servicio,
    span.servicio,
    a.recorrido,
    div.recorrido,
    span.recorrido {
        font-size: 20px;
        padding: 5px 15px;
    }

    .servicio [class^="icon-"],
    .recorrido [class^="icon-"] {
        /*font-size: 18px;*/
        font-size: 22px;
        padding-left: 20px;
    }

    .tab-todos {
        font-size: 18px;
        /*padding: 6px 18px 4px 18px;*/
        padding: 8px 18px 5px 18px;
    }

    .bloque-distributiva .bloque-filtros .input-search input.form-control,
    .bloque-filtros .dropdown .btn-primary,
    .btn-cuando-llega .btn-light {
        font-size: 20px;
        line-height: 40px;
        padding: 10px 20px;
    }

    .btn-cuando-llega .btn-light {
        line-height: 42px;
    }

    .bloque-filtros .dropdown .dropdown-toggle:after {
        right: 20px;
        top: 12px;
    }

    .bloque-filtros .dropdown .btn-primary > img {
        max-width: none;
        margin-right: 10px;
    }

    .bloque-carrusel .carousel .carousel-item .background {
        /*min-height: 342px;*/
        min-height: 516px;
    }

    .bloque-carrusel .carousel .carousel-item .texto {
        max-width: 390px;
        /*right: 150px;*/
        /*bottom: 70px;*/
        top: 160px;
        right: 40px;
    }

    .bloque-carrusel .carousel .carousel-item .texto .titular {
        /*font-size: 28px;*/
        font-size: 35px;
    }

    .bloque-carrusel .carousel .carousel-item .texto p {
        /*font-size: 18px;*/
        font-size: 20px;
        /*line-height: 20px;*/
        line-height: 30px;
    }

    .bloque-carrusel .carousel .carousel-item .texto p.enlace {
        font-size: 20px;
    }

    .bloque-estados .estados .nav-tabs .nav-link {
        padding: 10px 20px;
        min-width: 32.6666667%;
    }

    .bloque-estados .estados .nav-tabs .nav-link .ts-iconos,
    .bloque-estados .estados .nav-tabs .nav-link [class^="icon-"] {
        font-size: 32px;
        vertical-align: bottom;
        margin-right: 3px;
    }

    .page-template-page-cerca-de-mi table p {
        margin-bottom: 7px;
    }

    .page-template-page-cerca-de-mi table p:last-child {
        margin-bottom: 0;
    }

    .page-template-page-cerca-de-mi table p + p.listado-servicios:last-child {
        margin-bottom: 4px;
        line-height: 2em;
    }

    .page-template-page-cerca-de-mi .icon-bip {
        font-size: 60px;
        width: 60px;
        height: 60px;
    }

    .bloque-estados .tab-encabezado {
        font-size: 18px;
    }

    .bloque-estados .tab-encabezado form .input button {
        min-width: 280px;
    }

    .bloque-estados .tab-content-interior {
        padding: 0 35px 10px;
    }

    .bloque-estados .bloque-filtros .dropdown .dropdown-toggle:after {
        right: 10px;
        top: 1px;
    }

    .bloque-servicios-web .servicio-web {
        font-size: 20px;
    }

    .bloque-servicios-web .servicio-web > img {
        max-width: 100%;
    }

    .home .bloque-red-comunica {
        padding-top: 80px;
    }

    .bloque-red-comunica .recomendaciones a {
        /*padding: 40px 40px 235px 40px;*/
        padding: 40px 40px 285px 40px;
    }

    .bloque-red-comunica .recomendaciones a > .imagen {
        /*width: 292px;*/
        width: 100%;
        /*height: 233px;*/
        height: 285px;
    }

    .bloque-red-comunica .recomendaciones .imagen > img {
        max-width: 480px;
    }

    .recomendaciones .guia .imagen:before {
        left: 0;
        top: 0;
    }

    .bloque-red-comunica .recomendaciones a h2,
    .bloque-red-comunica .recomendaciones a h3,
    .bloque-red-comunica .recomendaciones a h4 {
        font-size: 33px;
    }

    .bloque-red-comunica .mejoras a h2,
    .bloque-red-comunica .mejoras a h3,
    .bloque-red-comunica .mejoras a h4,
    .bloque-red-comunica .noticias a h2,
    .bloque-red-comunica .noticias a h3,
    .bloque-red-comunica .noticias a h4 {
        font-size: 30px;
    }

    .bloque-red-comunica .mejoras a {
        padding: 40px 40px 420px 40px;
        min-height: 100%;
    }

    .mejora .imagen {
        width: 480px;
        height: 373px;
        position: absolute;
        right: 0;
        bottom: 25px;
    }

    .bloque-red-comunica .noticias a {
        padding: 40px;
    }

    .bloque-red-comunica .mejoras a .datos,
    .bloque-red-comunica .noticias a .datos {
        border-left: 10px solid #CF152D;
        padding-left: 30px;
        margin-left: -40px;
    }

    .table-responsive td.descripcion {
        max-width: 400px;
    }

    .table-responsive td.incidencia {
        /*max-width: 380px;*/
    }

    .bloque-paraderos .table-responsive table td.tiempo-llegada {
        /*white-space: nowrap;*/
        /*overflow: hidden;*/
        /*text-overflow: ellipsis;*/
        /*max-width: 240px;*/
    }

    .ruta-migas {
        font-size: 16px;
    }

    section.bloque-paraderos > .row > div > h2,
    .lineas-de-metro h2,
    #content-page > .container > .row > div > .titular,
    .bloque-relacionados .titular,
    .subencabezado .nombre-parada,
    .bloque-titular-pagina > h1,
    .bloque-titular-pagina > h2 {
        font-size: 25px;
    }

    /*.single-estaciones-metro .subencabezado .nombre-parada,*/
    .page-template-page-cuando-llega .subencabezado .nombre-parada {
        font-size: 21px;
    }

    .subencabezado .nombre-parada {
        max-width: 740px;
    }

    .subencabezado.ico-recorrido {
        background-position: 30px 22px;
    }

    .subencabezado.ico-cercade {
        background-position: 25px 50%;
    }

    .single-estaciones-metro .subencabezado .nombre-parada {
        max-width: 900px;
    }

    .page-template-page-recorrido .subencabezado .hacia {
        max-width: 420px;
    }

    .buscador-encabezado.bloque-filtros .dropdown {
        margin-top: -10px;
    }

    nav.recorridos .nav-tabs .nav-link {
        margin-right: 1rem;
    }

    .bloque-mapa #map,
    .bloque-mapa .mapa {
        min-height: 500px;
        display: block;
        width: 100%;
    }

    .bloque-titular-pagina .buscador-encabezado {
        margin-top: -15px;
    }

    .page-template-page-como-llegar .bloque-titular-pagina .buscador-encabezado {
        margin-top: -6px;
    }

    .bloque-relacionados .banner-relacionado {
        height: 500px;
        min-height: 500px;
    }

    .bloque-relacionados .banner-relacionado .imagen {
        max-height: 275px;
    }

    .bloque-relacionados .banner-relacionado .datos {
        padding: 0 30px;
    }

    .bloque-relacionados .banner-relacionado .enlace {
        bottom: 45px;
    }

    .bloque-relacionados .banner-relacionado h3 {
        font-size: 33px;
    }

    .bloque-relacionados .banner-relacionado p,
    .bloque-relacionados .banner-relacionado .enlace {
        font-size: 18px;
    }

    .accordion-como-llegar .card .card-header button img,
    .accordion-como-llegar .card .card-header button span.ts-iconos {
        margin-left: .5rem;
        margin-right: .5rem;
    }

    .accordion-como-llegar .card .card-header button {
        min-height: 60px;
    }

    .accordion-como-llegar .card .card-header button:first-child {
        margin-left: 0;
    }

    .accordion-como-llegar .card .card-header button span.tiempo {
        position: absolute;
        right: 60px;
        top: 17px;
    }

    .distributiva .bloque-distributiva {
        /*min-height: 550px;*/
        /*padding: 50px 0 30px 0;*/
        min-height: 530px;
        padding: 50px 0 0 0;
    }

    .distributiva .bloque-distributiva .titular > img {
        margin-bottom: 13px;
    }

    .distributiva .bloque-distributiva .enlace,
    .distributiva .bloque-distributiva .enlaces,
    .distributiva .bloque-distributiva .titular,
    .distributiva .bloque-distributiva .descripcion,
    .distributiva .bloque-distributiva .bloque-filtros {
        padding: 0 40px;
    }

    .distributiva .bloque-distributiva .titular {
        font-size: 23px;
    }

    .distributiva .bloque-distributiva .descripcion {
        font-size: 18px;
        min-height: 80px;
    }

    .bloque-distributiva .bloque-filtros .input-search input.form-control {
        min-height: 61px;
    }

    .bloque-distributiva .bloque-filtros .input-search .form-group > button {
        bottom: 15px;
        right: 15px;
    }

    .distributiva .bloque-distributiva .enlace a,
    .distributiva .bloque-distributiva .enlaces a {
        font-size: 18px;
    }

    .distributiva .bloque-distributiva .enlace {
        margin-bottom: 56px;
    }

    .distributiva .bloque-distributiva .enlace a > img {
        margin-left: 7px;
    }

    .distributiva .bloque-distributiva .enlace a:hover > img {
        margin-left: 14px;
    }

    .distributiva .bloque-distributiva .descripcion + .enlace {
        margin-top: 20px;
        /*margin-bottom: 35px;*/
        margin-bottom: 25px;
    }

    .cabecera .cabecera-content .imagen {
        padding-right: 15px;
        padding-left: 15px;
    }
    .cabecera .cabecera-content .imagen > img {
        padding: 50px 0;
    }
    .cabecera .cabecera-content .imagen .bg-imagen {
        right: -15px;
    }
    .cabecera .cabecera-content .datos .fecha {
        font-size: 20px;
    }

    .cabecera .cabecera-content .datos h1,
    .cabecera .cabecera-content .datos .titular {
        font-size: 30px;
    }

    section.desplegable .acordeon .card .card-header {
        padding: 20px 0;
    }

    section.desplegable .acordeon .card .card-body {
        padding-right: 40px;
    }

    footer.footer {
        font-size: 20px;
    }

    .image-header-page:before {
        width: 499px;
        height: 248px;
    }

    .btn-cuando-llega .btn-light .filter-option-inner-inner:before {
        width: 40px;
        height: 40px;
        margin: 0 15px 0 0;
    }

    .bloque-red-comunica .row.mejoras > div,
    .bloque-red-comunica .listado-recomendaciones > div {
        margin-bottom: 60px;
    }
    /*.bloque-red-comunica.interior .row.mejoras,
    .bloque-red-comunica.interior .listado-recomendaciones {
        margin-bottom: -50px;
    }*/
    /*.bloque-red-comunica.interior .row.noticias {
        margin-bottom: -20px;
    }*/

    .single .category img {
        max-width: 30px;
    }

    .a2a_kit {
        left: -80px;
    }

    .addtoany_list a,
    .widget .addtoany_list a {
        padding: 0 5px !important;
    }

    .a2a_svg svg {
        background-position: 0 0 !important;
        margin: 0 !important;
        overflow: visible !important;
        top: -5px !important;
        width: 38px !important;
        height: 38px !important;
    }

    .bloque-filtros .dropdown:not(.btn-cuando-llega) .dropdown-menu.show {
        z-index: 5;
        border-radius: 10px;
        padding-top: 82px;
        transform: none !important;
    }

    .lineas-de-metro h2 {
        padding: 12px 20px;
    }

    .lineas-de-metro ul.linea-metrotren li a,
    .lineas-de-metro ul.linea-metrotren li div.recorrido,
    .lineas-de-metro ul.linea-metrotren li div.recorrido strong,
    .lineas-de-metro ul.linea-metrotren li p {
        font-size: 18px;
    }
    body.post-type-archive-estaciones-metrotren .lineas-de-metro h2 {
        margin-bottom: 25px;
    }
    body.post-type-archive-estaciones-metrotren .lineas-de-metro ul.linea-metrotren li a {
        min-width: auto;
    }
    body.post-type-archive-estaciones-metrotren .lineas-de-metro ul.linea-metrotren li:last-child {
        padding-right: 0;
    }
    body.post-type-archive-estaciones-metrotren .lineas-de-metro ul.linea-metrotren li:last-child a {
        min-width: unset !important;
        width: auto;
    }
    .lineas-de-metro ul.linea-metrotren li {
        position: relative;
    }
    .lineas-de-metro ul.linea-metrotren li.operativa:after,
    .lineas-de-metro ul.linea-metrotren li.cerrada:after,
    .lineas-de-metro ul.linea-metrotren li.no-habilitada:after {
        top: 40px;
        left: 50%;
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .lineas-de-metro ul.linea-metrotren li.con-conexiones:before {
        left: 50%;
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    /*
    body.post-type-archive-estaciones-metrotren .lineas-de-metro ul.linea-metrotren:before {
        content: "";
        position: absolute;
        top: 123px;
        left: 5px;
        width: 15px;
        height: 15px;
        display: block;
        background: #FFFFFF;
    }
    body.post-type-archive-estaciones-metrotren .lineas-de-metro ul.linea-metrotren:after {
        content: "";
        position: absolute;
        top: 123px;
        right: 9px;
        width: 15px;
        height: 15px;
        display: block;
        background: #FFFFFF;
    }
    */
}
