/*
 * ==========================================================
 * Bahía Cloud Checkout v3.1.0
 * Premium Checkout Experience
 * ==========================================================
 */

html.bc-checkout-v31 {
    --bc31-navy: #0b2d57;
    --bc31-blue: #124c80;
    --bc31-blue-dark: #0a345f;

    --bc31-cyan: #1fb7c5;
    --bc31-cyan-dark: #1299a7;
    --bc31-cyan-soft: #eaf9fa;

    --bc31-bg: #f5f9fc;
    --bc31-card: #ffffff;

    --bc31-text: #173653;
    --bc31-muted: #6f8498;

    --bc31-border: #dbe7ef;
    --bc31-border-soft: #e8eff4;

    --bc31-shadow:
        0 10px 32px
        rgba(11,45,87,.045);
}


/* ==========================================================
   PAGE
   ========================================================== */

html.bc-checkout-v31 body {
    background: var(--bc31-bg) !important;
}


/* ==========================================================
   HERO / HEADER
   ========================================================== */

html.bc-checkout-v31
.main-header {
    position: relative !important;

    overflow: hidden !important;

    padding-top: 44px !important;
    padding-bottom: 38px !important;

    background:
        radial-gradient(
            circle at 84% 10%,
            rgba(31,183,197,.09),
            transparent 30%
        ),
        linear-gradient(
            112deg,
            #f8fbfe 0%,
            #f3f8fc 55%,
            #eef8fa 100%
        ) !important;

    border-bottom:
        1px solid #dce8f0 !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.main-header-title {
    color: var(--bc31-navy) !important;

    font-size:
        clamp(39px,4vw,55px) !important;

    font-weight: 800 !important;

    letter-spacing: -.045em !important;

    line-height: 1.03 !important;
}


html.bc-checkout-v31
.main-header-title::before {
    display: block !important;

    width: 42px !important;
    height: 3px !important;

    margin-bottom: 13px !important;

    content: "" !important;

    background: var(--bc31-cyan) !important;

    border-radius: 99px !important;
}


html.bc-checkout-v31
.main-header .breadcrumb {
    margin-top: 10px !important;
}


html.bc-checkout-v31
.bc31-header-security {
    position: absolute;

    top: 52px;
    right: 0;

    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #45637c;

    font-size: 12px;
    font-weight: 550;
}


html.bc-checkout-v31
.bc31-header-security svg {
    width: 18px;
    height: 18px;

    color: var(--bc31-cyan-dark);
}


/* ==========================================================
   MAIN LAYOUT
   ========================================================== */

html.bc-checkout-v31
.bc31-layout {
    display: grid !important;

    grid-template-columns:
        minmax(0,1fr)
        350px !important;

    align-items: start !important;

    gap: 28px !important;
}


html.bc-checkout-v31
.bc31-layout
> .main-content {
    min-width: 0 !important;

    width: auto !important;
}


html.bc-checkout-v31
.bc31-layout
> .main-sidebar {
    min-width: 0 !important;

    width: auto !important;
}


/* ==========================================================
   COMMON CARDS
   ========================================================== */

html.bc-checkout-v31
.bc31-card {
    overflow: hidden !important;

    margin-bottom: 18px !important;

    background: #fff !important;

    border:
        1px solid
        var(--bc31-border) !important;

    border-radius: 14px !important;

    box-shadow:
        var(--bc31-shadow) !important;
}


html.bc-checkout-v31
.bc31-card
.panel-heading,

html.bc-checkout-v31
.bc31-card
.card-header,

html.bc-checkout-v31
.bc31-card
.section-header {
    padding:
        17px
        19px !important;

    background: #fff !important;

    border: 0 !important;

    border-bottom:
        1px solid
        var(--bc31-border-soft) !important;
}


html.bc-checkout-v31
.bc31-card
.panel-title,

html.bc-checkout-v31
.bc31-card
.section-title,

html.bc-checkout-v31
.bc31-card
.bc31-section-heading {
    margin: 0 !important;

    color: var(--bc31-navy) !important;

    font-size: 16px !important;
    font-weight: 800 !important;

    letter-spacing: -.015em !important;
}


html.bc-checkout-v31
.bc31-step {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 24px;
    height: 24px;

    margin-right: 9px;

    color: #fff;

    background: var(--bc31-cyan);

    border-radius: 50%;

    font-size: 11px;
    font-weight: 800;
}


/* ==========================================================
   ORDER
   ========================================================== */

html.bc-checkout-v31
.bc31-order {
    margin-bottom: 18px !important;
}


html.bc-checkout-v31
.bc31-order table {
    width: 100% !important;

    margin: 0 !important;

    border-collapse: collapse !important;
}


html.bc-checkout-v31
.bc31-order thead th {
    padding:
        11px
        14px !important;

    color: #71869a !important;

    background: #fbfdfe !important;

    border: 0 !important;

    border-bottom:
        1px solid
        var(--bc31-border-soft) !important;

    font-size: 10px !important;

    font-weight: 650 !important;
}


html.bc-checkout-v31
.bc31-order tbody td {
    padding:
        14px
        14px !important;

    vertical-align: middle !important;

    border: 0 !important;

    border-bottom:
        1px solid
        #edf2f6 !important;

    color: #536e84 !important;

    font-size: 11px !important;
}


html.bc-checkout-v31
.bc31-order tbody tr:last-child td {
    border-bottom: 0 !important;
}


html.bc-checkout-v31
.bc31-order strong,

html.bc-checkout-v31
.bc31-order .item-title,

html.bc-checkout-v31
.bc31-order .product-name {
    color: var(--bc31-navy) !important;

    font-size: 12.5px !important;

    font-weight: 750 !important;
}


html.bc-checkout-v31
.bc31-order small,

html.bc-checkout-v31
.bc31-order .text-muted {
    color: #8193a3 !important;

    font-size: 9.5px !important;

    line-height: 1.4 !important;
}


html.bc-checkout-v31
.bc31-order select,

html.bc-checkout-v31
.bc31-order input[type="number"] {
    min-height: 36px !important;

    background: #fff !important;

    border:
        1px solid
        #ccdce7 !important;

    border-radius: 6px !important;

    box-shadow: none !important;

    font-size: 10px !important;
}


html.bc-checkout-v31
.bc31-order
.bc31-order-footer {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 12px;

    padding:
        11px
        14px;

    background: #f8fbfd;

    border-top:
        1px solid
        var(--bc31-border-soft);
}


/* ==========================================================
   PROMO
   ========================================================== */

html.bc-checkout-v31
.bc31-promo {
    padding:
        18px !important;
}


html.bc-checkout-v31
.bc31-promo-title {
    display: flex;

    align-items: center;

    gap: 9px;

    margin:
        0
        0
        12px;

    color: var(--bc31-navy);

    font-size: 13px;
    font-weight: 800;
}


html.bc-checkout-v31
.bc31-promo-title svg {
    width: 20px;
    height: 20px;

    color: var(--bc31-blue);
}


html.bc-checkout-v31
.bc31-promo
.input-group,

html.bc-checkout-v31
.bc31-promo
.form-group {
    padding: 10px !important;

    background:
        linear-gradient(
            135deg,
            #e9fafa,
            #def6f8
        ) !important;

    border-radius: 10px !important;
}


html.bc-checkout-v31
.bc31-promo input {
    min-height: 42px !important;

    background: #fff !important;

    border:
        1px solid
        #cbdce6 !important;

    border-radius: 7px !important;

    box-shadow: none !important;

    font-size: 12px !important;
}


html.bc-checkout-v31
.bc31-promo .btn {
    min-height: 42px !important;

    padding:
        0
        18px !important;

    color: #fff !important;

    background: var(--bc31-blue) !important;

    border: 0 !important;

    border-radius: 7px !important;

    font-size: 11px !important;
    font-weight: 700 !important;
}


/* ==========================================================
   CUSTOMER DATA
   ========================================================== */

html.bc-checkout-v31
.bc31-data {
    padding-bottom: 18px !important;
}


html.bc-checkout-v31
.bc31-data
.panel-body,

html.bc-checkout-v31
.bc31-data
.card-body {
    padding:
        18px !important;
}


html.bc-checkout-v31
.bc31-data
.form-control,

html.bc-checkout-v31
.bc31-data
input:not([type="radio"]):not([type="checkbox"]),

html.bc-checkout-v31
.bc31-data
select {
    min-height: 43px !important;

    padding:
        9px
        11px !important;

    background: #fff !important;

    border:
        1px solid
        #ccdce7 !important;

    border-radius: 7px !important;

    box-shadow: none !important;

    color: #294960 !important;

    font-size: 12px !important;
}


html.bc-checkout-v31
.bc31-data
.form-control:focus,

html.bc-checkout-v31
.bc31-data
input:focus,

html.bc-checkout-v31
.bc31-data
select:focus {
    border-color:
        var(--bc31-cyan) !important;

    box-shadow:
        0 0 0 3px
        rgba(31,183,197,.09) !important;
}


html.bc-checkout-v31
.bc31-data label {
    margin-bottom: 6px !important;

    color: #3f6079 !important;

    font-size: 10px !important;

    font-weight: 650 !important;
}


html.bc-checkout-v31
.bc31-data h4,

html.bc-checkout-v31
.bc31-data h5,

html.bc-checkout-v31
.bc31-data .sub-heading {
    color: var(--bc31-navy) !important;

    font-size: 13px !important;

    font-weight: 750 !important;
}


/* ==========================================================
   CUSTOMER CHOICES
   ========================================================== */

html.bc-checkout-v31
.bc31-account-choice {
    display: grid !important;

    grid-template-columns:
        repeat(2,minmax(0,1fr)) !important;

    gap: 10px !important;

    margin-bottom: 15px !important;
}


html.bc-checkout-v31
.bc31-choice-card {
    min-height: 56px !important;

    padding:
        11px
        13px !important;

    background: #fbfdfe !important;

    border:
        1px solid
        var(--bc31-border) !important;

    border-radius: 8px !important;
}


html.bc-checkout-v31
.bc31-choice-card.is-selected {
    background:
        #f0fafb !important;

    border-color:
        var(--bc31-cyan) !important;
}


/* ==========================================================
   DOMAIN CONTACT
   ========================================================== */

html.bc-checkout-v31
.bc31-domain-contact {
    margin:
        14px
        18px
        0 !important;

    padding:
        14px !important;

    background: #f8fbfd !important;

    border:
        1px solid
        var(--bc31-border) !important;

    border-radius: 9px !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.bc31-domain-contact h3,

html.bc-checkout-v31
.bc31-domain-contact h4,

html.bc-checkout-v31
.bc31-domain-contact .panel-title {
    font-size: 12px !important;
}


/* ==========================================================
   PAYMENT
   ========================================================== */

html.bc-checkout-v31
.bc31-payment {
    padding-bottom: 18px !important;
}


html.bc-checkout-v31
.bc31-payment
.panel-body,

html.bc-checkout-v31
.bc31-payment
.card-body {
    padding:
        17px !important;
}


html.bc-checkout-v31
.bc31-payment
.form-control,

html.bc-checkout-v31
.bc31-payment
input {
    min-height: 42px !important;

    background: #fff !important;

    border:
        1px solid
        #ccdce7 !important;

    border-radius: 7px !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.bc31-payment
label {
    color: #3f6079 !important;

    font-size: 10px !important;

    font-weight: 650 !important;
}


html.bc-checkout-v31
.bc31-payment
#paymentGatewaysContainer,

html.bc-checkout-v31
.bc31-payment
.gateway-selector {
    margin-bottom: 15px !important;
}


html.bc-checkout-v31
.bc31-payment
.panel-check,

html.bc-checkout-v31
.bc31-payment
.gateway {
    background:
        #f2fbfc !important;

    border:
        1px solid
        #b9e4e8 !important;

    border-radius: 8px !important;
}


/* ==========================================================
   NEWSLETTER
   ========================================================== */

html.bc-checkout-v31
.bc31-newsletter {
    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    gap: 18px !important;

    min-height: 70px !important;

    padding:
        15px
        18px !important;
}


html.bc-checkout-v31
.bc31-newsletter h3,

html.bc-checkout-v31
.bc31-newsletter h4,

html.bc-checkout-v31
.bc31-newsletter .panel-title {
    margin: 0 !important;

    font-size: 12px !important;
}


/* ==========================================================
   SECURITY
   ========================================================== */

html.bc-checkout-v31
.bc31-security
.panel-body,

html.bc-checkout-v31
.bc31-security
.card-body {
    padding:
        16px
        18px
        19px !important;
}


html.bc-checkout-v31
.bc31-security-copy {
    margin:
        4px
        0
        14px !important;

    color: var(--bc31-muted);

    font-size: 10px;

    line-height: 1.45;
}


/* ==========================================================
   ORDER SUMMARY
   ========================================================== */

html.bc-checkout-v31
.bc31-summary {
    position: sticky !important;

    top: 20px !important;

    overflow: hidden !important;

    color: #fff !important;

    background:
        linear-gradient(
            165deg,
            #176296 0%,
            #104d80 48%,
            #092f59 100%
        ) !important;

    border: 0 !important;

    border-radius: 15px !important;

    box-shadow:
        0 18px 38px
        rgba(11,45,87,.17) !important;
}


html.bc-checkout-v31
.bc31-summary
.panel-heading,

html.bc-checkout-v31
.bc31-summary
.card-header {
    padding:
        20px
        20px
        13px !important;

    background: transparent !important;

    border: 0 !important;
}


html.bc-checkout-v31
.bc31-summary
.panel-title,

html.bc-checkout-v31
.bc31-summary
.card-title {
    color: #fff !important;

    font-size: 17px !important;
    font-weight: 800 !important;

    letter-spacing: -.02em !important;
}


html.bc-checkout-v31
.bc31-summary
.panel-body,

html.bc-checkout-v31
.bc31-summary
.card-body {
    padding:
        5px
        20px
        19px !important;

    background: transparent !important;
}


html.bc-checkout-v31
.bc31-summary
.summary-list,

html.bc-checkout-v31
.bc31-summary
.list-group {
    margin: 0 !important;

    padding: 0 !important;
}


html.bc-checkout-v31
.bc31-summary
.list-item,

html.bc-checkout-v31
.bc31-summary
.list-group-item {
    display: grid !important;

    grid-template-columns:
        minmax(0,1fr)
        auto !important;

    gap:
        4px
        13px !important;

    padding:
        10px
        0 !important;

    color: #fff !important;

    background: transparent !important;

    border: 0 !important;

    border-bottom:
        1px solid
        rgba(255,255,255,.12) !important;
}


html.bc-checkout-v31
.bc31-summary
.list-item:last-child,

html.bc-checkout-v31
.bc31-summary
.list-group-item:last-child {
    border-bottom: 0 !important;
}


html.bc-checkout-v31
.bc31-summary
strong,

html.bc-checkout-v31
.bc31-summary
.item-name,

html.bc-checkout-v31
.bc31-summary
.name {
    color: #fff !important;

    font-size: 11px !important;

    font-weight: 700 !important;

    line-height: 1.4 !important;
}


html.bc-checkout-v31
.bc31-summary
small,

html.bc-checkout-v31
.bc31-summary
.text-muted,

html.bc-checkout-v31
.bc31-summary
.faded {
    display: block !important;

    margin-top: 2px !important;

    color:
        rgba(255,255,255,.60) !important;

    font-size: 9px !important;

    line-height: 1.4 !important;
}


html.bc-checkout-v31
.bc31-summary
.price,

html.bc-checkout-v31
.bc31-summary
.amount,

html.bc-checkout-v31
.bc31-summary
.item-price {
    color: #fff !important;

    font-size: 10.5px !important;

    font-weight: 700 !important;

    white-space: nowrap !important;
}


/* ==========================================================
   SUMMARY TOTAL
   ========================================================== */

html.bc-checkout-v31
.bc31-summary
.price-total,

html.bc-checkout-v31
.bc31-summary
.total {
    margin-top: 8px !important;

    padding-top: 16px !important;

    border-top:
        1px solid
        rgba(255,255,255,.16) !important;
}


html.bc-checkout-v31
.bc31-summary
.price-amount,

html.bc-checkout-v31
.bc31-summary
.total-due {
    color: #26d0d4 !important;

    font-size: 35px !important;

    font-weight: 850 !important;

    letter-spacing: -.045em !important;

    line-height: 1 !important;
}


/* ==========================================================
   SUMMARY BUTTON
   ========================================================== */

html.bc-checkout-v31
.bc31-summary
#btnCompleteOrder,

html.bc-checkout-v31
.bc31-summary
#btnCompleteProductConfig,

html.bc-checkout-v31
.bc31-summary
.btn-checkout,

html.bc-checkout-v31
.bc31-summary
button[type="submit"] {
    width: 100% !important;

    min-height: 50px !important;

    margin-top: 17px !important;

    color: #fff !important;

    background:
        linear-gradient(
            90deg,
            #28c4cf,
            #1fb5c2
        ) !important;

    border: 0 !important;

    border-radius: 8px !important;

    box-shadow:
        0 9px 20px
        rgba(31,183,197,.20) !important;

    font-size: 12px !important;

    font-weight: 800 !important;
}


/* ==========================================================
   SUMMARY SECURITY
   ========================================================== */

html.bc-checkout-v31
.bc31-summary-secure {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 7px;

    margin-top: 14px;

    color:
        rgba(255,255,255,.69);

    font-size: 9.5px;

    line-height: 1.4;
}


html.bc-checkout-v31
.bc31-summary-secure svg {
    width: 12px;
    height: 12px;
}


html.bc-checkout-v31
.bc31-summary-protection {
    display: flex;

    align-items: flex-start;

    gap: 9px;

    margin-top: 15px;

    padding-top: 15px;

    color:
        rgba(255,255,255,.70);

    border-top:
        1px solid
        rgba(255,255,255,.12);

    font-size: 9px;

    line-height: 1.4;
}


html.bc-checkout-v31
.bc31-summary-protection svg {
    width: 16px;
    height: 16px;

    flex: 0 0 16px;

    color: #d9fbfc;
}


/* ==========================================================
   TERMS
   ========================================================== */

html.bc-checkout-v31
.bc31-terms {
    margin: 0 !important;

    padding:
        13px
        17px !important;

    color: #60788e !important;

    background: #fff !important;

    border-top:
        1px solid
        var(--bc31-border) !important;

    font-size: 9.5px !important;

    line-height: 1.4 !important;
}


/* ==========================================================
   REMOVE EXCESS / OLD VISUAL NOISE
   ========================================================== */

html.bc-checkout-v31
.bc31-summary
.bc-flow-secure-note,

html.bc-checkout-v31
.bc31-summary
.bc23-secure-note,

html.bc-checkout-v31
.bc31-summary
.bc231-secure-inline {
    display: none !important;
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 980px) {

    html.bc-checkout-v31
    .bc31-layout {
        grid-template-columns:
            minmax(0,1fr) !important;
    }


    html.bc-checkout-v31
    .bc31-summary {
        position: static !important;

        width: 100% !important;

        margin-bottom: 18px !important;
    }


    html.bc-checkout-v31
    .bc31-header-security {
        display: none;
    }
}


@media (max-width: 720px) {

    html.bc-checkout-v31
    .main-header {
        padding:
            31px
            0
            28px !important;
    }


    html.bc-checkout-v31
    .main-header-title {
        font-size: 38px !important;
    }


    html.bc-checkout-v31
    .bc31-account-choice {
        grid-template-columns:
            minmax(0,1fr) !important;
    }


    html.bc-checkout-v31
    .bc31-newsletter {
        align-items: flex-start !important;

        flex-direction: column !important;
    }


    html.bc-checkout-v31
    .bc31-order {
        overflow-x: auto !important;
    }


    html.bc-checkout-v31
    .bc31-order table {
        min-width: 650px !important;
    }
}


@media (max-width: 640px) {

    html.bc-checkout-v31
    input:not(
        [type="checkbox"]
    ):not(
        [type="radio"]
    ),

    html.bc-checkout-v31
    select,

    html.bc-checkout-v31
    textarea {
        font-size: 16px !important;
    }


    html.bc-checkout-v31
    .bc31-card
    .panel-heading,

    html.bc-checkout-v31
    .bc31-card
    .card-header,

    html.bc-checkout-v31
    .bc31-card
    .section-header {
        padding:
            15px
            14px !important;
    }


    html.bc-checkout-v31
    .bc31-data
    .panel-body,

    html.bc-checkout-v31
    .bc31-data
    .card-body,

    html.bc-checkout-v31
    .bc31-payment
    .panel-body,

    html.bc-checkout-v31
    .bc31-payment
    .card-body {
        padding:
            15px
            14px !important;
    }


    html.bc-checkout-v31
    .bc31-summary
    .panel-heading {
        padding:
            18px
            17px
            12px !important;
    }


    html.bc-checkout-v31
    .bc31-summary
    .panel-body {
        padding:
            5px
            17px
            18px !important;
    }
}

/* === BAHIA CHECKOUT v3.1.1 START === */


/* ==========================================================
   1. ESPACIADO GENERAL ENTRE SECCIONES
   ========================================================== */

html.bc-checkout-v31
.bc31-card {
    margin-bottom:
        26px !important;
}


html.bc-checkout-v31
.bc31-order {
    margin-bottom:
        16px !important;
}


html.bc-checkout-v31
.bc31-promo {
    margin-bottom:
        28px !important;
}


html.bc-checkout-v31
.bc31-data {
    margin-bottom:
        28px !important;
}


html.bc-checkout-v31
.bc31-payment {
    margin-bottom:
        24px !important;
}


html.bc-checkout-v31
.bc31-newsletter {
    margin-bottom:
        24px !important;
}


html.bc-checkout-v31
.bc31-security {
    margin-bottom:
        28px !important;
}


/* ==========================================================
   2. TUS DATOS
   ELIMINAR CARD DENTRO DE CARD
   ========================================================== */

html.bc-checkout-v31
.bc31-data {
    overflow:
        hidden !important;

    background:
        #ffffff !important;
}


/*
 * Los paneles internos dejan de parecer cards independientes.
 */

html.bc-checkout-v31
.bc31-data .panel,

html.bc-checkout-v31
.bc31-data .card,

html.bc-checkout-v31
.bc31-data fieldset {
    margin:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


/* ==========================================================
   3. SELECTORES DE CUENTA
   ========================================================== */

html.bc-checkout-v31
.bc31-data
.bc31-account-choice {
    display:
        grid !important;

    grid-template-columns:
        minmax(0,1fr) !important;

    gap:
        0 !important;

    margin:
        0
        0
        20px !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;
}


html.bc-checkout-v31
.bc31-data
.bc31-choice-card {
    min-height:
        auto !important;

    margin:
        0 !important;

    padding:
        13px
        2px !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-bottom:
        1px solid
        #e7eef4 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;

    transition:
        none !important;
}


html.bc-checkout-v31
.bc31-data
.bc31-choice-card:first-child {
    border-top:
        1px solid
        #e7eef4 !important;
}


html.bc-checkout-v31
.bc31-data
.bc31-choice-card.is-selected {
    background:
        transparent !important;

    border-color:
        #dbe7ef !important;

    box-shadow:
        none !important;
}


/*
 * El radio seleccionado sigue siendo la señal visual,
 * no un rectángulo cyan alrededor de todo el formulario.
 */

html.bc-checkout-v31
.bc31-data
.bc31-choice-card.is-selected
input[type="radio"] {
    accent-color:
        #124c80 !important;
}


/* ==========================================================
   4. CUERPO DEL FORMULARIO DE CLIENTE
   ========================================================== */

html.bc-checkout-v31
.bc31-data
.panel-body,

html.bc-checkout-v31
.bc31-data
.card-body {
    padding:
        5px
        18px
        19px !important;

    background:
        transparent !important;

    border:
        0 !important;
}


html.bc-checkout-v31
.bc31-data h4,

html.bc-checkout-v31
.bc31-data h5,

html.bc-checkout-v31
.bc31-data .sub-heading {
    margin-top:
        19px !important;

    margin-bottom:
        13px !important;

    color:
        #234763 !important;

    font-size:
        14px !important;

    font-weight:
        650 !important;
}


/* ==========================================================
   5. DATOS ALTERNATIVOS DEL DOMINIO
   ========================================================== */

html.bc-checkout-v31
.bc31-domain-contact {
    margin:
        16px
        18px
        0 !important;

    padding:
        16px !important;

    background:
        #f7fafc !important;

    border:
        1px solid
        #e0e9f0 !important;

    border-radius:
        9px !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-domain-contact
.panel-body,

html.bc-checkout-v31
.bc31-domain-contact
.card-body {
    padding:
        12px
        0
        0 !important;
}


/* ==========================================================
   6. PAGO
   ELIMINAR NESTED CARDS
   ========================================================== */

html.bc-checkout-v31
.bc31-payment {
    overflow:
        hidden !important;
}


html.bc-checkout-v31
.bc31-payment .panel,

html.bc-checkout-v31
.bc31-payment .card,

html.bc-checkout-v31
.bc31-payment fieldset {
    margin:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-payment
.panel-heading,

html.bc-checkout-v31
.bc31-payment
.card-header {
    margin:
        20px
        18px
        12px !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;
}


html.bc-checkout-v31
.bc31-payment
.panel-heading
.panel-title,

html.bc-checkout-v31
.bc31-payment
.card-header
.card-title {
    color:
        #0b2d57 !important;

    font-size:
        16px !important;

    font-weight:
        750 !important;
}


html.bc-checkout-v31
.bc31-payment
.panel-body,

html.bc-checkout-v31
.bc31-payment
.card-body {
    padding:
        0
        18px
        19px !important;

    background:
        transparent !important;

    border:
        0 !important;
}


/*
 * La zona donde viven los campos de la tarjeta
 * sí conserva una superficie suave para agruparlos,
 * pero no una segunda "card pesada".
 */

html.bc-checkout-v31
.bc31-payment
.cc-input-container,

html.bc-checkout-v31
.bc31-payment
#creditCardInputFields,

html.bc-checkout-v31
.bc31-payment
[id*="creditCardInput"] {
    padding:
        17px !important;

    background:
        #f7fafc !important;

    border:
        1px solid
        #e0e9f0 !important;

    border-radius:
        9px !important;

    box-shadow:
        none !important;
}


/* ==========================================================
   7. NEWSLETTER
   ========================================================== */

html.bc-checkout-v31
.bc31-newsletter {
    min-height:
        72px !important;

    padding:
        16px
        18px !important;

    background:
        #ffffff !important;
}


html.bc-checkout-v31
.bc31-newsletter .panel,

html.bc-checkout-v31
.bc31-newsletter .card {
    margin:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    box-shadow:
        none !important;
}


/* ==========================================================
   8. RECAPTCHA
   ========================================================== */

html.bc-checkout-v31
.bc31-security {
    overflow:
        hidden !important;
}


html.bc-checkout-v31
.bc31-security .panel,

html.bc-checkout-v31
.bc31-security .card {
    margin:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-security
.panel-body,

html.bc-checkout-v31
.bc31-security
.card-body {
    padding:
        13px
        18px
        19px !important;

    background:
        transparent !important;

    border:
        0 !important;
}


/* ==========================================================
   9. MANTENIMIENTO WORDPRESS
   NO USA CANTIDAD
   ========================================================== */

html.bc-checkout-v31
.bc311-maintenance-row
.bc311-qty-cell {
    color:
        transparent !important;
}


html.bc-checkout-v31
.bc311-maintenance-row
.bc311-qty-cell
input,

html.bc-checkout-v31
.bc311-maintenance-row
.bc311-qty-cell
select,

html.bc-checkout-v31
.bc311-maintenance-row
.bc311-qty-cell
button,

html.bc-checkout-v31
.bc311-maintenance-row
.bc311-qty-cell
.input-group,

html.bc-checkout-v31
.bc311-maintenance-row
.bc311-qty-cell
.input-group-btn {
    position:
        absolute !important;

    width:
        1px !important;

    height:
        1px !important;

    overflow:
        hidden !important;

    opacity:
        0 !important;

    pointer-events:
        none !important;
}


/* ==========================================================
   10. RESUMEN DEL PEDIDO
   ========================================================== */

html.bc-checkout-v31
.bc31-summary {
    border-radius:
        15px !important;
}


html.bc-checkout-v31
.bc31-summary
.panel-heading,

html.bc-checkout-v31
.bc31-summary
.card-header {
    padding:
        21px
        20px
        14px !important;
}


html.bc-checkout-v31
.bc31-summary
.panel-body,

html.bc-checkout-v31
.bc31-summary
.card-body {
    padding:
        5px
        20px
        20px !important;
}


/*
 * Productos más legibles.
 */

html.bc-checkout-v31
.bc31-summary
strong,

html.bc-checkout-v31
.bc31-summary
.item-name,

html.bc-checkout-v31
.bc31-summary
.name {
    font-size:
        12px !important;

    line-height:
        1.35 !important;
}


html.bc-checkout-v31
.bc31-summary
small,

html.bc-checkout-v31
.bc31-summary
.text-muted,

html.bc-checkout-v31
.bc31-summary
.faded {
    color:
        rgba(255,255,255,.66) !important;

    font-size:
        9.5px !important;
}


/*
 * Filas irrelevantes detectadas por JS.
 */

html.bc-checkout-v31
.bc31-summary
.bc311-summary-hidden {
    display:
        none !important;
}


/*
 * Separación entre el listado de productos
 * y los cargos reales por ciclo.
 */

html.bc-checkout-v31
.bc31-summary
.bc311-summary-active-cycle {
    padding:
        9px
        0 !important;
}


/*
 * La capa v3.1 agregó una segunda caja "Compra protegida".
 * La eliminamos; dejamos la protección original de WHMCS.
 */

html.bc-checkout-v31
.bc31-summary
.bc31-summary-protection {
    display:
        none !important;
}


/*
 * Menos líneas inútiles.
 */

html.bc-checkout-v31
.bc31-summary hr:empty {
    display:
        none !important;
}


/* ==========================================================
   11. AVISO ANTIFRAUDE INFERIOR
   ========================================================== */

html.bc-checkout-v31
.bc311-fraud-notice-hidden {
    display:
        none !important;
}


/* ==========================================================
   12. BORDES UNIFORMES
   ========================================================== */

html.bc-checkout-v31
.bc31-data,

html.bc-checkout-v31
.bc31-payment,

html.bc-checkout-v31
.bc31-newsletter,

html.bc-checkout-v31
.bc31-security,

html.bc-checkout-v31
.bc31-order,

html.bc-checkout-v31
.bc31-promo {
    border:
        1px solid
        #dbe7ef !important;

    border-radius:
        14px !important;

    box-shadow:
        0 9px 28px
        rgba(11,45,87,.035) !important;
}


/* ==========================================================
   13. MOBILE
   ========================================================== */

@media (max-width: 720px) {

    html.bc-checkout-v31
    .bc31-card {
        margin-bottom:
            18px !important;
    }


    html.bc-checkout-v31
    .bc31-promo,

    html.bc-checkout-v31
    .bc31-data,

    html.bc-checkout-v31
    .bc31-payment,

    html.bc-checkout-v31
    .bc31-newsletter,

    html.bc-checkout-v31
    .bc31-security {
        margin-bottom:
            20px !important;
    }


    html.bc-checkout-v31
    .bc31-data
    .panel-body,

    html.bc-checkout-v31
    .bc31-data
    .card-body {
        padding:
            4px
            14px
            16px !important;
    }


    html.bc-checkout-v31
    .bc31-domain-contact {
        margin:
            14px
            14px
            0 !important;
    }


    html.bc-checkout-v31
    .bc31-payment
    .panel-heading,

    html.bc-checkout-v31
    .bc31-payment
    .card-header {
        margin:
            18px
            14px
            11px !important;
    }


    html.bc-checkout-v31
    .bc31-payment
    .panel-body,

    html.bc-checkout-v31
    .bc31-payment
    .card-body {
        padding:
            0
            14px
            16px !important;
    }
}


/* === BAHIA CHECKOUT v3.1.1 END === */

/* === BAHIA CHECKOUT v3.1.2 START === */


/* ==========================================================
   1. RITMO GENERAL
   ========================================================== */

html.bc-checkout-v31
.bc31-promo {
    margin-bottom: 30px !important;
}

html.bc-checkout-v31
.bc31-data {
    margin-bottom: 30px !important;
}

html.bc-checkout-v31
.bc31-payment {
    margin-bottom: 24px !important;
}

html.bc-checkout-v31
.bc31-newsletter {
    margin-top: 22px !important;
    margin-bottom: 22px !important;
}

html.bc-checkout-v31
.bc31-security {
    margin-top: 22px !important;
    margin-bottom: 28px !important;
}


/* ==========================================================
   2. TUS DATOS
   QUITAR "CARD DENTRO DE CARD"
   ========================================================== */

/*
 * Neutralizar panel-check/card que envuelve
 * el formulario completo de creación de cuenta.
 */

html.bc-checkout-v31
.bc31-data
.bc31-choice-card,

html.bc-checkout-v31
.bc31-data
.bc31-choice-card.is-selected,

html.bc-checkout-v31
.bc31-data
.panel-check,

html.bc-checkout-v31
.bc31-data
.panel-check.checked,

html.bc-checkout-v31
.bc31-data
.panel-check.active {
    background: transparent !important;

    border: 0 !important;

    border-radius: 0 !important;

    box-shadow: none !important;
}


/*
 * El selector es simplemente una fila.
 */

html.bc-checkout-v31
.bc31-data
.bc31-choice-card {
    min-height: 48px !important;

    padding:
        12px
        4px !important;

    border-bottom:
        1px solid
        #e5edf3 !important;
}


html.bc-checkout-v31
.bc31-data
.bc31-choice-card:first-of-type {
    border-top:
        1px solid
        #e5edf3 !important;
}


html.bc-checkout-v31
.bc31-data
.bc31-choice-card label {
    margin: 0 !important;

    color:
        #46647b !important;

    font-size:
        12.5px !important;

    font-weight:
        500 !important;
}


/*
 * Radio seleccionado = única indicación de selección.
 */

html.bc-checkout-v31
.bc31-data
.bc31-choice-card input[type="radio"] {
    accent-color:
        #124c80 !important;
}


/*
 * El contenido del formulario queda blanco.
 */

html.bc-checkout-v31
.bc31-data
.bc312-account-form,

html.bc-checkout-v31
.bc31-data
.bc312-account-form * {
    box-shadow:
        none;
}


html.bc-checkout-v31
.bc31-data
.bc312-account-form {
    margin:
        0 !important;

    padding:
        17px
        0
        3px !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;
}


/*
 * Remover cualquier cyan que Lagom deje en el holder.
 */

html.bc-checkout-v31
.bc31-data
.bc312-account-form-parent {
    background:
        #ffffff !important;

    border:
        0 !important;

    box-shadow:
        none !important;
}


/* ==========================================================
   3. DATOS ALTERNATIVOS DEL DOMINIO
   ========================================================== */

html.bc-checkout-v31
.bc31-domain-contact {
    margin:
        18px
        0
        0 !important;

    padding:
        18px !important;

    background:
        #f8fbfd !important;

    border:
        1px solid
        #e0eaf1 !important;

    border-radius:
        10px !important;
}


/* ==========================================================
   4. PAGO
   QUITAR CARD "DETALLES DE PAGO"
   ========================================================== */

html.bc-checkout-v31
.bc31-payment
.bc312-payment-details {
    margin:
        22px
        0
        0 !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-payment
.bc312-payment-details
> .panel-heading,

html.bc-checkout-v31
.bc31-payment
.bc312-payment-details
> .card-header {
    margin:
        0
        18px
        13px !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;
}


html.bc-checkout-v31
.bc31-payment
.bc312-payment-details
.panel-title,

html.bc-checkout-v31
.bc31-payment
.bc312-payment-details
.card-title {
    color:
        #0b2d57 !important;

    font-size:
        17px !important;

    font-weight:
        750 !important;
}


html.bc-checkout-v31
.bc31-payment
.bc312-payment-details
> .panel-body,

html.bc-checkout-v31
.bc31-payment
.bc312-payment-details
> .card-body {
    margin: 0 !important;

    padding:
        0
        18px
        20px !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


/*
 * Neutralizar wrappers grises heredados
 * alrededor de los campos Stripe.
 */

html.bc-checkout-v31
.bc31-payment
.bc312-payment-shell {
    margin: 0 !important;

    padding:
        16px !important;

    background:
        #f8fbfd !important;

    border:
        1px solid
        #e2ebf1 !important;

    border-radius:
        9px !important;

    box-shadow:
        none !important;
}


/* ==========================================================
   5. NEWSLETTER
   ========================================================== */

html.bc-checkout-v31
.bc31-newsletter {
    min-height:
        66px !important;

    padding:
        14px
        18px !important;

    background:
        #ffffff !important;
}


html.bc-checkout-v31
.bc31-newsletter::before,

html.bc-checkout-v31
.bc31-newsletter::after {
    display:
        none !important;
}


html.bc-checkout-v31
.bc31-newsletter
.bc312-newsletter-control {
    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        flex-end !important;

    gap:
        10px !important;

    width:
        auto !important;

    min-height:
        auto !important;

    margin:
        0 !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-newsletter
.bc312-newsletter-control label {
    margin: 0 !important;

    color:
        #526f86 !important;

    font-size:
        11px !important;

    font-weight:
        550 !important;
}


/*
 * Eliminar la línea decorativa debajo del título.
 */

html.bc-checkout-v31
.bc31-newsletter hr,

html.bc-checkout-v31
.bc31-newsletter .divider {
    display:
        none !important;
}


/* ==========================================================
   6. CAPTCHA SIN OTRA CARD INTERNA
   ========================================================== */

html.bc-checkout-v31
.bc31-security
.bc312-recaptcha-shell {
    margin:
        0 !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-security
.panel-body,

html.bc-checkout-v31
.bc31-security
.card-body {
    padding:
        4px
        18px
        19px !important;

    background:
        transparent !important;
}


html.bc-checkout-v31
.bc31-security
.g-recaptcha {
    margin-top:
        8px !important;
}


/* ==========================================================
   7. QUANTITY WORDPRESS
   ========================================================== */

html.bc-checkout-v31
.bc31-order
.bc312-maintenance-qty {
    position:
        relative !important;

    font-size:
        0 !important;

    text-align:
        center !important;
}


html.bc-checkout-v31
.bc31-order
.bc312-maintenance-qty
> * {
    position:
        absolute !important;

    width:
        1px !important;

    height:
        1px !important;

    overflow:
        hidden !important;

    opacity:
        0 !important;

    pointer-events:
        none !important;
}


html.bc-checkout-v31
.bc31-order
.bc312-maintenance-qty::after {
    display:
        inline-block !important;

    position:
        static !important;

    width:
        auto !important;

    height:
        auto !important;

    content:
        "—" !important;

    color:
        #98a9b7 !important;

    font-size:
        12px !important;

    opacity:
        1 !important;
}


/* ==========================================================
   8. SUMMARY
   SOLO PRODUCTOS + TOTAL
   ========================================================== */

html.bc-checkout-v31
.bc31-summary
.bc312-summary-hidden {
    display:
        none !important;
}


html.bc-checkout-v31
.bc31-summary
.list-item,

html.bc-checkout-v31
.bc31-summary
.list-group-item {
    padding:
        11px
        0 !important;
}


html.bc-checkout-v31
.bc31-summary
strong,

html.bc-checkout-v31
.bc31-summary
.item-name,

html.bc-checkout-v31
.bc31-summary
.name {
    font-size:
        12px !important;

    line-height:
        1.35 !important;
}


html.bc-checkout-v31
.bc31-summary
.price,

html.bc-checkout-v31
.bc31-summary
.amount,

html.bc-checkout-v31
.bc31-summary
.item-price {
    font-size:
        11px !important;
}


html.bc-checkout-v31
.bc31-summary
.price-total,

html.bc-checkout-v31
.bc31-summary
.total {
    margin-top:
        11px !important;

    padding-top:
        18px !important;
}


/* ==========================================================
   9. FRAUD NOTICE COMPLETO
   ========================================================== */

html.bc-checkout-v31
.bc311-fraud-notice-hidden,

html.bc-checkout-v31
.bc312-fraud-container-hidden {
    display:
        none !important;

    width:
        0 !important;

    height:
        0 !important;

    min-height:
        0 !important;

    margin:
        0 !important;

    padding:
        0 !important;

    border:
        0 !important;

    overflow:
        hidden !important;
}


/* ==========================================================
   10. BORDES / SOMBRAS
   ========================================================== */

html.bc-checkout-v31
.bc31-order,

html.bc-checkout-v31
.bc31-promo,

html.bc-checkout-v31
.bc31-data,

html.bc-checkout-v31
.bc31-payment,

html.bc-checkout-v31
.bc31-newsletter,

html.bc-checkout-v31
.bc31-security {
    border-color:
        #dce7ef !important;

    border-radius:
        13px !important;

    box-shadow:
        0 8px 24px
        rgba(11,45,87,.028) !important;
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 720px) {

    html.bc-checkout-v31
    .bc31-newsletter {
        align-items:
            flex-start !important;

        gap:
            12px !important;

        padding:
            15px
            14px !important;
    }


    html.bc-checkout-v31
    .bc31-newsletter
    .bc312-newsletter-control {
        justify-content:
            space-between !important;

        width:
            100% !important;
    }


    html.bc-checkout-v31
    .bc31-security
    .panel-body,

    html.bc-checkout-v31
    .bc31-security
    .card-body {
        padding:
            3px
            14px
            17px !important;
    }


    html.bc-checkout-v31
    .bc31-payment
    .bc312-payment-details
    > .panel-heading,

    html.bc-checkout-v31
    .bc31-payment
    .bc312-payment-details
    > .card-header {
        margin:
            0
            14px
            12px !important;
    }


    html.bc-checkout-v31
    .bc31-payment
    .bc312-payment-details
    > .panel-body,

    html.bc-checkout-v31
    .bc31-payment
    .bc312-payment-details
    > .card-body {
        padding:
            0
            14px
            17px !important;
    }
}


/* === BAHIA CHECKOUT v3.1.2 END === */

/* === BAHIA CHECKOUT v3.2.0 START === */


/* ==========================================================
   1. RITMO GENERAL
   ========================================================== */

html.bc-checkout-v31
.bc31-card {
    margin-bottom: 24px !important;
}

html.bc-checkout-v31
.bc31-promo {
    margin-bottom: 30px !important;
}

html.bc-checkout-v31
.bc31-data {
    margin-bottom: 30px !important;
}

html.bc-checkout-v31
.bc31-payment {
    margin-bottom: 22px !important;
}

html.bc-checkout-v31
.bc31-newsletter {
    margin-bottom: 22px !important;
}

html.bc-checkout-v31
.bc31-security {
    margin-bottom: 28px !important;
}


/* ==========================================================
   2. TU PEDIDO
   ========================================================== */

html.bc-checkout-v31
.bc31-order {
    overflow: hidden !important;
}


html.bc-checkout-v31
.bc31-order table {
    table-layout: auto !important;
}


html.bc-checkout-v31
.bc31-order tbody td {
    padding-top: 13px !important;
    padding-bottom: 13px !important;
}


html.bc-checkout-v31
.bc31-order
.bc320-maintenance-row
.bc320-maintenance-qty {
    position: relative !important;

    min-width: 38px !important;

    font-size: 0 !important;

    color: transparent !important;

    text-align: center !important;
}


html.bc-checkout-v31
.bc31-order
.bc320-maintenance-row
.bc320-maintenance-qty
input,

html.bc-checkout-v31
.bc31-order
.bc320-maintenance-row
.bc320-maintenance-qty
select,

html.bc-checkout-v31
.bc31-order
.bc320-maintenance-row
.bc320-maintenance-qty
button,

html.bc-checkout-v31
.bc31-order
.bc320-maintenance-row
.bc320-maintenance-qty
.input-group,

html.bc-checkout-v31
.bc31-order
.bc320-maintenance-row
.bc320-maintenance-qty
.bootstrap-touchspin,

html.bc-checkout-v31
.bc31-order
.bc320-maintenance-row
.bc320-maintenance-qty
> * {
    position: absolute !important;

    width: 1px !important;
    height: 1px !important;

    overflow: hidden !important;

    opacity: 0 !important;

    pointer-events: none !important;
}


html.bc-checkout-v31
.bc31-order
.bc320-maintenance-row
.bc320-maintenance-qty::after {
    position: static !important;

    display: inline-block !important;

    width: auto !important;
    height: auto !important;

    content: "—" !important;

    color: #9aabb8 !important;

    font-size: 12px !important;

    opacity: 1 !important;
}


/* ==========================================================
   3. PROMOCIÓN MÁS COMPACTA
   ========================================================== */

html.bc-checkout-v31
.bc31-promo {
    padding: 16px 18px 18px !important;
}


html.bc-checkout-v31
.bc31-promo-title {
    margin-bottom: 11px !important;

    font-size: 13px !important;
}


html.bc-checkout-v31
.bc31-promo
.input-group,

html.bc-checkout-v31
.bc31-promo
.form-group {
    margin: 0 !important;

    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;
}


html.bc-checkout-v31
.bc31-promo input {
    min-height: 43px !important;
}


html.bc-checkout-v31
.bc31-promo .btn {
    min-height: 43px !important;

    background: #124c80 !important;
}


/* ==========================================================
   4. TUS DATOS
   FORMULARIO FUERA DEL SELECTOR
   ========================================================== */

html.bc-checkout-v31
.bc31-data {
    background: #fff !important;
}


html.bc-checkout-v31
.bc31-data
.bc31-account-choice {
    display: block !important;

    margin: 0 18px 0 !important;

    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;
}


html.bc-checkout-v31
.bc31-data
.bc31-choice-card,

html.bc-checkout-v31
.bc31-data
.bc31-choice-card.is-selected,

html.bc-checkout-v31
.bc31-data
.panel-check,

html.bc-checkout-v31
.bc31-data
.panel-check.checked,

html.bc-checkout-v31
.bc31-data
.panel-check.active {
    min-height: 48px !important;

    margin: 0 !important;

    padding: 13px 2px !important;

    background: transparent !important;

    border: 0 !important;

    border-bottom:
        1px solid #e5edf3 !important;

    border-radius: 0 !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.bc31-data
.bc31-account-choice
.bc31-choice-card:first-child {
    border-top:
        1px solid #e5edf3 !important;
}


html.bc-checkout-v31
.bc31-data
.bc31-choice-card label {
    margin: 0 !important;

    color: #45637b !important;

    font-size: 12.5px !important;

    font-weight: 500 !important;
}


html.bc-checkout-v31
.bc320-account-form-host {
    margin: 0 !important;

    padding:
        18px
        18px
        20px !important;

    background: #ffffff !important;

    border: 0 !important;

    border-radius: 0 !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.bc320-account-form {
    margin: 0 !important;

    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;

    border-radius: 0 !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.bc320-account-form
.panel,

html.bc-checkout-v31
.bc320-account-form
.card,

html.bc-checkout-v31
.bc320-account-form
fieldset {
    margin: 0 !important;

    background: transparent !important;

    border: 0 !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.bc320-account-form
h4,

html.bc-checkout-v31
.bc320-account-form
h5,

html.bc-checkout-v31
.bc320-account-form
.sub-heading {
    margin:
        18px
        0
        13px !important;

    color: #31556f !important;

    font-size: 14px !important;

    font-weight: 600 !important;
}


html.bc-checkout-v31
.bc320-account-form
h4:first-child,

html.bc-checkout-v31
.bc320-account-form
h5:first-child,

html.bc-checkout-v31
.bc320-account-form
.sub-heading:first-child {
    margin-top: 0 !important;
}


/* ==========================================================
   5. DATOS DEL DOMINIO
   ========================================================== */

html.bc-checkout-v31
.bc31-domain-contact {
    margin:
        0
        18px
        18px !important;

    padding: 17px !important;

    background: #f8fbfd !important;

    border:
        1px solid #e1eaf1 !important;

    border-radius: 9px !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.bc31-domain-contact.bc320-domain-same-data {
    display: none !important;
}


/* ==========================================================
   6. PAGO
   UNA SOLA CARD
   ========================================================== */

html.bc-checkout-v31
.bc31-payment {
    background: #fff !important;
}


html.bc-checkout-v31
.bc31-payment
.bc312-payment-details,

html.bc-checkout-v31
.bc31-payment
.bc320-payment-details {
    margin: 0 !important;

    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;

    border-radius: 0 !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.bc31-payment
.bc320-payment-details
> .panel-heading,

html.bc-checkout-v31
.bc31-payment
.bc320-payment-details
> .card-header {
    margin:
        20px
        18px
        12px !important;

    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;
}


html.bc-checkout-v31
.bc31-payment
.bc320-payment-details
> .panel-body,

html.bc-checkout-v31
.bc31-payment
.bc320-payment-details
> .card-body {
    margin: 0 !important;

    padding:
        0
        18px
        20px !important;

    background: transparent !important;

    border: 0 !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.bc31-payment
.bc320-payment-shell {
    margin: 0 !important;

    padding: 16px !important;

    background: #f8fbfd !important;

    border:
        1px solid #e2eaf0 !important;

    border-radius: 9px !important;

    box-shadow: none !important;
}


/* ==========================================================
   7. STRIPE GRID
   ========================================================== */

html.bc-checkout-v31
.bc31-payment
.bc320-payment-grid {
    display: grid !important;

    grid-template-columns:
        minmax(0,2fr)
        minmax(120px,.9fr)
        minmax(100px,.8fr) !important;

    gap:
        12px !important;

    align-items: end !important;
}


html.bc-checkout-v31
.bc31-payment
.bc320-cardnumber-field {
    grid-column: 1 !important;
}


html.bc-checkout-v31
.bc31-payment
.bc320-expiry-field {
    grid-column: 2 !important;
}


html.bc-checkout-v31
.bc31-payment
.bc320-cvc-field {
    grid-column: 3 !important;
}


html.bc-checkout-v31
.bc31-payment
.bc320-cardname-field {
    grid-column:
        1 / 2 !important;
}


/* ==========================================================
   8. NEWSLETTER COMPACTO
   ========================================================== */

html.bc-checkout-v31
.bc31-newsletter {
    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    min-height: 60px !important;

    padding:
        12px
        18px !important;

    background: #fff !important;
}


html.bc-checkout-v31
.bc31-newsletter
.bc312-newsletter-control,

html.bc-checkout-v31
.bc31-newsletter
.bc320-newsletter-control {
    display: inline-flex !important;

    align-items: center !important;

    justify-content: flex-end !important;

    gap: 9px !important;

    width: auto !important;

    min-height: 0 !important;

    margin: 0 !important;

    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;

    border-radius: 0 !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.bc31-newsletter
hr,

html.bc-checkout-v31
.bc31-newsletter
.divider {
    display: none !important;
}


/* ==========================================================
   9. RECAPTCHA SIN CAJA GRIS
   ========================================================== */

html.bc-checkout-v31
.bc31-security {
    background: #fff !important;
}


html.bc-checkout-v31
.bc31-security
.bc312-recaptcha-shell,

html.bc-checkout-v31
.bc31-security
.bc320-recaptcha-shell {
    margin: 0 !important;

    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;

    border-radius: 0 !important;

    box-shadow: none !important;
}


html.bc-checkout-v31
.bc31-security
.panel-body,

html.bc-checkout-v31
.bc31-security
.card-body {
    padding:
        3px
        18px
        19px !important;

    background: transparent !important;

    border: 0 !important;
}


/* ==========================================================
   10. SUMMARY
   ========================================================== */

html.bc-checkout-v31
.bc31-summary
.bc320-summary-hidden {
    display: none !important;
}


html.bc-checkout-v31
.bc31-summary
.list-item,

html.bc-checkout-v31
.bc31-summary
.list-group-item {
    padding:
        11px
        0 !important;
}


html.bc-checkout-v31
.bc31-summary
strong,

html.bc-checkout-v31
.bc31-summary
.item-name,

html.bc-checkout-v31
.bc31-summary
.name {
    font-size: 12px !important;

    line-height: 1.35 !important;
}


html.bc-checkout-v31
.bc31-summary
small,

html.bc-checkout-v31
.bc31-summary
.text-muted,

html.bc-checkout-v31
.bc31-summary
.faded {
    font-size: 9.5px !important;

    color:
        rgba(255,255,255,.65) !important;
}


html.bc-checkout-v31
.bc31-summary
.bc31-summary-protection {
    display: none !important;
}


/* ==========================================================
   11. ANTIFRAUDE
   ========================================================== */

html.bc-checkout-v31
.bc311-fraud-notice-hidden,

html.bc-checkout-v31
.bc312-fraud-container-hidden,

html.bc-checkout-v31
.bc320-fraud-hidden {
    display: none !important;

    width: 0 !important;
    height: 0 !important;

    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;

    overflow: hidden !important;
}


/* ==========================================================
   12. RESPONSIVE REAL
   ========================================================== */

@media (max-width: 760px) {

    /*
     * Pedido deja de parecer tabla comprimida.
     */

    html.bc-checkout-v31
    .bc31-order table,
    html.bc-checkout-v31
    .bc31-order tbody {
        display: block !important;

        width: 100% !important;

        min-width: 0 !important;
    }


    html.bc-checkout-v31
    .bc31-order thead {
        display: none !important;
    }


    html.bc-checkout-v31
    .bc31-order tbody tr {
        display: grid !important;

        grid-template-columns:
            minmax(0,1fr)
            auto !important;

        gap:
            7px
            12px !important;

        width: 100% !important;

        padding:
            14px
            14px !important;

        border-bottom:
            1px solid #e9f0f4 !important;

        box-sizing: border-box !important;
    }


    html.bc-checkout-v31
    .bc31-order tbody tr:last-child {
        border-bottom: 0 !important;
    }


    html.bc-checkout-v31
    .bc31-order tbody td {
        display: block !important;

        width: auto !important;

        min-width: 0 !important;

        padding: 0 !important;

        border: 0 !important;
    }


    html.bc-checkout-v31
    .bc31-order
    tbody td:first-child {
        grid-column:
            1 / -1 !important;
    }


    html.bc-checkout-v31
    .bc31-order
    .bc320-cart-qty-cell {
        display: none !important;
    }


    html.bc-checkout-v31
    .bc31-order
    .bc320-cart-price-cell {
        grid-column: 1 !important;

        align-self: center !important;
    }


    html.bc-checkout-v31
    .bc31-order
    .bc320-cart-action-cell {
        grid-column: 2 !important;

        align-self: center !important;

        justify-self: end !important;
    }


    html.bc-checkout-v31
    .bc31-order
    .bc31-order-footer {
        padding:
            12px
            14px !important;
    }


    /*
     * Tus datos: una columna.
     */

    html.bc-checkout-v31
    .bc320-account-form-host
    .row {
        display: block !important;
    }


    html.bc-checkout-v31
    .bc320-account-form-host
    [class*="col-"] {
        float: none !important;

        width: 100% !important;

        max-width: none !important;
    }


    /*
     * Stripe:
     * tarjeta completa arriba;
     * fecha + CVC debajo.
     */

    html.bc-checkout-v31
    .bc31-payment
    .bc320-payment-grid {
        grid-template-columns:
            minmax(0,1fr)
            minmax(0,1fr) !important;

        gap:
            12px !important;
    }


    html.bc-checkout-v31
    .bc31-payment
    .bc320-cardnumber-field {
        grid-column:
            1 / -1 !important;
    }


    html.bc-checkout-v31
    .bc31-payment
    .bc320-expiry-field {
        grid-column: 1 !important;
    }


    html.bc-checkout-v31
    .bc31-payment
    .bc320-cvc-field {
        grid-column: 2 !important;
    }


    html.bc-checkout-v31
    .bc31-payment
    .bc320-cardname-field {
        grid-column:
            1 / -1 !important;
    }


    /*
     * Newsletter.
     */

    html.bc-checkout-v31
    .bc31-newsletter {
        min-height: 58px !important;

        padding:
            13px
            14px !important;
    }


    /*
     * Captcha.
     */

    html.bc-checkout-v31
    .bc31-security
    .panel-body,

    html.bc-checkout-v31
    .bc31-security
    .card-body {
        padding:
            3px
            14px
            17px !important;
    }
}


@media (max-width: 520px) {

    html.bc-checkout-v31
    .bc31-newsletter {
        align-items: flex-start !important;

        flex-direction: column !important;

        gap: 9px !important;
    }


    html.bc-checkout-v31
    .bc31-newsletter
    .bc320-newsletter-control {
        justify-content:
            space-between !important;

        width: 100% !important;
    }
}


/* === BAHIA CHECKOUT v3.2.0 END === */

/* === BAHIA CHECKOUT v3.2.1 LOWER CLEANUP START === */


/* ==========================================================
   A. DATOS ALTERNATIVOS DEL DOMINIO
   ========================================================== */

html.bc-checkout-v31
.bc31-domain-contact {
    margin:
        22px
        0
        24px !important;

    padding:
        18px !important;

    background:
        #ffffff !important;

    border:
        1px solid
        #dce7ef !important;

    border-radius:
        12px !important;

    box-shadow:
        0 6px 20px
        rgba(11,45,87,.025) !important;
}


html.bc-checkout-v31
.bc31-domain-contact
.panel,

html.bc-checkout-v31
.bc31-domain-contact
.card,

html.bc-checkout-v31
.bc31-domain-contact
.section,

html.bc-checkout-v31
.bc31-domain-contact
.panel-body,

html.bc-checkout-v31
.bc31-domain-contact
.card-body,

html.bc-checkout-v31
.bc31-domain-contact
.section-body {
    margin:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-domain-contact
.panel-body,

html.bc-checkout-v31
.bc31-domain-contact
.card-body,

html.bc-checkout-v31
.bc31-domain-contact
.section-body {
    padding:
        10px
        0
        0 !important;
}


html.bc-checkout-v31
.bc31-domain-contact
.form-control,

html.bc-checkout-v31
.bc31-domain-contact
select {
    min-height:
        43px !important;

    background:
        #ffffff !important;

    border:
        1px solid
        #ccdce7 !important;

    border-radius:
        7px !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc321-domain-hidden {
    display:
        none !important;
}


/* ==========================================================
   B. PAGO - UNA SOLA CARD
   ========================================================== */

html.bc-checkout-v31
.bc31-payment {
    overflow:
        hidden !important;

    background:
        #ffffff !important;
}


/*
 * El gateway sigue siendo un selector,
 * pero sin convertirse en otra card pesada.
 */

html.bc-checkout-v31
#paymentGatewaysContainer
.panel,

html.bc-checkout-v31
#paymentGatewaysContainer
.card {
    margin:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
#paymentGatewaysContainer
.panel-heading.check {
    min-height:
        52px !important;

    display:
        flex !important;

    align-items:
        center !important;

    margin:
        0
        18px !important;

    padding:
        0
        14px !important;

    background:
        #f2fbfc !important;

    border:
        1px solid
        #bce5e9 !important;

    border-radius:
        8px !important;

    box-shadow:
        none !important;
}


/* ==========================================================
   DETALLES DE PAGO
   ========================================================== */

html.bc-checkout-v31
#creditCardInputFields {
    margin:
        24px
        0
        0 !important;

    padding:
        0
        18px
        20px !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
#creditCardInputFields
.section-heading {
    margin:
        0
        0
        16px !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;
}


html.bc-checkout-v31
#creditCardInputFields
.section-title {
    margin:
        0 !important;

    color:
        #0b2d57 !important;

    font-size:
        17px !important;

    font-weight:
        750 !important;

    letter-spacing:
        -.01em !important;
}


/*
 * ELIMINAR CARD DENTRO DE CARD
 */

html.bc-checkout-v31
#creditCardInputFields
.panel,

html.bc-checkout-v31
#creditCardInputFields
.panel-form,

html.bc-checkout-v31
#creditCardInputFields
.card,

html.bc-checkout-v31
#creditCardInputFields
.cc-input-container,

html.bc-checkout-v31
#creditCardInputFields
.panel-body,

html.bc-checkout-v31
#creditCardInputFields
.card-body {
    margin:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
#creditCardInputFields
.panel-body,

html.bc-checkout-v31
#creditCardInputFields
.card-body {
    padding:
        0 !important;
}


/*
 * No más rectángulo gris general alrededor
 * de todos los campos Stripe.
 */

html.bc-checkout-v31
#creditCardInputFields
.bc321-cc-surface {
    margin:
        0 !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


/* ==========================================================
   CAMPOS STRIPE
   ========================================================== */

html.bc-checkout-v31
#creditCardInputFields
.form-control {
    min-height:
        44px !important;

    padding:
        9px
        11px !important;

    background:
        #ffffff !important;

    border:
        1px solid
        #ccdce7 !important;

    border-radius:
        7px !important;

    box-shadow:
        none !important;

    color:
        #294960 !important;
}


html.bc-checkout-v31
#creditCardInputFields
.form-control:focus {
    border-color:
        #1fb7c5 !important;

    box-shadow:
        0 0 0 3px
        rgba(31,183,197,.08) !important;
}


html.bc-checkout-v31
#creditCardInputFields
label {
    margin-bottom:
        6px !important;

    color:
        #31536c !important;

    font-size:
        11px !important;

    font-weight:
        650 !important;
}


/*
 * Número de tarjeta siempre ancho completo.
 */

html.bc-checkout-v31
#creditCardInputFields
.bc321-card-number-wrap {
    float:
        none !important;

    width:
        100% !important;

    max-width:
        none !important;

    margin-bottom:
        13px !important;
}


/*
 * Fecha y CVC, dos columnas.
 */

html.bc-checkout-v31
#creditCardInputFields
.bc321-expiry-cvc-row {
    display:
        grid !important;

    grid-template-columns:
        minmax(0,1fr)
        minmax(0,1fr) !important;

    gap:
        13px !important;

    margin:
        0
        0
        13px !important;
}


html.bc-checkout-v31
#creditCardInputFields
.bc321-expiry-wrap,

html.bc-checkout-v31
#creditCardInputFields
.bc321-cvc-wrap {
    float:
        none !important;

    width:
        auto !important;

    max-width:
        none !important;

    margin:
        0 !important;

    padding:
        0 !important;
}


/*
 * Nombre de tarjeta ancho completo.
 */

html.bc-checkout-v31
#creditCardInputFields
.bc321-card-name-wrap {
    float:
        none !important;

    width:
        100% !important;

    max-width:
        none !important;
}


/*
 * Link integrado visualmente.
 */

html.bc-checkout-v31
#creditCardInputFields
.bc321-link-zone {
    margin:
        0
        0
        17px !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    box-shadow:
        none !important;

    text-align:
        center !important;
}


/* ==========================================================
   C. NEWSLETTER - FILA COMPACTA
   ========================================================== */

html.bc-checkout-v31
.bc31-newsletter {
    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        space-between !important;

    gap:
        20px !important;

    min-height:
        62px !important;

    margin:
        22px
        0 !important;

    padding:
        13px
        18px !important;

    background:
        #ffffff !important;

    border:
        1px solid
        #dce7ef !important;

    border-radius:
        12px !important;

    box-shadow:
        0 6px 18px
        rgba(11,45,87,.02) !important;
}


html.bc-checkout-v31
.bc31-newsletter
.panel,

html.bc-checkout-v31
.bc31-newsletter
.card,

html.bc-checkout-v31
.bc31-newsletter
.section,

html.bc-checkout-v31
.bc31-newsletter
.panel-body,

html.bc-checkout-v31
.bc31-newsletter
.card-body,

html.bc-checkout-v31
.bc31-newsletter
.section-body,

html.bc-checkout-v31
.bc31-newsletter
.form-group,

html.bc-checkout-v31
.bc31-newsletter
.bc321-newsletter-control {
    margin:
        0 !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-newsletter
hr,

html.bc-checkout-v31
.bc31-newsletter
.divider,

html.bc-checkout-v31
.bc31-newsletter
::before,

html.bc-checkout-v31
.bc31-newsletter
::after {
    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-newsletter
.bc321-newsletter-control {
    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        flex-end !important;

    gap:
        11px !important;

    width:
        auto !important;
}


html.bc-checkout-v31
.bc31-newsletter
.bc321-newsletter-control
label {
    margin:
        0 !important;

    color:
        #506c82 !important;

    font-size:
        11px !important;

    line-height:
        1.35 !important;

    font-weight:
        550 !important;
}


/* ==========================================================
   D. CAPTCHA - SIN CAJA INTERIOR
   ========================================================== */

html.bc-checkout-v31
.bc31-security {
    overflow:
        hidden !important;

    background:
        #ffffff !important;
}


html.bc-checkout-v31
.bc31-security
.bc321-captcha-shell {
    margin:
        0 !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-security
.panel,

html.bc-checkout-v31
.bc31-security
.card,

html.bc-checkout-v31
.bc31-security
.section {
    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-security
.panel-body,

html.bc-checkout-v31
.bc31-security
.card-body,

html.bc-checkout-v31
.bc31-security
.section-body {
    background:
        transparent !important;

    border:
        0 !important;

    box-shadow:
        none !important;
}


html.bc-checkout-v31
.bc31-security
.g-recaptcha {
    margin:
        9px
        0
        0 !important;
}


/* ==========================================================
   E. RESPONSIVE
   ========================================================== */

@media (max-width: 700px) {

    html.bc-checkout-v31
    #creditCardInputFields {
        padding:
            0
            14px
            18px !important;
    }


    html.bc-checkout-v31
    #creditCardInputFields
    .bc321-expiry-cvc-row {
        grid-template-columns:
            minmax(0,1fr)
            minmax(0,1fr) !important;

        gap:
            10px !important;
    }


    html.bc-checkout-v31
    #creditCardInputFields
    input,

    html.bc-checkout-v31
    #creditCardInputFields
    select {
        font-size:
            16px !important;
    }


    html.bc-checkout-v31
    .bc31-newsletter {
        padding:
            13px
            14px !important;
    }


    html.bc-checkout-v31
    .bc31-security
    .panel-body,

    html.bc-checkout-v31
    .bc31-security
    .card-body,

    html.bc-checkout-v31
    .bc31-security
    .section-body {
        padding-left:
            14px !important;

        padding-right:
            14px !important;
    }
}


@media (max-width: 430px) {

    html.bc-checkout-v31
    #creditCardInputFields
    .bc321-expiry-cvc-row {
        grid-template-columns:
            minmax(0,1fr) !important;
    }


    html.bc-checkout-v31
    .bc31-newsletter {
        align-items:
            flex-start !important;

        flex-direction:
            column !important;

        gap:
            9px !important;
    }


    html.bc-checkout-v31
    .bc31-newsletter
    .bc321-newsletter-control {
        justify-content:
            space-between !important;

        width:
            100% !important;
    }
}


/* === BAHIA CHECKOUT v3.2.1 LOWER CLEANUP END === */

/* === BAHIA CHECKOUT v3.2.2 REMOVE WHITE CANVAS START === */

/*
 * Wrapper blanco detrás/debajo de las cards izquierdas.
 * Se neutraliza sin tocar las cards internas.
 */
html.bc-checkout-v31 .bc322-no-white-canvas {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

html.bc-checkout-v31 .bc322-no-white-canvas::before,
html.bc-checkout-v31 .bc322-no-white-canvas::after {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

html.bc-checkout-v31 .bc322-no-white-canvas > .panel,
html.bc-checkout-v31 .bc322-no-white-canvas > .card,
html.bc-checkout-v31 .bc322-no-white-canvas > .section {
    background: transparent !important;
}

/*
 * Si el wrapper tenía padding inferior que generaba
 * la "franja blanca" debajo de la última card.
 */
html.bc-checkout-v31 .bc322-no-white-canvas.bc322-left-column-shell {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/*
 * Asegurar que la última card tenga su separación correcta
 * sin dejar un canvas blanco extra debajo.
 */
html.bc-checkout-v31 .bc322-no-white-canvas .bc31-security,
html.bc-checkout-v31 .bc322-no-white-canvas .bc31-newsletter,
html.bc-checkout-v31 .bc322-no-white-canvas .bc31-payment,
html.bc-checkout-v31 .bc322-no-white-canvas .bc31-domain-contact,
html.bc-checkout-v31 .bc322-no-white-canvas .bc31-data {
    margin-bottom: 22px !important;
}

html.bc-checkout-v31 .bc322-no-white-canvas .bc31-security:last-child,
html.bc-checkout-v31 .bc322-no-white-canvas .bc31-newsletter:last-child,
html.bc-checkout-v31 .bc322-no-white-canvas .bc31-payment:last-child,
html.bc-checkout-v31 .bc322-no-white-canvas .bc31-domain-contact:last-child,
html.bc-checkout-v31 .bc322-no-white-canvas .bc31-data:last-child {
    margin-bottom: 0 !important;
}

/* === BAHIA CHECKOUT v3.2.2 REMOVE WHITE CANVAS END === */

/* === BAHIA CHECKOUT v3.2.3 REAL CANVAS START === */


/*
 * ==========================================================
 * EL PROBLEMA REAL
 * ==========================================================
 *
 * La superficie blanca no pertenece a las cards.
 * Pertenece a uno o varios wrappers superiores de Lagom
 * que contienen toda la columna izquierda.
 *
 * En vez de depender del nombre de una clase, localizamos
 * esos wrappers porque contienen simultáneamente:
 *
 * - .bc31-order
 * - .bc31-data
 * - .bc31-payment
 * - .bc31-security
 *
 * No tocamos las cards individuales.
 */


/* ==========================================================
   WRAPPERS COMPLETOS DE LA COLUMNA IZQUIERDA
   ========================================================== */

html.bc-checkout-v31
body.page-order
:is(div, form, section)
:has(.bc31-order)
:has(.bc31-data)
:has(.bc31-payment)
:has(.bc31-security) {
    background:
        transparent !important;

    background-color:
        transparent !important;

    background-image:
        none !important;

    box-shadow:
        none !important;
}


/*
 * Incluye el wrapper mismo cuando las secciones
 * son descendientes directos o profundos.
 */

html.bc-checkout-v31
body.page-order
:is(div, form, section):has(.bc31-order):has(.bc31-security) {
    background:
        transparent !important;

    background-color:
        transparent !important;

    background-image:
        none !important;

    box-shadow:
        none !important;
}


/* ==========================================================
   PSEUDOELEMENTOS
   ========================================================== */

html.bc-checkout-v31
body.page-order
:is(div, form, section):has(.bc31-order):has(.bc31-security)::before,

html.bc-checkout-v31
body.page-order
:is(div, form, section):has(.bc31-order):has(.bc31-security)::after {
    background:
        transparent !important;

    background-color:
        transparent !important;

    background-image:
        none !important;

    box-shadow:
        none !important;
}


/* ==========================================================
   WRAPPERS CONOCIDOS DE WHMCS / LAGOM
   SOLO DENTRO DEL CHECKOUT
   ========================================================== */

html.bc-checkout-v31
body.page-order
#frmCheckout,

html.bc-checkout-v31
body.page-order
#order-standard_cart,

html.bc-checkout-v31
body.page-order
#order-lagom2,

html.bc-checkout-v31
body.page-order
.checkout-container,

html.bc-checkout-v31
body.page-order
.order-form,

html.bc-checkout-v31
body.page-order
.main-content:has(.bc31-order) {
    background:
        transparent !important;

    background-color:
        transparent !important;

    background-image:
        none !important;

    box-shadow:
        none !important;
}


/* ==========================================================
   EL FONDO GENERAL DE LA PÁGINA DEBE QUEDAR VISIBLE
   ========================================================== */

html.bc-checkout-v31
body.page-order {
    background:
        #f4f8fb !important;
}


/* ==========================================================
   IMPORTANTE:
   LAS CARDS INDIVIDUALES SIGUEN BLANCAS
   ========================================================== */

html.bc-checkout-v31
.bc31-order,

html.bc-checkout-v31
.bc31-promo,

html.bc-checkout-v31
.bc31-data,

html.bc-checkout-v31
.bc31-domain-contact,

html.bc-checkout-v31
.bc31-payment,

html.bc-checkout-v31
.bc31-newsletter,

html.bc-checkout-v31
.bc31-security {
    background:
        #ffffff !important;

    background-color:
        #ffffff !important;
}


/*
 * Evitar que una regla anterior convierta otra vez
 * el canvas inferior en una superficie blanca.
 */

html.bc-checkout-v31
.bc322-no-white-canvas,

html.bc-checkout-v31
.bc322-left-column-shell {
    background:
        transparent !important;

    background-color:
        transparent !important;

    background-image:
        none !important;

    box-shadow:
        none !important;
}


/* === BAHIA CHECKOUT v3.2.3 REAL CANVAS END === */

/* === BAHIA CHECKOUT v3.2.4 DUAL CANVAS START === */


/* ==========================================================
   MAIN CANVAS - CURRENT LAYER
   ========================================================== */

html.bc-checkout-v31 .main-grid,
html.bc-checkout-v31 .main-grid > .main-content,
html.bc-checkout-v31 .main-content,
html.bc-checkout-v31 #order-standard_cart,
html.bc-checkout-v31 #order-standard_cart > .main-grid,
html.bc-checkout-v31 #order-standard_cart .main-content,
html.bc-checkout-v31 #frmCheckout,
html.bc-checkout-v31 #frmCheckout > .row {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    box-shadow: none !important;

    border-color: transparent !important;
}


/* El bloque izquierdo no debe ser una superficie blanca */

html.bc-checkout-v31
.main-grid > .main-content {
    padding-bottom: 0 !important;
}


/* Pseudoelementos del shell */

html.bc-checkout-v31
.main-grid > .main-content::before,

html.bc-checkout-v31
.main-grid > .main-content::after,

html.bc-checkout-v31
#order-standard_cart::before,

html.bc-checkout-v31
#order-standard_cart::after,

html.bc-checkout-v31
#frmCheckout::before,

html.bc-checkout-v31
#frmCheckout::after {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    box-shadow: none !important;
}


/* ==========================================================
   CARDS QUE SÍ DEBEN SEGUIR BLANCAS
   ========================================================== */

html.bc-checkout-v31 .bc31-order,
html.bc-checkout-v31 .bc31-promo,
html.bc-checkout-v31 .bc31-data,
html.bc-checkout-v31 .bc31-domain-contact,
html.bc-checkout-v31 .bc31-payment,
html.bc-checkout-v31 .bc31-newsletter,
html.bc-checkout-v31 .bc31-security {
    background: #ffffff !important;
    background-color: #ffffff !important;
}


/* === BAHIA CHECKOUT v3.2.4 DUAL CANVAS END === */

/* === BAHIA CHECKOUT v3.2.5 UI CLEANUP START === */


/* ==========================================================
   1. ELIMINAR NEWSLETTER
   ========================================================== */

/*
 * Capa actual.
 */
html.bc-checkout-v31
.bc31-newsletter,

html.bc-checkout-v31
.bc325-newsletter-hidden {
    display: none !important;
}


/*
 * Compatibilidad con la capa anterior
 * que todavía participa en el checkout.
 */
html.bc-checkout-v3
.bc3-newsletter,

html.bc-checkout-v3
.bc325-newsletter-hidden {
    display: none !important;
}


/* ==========================================================
   2. PROMOCIÓN COMO ACORDEÓN
   ========================================================== */

html.bc-checkout-v31
.bc31-promo {
    overflow: hidden !important;

    padding:
        0 !important;

    background:
        #ffffff !important;

    border:
        1px solid
        #dce7ef !important;

    border-radius:
        12px !important;

    box-shadow:
        0 7px 22px
        rgba(11,45,87,.025) !important;
}


/*
 * Header del acordeón.
 */
html.bc-checkout-v31
.bc31-promo
.bc325-promo-trigger {
    position: relative !important;

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    gap: 16px !important;

    width: 100% !important;

    min-height: 60px !important;

    margin: 0 !important;

    padding:
        0
        18px !important;

    cursor: pointer !important;

    background:
        #ffffff !important;

    border:
        0 !important;

    box-shadow:
        none !important;

    user-select: none !important;
}


/*
 * Título.
 */
html.bc-checkout-v31
.bc31-promo
.bc325-promo-title {
    margin: 0 !important;

    padding: 0 !important;

    color:
        #0b2d57 !important;

    font-size:
        13px !important;

    font-weight:
        750 !important;

    line-height:
        1.35 !important;
}


/*
 * Flecha.
 */
html.bc-checkout-v31
.bc31-promo
.bc325-promo-arrow {
    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    flex:
        0 0 28px !important;

    width: 28px !important;
    height: 28px !important;

    color:
        #124c80 !important;

    background:
        #eef8fa !important;

    border-radius:
        50% !important;

    transition:
        transform .18s ease !important;
}


html.bc-checkout-v31
.bc31-promo
.bc325-promo-arrow svg {
    width: 14px !important;
    height: 14px !important;
}


/*
 * Cuando está abierto, girar flecha.
 */
html.bc-checkout-v31
.bc31-promo:not(.bc325-promo-collapsed)
.bc325-promo-arrow {
    transform:
        rotate(180deg) !important;
}


/*
 * Contenido del acordeón.
 */
html.bc-checkout-v31
.bc31-promo
.bc325-promo-body {
    padding:
        0
        18px
        18px !important;

    background:
        #ffffff !important;

    border-top:
        1px solid
        #edf2f6 !important;
}


/*
 * Cerrado por defecto.
 */
html.bc-checkout-v31
.bc31-promo.bc325-promo-collapsed
.bc325-promo-body {
    display: none !important;
}


/*
 * Eliminar el gran fondo cyan anterior.
 */
html.bc-checkout-v31
.bc31-promo
.search-box,

html.bc-checkout-v31
.bc31-promo
.search-group,

html.bc-checkout-v31
.bc31-promo
.form-group,

html.bc-checkout-v31
.bc31-promo
.input-group {
    background:
        transparent !important;

    border:
        0 !important;

    box-shadow:
        none !important;
}


/*
 * Layout del formulario abierto.
 */
html.bc-checkout-v31
.bc31-promo
.search-group {
    display: grid !important;

    grid-template-columns:
        minmax(0,1fr)
        auto !important;

    gap:
        10px !important;

    margin:
        16px
        0
        0 !important;

    padding:
        0 !important;
}


/*
 * Campo.
 */
html.bc-checkout-v31
.bc31-promo
#inputPromotionCode {
    min-height:
        44px !important;

    background:
        #ffffff !important;

    border:
        1px solid
        #ccdce7 !important;

    border-radius:
        8px !important;

    box-shadow:
        none !important;
}


/*
 * Botón.
 */
html.bc-checkout-v31
.bc31-promo
.search-group-btn
.btn {
    min-height:
        44px !important;

    padding:
        0
        18px !important;

    color:
        #ffffff !important;

    background:
        #124c80 !important;

    border:
        0 !important;

    border-radius:
        8px !important;
}


/* ==========================================================
   3. MÁS SEPARACIÓN ENTRE LOGIN Y CREAR CUENTA
   ========================================================== */

/*
 * Separar físicamente cada panel.
 */
html.bc-checkout-v31
.bc31-data
.panel-group.panel-group-condensed
> .panel.panel-check
+ .panel.panel-check {
    margin-top:
        14px !important;
}


/*
 * Compatibilidad con estructura sin panel-group-condensed.
 */
html.bc-checkout-v31
.bc31-data
.panel-group
> .panel.panel-check
+ .panel.panel-check {
    margin-top:
        14px !important;
}


/*
 * Cada opción se percibe como una decisión separada.
 */
html.bc-checkout-v31
.bc31-data
.panel.panel-check
> .panel-heading.check {
    min-height:
        50px !important;

    border-radius:
        8px !important;
}


/*
 * La seleccionada conserva identidad Bahia,
 * pero sin pegarse a la anterior.
 */
html.bc-checkout-v31
.bc31-data
.panel.panel-check.checked
> .panel-heading.check {
    background:
        #f2fbfc !important;

    border-color:
        #25bbc7 !important;
}


/*
 * También aplicar separación si interviene
 * la capa legacy.
 */
html.bc-checkout-v3
.bc3-billing
.panel-group
> .panel.panel-check
+ .panel.panel-check {
    margin-top:
        14px !important;
}


/* ==========================================================
   4. MOBILE
   ========================================================== */

@media (max-width: 700px) {

    html.bc-checkout-v31
    .bc31-promo
    .bc325-promo-trigger {
        min-height:
            58px !important;

        padding:
            0
            14px !important;
    }


    html.bc-checkout-v31
    .bc31-promo
    .bc325-promo-body {
        padding:
            0
            14px
            15px !important;
    }


    html.bc-checkout-v31
    .bc31-promo
    .search-group {
        grid-template-columns:
            minmax(0,1fr) !important;
    }


    html.bc-checkout-v31
    .bc31-promo
    .search-group-btn
    .btn {
        width:
            100% !important;
    }


    html.bc-checkout-v31
    .bc31-data
    .panel-group
    > .panel.panel-check
    + .panel.panel-check {
        margin-top:
            12px !important;
    }
}


/* === BAHIA CHECKOUT v3.2.5 UI CLEANUP END === */

/* === BAHIA CHECKOUT v3.2.7 CAPTCHA FLAT START === */


/*
 * Card exterior:
 * esta SÍ se conserva blanca.
 */

html.bc-checkout-v31
.bc31-security {
    background: #ffffff !important;
}


/*
 * Eliminar específicamente cualquier superficie
 * INTERNA que contenga el reCAPTCHA.
 */

html.bc-checkout-v31
.bc31-security
:is(
    .section-body,
    .panel,
    .panel-body,
    .card,
    .card-body,
    .form-group,
    .captcha-container,
    .captcha,
    div
):has(.g-recaptcha),

html.bc-checkout-v31
.bc31-security
:is(
    .section-body,
    .panel,
    .panel-body,
    .card,
    .card-body,
    .form-group,
    .captcha-container,
    .captcha,
    div
):has(iframe[src*="recaptcha"]) {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    border: 0 !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;

    border-radius: 0 !important;

    box-shadow: none !important;
}


/*
 * Wrapper principal bajo el título.
 * Mantener aire, pero SIN caja ni línea.
 */

html.bc-checkout-v31
.bc31-security
.section-body:has(.g-recaptcha),

html.bc-checkout-v31
.bc31-security
.section-body:has(iframe[src*="recaptcha"]),

html.bc-checkout-v31
.bc31-security
> .panel-body:has(.g-recaptcha),

html.bc-checkout-v31
.bc31-security
> .card-body:has(.g-recaptcha) {
    margin-top: 12px !important;

    padding:
        4px
        20px
        20px !important;

    background: transparent !important;

    border: 0 !important;

    box-shadow: none !important;
}


/*
 * Wrappers adicionales entre el body y Google:
 * cero padding para que no creen otro rectángulo.
 */

html.bc-checkout-v31
.bc31-security
.section-body
:is(
    .panel,
    .panel-body,
    .card,
    .card-body,
    .form-group,
    .captcha-container,
    .captcha
):has(.g-recaptcha),

html.bc-checkout-v31
.bc31-security
.section-body
:is(
    .panel,
    .panel-body,
    .card,
    .card-body,
    .form-group,
    .captcha-container,
    .captcha
):has(iframe[src*="recaptcha"]) {
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;

    box-shadow: none !important;
}


/*
 * El propio widget de Google NO se modifica.
 */

html.bc-checkout-v31
.bc31-security
.g-recaptcha {
    margin: 0 !important;

    background: transparent !important;
}


/*
 * Eliminar cualquier línea/pseudo-elemento residual.
 */

html.bc-checkout-v31
.bc31-security
.section-body:has(.g-recaptcha)::before,

html.bc-checkout-v31
.bc31-security
.section-body:has(.g-recaptcha)::after {
    display: none !important;

    content: none !important;
}


/* MOBILE */

@media (max-width: 700px) {

    html.bc-checkout-v31
    .bc31-security
    .section-body:has(.g-recaptcha),

    html.bc-checkout-v31
    .bc31-security
    .section-body:has(iframe[src*="recaptcha"]) {
        margin-top: 10px !important;

        padding:
            3px
            14px
            17px !important;
    }
}


/* === BAHIA CHECKOUT v3.2.7 CAPTCHA FLAT END === */

/* === BAHIA CHECKOUT v3.2.8 EXACT CAPTCHA START === */


/* ==========================================================
   CARD EXTERIOR
   Se conserva.
   ========================================================== */

html.bc-checkout-v31
.bc31-security {
    background: #ffffff !important;
}


/* ==========================================================
   SUPERFICIE INTERIOR REAL
   ========================================================== */

html.bc-checkout-v31
.bc31-security
> .section-body,

html.bc-checkout-v31
.bc31-security
> .panel-body,

html.bc-checkout-v31
.bc31-security
> .card-body {
    margin: 14px 0 0 !important;

    padding: 0 !important;

    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    border: 0 !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;

    border-radius: 0 !important;

    box-shadow: none !important;
}


/* ==========================================================
   PANELES INTERNOS DEL CAPTCHA
   ========================================================== */

html.bc-checkout-v31
.bc31-security
.section-body
> .panel,

html.bc-checkout-v31
.bc31-security
.section-body
> .card,

html.bc-checkout-v31
.bc31-security
.section-body
> .section,

html.bc-checkout-v31
.bc31-security
.panel-body,

html.bc-checkout-v31
.bc31-security
.card-body,

html.bc-checkout-v31
.bc31-security
.captcha-container,

html.bc-checkout-v31
.bc31-security
.recaptcha-container,

html.bc-checkout-v31
.bc31-security
.captcha {
    margin: 0 !important;

    padding: 0 !important;

    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    border: 0 !important;

    border-radius: 0 !important;

    box-shadow: none !important;
}


/*
 * Evitar la línea que sigue apareciendo
 * justo encima del CAPTCHA.
 */

html.bc-checkout-v31
.bc31-security
.section-body::before,

html.bc-checkout-v31
.bc31-security
.section-body::after,

html.bc-checkout-v31
.bc31-security
.panel-body::before,

html.bc-checkout-v31
.bc31-security
.panel-body::after {
    display: none !important;

    content: none !important;
}


/*
 * El widget real de Google queda intacto.
 */

html.bc-checkout-v31
.bc31-security
.g-recaptcha,

html.bc-checkout-v31
.bc31-security
iframe[src*="recaptcha"] {
    border: 0 !important;
}


/* MOBILE */

@media (max-width: 700px) {

    html.bc-checkout-v31
    .bc31-security
    > .section-body,

    html.bc-checkout-v31
    .bc31-security
    > .panel-body,

    html.bc-checkout-v31
    .bc31-security
    > .card-body {
        margin-top: 12px !important;
    }
}


/* === BAHIA CHECKOUT v3.2.8 EXACT CAPTCHA END === */
