@import url('./variables.css');

@font-face {
    font-family: 'Amsterdam';
    src: url('fonts/amsterdam-variation-2.woff2') format('woff2'),
         url('fonts/amsterdam-variation-2.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


/*GENERALES*/

#error404 {
    margin-top: -35px;
    margin-bottom: -30px;
}

:root {
    --primary: #275D9A;
    --gris: #2B3A42;
}

html {
    scroll-behavior: smooth!important;
}

body {
    font-family: 'Montserrat'; font-size: 16px;
    color: var(--gris);
}

a:hover, a:focus, a:active { text-decoration: none; color: inherit;}

.p-0 {
    padding: 0;
    overflow: hidden;
}



.btn-soulreps {
    background-color: var(--primary);
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 5px;
    border-radius: 5px;
    padding: 15px 35px;
    font-size: 15px;
    font-weight: 700;
    display: inline-block;
}
.btn-soulreps:hover {
    background-color: #333333;
    color: #ffffff;
}



/*HEADER*/

#header-SOULREPS {
    padding: 10px 0 0; 
    width: 100%;
    background-color: #FFFFFF;
}



#header-SOULREPS .navbar-default .navbar-toggle,
#header-SOULREPS .navbar-default .navbar-toggle:hover {
    background-color: transparent!important;
}

#header-SOULREPS .navbar-default {
   background-color: transparent;
   border:none;
   margin-top: 15px;
   margin-bottom: 0;
}

#header-SOULREPS .navbar-default li {
    padding: 0 5px;
}

@media(max-width:768px) {
    #header-SOULREPS .navbar-default {
        margin-top: 0;
    }
    #header-SOULREPS {
        padding: 10px 0 10px; 
    }
    img#logo-header-color {
        display: none!important;
    }
}

#header-SOULREPS .navbar-default a {
    color: var(--gris);
    font-size: 15px;
    font-weight: 700;
    padding: 10px 20px;
    border-radius: 5px;
    background-color: #f1f1f1;
}

#header-SOULREPS .navbar-default a span {
    display: none;
}

#header-SOULREPS .navbar-default a:hover,
#header-SOULREPS .navbar-default a:active,
#header-SOULREPS .navbar-default a:focus {
    color:#ffffff;
    background-color: var(--primary);
}

#header-SOULREPS .navbar-default .dropdown-menu>li>a {
    background-color: rgba(0, 0, 0, 0.5) !important;
    padding: 7px 15px;
    color: white !important;
    border: none;
}
#header-SOULREPS .navbar-default .dropdown-menu>li>a:hover {
    background-color: #1b9ca1;
    color:white;
}

#header-SOULREPS .navbar-default .navbar-nav>.active>a,
#header-SOULREPS .navbar-default .dropdown-menu,
#header-SOULREPS .navbar-default .navbar-nav>.open>a {
    background: transparent;
    border:none;
    box-shadow: none;
    color: var(--primary)
}

@media (min-width: 768px) {
    #header-SOULREPS .navbar-default {
        background-color: transparent;
        border: none;
        margin-top: 15px;
        display: flex;
        justify-content: flex-end;
    }
}

#header-SOULREPS .navbar-default .dropdown-menu a:hover {
    background-color: transparent;
    color: var(--primary)
}

#header-SOULREPS .navbar-default .dropdown.open > a {
    border-bottom: none;
    border: solid 1px #ffffff;
}

img#logo-header-color {
    margin-top: 0px;
}

.navbar-default .navbar-brand {
    background: none !important;
}

@media (max-width: 768px) {
    #header-SOULREPS .navbar-brand {
        padding: 0 20px!important;
    }
    #header-SOULREPS .navbar-default a {
        background: none!important;
    }
}



@media (min-width: 1024px) {
    .container-plus {
        max-width: 1400px;
        width: 90%;
    }
}


/*** HOME ***/

.slide-title {
    font-family: 'Amsterdam'!important;
    font-size: 100px;
    text-align: center;
}
.main-title {
    font-family: "Noto Serif", serif;
    font-size: 48px;
    margin-bottom: 40px;
}
#landing-hero {
    position: relative;
    width: 100%;
    height: 100vh; /* toda la altura del viewport */
    overflow: hidden;
    color: #fff;
}

.copete {
    font-weight: 700;
    color: var(--primary);
}

/* Video de fondo */
#landing-hero video#video-background {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    z-index: 1;
}
/* Capa para centrar contenido */
#landing-hero .overlay {
    position: relative;
    z-index: 2;
    height: 100%;
    display: flex;
    align-items: center;  /* centra verticalmente */
    justify-content: flex-start; /* texto alineado a la izquierda */
    background: rgba(0, 0, 0, 0.4); /* capa semitransparente */
}
#landing-hero .overlay .bajada {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 18px;
    letter-spacing: 5px;
}
#landing-hero .overlay .btn-soulreps {
    margin-top: 25px;
    display: inline-block;
}
.texto-header {
    text-align: center;
}
section.section-home {
    padding: 50px 0;
}
.banner-services {
    background-image: url('../images/bg_banner_services.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    align-items: center;
    padding: 60px 0;
    position: relative;
}
.banner-services:before {
    content:'';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
}
.wrapper-services {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    color: #ffffff;
    z-index: 1;
}
.wrapper-services-image {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
}
.wrapper-services-title {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding-bottom: 10px;
    border-bottom: solid 1px #ffffff;
    width: 100%;
}
.wrapper-services-title img {
    width: 60px;
}
.wrapper-services p {
    margin-top: 20px;
}
.wrapper-services-title .services-title {
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
}
.wrapper-equipo {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.equipo-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.equipo-container-title {
    font-family: "Noto Serif", serif;
    font-size: 28px;
}
.equipo-container a {
    color: var(--primary);
}

.banner-home {
    background-image: url('../images/bg_banner_home.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 40px 0;
}
.wrapper-banner {
    background-color: #ffffff;
    padding: 40px;
}
.banner-title {
    font-family: "Noto Serif", serif;
    font-size: 28px;
    margin-top: 0;
    margin-bottom: 20px;
}

h2.eligen-title {
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 30px;
}
.partner {
    max-height: 70px;
    margin: auto;
}

/*** QUIENES SOMOS ***/

.heading h1 {
    font-family: 'Amsterdam'!important;
    font-size: 100px;
    text-align: center;
    color: #ffffff;
    position: relative;
    z-index: 9;
}
.heading {
    position: relative;
}

.section-landing {
    padding: 50px 0
}
.heading:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2);
}
.wrapper-equipo {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.wrapper-integrante h1 {
    font-family: 'Noto', serif;
    font-size: 48px;
    margin-top: 0;
}

@media(max-width: 768px) {
    .wrapper-integrante h1 {
        margin-top: 30px;
    }
}
.wrapper-integrante p {
    font-weight: 500;
    margin-bottom: 30px;
}
.equipo-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.equipo-container-title {
    font-family: "Noto Serif", serif;
    font-size: 28px;
}
.equipo-container a {
    color: var(--primary);
}

.banner-quienes {
    background-image: url('../images/bg_banner_quienes.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 40px 0;
}

.equipo-quienes .integrante {
    padding: 50px 0 30px 0;
}
.equipo-quienes .integrante a {
    text-align: center;
    display: block;
    margin-top: 20px;
    font-size: 36px;
}
.equipo-quienes hr {
    border-top: 1px solid var(--primary);
}




/*** SERVICIOS ***/

.banner-servicios {
    background-image: url('../images/bg_banner_quienes.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 40px 0;
}

/*** NOS ELIGEN ***/

.logo-eligen {
    margin: auto;
}
.banner-eligen {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 40px 0;
}
.banner-euroriente {
    background-image: url('images/bg_euroriente.jpg');
}
.banner-exotic {
    background-image: url('images/bg_exotic.jpg');
}
.banner-vpt {
    background-image: url('images/bg_vpt.jpg');
}
.wrapper-banner {
    background-color: #ffffff;
    padding: 40px;
}        
.title-banner-eligen {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 20px;
}
.title-banner-eligen img {
    border-radius: 50%;
    width: 150px;
    height: 150px;
    overflow: hidden;
}
.title-banner-eligen h1 {
    font-size: 18px;
}
.title-banner-eligen h1 span {
    display: block;
    font-size: 16px;
}




@media (max-width: 768px) {
    
    img#logo-footer {
        margin: auto auto 40px auto;
    }
    #footer-SOULREPS {
        text-align: center;
    }
    .redes-header {
        justify-content: center;
        margin-top: 30px;
    }
}




#promociones .paqDestacados .owl-item {
    box-shadow: rgba(0, 0, 0, 0.20) 0px 3px 10px;
    border-radius: 20px;
}



/*********************************
Footer
*********************************/


footer {
    padding: 40px 0 40px 0;
    background: var(--gris);
    color: #fff;
    width: 100%;
}

footer .redes-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

@media(min-width: 769px) {
    footer .redes-footer {
        justify-content: flex-end;
    }
    footer .datos-footer {
        display: flex;
        justify-content: center;
        gap: 50px;
    }
    footer .flex-center {
        display: flex;
        align-items: center;
    }
}

footer .redes-footer a {
    height: 40px;
    width: 40px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--primary);
}

footer .redes-footer a:hover {
    color: #ffffff;
}

footer .logo_footer {
    width: 100%;
    max-width: 200px;
    text-align: center;
    margin-top: 40px;
}


footer p, footer a {
    line-height: 1.6;
}

footer a {
    color: #fff;
}

footer .datos-footer a i {
    color: var(--primary);
}

footer a:hover {
    color: var(--primary);
}

div#consultar {
    padding: 10px 0;
    background-color: #1c1c1c;
}
div#consultar a {
    color: #ffffff;
}

div#wsp {
    position: fixed;
    right: 10px;
    bottom: 10px;
    z-index:9999;
}


/*RESPONSIVE*/

@media(max-width:768px){
    #header-SOULREPS {
        border:none
    }

    #news form label{
        text-align: center;
        margin-bottom: 35px;
    }

    #slideinf .carousel-caption {
        width: 80%!important;
        left: 10%!important;
    }

    footer {
        text-align: center;
    }
    footer img {
        margin: auto;
    }
    .datos-footer {
        margin: 30px auto;
    }
}



/*AJUSTES SERVICES*/


.paso3 .table tbody tr.active th, .paso3 .table thead tr th,
.paso3 .table tbody tr.active th, .paso3 .table thead tr th,
.paso3 .habitacion-cabecera[data-v-286bf90e]
{
    background-color: var(--primary)!important;
    border-color: var(--primary)!important;
}

.paso3 #itinerario .list-group .list-group-item .list-group-item-heading,
.paso3 .infomacion .list-group .list-group-item .list-inline li b
{
    color:var(--primary)!important
}

/*** AJUSTES PAQUETES MANUAL ***/

body.SOULREPS-buscar div#container {
    margin-top: 50px;
}
body.SOULREPS-buscar .resultado .panel-title {
    padding: 10px 20px 0!important;
}
body.SOULREPS-buscar .panel.resultado .lead {
    padding: 0 20px;
}
body.SOULREPS-buscar .resultado .panel-body {
    padding: 20px 20px 20px 20px!important;
}

body.texto a:hover {
    color: var(--primary)!important;
}
body.texto .panel-body p {
    font-weight: 400!important;
}
#container > #wb_container {
    margin-bottom: 40px;
}
.list-group .list-group-item-precios {
    margin-bottom: 0!important;
}
.ficha-producto .list-group-item.list-group-item-precios .btn-block {
    color: #ffffff!important;
}
.panel-group.panel-group-lists.collapse.in.panel-buscador {
    margin-top: 25px;
}
body.producto-consultar #container {
    margin-top: 20px;
}
body.spider .ficha-producto {
    margin-top: 25px;
}


/*FORMAS DE PAGO*/
.formas_pagos-carousel#formas_pagos-carousel_all h4.formas-pago-h4 {
    font-weight: 700!important;
    font-size: 18px!important;
    color:var(--primary)!important
}
.formas_pagos-carousel#formas_pagos-carousel_all a.formas-pago-a {
    color:initial!important
}

#bancos.formas_pago .page-header > h2, 
.fp_vigentes #filtros {display: none;}

#modal_formas_pago_banco .modal-forma .info > th:nth-child(2), 
#modal_formas_pago_banco .modal-forma .info > th:nth-child(3),
#modal_formas_pago_banco .modal-forma .info > th:nth-child(5){display: none;}

#modal_formas_pago_banco .modal-forma tr > td.text-monospace:nth-child(2),
#modal_formas_pago_banco .modal-forma tr > td.text-monospace:nth-child(3),
#modal_formas_pago_banco .modal-forma tr > td.text-monospace:nth-child(5) {display: none!important;}


#relacionados-container {
    display: none;
}

body.spider-paquete #fichaSpiderPaquete .panel:last-child .panel-body,
body.spider-paquete #fichaSpiderPaquete hr {
    display: none;
}

#financiacion .container {
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
    border-radius: 20px;
    padding: 10px 0;
}

.formas_pagos-carousel#formas_pagos-carousel_all .panel {
    margin-bottom: 0!important;
    border: none!important;
}

.formas_pagos-carousel#formas_pagos-carousel_all h4.formas-pago-h4 {
    color: var(--primary);
    font-weight: 800 !important;
    font-size: 18px;
}

.formas_pagos-carousel {
    box-shadow: none!important;
    padding: 0!important;
}

/****** MENSAJES DE CONFIRMACION *******/

/*** AEREOS ***/

#wb_confirmacion h2:first {
    display: none;
}

#wb_confirmacion h2 p {
    font-size: 16px;
}

#wb_confirmacion h2 p:first-child {
    margin-top: 20px;
    font-weight: 700;
    font-size: 18px!important;
    padding: 10px 20px;
    background-color: var(--primary);
    color: #ffffff!important;
}

#wb_confirmacion h2 p:nth-child(3) {
    color: var(--primary);
    font-weight: 700;
    font-size: 21px!important;
    margin: 20px 0;
}


/*** AUTOS ***/

#campos_form .panel-default {
    clear: both;
}

.mktecars-mensajecompra p {
    font-size: 16px;
}

section.mktecars-mensajecompra h2:first-child {
    display: none;
}

.mktecars-mensajecompra p:first-child {
    display: none;
}
.mktecars-mensajecompra p:nth-child(5) {
    color: var(--primary);
    font-weight: 700;
    font-size: 21px!important;
    margin: 20px 0;
}
.mktecars-mensajecompra p:nth-child(3) {
    margin-top: 20px;
    font-weight: 700;
    font-size: 18px!important;
    padding: 10px 20px;
    background-color: var(--primary);
    color: #ffffff!important;
}
.mktecars-mensajecompra h3:nth-child(2) {
    background-color: transparent!important;
    color: var(--primary)!important;
    padding: 20px!important;
}
.mktecars-mensajecompra .mensaje.gracias-consulta {
    width: 100%;
}
section.mktecars-mensajecompra {
    width: 90%;
    margin: 20px auto;
}
.mktecars-mensajecompra .gracias-consulta {
    box-shadow: none!important;
}
.mktecars-mensajecompra p {
    display: block;
    width: 100%;
    font-size: 16px;
    text-align: left;
    padding: 0px 15px;
}


/*** AJUSTES HOTELES ***/

#app_hot .vc-arrows-container {
    display: flex !important;
}

.popover-ocupacion > .popover > .popover-content > .table > tbody > tr > td.select {
    padding: 0 10px 0 0px !important;
}

.consulta span form .row .form-group input, .consulta span form select.form-control {
    border-radius: 10px!important;
    padding: 7px 10px!important;
    height: 40px!important;
}



#app_hot .gracias {
    box-shadow: none!important;
}

#app_hot .gracias .page-header {
    background-color: var(--primary)!important;
    display: none;
}

#app_hot .gracias .page-header > h3 {
    text-transform: none!important;
    font-weight: 700;
}
#app_hot .gracias .list-group-item {
    color: #333;
    background: none;
}
#app_hot .gracias .list-group-item h3 {
    font-size: 18px;
}

aside .panel.panel-default .panel-heading {
    background-color: var(--primary)!important;
}

#app_hot .gracias h4:nth-child(1) {
    background-color: var(--primary);
    color: #ffffff;
    padding: 10px 20px;
    font-size: 21px;
}

#app_hot .gracias h4:nth-child(2) {
    color: var(--primary)!important;
    font-weight: 700;
    padding: 20px;
    font-size: 21px;
}

#app_hot .gracias h5 {
    font-size: 16px;
    line-height: 1.5;
    padding: 0 20px;
}

#app_hot .gracias .list-group-item:nth-child(2) {
    display: none;
}

#app_hot .aside {
    margin-top: 30px;
}


/*** CONSULTAR ***/

div.consulta .mensaje-exito {
    max-width: 100%!important;
    display: block!important;
    position: relative;
}
div.consulta .mensaje-exito p:nth-child(1) {
    background-color: var(--primary);
    color: #ffffff;
    font-weight: 700;
    margin-bottom: 0;
}
div.consulta .alert-success p small {
    display: none!important;
}

div.consulta .alert-success p:nth-child(2) {
    background-color: #333;
    color: #fff;
    margin-top: 0;
    padding: 20px;
    width: 100%;
}
div.consulta .mensaje-exito .fa {
    display: none;
}
div.consulta .alert-success {
    background-color: transparent!important;
    border:none!important;
    padding: 0 !important;
}
div.consulta .btn-volver {
    background-color: var(--primary)!important;
    border-color: var(--primary)!important;
}

#container > .alert-success > i {
    display: none;
}

#container > .alert-success {
    background-color: var(--primary);
    color: #ffffff;
    font-weight: 700;
    margin-bottom: 0;
}


/*** CIRCUITOS ***/

.resultados .tarifa_leyenda span {
    display: block!important;
}
.mkte_circuitos-consulta .conector {
    display: none!important;
}

/*** RESULTADOS CIRCUITOS COTIZAR ***/

#desglose > .table tr.tarifa th, #desglose > .table tr.tarifa td {
    color: #333333!important;
    background-color: #F1F1F1!important;
    border: none!important;
}
#desglose > .table tr.subtotal th, #desglose > .table tr.subtotal td {
    color: #333333!important;
    background-color: #d9d9d9!important;
    border: none!important;
}
body.mkte_circuitos-consulta .conector img {
    display: none!important;
}
#gracias > div.row.row-20 > div.col-xs-12.col-sm-4 > .row > div {
    width: 100%;
}
/*** VPT ***/
body.is-excursion #btn-cotizar {
    border-radius: 10px!important;
    height: 40px;
    opacity: 1;
}
body.is-excursion select.input-sm {
    height: 40px!important;
    line-height: 40px!important;
    border-radius: 10px!important;
}
body.is-excursion form#reservar .panel {
    border: none;
}

body.is-excursion #reservar #politicas {
    padding: 0!important;
    border-radius: 10px!important;
}
body.is-excursion #reservar #politicas .list-group {
    padding: 10px!important;
}
.paso3 #reservar #habitaciones .table tr td .form-control {
    height: 40px!important;
    border-radius: 10px!important;
}
.paso3 #reservar #habitaciones .panel-body .form-control,
.paso3 #reservar #categorias .form-control,
.paso3 #reservar #regimenes .form-control,
.paso3 #reservar #idiomas .form-control {
    height: 40px!important;
    border-radius: 10px;
}
.paso3 #reservar #btn-cotizar {
    border-radius: 10px!important;
    height: 40px;
    opacity: 1;
}


.gracias .page-header h2 {
    color: var(--primary);
    font-weight: 700;
}

.gracias .flipInX h3 {
    background-color: var(--primary);
    color: #ffffff;
    padding: 10px 20px;
    font-size: 21px;
    font-weight: 700;
}

.gracias .flipInX h2 {
    color: var(--primary)!important;
    font-weight: 700;
    padding: 20px;
    font-size: 21px;
}

.gracias .flipInX p {
    font-size: 16px;
    padding: 0 20px;
}

.gracias #detalle .panel.infomacion {
    margin-top: 20px;
}

.gracias #detalle .panel.infomacion .list-group .list-group-item-caratula .list-group-item-heading {
    color: var(--primary);
    font-weight: 700;
    padding: 10px 0;
}

.gracias #panel_politicas .panel-heading {
    color: #ffffff!important;
    background-color: var(--primary)!important;
    border-color: var(--primary)!important;
    font-weight: 700;
}

.gracias #panel_politicas .list-group .list-group-item {
    background-color: #f1f1f1!important;
}

.gracias #desglose .table thead tr th {
    background: #333333!important;
    color: #FFFFFF;
}

.gracias #desglose .table tbody tr.subt th, 
.gracias #desglose .table tbody tr.subt td {
    color: #333333!important;
    background-color: #d9d9d9!important;
}

.gracias #desglose .table tbody tr.rule th, 
.gracias #desglose .table tbody tr.rule td {
    color: #333333!important;
    background-color: #f1f1f1!important;
}

.gracias #desglose .table tfoot tr th {
    color: #ffffff!important;
    background-color: var(--primary)!important;
    border-top: 1px dashed var(--primary)!important;
}


/*** PAQUETES ***/

#gracias .flipInX h1 {
    background-color: var(--primary);
    padding: 10px 20px;
    color: #ffffff;
    font-weight: 700;
    font-size: 24px;
}

#gracias .flipInX h4 {
    color: var(--primary);
    padding: 10px 20px;
    font-weight: 700;
    font-size: 18px;
}

#gracias .flipInX h2 {
    color: var(--primary)!important;
    font-weight: 700;
    padding: 20px;
    font-size: 21px;
}

#gracias .flipInX p {
    font-size: 16px;
    padding: 0 20px;
}

#gracias #detalle .panel.infomacion {
    margin-top: 20px;
}

#gracias #detalle .panel.infomacion .list-group .list-group-item-caratula .list-group-item-heading {
    color: var(--primary);
    font-weight: 700;
    padding: 10px 0;
}

#gracias #panel_politicas .panel-heading {
    color: #ffffff!important;
    background-color: var(--primary)!important;
    border-color: var(--primary)!important;
    font-weight: 700;
}

#gracias #panel_politicas .list-group .list-group-item {
    background-color: #f1f1f1!important;
}

#gracias .desglose .table thead tr th {
    background: #333333!important;
    color: #FFFFFF;
}

#gracias .desglose .table tbody tr.subt th, 
#gracias .desglose .table tbody tr.subt td {
    color: #333333!important;
    background-color: #d9d9d9!important;
}

#gracias .desglose .table tbody tr.rule th, 
#gracias .desglose .table tbody tr.rule td {
    color: #333333;
    background-color: #f1f1f1;
}

tr.rule.tfoot .concepto, tr.rule.tfoot .monto {
    background-color: var(--primary) !important;
    font-weight: 700 !important;
    color: #ffffff !important;
}

#gracias .desglose .table tfoot tr th {
    color: #ffffff!important;
    background-color: var(--primary)!important;
    border-top: 1px dashed var(--primary)!important;
}

#gracias .desglose .table thead tr th:first-child {
    border-bottom: 0;
    border-radius: 10px 0 0 0;
}

#gracias .desglose .table thead tr th:nth-child(2) {
    border-radius: 0 10px 0 0;
}

#gracias .desglose .table tbody tr.subt th, 
#gracias .desglose .table tbody tr.subt td {
    border-top: none;
}


/*** ASISTENCIA ***/

div#motorHotelesResultados .col-sm-pull-4 h1 {
    background-color: var(--primary);
    padding: 10px 20px;
    color: #ffffff;
    font-weight: 700;
    font-size: 24px;
}

div#motorHotelesResultados .col-sm-pull-4 h4 {
    color: var(--primary);
    padding: 10px 20px;
    font-weight: 700;
    font-size: 18px;
}

div#motorHotelesResultados .col-sm-pull-4 p {
    padding: 10px 20px;
    font-size: 16px;
    color: #333333;
}

#hoteles_sidebar_reserva .seleccion_tarifa #resumenReserva .panel-heading {
    padding: 0;
    background: none;
}

#hoteles_sidebar_reserva .seleccion_tarifa .panel-default {
    border-radius: 10px;
}

#hoteles_sidebar_reserva .seleccion_tarifa #resumenReserva .panel-heading .tarifa_detalle h4 {
    background-color: var(--primary);
    color: #ffffff;
    font-weight: 700;
    padding: 10px 20px;
    border-radius: 10px 10px 0 0;
    margin: 0;
}

#hoteles_sidebar_reserva .seleccion_tarifa #resumenReserva .panel-heading .tarifa_detalle .table>thead>tr>th, 
#hoteles_sidebar_reserva .seleccion_tarifa #resumenReserva .panel-heading .tarifa_detalle .table>tbody>tr>th, 
#hoteles_sidebar_reserva .seleccion_tarifa #resumenReserva .panel-heading .tarifa_detalle .table>tfoot>tr>th, 
#hoteles_sidebar_reserva .seleccion_tarifa #resumenReserva .panel-heading .tarifa_detalle .table>thead>tr>td, 
#hoteles_sidebar_reserva .seleccion_tarifa #resumenReserva .panel-heading .tarifa_detalle .table>tbody>tr>td, 
#hoteles_sidebar_reserva .seleccion_tarifa #resumenReserva .panel-heading .tarifa_detalle .table>tfoot>tr>td {
    padding: 8px 20px;
}

/*** FLYERS ***/



#formRecomendar{ margin-bottom: 50px; }
#formRecomendar .form-group{}
#formRecomendar .panel { box-shadow: none;}
#formRecomendar .panel-default, #formRecomendar .list-group-item { border: none; }
#formRecomendar .form-group label.error{position: absolute;right: 10px;top: 5px;color: #F20;font-size: 27px;z-index: 10;}
#formRecomendar .form-group .recaptcha_input_area label.error{right: 9px;top: 8px;}
#formRecomendar .input-group { width: 100%;}
#formRecomendar .input-group .form-control { border-radius: 0 10px 10px 0 !important; height: 40px; width: 100%;}
#formRecomendar .input-group-addon { background-color: var(--primary); border-radius: 10px 0 0 10px!important; width: 40px; }
#formRecomendar .btn-block {
    background-color: var(--primary);
    border: none;
    border-radius: 10px;
    height: 40px;
    font-weight: 700;
    color: #ffffff;
    font-size: 16px;
}
#formRecomendar .btn-block i {
    display: none;
}


/*** LANDING CALCUCUOTAS ***/

#lancontenedorcalc .panel {
    border: none!important;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2)!important;
}
#lancontenedorcalc .type-item .panel-primary>.panel-heading {
    border-radius: 10px!important;
    background-color: var(--primary);
    border-color: var(--primary);
}
#lancontenedorcalc .panel-primary>.panel-heading {
    border-radius: 10px 10px 0 0;
    font-size: 16px;
    font-weight: 700;
    background-color: var(--primary);
    border-color: var(--primary);
}
#lancontenedorcalc .input-sm,
#lancontenedorcalc select.input-sm {
    border-radius: 10px;
    height: 40px;
}
#lancontenedorcalc #lan_calcular {
    width: 100%;
    border-radius: 10px;
    background-color: var(--primary);
    color: #ffffff;
    font-weight: 700;
    font-size: 16px;
    height: 40px;
    border: none;
    display: inline-block;
    padding: 10px 50px;
}

/*** SALIDAS GRUPALES ***/

@media (min-width: 992px) {
    .mkte_productos-resultado #productos_app .col-md-9 {
        width: 100% !important;
    }
}


/*** AJUSTES PARA QUE SE RENDERICEN 4 PRODUCTOS POR LÍNEA ***/

@media (min-width: 768px) {
    .mkte_productos-resultado .thumbnails-mazorny {
        justify-content: flex-start !important;
    }
    
    .mkte_productos-resultado .thumbnails-mazorny .thumbnail {
        max-width: 24%;
        flex-basis: 20%;
    }
}

/*** FORMAS DE PAGO ***/

#app .modal-formas_pago .modal-content .modal-forma .list-inline,
#app .modal-formas_pago .modal-content .list-inline {
    display: none!important;
}

#app .modal-formas_pago .modal-content .modal-forma .info > th:nth-child(2), 
#app .modal-formas_pago .modal-content .info > th:nth-child(3),
#app .modal-formas_pago .modal-content .info > th:nth-child(6){display: none;}

#app .modal-formas_pago .modal-content tr > td.text-monospace:nth-child(2),
#app .modal-formas_pago .modal-content tr > td.text-monospace:nth-child(3),
#app .modal-formas_pago .modal-content tr > td.text-monospace:nth-child(6) {display: none!important;}