.formulario_buscador{
    display: none;
}

.contenedor_reserva {
    margin-right: 115px !important;
}

.contenerdor_compartir {
    margin-top: -85px;
}

.contenedor_buscador_carro .icono_compartir_barra {
    padding-right: 25px !important;
}

.contenedor_carro {
    margin: -102.5px 10px 0 -15px !important
}

:root {
    --checkout-container-padding-x  : 45px;
    --checkout-container-padding-y  : 20px;
    --color-primario                : #77aa45;
}

/* ====================== Lightbox de validacion ====================== */
.checkout-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.5);
    z-index: 1000;
    display: none;
}

.checkout-overlay.checkout-open {
    display: block;
}

.checkout-lightbox {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 640px;
    max-width: 92%;
    min-height: 100px;
    background: #FFFFFF;
    border-radius: 11px;
    z-index: 1001;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px 40px;
    box-sizing: border-box;
    text-align: center;
}

.checkout-lightbox.checkout-open {
    display: flex;
}

.checkout-lightbox-msg {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 17px;
    color: #888888;
}

.checkout-lightbox-close {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 24px;
    height: 24px;
    border: none;
    border-radius: 3.6px;
    background: var(--ps-color-activo, var(--color-primario));
    color: #fff;
    cursor: pointer;
    font-size: 14px;
    line-height: 1;
    font-weight: 600;
}

.body-container {
    min-height  : calc(100vh - 340px);
    padding     : 50px 0;
}

/** CHECKOUT BASE  **/

.checkout-wrap {
    display: flex;
    justify-content: center;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
}

.checkout-container {
    width: 920px;
    max-width: 95%;
    min-height: auto;
    margin: 0 auto 30px;
    padding: var(--checkout-container-padding-y) 0;
    background: #FFFFFF;
    border-radius: 11px;
    box-sizing: border-box;
    box-shadow: 0 1px 6px rgba(0,0,0,.06);
    color: #888888;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
}

.checkout-body {
    padding: 0 var(--checkout-container-padding-x);
}

.checkout-card {
    width: 680px;
    max-width: 100%;
    margin: 0 auto 30px;
    background: #FFFFFF;
    border-radius: 17px;
    overflow: hidden;
    box-sizing: border-box;
}

.checkout-card-title {
    height: 35px;
    line-height: 35px;
    padding: 0 25px;
    background: var(--color-primario, #77aa45);
    color: #FFFFFF;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
    font-weight: 500;
    font-size: 16px;
    box-sizing: border-box;
}

.checkout-card-body {
    padding: 15px 35px 20px;
    background: #f7f7f7;
    color: #888888;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
    font-weight: 500;
    font-size: 14px;
    box-sizing: border-box;
}

.checkout-text {
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
    font-weight: 500;
    color: #888888;
}

.checkout-text-sm {
    font-size: 13.6px;
}

.checkout-text-md {
    font-size: 14px;
}

.checkout-text-lg {
    font-size: 16px;
}

.checkout-input,
.checkout-select,
.checkout-textarea {
    box-sizing      : border-box;
    background      : #FFFFFF;
    border          : 1px solid #c4c4c4;
    border-radius   : 5px;
    font-family     : 'Montserrat', Arial, Helvetica, sans-serif;
    font-weight     : 500;
    font-size       : 14px;
    color           : #888888;
}

.checkout-input-obligatorio {
    background-color: #e9f9ff;
}

.checkout-input::placeholder,
.checkout-textarea::placeholder {
    color: #bebebe;
}

.checkout-actions {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
}

.checkout-btn {
    width: 180px;
    height: 29px;
    border: none;
    border-radius: 15px;
    background: var(--color-primario, #77aa45);
    color: #FFFFFF;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
    font-weight: 500;
    font-size: 14px;
    cursor: pointer;
}

.checkout-btn:disabled,
.checkout-btn-off {
    background: #cccccc;
    cursor: default;
}

.checkout-label,
.checkout-radio-label {
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
    font-weight: 500;
    font-size: 14px;
    color: #888888;
}

.checkout-label {
    display: block;
    margin-bottom: 3px;
}

.checkout-radio-label {
    vertical-align: middle;
    cursor: pointer;
}

/* ====================== Inputs base ====================== */

.checkout-field {
    margin-bottom: 10px;
}

.checkout-input,
.checkout-select,
.checkout-textarea {
    box-sizing      : border-box;
    background       : #FFFFFF;
    border           : 1px solid #c4c4c4;
    border-radius    : 5px;
    font-family      : 'Montserrat', Arial, Helvetica, sans-serif;
    font-weight      : 500;
    font-size        : 13.6px;
    color            : #888888;
}

.checkout-input-obligatorio {
    background-color: #e9f9ff;
}

.checkout-input::placeholder,
.checkout-textarea::placeholder {
    color: #bebebe;
}

.checkout-textarea {
    resize: none;
}

/* ====================== Inputs base ====================== */

/* ELEMENTOS LIGHTBOX */
.checkout-lightbox-content {
    width: 100%;
    text-align: center;
    margin: 8px 0;
}

.checkout-lightbox-text {
    margin-bottom: 22px;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
    font-weight: 500;
    font-size: 17px;
    color: #888888;
}

.checkout-lightbox-btn {
    margin: 0 auto;
}
/* FIN ELEMENTOS LIGHTBOX */

@media screen and (max-width: 837px) {
    .checkout-container {
        min-height: auto;
    }

    .checkout-card {
        width: 100%;
    }

    .checkout-card-title {
        padding: 0 18px;
        font-size: clamp(14px, 4vw, 16px);
    }

    .checkout-card-body {
        padding: 15px 24px 20px;
        font-size: clamp(12px, 3.4vw, 14px);
    }

    .checkout-actions {
        flex-direction: column;
        align-items: center;
    }

    .checkout-btn {
        width: 65%;
        max-width: 280px;
    }

    .checkout-input,
    .checkout-select,
    .checkout-textarea,
    .checkout-label,
    .checkout-radio-label {
        font-size: clamp(11px, 3.4vw, 14px);
    }
    
    .body-container {
        min-height  : unset;
        padding     : unset
    }
}