/*
 * MP Travel — Travel Checkout V1
 * Scoped to WooCommerce Cart/Checkout only.
 * Premium travel UI: 5px radius, no shadows.
 */

body.mp-travel-checkout-page,
body.mp-travel-cart-page {
    --mp-checkout-orange: #F47F22;
    --mp-checkout-orange-dark: #DB8600;
    --mp-checkout-navy: #102A43;
    --mp-checkout-text: #243B53;
    --mp-checkout-muted: #6B7C93;
    --mp-checkout-border: #E3EAF2;
    --mp-checkout-soft: #F7F9FC;
    --mp-checkout-white: #FFFFFF;
    background: var(--mp-checkout-soft);
}

body.mp-travel-checkout-page .site-main,
body.mp-travel-cart-page .site-main {
    padding-top: 0;
}

body.mp-travel-checkout-page .entry-title,
body.mp-travel-cart-page .entry-title {
    display: none;
}

body.mp-travel-checkout-page .page-content,
body.mp-travel-cart-page .page-content,
body.mp-travel-checkout-page .entry-content,
body.mp-travel-cart-page .entry-content {
    margin-top: 0;
}

.mp-travel-checkout-shell {
    width: min(1240px, calc(100% - 40px));
    margin: 42px auto 22px;
    color: var(--mp-checkout-text);
}

.mp-travel-checkout-heading {
    max-width: 760px;
}

.mp-travel-checkout-kicker {
    display: inline-block;
    margin-bottom: 8px;
    color: var(--mp-checkout-orange);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.mp-travel-checkout-heading h1 {
    margin: 0;
    color: var(--mp-checkout-navy);
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.08;
    letter-spacing: -0.035em;
}

.mp-travel-checkout-heading p {
    max-width: 660px;
    margin: 12px 0 0;
    color: var(--mp-checkout-muted);
    font-size: 16px;
    line-height: 1.6;
}

.mp-travel-checkout-steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    padding: 0;
    margin: 28px 0 16px;
    list-style: none;
}

.mp-travel-checkout-steps li {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 52px;
    padding: 11px 12px;
    border: 1px solid var(--mp-checkout-border);
    border-radius: 5px;
    background: var(--mp-checkout-white);
    color: var(--mp-checkout-muted);
}

.mp-travel-checkout-steps li > span {
    display: inline-grid;
    place-items: center;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    border: 1px solid var(--mp-checkout-border);
    border-radius: 100%;
    font-size: 12px;
    font-weight: 800;
}

.mp-travel-checkout-steps li strong {
    font-size: 13px;
    line-height: 1.2;
}

.mp-travel-checkout-steps li.is-active {
    border-color: rgba(244, 127, 34, .55);
    color: var(--mp-checkout-navy);
}

.mp-travel-checkout-steps li.is-active > span {
    border-color: var(--mp-checkout-orange);
    background: var(--mp-checkout-orange);
    color: #fff;
}

.mp-travel-checkout-steps li.is-complete {
    color: var(--mp-checkout-navy);
}

.mp-travel-checkout-steps li.is-complete > span {
    border-color: #1F8A5B;
    background: #1F8A5B;
    color: #fff;
}

.mp-travel-checkout-context {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    padding: 14px 16px;
    border: 1px solid var(--mp-checkout-border);
    border-left: 3px solid var(--mp-checkout-orange);
    border-radius: 5px;
    background: var(--mp-checkout-white);
}

.mp-travel-checkout-context-type {
    display: inline-flex;
    padding: 5px 8px;
    border-radius: 999px;
    background: #FFF5E6;
    color: #A95E00;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.mp-travel-checkout-context strong {
    color: var(--mp-checkout-navy);
    font-size: 14px;
}

.mp-travel-checkout-context > span:last-child {
    color: var(--mp-checkout-muted);
    font-size: 13px;
}

/* WooCommerce parent block */
body.mp-travel-checkout-page .wp-block-woocommerce-checkout,
body.mp-travel-cart-page .wp-block-woocommerce-cart {
    width: min(1240px, calc(100% - 40px));
    max-width: 1240px;
    margin: 0 auto 56px;
}

/* Two-column travel checkout */
body.mp-travel-checkout-page .wc-block-components-sidebar-layout,
body.mp-travel-cart-page .wc-block-components-sidebar-layout {
    align-items: start;
    gap: 24px;
}

body.mp-travel-checkout-page .wc-block-components-main,
body.mp-travel-cart-page .wc-block-components-main {
    padding-right: 0;
}

body.mp-travel-checkout-page .wc-block-components-sidebar,
body.mp-travel-cart-page .wc-block-components-sidebar {
    margin-top: 0;
}

/* Checkout sections as clean travel cards */
body.mp-travel-checkout-page .wc-block-components-checkout-step,
body.mp-travel-checkout-page .wc-block-checkout__actions,
body.mp-travel-checkout-page .wc-block-checkout__terms,
body.mp-travel-checkout-page .wc-block-components-order-summary,
body.mp-travel-cart-page .wc-block-cart-items,
body.mp-travel-cart-page .wc-block-cart__totals-title,
body.mp-travel-cart-page .wc-block-components-totals-wrapper {
    border-color: var(--mp-checkout-border);
}

body.mp-travel-checkout-page .wc-block-components-checkout-step {
    margin-bottom: 12px;
    padding: 22px;
    border: 1px solid var(--mp-checkout-border);
    border-radius: 5px;
    background: var(--mp-checkout-white);
}

body.mp-travel-checkout-page .wc-block-components-checkout-step__heading {
    margin-bottom: 16px;
}

body.mp-travel-checkout-page .wc-block-components-checkout-step__title,
body.mp-travel-checkout-page .wc-block-components-title,
body.mp-travel-cart-page .wc-block-cart__totals-title,
body.mp-travel-cart-page .wc-block-cart-items__header {
    color: var(--mp-checkout-navy);
    font-weight: 800;
    letter-spacing: -.01em;
}

/* Forms */
body.mp-travel-checkout-page .wc-block-components-text-input input,
body.mp-travel-checkout-page .wc-block-components-combobox .wc-block-components-combobox-control input,
body.mp-travel-checkout-page .wc-block-components-address-form input,
body.mp-travel-checkout-page .wc-block-components-address-form select,
body.mp-travel-checkout-page textarea {
    min-height: 48px;
    border-color: #CFD9E6;
    border-radius: 5px;
    background: #fff;
    box-shadow: none !important;
    color: var(--mp-checkout-text);
}

body.mp-travel-checkout-page .wc-block-components-text-input input:focus,
body.mp-travel-checkout-page .wc-block-components-combobox .wc-block-components-combobox-control input:focus,
body.mp-travel-checkout-page .wc-block-components-address-form input:focus,
body.mp-travel-checkout-page .wc-block-components-address-form select:focus,
body.mp-travel-checkout-page textarea:focus {
    border-color: var(--mp-checkout-orange);
    outline: 2px solid rgba(244, 127, 34, .13);
    outline-offset: 0;
}

body.mp-travel-checkout-page .wc-block-components-checkbox__label,
body.mp-travel-checkout-page .wc-block-components-radio-control__label,
body.mp-travel-checkout-page label {
    color: var(--mp-checkout-text);
}

/* Order summary */
body.mp-travel-checkout-page .wc-block-checkout__sidebar,
body.mp-travel-cart-page .wc-block-cart__sidebar {
    position: sticky;
    top: 24px;
    padding: 22px;
    border: 1px solid var(--mp-checkout-border);
    border-radius: 5px;
    background: var(--mp-checkout-white);
    box-shadow: none !important;
}

body.mp-travel-checkout-page .wc-block-components-order-summary {
    padding: 0;
}

body.mp-travel-checkout-page .wc-block-components-order-summary-item {
    padding: 16px 0;
    border-bottom: 1px solid var(--mp-checkout-border);
}

body.mp-travel-checkout-page .wc-block-components-order-summary-item__image img,
body.mp-travel-cart-page .wc-block-cart-item__image img {
    border-radius: 5px;
    object-fit: cover;
}

body.mp-travel-checkout-page .wc-block-components-product-name,
body.mp-travel-cart-page .wc-block-components-product-name {
    color: var(--mp-checkout-navy);
    font-weight: 800;
    line-height: 1.35;
}

body.mp-travel-checkout-page .wc-block-components-product-metadata,
body.mp-travel-cart-page .wc-block-components-product-metadata {
    margin-top: 6px;
    color: var(--mp-checkout-muted);
    font-size: 12px;
    line-height: 1.55;
}

/* A booking quantity is not a retail quantity at payment stage */
body.mp-travel-checkout-page .wc-block-components-quantity-selector {
    display: none;
}

/* Totals */
body.mp-travel-checkout-page .wc-block-components-totals-item,
body.mp-travel-cart-page .wc-block-components-totals-item {
    color: var(--mp-checkout-text);
}

body.mp-travel-checkout-page .wc-block-components-totals-footer-item,
body.mp-travel-cart-page .wc-block-components-totals-footer-item {
    padding-top: 16px;
    border-top: 1px solid var(--mp-checkout-border);
}

body.mp-travel-checkout-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body.mp-travel-cart-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    color: var(--mp-checkout-navy);
    font-size: 20px;
    font-weight: 900;
}

/* Coupon becomes secondary */
body.mp-travel-checkout-page .wc-block-components-totals-coupon,
body.mp-travel-cart-page .wc-block-components-totals-coupon {
    border-top-color: var(--mp-checkout-border);
}

body.mp-travel-checkout-page .wc-block-components-totals-coupon-link,
body.mp-travel-cart-page .wc-block-components-totals-coupon-link {
    color: var(--mp-checkout-muted);
    font-size: 13px;
}

/* Payment */
body.mp-travel-checkout-page .wc-block-components-radio-control-accordion-option {
    margin-bottom: 8px;
    border: 1px solid var(--mp-checkout-border);
    border-radius: 5px;
    background: #fff;
}

body.mp-travel-checkout-page .wc-block-components-notice-banner {
    border: 1px solid #F4D49B;
    border-radius: 5px;
    background: #FFF9ED;
    box-shadow: none;
}

/* Buttons */
body.mp-travel-checkout-page .wc-block-components-button,
body.mp-travel-cart-page .wc-block-components-button,
body.mp-travel-checkout-page button,
body.mp-travel-cart-page button {
    border-radius: 5px !important;
    box-shadow: none !important;
}

body.mp-travel-checkout-page .wc-block-components-checkout-place-order-button,
body.mp-travel-cart-page .wc-block-cart__submit-button {
    min-height: 52px;
    border: 1px solid var(--mp-checkout-orange);
    background: var(--mp-checkout-orange);
    color: #fff;
    font-weight: 800;
}

body.mp-travel-checkout-page .wc-block-components-checkout-place-order-button:hover,
body.mp-travel-cart-page .wc-block-cart__submit-button:hover {
    border-color: var(--mp-checkout-orange-dark);
    background: var(--mp-checkout-orange-dark);
    color: #fff;
}

/* Express area disappears cleanly when empty */
body.mp-travel-checkout-page .wp-block-woocommerce-checkout-express-payment-block:empty,
body.mp-travel-cart-page .wp-block-woocommerce-cart-express-payment-block:empty {
    display: none;
}

/* Order-pay flow */
body.mp-travel-order-pay-page .woocommerce {
    width: min(980px, calc(100% - 40px));
    margin: 0 auto 56px;
}

body.mp-travel-order-pay-page #order_review,
body.mp-travel-order-pay-page form#order_review,
body.mp-travel-order-pay-page .woocommerce-order-details {
    padding: 24px;
    border: 1px solid var(--mp-checkout-border);
    border-radius: 5px;
    background: #fff;
    box-shadow: none;
}

body.mp-travel-order-pay-page #place_order {
    min-height: 50px;
    border-radius: 5px;
    border-color: var(--mp-checkout-orange);
    background: var(--mp-checkout-orange);
    color: #fff;
    font-weight: 800;
}

/* Keep travel checkout clean: no generic retail cross-sell prominence */
body.mp-travel-cart-page .wp-block-woocommerce-product-collection {
    margin-top: 28px;
}

@media (max-width: 900px) {
    .mp-travel-checkout-shell,
    body.mp-travel-checkout-page .wp-block-woocommerce-checkout,
    body.mp-travel-cart-page .wp-block-woocommerce-cart {
        width: min(100% - 28px, 760px);
    }

    .mp-travel-checkout-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.mp-travel-checkout-page .wc-block-checkout__sidebar,
    body.mp-travel-cart-page .wc-block-cart__sidebar {
        position: static;
        padding: 18px;
    }
}

@media (max-width: 600px) {
    .mp-travel-checkout-shell {
        margin-top: 26px;
    }

    .mp-travel-checkout-heading h1 {
        font-size: 31px;
    }

    .mp-travel-checkout-heading p {
        font-size: 14px;
    }

    .mp-travel-checkout-steps {
        grid-template-columns: 1fr;
        gap: 7px;
    }

    .mp-travel-checkout-steps li {
        min-height: 44px;
        padding: 8px 10px;
    }

    .mp-travel-checkout-context {
        align-items: flex-start;
        flex-direction: column;
    }

    body.mp-travel-checkout-page .wc-block-components-checkout-step {
        padding: 16px;
    }

    body.mp-travel-checkout-page .wc-block-checkout__sidebar,
    body.mp-travel-cart-page .wc-block-cart__sidebar {
        padding: 15px;
    }
}

/* ==========================================================
   MP TRAVEL CHECKOUT V1.1 — HELLO ELEMENTOR NORMALIZATION
   ========================================================== */

body.mp-travel-checkout-page .page-header,
body.mp-travel-cart-page .page-header,
body.mp-travel-checkout-page .entry-header,
body.mp-travel-cart-page .entry-header,
body.mp-travel-checkout-page h1.entry-title,
body.mp-travel-cart-page h1.entry-title {
    display: none !important;
}

.mp-travel-checkout-steps {
    list-style: none !important;
    counter-reset: none !important;
}

.mp-travel-checkout-steps > li {
    list-style: none !important;
}

.mp-travel-checkout-steps > li::marker {
    content: "" !important;
}

body.mp-travel-checkout-page
.wp-block-woocommerce-checkout {
    padding-top: 0 !important;
}

body.mp-travel-checkout-page
.wc-block-components-sidebar-layout {
    margin-top: 0 !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__description {
    color: var(--mp-checkout-muted);
    font-size: 12px;
    line-height: 1.45;
}

body.mp-travel-checkout-page
.wc-block-components-product-details {
    margin-top: 8px;
}

body.mp-travel-checkout-page
.wc-block-components-product-details li {
    margin-bottom: 3px;
}

/* ==========================================================
   MP TRAVEL CHECKOUT V1.2 — TWO COLUMN TRAVEL LAYOUT
   ========================================================== */

@media (min-width: 901px) {

    body.mp-travel-checkout-page
    .wc-block-components-sidebar-layout,

    body.mp-travel-cart-page
    .wc-block-components-sidebar-layout {
        display: grid !important;
        grid-template-columns:
            minmax(0, 1.75fr)
            minmax(340px, .85fr);
        column-gap: 24px !important;
        row-gap: 0 !important;
        align-items: start !important;
        flex-wrap: nowrap !important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-main,

    body.mp-travel-checkout-page
    .wc-block-checkout__main,

    body.mp-travel-cart-page
    .wc-block-components-main {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        flex: none !important;
        padding-right: 0 !important;
        grid-column: 1 !important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-sidebar,

    body.mp-travel-checkout-page
    .wc-block-checkout__sidebar,

    body.mp-travel-cart-page
    .wc-block-components-sidebar,

    body.mp-travel-cart-page
    .wc-block-cart__sidebar {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        flex: none !important;
        grid-column: 2 !important;
        grid-row: 1 !important;
        align-self: start !important;
        position: sticky !important;
        top: 24px !important;
        margin: 0 !important;
    }
}

/* Travel summary: remove generic retail noise. */
body.mp-travel-checkout-page
.wc-block-components-product-metadata__description {
    display: none !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__quantity {
    display: none !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__individual-prices {
    display: none !important;
}

/* Give destination imagery more importance. */
body.mp-travel-checkout-page
.wc-block-components-order-summary-item__image {
    width: 72px !important;
    min-width: 72px !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__image img {
    width: 72px !important;
    height: 72px !important;
    object-fit: cover !important;
    border-radius: 5px !important;
}

/* Cleaner trip information hierarchy. */
body.mp-travel-checkout-page
.wc-block-components-order-summary-item__description {
    padding-left: 4px;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__description
.wc-block-components-product-name {
    margin-bottom: 7px !important;
    color: var(--mp-checkout-navy);
    font-size: 15px !important;
    font-weight: 800 !important;
}

body.mp-travel-checkout-page
.wc-block-components-product-details {
    margin: 7px 0 0 !important;
    padding: 0 !important;
    color: var(--mp-checkout-muted);
    font-size: 12px !important;
    line-height: 1.5 !important;
}

/* Sidebar becomes a genuine trip summary card. */
body.mp-travel-checkout-page
.wc-block-checkout__sidebar {
    padding: 20px !important;
    border: 1px solid var(--mp-checkout-border) !important;
    border-radius: 5px !important;
    background: #fff !important;
    box-shadow: none !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary {
    border: 0 !important;
}

/* Slightly tighten the main booking column. */
body.mp-travel-checkout-page
.wc-block-components-checkout-step {
    margin-bottom: 12px !important;
}

/* Mobile/tablet: return naturally to one column. */
@media (max-width: 900px) {

    body.mp-travel-checkout-page
    .wc-block-components-sidebar-layout,

    body.mp-travel-cart-page
    .wc-block-components-sidebar-layout {
        display: block !important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-sidebar,

    body.mp-travel-checkout-page
    .wc-block-checkout__sidebar,

    body.mp-travel-cart-page
    .wc-block-components-sidebar {
        width: 100% !important;
        position: static !important;
        margin-top: 18px !important;
    }
}

/* ==========================================================
   MP TRAVEL CHECKOUT V1.3 — PREMIUM REFINEMENT
   ========================================================== */

/* Internal project name must never appear to the customer. */
.mp-travel-checkout-kicker {
    display: none !important;
}

/* One clean card, not card-inside-card. */
body.mp-travel-checkout-page
.wc-block-checkout__sidebar {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary {
    padding: 20px !important;
    border: 1px solid var(--mp-checkout-border) !important;
    border-radius: 5px !important;
    background: #fff !important;
    overflow: hidden;
}

/* Coupon is a secondary action, never WooCommerce pink. */
body.mp-travel-checkout-page
.wc-block-components-totals-coupon__button {
    min-height: 48px !important;
    border: 1px solid var(--mp-checkout-navy) !important;
    border-radius: 5px !important;
    background: #fff !important;
    color: var(--mp-checkout-navy) !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

body.mp-travel-checkout-page
.wc-block-components-totals-coupon__button:not(:disabled):hover {
    border-color: var(--mp-checkout-navy) !important;
    background: var(--mp-checkout-navy) !important;
    color: #fff !important;
}

body.mp-travel-checkout-page
.wc-block-components-totals-coupon__button:disabled {
    border-color: #D9E2EC !important;
    background: #F7F9FC !important;
    color: #9AA9BA !important;
    opacity: 1 !important;
}

body.mp-travel-checkout-page
.wc-block-components-totals-coupon__input input {
    border-color: #CFD9E6 !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}

body.mp-travel-checkout-page
.wc-block-components-totals-coupon__input input:focus {
    border-color: var(--mp-checkout-orange) !important;
    outline: 2px solid rgba(244, 127, 34,.12) !important;
}

/* Stronger but cleaner total hierarchy. */
body.mp-travel-checkout-page
.wc-block-components-totals-footer-item {
    margin-top: 4px !important;
    padding-top: 18px !important;
}

body.mp-travel-checkout-page
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__label {
    color: var(--mp-checkout-navy) !important;
    font-weight: 800 !important;
}

/* Remove unnecessary guest-state noise. */
body.mp-travel-checkout-page
.wc-block-checkout__login-prompt {
    color: var(--mp-checkout-muted) !important;
    font-size: 13px !important;
}

/* ==========================================================
   MP TRAVEL CHECKOUT V1.4.1 — APPROVED PREMIUM FORM UI
   5px radius • no shadows • soft borders • orange focus
   ========================================================== */

body.mp-travel-checkout-page {
    --mp-form-border: #D9E3ED;
    --mp-form-border-hover: #B9C8D8;
    --mp-form-placeholder: #7C8EA3;
}

/* Clean card boundaries. */
body.mp-travel-checkout-page
.wc-block-components-checkout-step,
body.mp-travel-checkout-page
.wc-block-checkout__actions,
body.mp-travel-checkout-page
.wc-block-checkout__terms {
    border: 1px solid #E2E9F1 !important;
    border-radius: 5px !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
}

/* Approved form control system. */
body.mp-travel-checkout-page
.wc-block-components-text-input input,
body.mp-travel-checkout-page
.wc-block-components-combobox
.wc-block-components-combobox-control input,
body.mp-travel-checkout-page
.wc-block-components-address-form input,
body.mp-travel-checkout-page
.wc-block-components-address-form select,
body.mp-travel-checkout-page
.wc-blocks-components-select__select,
body.mp-travel-checkout-page
textarea {
    min-height: 52px !important;
    border: 1px solid var(--mp-form-border) !important;
    border-radius: 5px !important;
    background: #FFFFFF !important;
    color: var(--mp-checkout-navy) !important;
    box-shadow: none !important;
    outline: none !important;
    transition: border-color .16s ease !important;
}

body.mp-travel-checkout-page
.wc-block-components-text-input input:hover,
body.mp-travel-checkout-page
.wc-block-components-combobox
.wc-block-components-combobox-control input:hover,
body.mp-travel-checkout-page
.wc-block-components-address-form input:hover,
body.mp-travel-checkout-page
.wc-block-components-address-form select:hover,
body.mp-travel-checkout-page
.wc-blocks-components-select__select:hover,
body.mp-travel-checkout-page
textarea:hover {
    border-color: var(--mp-form-border-hover) !important;
}

body.mp-travel-checkout-page
.wc-block-components-text-input input:focus,
body.mp-travel-checkout-page
.wc-block-components-combobox
.wc-block-components-combobox-control input:focus,
body.mp-travel-checkout-page
.wc-block-components-address-form input:focus,
body.mp-travel-checkout-page
.wc-block-components-address-form select:focus,
body.mp-travel-checkout-page
.wc-blocks-components-select__select:focus,
body.mp-travel-checkout-page
textarea:focus {
    border-color: var(--mp-checkout-orange) !important;
    box-shadow: none !important;
    outline: none !important;
}

/* WooCommerce select wrapper also has a border. */
body.mp-travel-checkout-page
.wc-blocks-components-select
.wc-blocks-components-select__container {
    border: 1px solid var(--mp-form-border) !important;
    border-radius: 5px !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
}

body.mp-travel-checkout-page
.wc-blocks-components-select
.wc-blocks-components-select__container:focus-within {
    border-color: var(--mp-checkout-orange) !important;
    box-shadow: none !important;
}

body.mp-travel-checkout-page
.wc-blocks-components-select__select {
    border: 0 !important;
}

body.mp-travel-checkout-page
.wc-block-components-text-input label,
body.mp-travel-checkout-page
.wc-block-components-combobox-control label,
body.mp-travel-checkout-page
.wc-blocks-components-select__label {
    color: #61758A !important;
    font-size: 12px !important;
    font-weight: 500 !important;
}

/* Paystack option integrated into the approved UI. */
body.mp-travel-checkout-page
.wc-block-components-radio-control-accordion-option {
    overflow: hidden;
    margin-bottom: 8px !important;
    border: 1px solid var(--mp-form-border) !important;
    border-radius: 5px !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
}

body.mp-travel-checkout-page
.wc-block-components-radio-control-accordion-option:hover {
    border-color: var(--mp-form-border-hover) !important;
}

body.mp-travel-checkout-page
.wc-block-components-radio-control-accordion-option:has(input:checked) {
    border-color: rgba(244, 127, 34, .72) !important;
    background: #FFFDFC !important;
}

body.mp-travel-checkout-page
.wc-block-components-checkbox input[type="checkbox"] {
    border: 1px solid #B8C6D5 !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}

/* Structured trip details. */
body.mp-travel-checkout-page
.wc-block-components-product-details {
    display: grid !important;
    gap: 5px !important;
    margin-top: 12px !important;
    padding: 0 !important;
    list-style: none !important;
}

body.mp-travel-checkout-page
.wc-block-components-product-details > span {
    display: grid !important;
    grid-template-columns: minmax(78px, auto) 1fr !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #667B91 !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
}

body.mp-travel-checkout-page
.wc-block-components-product-details__name {
    color: #526A82 !important;
    font-weight: 700 !important;
}

body.mp-travel-checkout-page
.wc-block-components-product-details__value {
    color: #667B91 !important;
    font-weight: 400 !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__total-price {
    color: var(--mp-checkout-navy) !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}

/* Coupon remains secondary. */
body.mp-travel-checkout-page
.wc-block-components-totals-coupon__input input {
    min-height: 48px !important;
    border: 1px solid var(--mp-form-border) !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}

body.mp-travel-checkout-page
.wc-block-components-totals-coupon__button {
    min-height: 48px !important;
    border: 1px solid #BFCBDA !important;
    border-radius: 5px !important;
    background: #FFFFFF !important;
    color: var(--mp-checkout-navy) !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

body.mp-travel-checkout-page
.wc-block-components-totals-coupon__button:not(:disabled):hover {
    border-color: var(--mp-checkout-navy) !important;
    background: var(--mp-checkout-navy) !important;
    color: #FFFFFF !important;
}

/* Primary travel action. */
body.mp-travel-checkout-page
.wc-block-components-checkout-place-order-button {
    min-height: 54px !important;
    border: 1px solid var(--mp-checkout-orange) !important;
    border-radius: 5px !important;
    background: var(--mp-checkout-orange) !important;
    color: #FFFFFF !important;
    font-weight: 800 !important;
    box-shadow: none !important;
}

/* Zero shadows across the booking form. */
body.mp-travel-checkout-page input,
body.mp-travel-checkout-page select,
body.mp-travel-checkout-page textarea,
body.mp-travel-checkout-page button {
    box-shadow: none !important;
}

@media (max-width: 600px) {
    body.mp-travel-checkout-page
    .wc-block-components-product-details > span {
        grid-template-columns: 1fr !important;
        gap: 1px !important;
    }
}

/* ==========================================================
   MP TRAVEL CHECKOUT V1.4.2 — FINAL PREMIUM CLEANUP
   ========================================================== */

/* Guest checkout is normal here; no need to announce it. */
body.mp-travel-checkout-page
.wc-block-checkout__login-prompt {
    display: none !important;
}

/* Terms should not look like another form/card. */
body.mp-travel-checkout-page
.wc-block-checkout__terms {
    margin-top: 16px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #526A82 !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
}

/* Give the final action a little breathing room. */
body.mp-travel-checkout-page
.wc-block-checkout__actions {
    margin-top: 10px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Travel metadata remains compact and aligned. */
body.mp-travel-checkout-page
.wc-block-components-product-details > span {
    grid-template-columns: 82px minmax(0, 1fr) !important;
}

body.mp-travel-checkout-page
.wc-block-components-product-details__name {
    color: #425B73 !important;
    font-weight: 700 !important;
}

body.mp-travel-checkout-page
.wc-block-components-product-details__value {
    color: #667B91 !important;
}

/* Notes are useful for travel, but visually secondary. */
body.mp-travel-checkout-page
.wc-block-checkout__add-note {
    color: #526A82 !important;
    font-size: 14px !important;
}


/* ==========================================================
   MP TRAVEL CHECKOUT V1.4.3 — PREMIUM ORDER SUMMARY
   ========================================================== */

@media (min-width: 1100px) {

    body.mp-travel-checkout-page
    .wc-block-components-sidebar-layout {
        grid-template-columns:
            minmax(0, 1.55fr)
            minmax(410px, .90fr) !important;
        gap: 26px !important;
    }
}

/* Give the summary more breathing space. */
body.mp-travel-checkout-page
.wc-block-components-order-summary {
    padding: 22px !important;
}

/* Genuine travel-card composition. */
body.mp-travel-checkout-page
.wc-block-components-order-summary-item {
    display: grid !important;
    grid-template-columns:
        96px minmax(0, 1fr) auto !important;
    column-gap: 16px !important;
    row-gap: 8px !important;
    align-items: start !important;
    padding: 18px 0 !important;
}

/* Larger destination image. */
body.mp-travel-checkout-page
.wc-block-components-order-summary-item__image {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    width: 96px !important;
    min-width: 96px !important;
    max-width: 96px !important;
    margin: 0 !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__image img {
    display: block !important;
    width: 96px !important;
    height: 96px !important;
    max-width: none !important;
    border: 1px solid #E2E9F1 !important;
    border-radius: 5px !important;
    object-fit: cover !important;
    box-shadow: none !important;
}

/* Package content gets real horizontal space. */
body.mp-travel-checkout-page
.wc-block-components-order-summary-item__description {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    min-width: 0 !important;
    padding: 0 !important;
}

/* Price remains clean at top-right. */
body.mp-travel-checkout-page
.wc-block-components-order-summary-item__total-price {
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: start !important;
    margin: 0 !important;
    padding: 1px 0 0 !important;
    color: var(--mp-checkout-navy) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

/* Strong package title, but not oversized. */
body.mp-travel-checkout-page
.wc-block-components-product-name {
    margin: 0 0 10px !important;
    color: var(--mp-checkout-navy) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
}

/* Clean travel facts. */
body.mp-travel-checkout-page
.wc-block-components-product-details {
    display: grid !important;
    gap: 6px !important;
    margin: 0 !important;
}

body.mp-travel-checkout-page
.wc-block-components-product-details > span {
    display: grid !important;
    grid-template-columns:
        84px minmax(0, 1fr) !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
}

body.mp-travel-checkout-page
.wc-block-components-product-details__name {
    color: #425B73 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

body.mp-travel-checkout-page
.wc-block-components-product-details__value {
    color: #667B91 !important;
    font-size: 12px !important;
    font-weight: 400 !important;
}

/* Tablet refinement. */
@media (max-width: 1099px) and (min-width: 901px) {

    body.mp-travel-checkout-page
    .wc-block-components-order-summary-item {
        grid-template-columns:
            84px minmax(0, 1fr) !important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-order-summary-item__image {
        width: 84px !important;
        min-width: 84px !important;
        max-width: 84px !important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-order-summary-item__image img {
        width: 84px !important;
        height: 84px !important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-order-summary-item__total-price {
        grid-column: 2 !important;
        grid-row: 2 !important;
        margin-top: 4px !important;
    }
}


/* ==========================================================
   MP TRAVEL CHECKOUT V1.4.4 — PREMIUM TRIP SUMMARY
   ========================================================== */

/*
 * WooCommerce Blocks render visual separators between
 * product metadata entries. For the travel presentation
 * we use one fact per line, therefore separators disappear.
 */
body.mp-travel-package-checkout
.wc-block-components-product-details
> span
> span[aria-hidden="true"] {
    display: none !important;
}

/*
 * The product title already says Bazaruto Beach Holiday,
 * therefore the first "Travel Package" metadata row is
 * redundant in the Package checkout.
 */
body.mp-travel-package-checkout
.wc-block-components-product-details > span:first-child {
    display: none !important;
}

/* More room for a true travel summary. */
@media (min-width: 1100px) {

    body.mp-travel-package-checkout
    .wc-block-components-sidebar-layout {
        grid-template-columns:
            minmax(0, 1.48fr)
            minmax(440px, .92fr) !important;
        gap: 28px !important;
    }
}

/* Premium summary item. */
body.mp-travel-package-checkout
.wc-block-components-order-summary-item {
    display: grid !important;
    grid-template-columns:
        120px
        minmax(0, 1fr)
        auto !important;
    column-gap: 16px !important;
    row-gap: 6px !important;
    align-items: start !important;
    padding: 20px 0 !important;
}

/* Horizontal destination image — 4:3 travel thumbnail. */
body.mp-travel-package-checkout
.wc-block-components-order-summary-item__image {
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;

    width: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;

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

body.mp-travel-package-checkout
.wc-block-components-order-summary-item__image img {
    display: block !important;

    width: 120px !important;
    height: 90px !important;
    max-width: none !important;

    object-fit: cover !important;
    object-position: center !important;

    border: 1px solid #E2E9F1 !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}

/* Title + travel facts. */
body.mp-travel-package-checkout
.wc-block-components-order-summary-item__description {
    grid-column: 2 !important;
    grid-row: 1 / span 3 !important;

    min-width: 0 !important;
    padding: 0 !important;
}

body.mp-travel-package-checkout
.wc-block-components-product-name {
    margin: 0 0 11px !important;

    color: var(--mp-checkout-navy) !important;

    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
}

/* Price top-right. */
body.mp-travel-package-checkout
.wc-block-components-order-summary-item__total-price {
    grid-column: 3 !important;
    grid-row: 1 !important;

    align-self: start !important;

    margin: 0 !important;
    padding: 1px 0 0 !important;

    color: var(--mp-checkout-navy) !important;

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

    white-space: nowrap !important;
}

/* Travel facts — no retail separators. */
body.mp-travel-package-checkout
.wc-block-components-product-details {
    display: grid !important;

    gap: 6px !important;

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

    list-style: none !important;
}

body.mp-travel-package-checkout
.wc-block-components-product-details > span {
    display: grid !important;

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

    gap: 8px !important;

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

    list-style: none !important;

    font-size: 12px !important;
    line-height: 1.4 !important;
}

body.mp-travel-package-checkout
.wc-block-components-product-details__name {
    color: #425B73 !important;
    font-weight: 700 !important;
}

body.mp-travel-package-checkout
.wc-block-components-product-details__value {
    color: #667B91 !important;
    font-weight: 400 !important;
}

/* Tablet. */
@media (max-width: 1099px) and (min-width: 701px) {

    body.mp-travel-package-checkout
    .wc-block-components-order-summary-item {
        grid-template-columns:
            104px
            minmax(0, 1fr)
            auto !important;
    }

    body.mp-travel-package-checkout
    .wc-block-components-order-summary-item__image {
        width: 104px !important;
        min-width: 104px !important;
        max-width: 104px !important;
    }

    body.mp-travel-package-checkout
    .wc-block-components-order-summary-item__image img {
        width: 104px !important;
        height: 78px !important;
    }
}

/* Mobile. */
@media (max-width: 700px) {

    body.mp-travel-package-checkout
    .wc-block-components-order-summary-item {
        grid-template-columns:
            92px
            minmax(0, 1fr) !important;

        column-gap: 12px !important;
    }

    body.mp-travel-package-checkout
    .wc-block-components-order-summary-item__image {
        width: 92px !important;
        min-width: 92px !important;
        max-width: 92px !important;
    }

    body.mp-travel-package-checkout
    .wc-block-components-order-summary-item__image img {
        width: 92px !important;
        height: 69px !important;
    }

    body.mp-travel-package-checkout
    .wc-block-components-order-summary-item__total-price {
        grid-column: 2 !important;
        grid-row: 2 !important;

        margin-top: 5px !important;
    }
}



/* ==========================================================
   MP TRAVEL CHECKOUT V1.4.5 — REAL BLOCKS DOM
   WooCommerce ProductDetails uses DIV > SPAN > SPAN
   ========================================================== */

body.mp-travel-package-checkout
.wc-block-components-product-details
> span {
    display: grid !important;
    grid-template-columns:
        82px
        minmax(0, 1fr) !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: baseline !important;
}

body.mp-travel-package-checkout
.wc-block-components-product-details
> span:first-child {
    display: none !important;
}

body.mp-travel-package-checkout
.wc-block-components-product-details
> span
> span[aria-hidden="true"] {
    display: none !important;
}

body.mp-travel-package-checkout
.wc-block-components-product-details__name,
body.mp-travel-package-checkout
.wc-block-components-product-details__value {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.mp-travel-package-checkout
.wc-block-components-product-details__name {
    color: #425B73 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

body.mp-travel-package-checkout
.wc-block-components-product-details__value {
    color: #667B91 !important;
    font-size: 12px !important;
    font-weight: 400 !important;
}

/* MP TRAVEL CHECKOUT V1.4.6 — FINAL SUMMARY POLISH */

body.mp-travel-package-checkout
.wc-block-components-product-details > span {
    grid-template-columns: 86px minmax(110px, 1fr) !important;
}

body.mp-travel-package-checkout
.wc-block-components-product-details__value {
    white-space: nowrap !important;
}

@media (max-width: 700px) {
    body.mp-travel-package-checkout
    .wc-block-components-product-details__value {
        white-space: normal !important;
    }
}


/* ==========================================================
   MP TRAVEL ZAR BASE CURRENCY V1 — PAYMENT NOTICE
   ========================================================== */

.mp-international-payment-notice {
    display: grid;
    gap: 4px;
    margin: 0 0 16px;
    padding: 13px 15px;
    border: 1px solid #D9E3ED;
    border-left: 3px solid #F47F22;
    border-radius: 5px;
    background: #FFFFFF;
    color: #526A82;
    box-shadow: none;
    font-size: 13px;
    line-height: 1.55;
}

.mp-international-payment-notice strong {
    color: #08294E;
    font-size: 13px;
    font-weight: 800;
}

.mp-international-payment-notice span {
    display: block;
}


/* ================================================================
   MP_TRAVEL_CHECKOUT_PREMIUM_V2_START
   Premium/minimal checkout + order-pay + confirmation
   ================================================================ */

body.mp-travel-checkout-page .mp-travel-checkout-shell {
    margin: 0 auto 22px;
}

body.mp-travel-checkout-page .mp-travel-checkout-heading {
    margin-bottom: 18px;
}

body.mp-travel-checkout-page .mp-travel-checkout-kicker {
    display: none;
}

body.mp-travel-checkout-page .mp-travel-checkout-heading h1 {
    margin: 0 0 7px;
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.08;
    letter-spacing: -0.025em;
}

body.mp-travel-checkout-page .mp-travel-checkout-heading p {
    margin: 0;
    max-width: 720px;
    font-size: 15px;
    line-height: 1.6;
}

body.mp-travel-checkout-page .mp-travel-checkout-steps {
    gap: 10px;
    margin: 0 0 18px;
}

body.mp-travel-checkout-page .mp-travel-checkout-steps li {
    min-height: 54px;
    padding: 10px 14px;
    border-radius: 5px;
    box-shadow: none !important;
}

body.mp-travel-checkout-page .mp-travel-checkout-steps li > span {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    font-size: 13px;
}

body.mp-travel-checkout-page .mp-travel-checkout-steps li strong {
    font-size: 14px;
    line-height: 1.25;
}

body.mp-travel-checkout-page .mp-travel-checkout-context {
    min-height: 0;
    padding: 12px 16px;
    gap: 10px;
    border-radius: 5px;
    box-shadow: none !important;
}

body.mp-travel-checkout-page
.wp-block-woocommerce-checkout,
body.mp-travel-checkout-page
.wc-block-components-sidebar,
body.mp-travel-checkout-page
.wc-block-components-checkout-step,
body.mp-travel-checkout-page
.wc-block-components-order-summary {
    box-shadow: none !important;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-step {
    margin-bottom: 12px;
    border-radius: 5px !important;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-step__heading {
    margin-bottom: 12px;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-step__title {
    font-size: 20px;
    line-height: 1.25;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary {
    border-radius: 5px !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item {
    padding-top: 14px;
    padding-bottom: 14px;
}

body.mp-travel-checkout-page
.wc-block-components-totals-wrapper {
    padding-top: 14px;
    padding-bottom: 14px;
}

body.mp-travel-checkout-page
.wc-block-checkout__actions_row {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-place-order-button {
    width: 260px !important;
    min-width: 260px !important;
    max-width: 260px !important;
    min-height: 48px !important;
    flex: 0 0 260px !important;
    padding: 12px 20px !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

body.mp-travel-checkout-page
.wc-block-components-radio-control-accordion-option {
    border-radius: 5px !important;
    box-shadow: none !important;
}

body.mp-travel-checkout-page
.wc-block-components-address-card {
    border-radius: 5px !important;
    box-shadow: none !important;
}

/* Card fee stays visible, but not visually louder than Total. */
body.mp-travel-checkout-page
.wc-block-components-totals-fees {
    font-size: 14px;
}

/* ---------------------------------------------------------------
   ORDER RECEIVED / CONFIRMATION
   --------------------------------------------------------------- */

body.mp-travel-order-received-page
.mp-international-payment-notice {
    display: none !important;
}

body.mp-travel-order-received-page
.mp-travel-checkout-heading h1 {
    color: #0b2b52;
}

body.mp-travel-order-received-page
.mp-travel-checkout-steps li.is-complete,
body.mp-travel-order-received-page
.mp-travel-checkout-steps li.is-active {
    opacity: 1;
}

body.mp-travel-order-received-page
.woocommerce-order {
    margin-top: 6px;
}

body.mp-travel-order-received-page
.woocommerce-thankyou-order-received {
    margin: 0 0 16px !important;
    padding: 14px 16px !important;
    border: 1px solid #d8e8df;
    border-radius: 5px;
    background: #f7fbf8;
    color: #173c2b;
    font-weight: 700;
    line-height: 1.5;
    box-shadow: none !important;
}

body.mp-travel-order-received-page
.woocommerce-order-overview {
    display: grid;
    grid-template-columns:
        repeat(auto-fit, minmax(150px, 1fr));
    gap: 0;
    margin: 0 0 24px !important;
    padding: 0 !important;
    border: 1px solid #e3e8ee;
    border-radius: 5px;
    background: #fff;
    list-style: none;
    box-shadow: none !important;
    overflow: hidden;
}

body.mp-travel-order-received-page
.woocommerce-order-overview li {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 14px 16px !important;
    border-right: 1px solid #e3e8ee;
    border-bottom: 0;
    font-size: 12px;
    line-height: 1.4;
}

body.mp-travel-order-received-page
.woocommerce-order-overview li:last-child {
    border-right: 0;
}

body.mp-travel-order-received-page
.woocommerce-order-overview li strong {
    display: block;
    margin-top: 4px;
    font-size: 15px;
    line-height: 1.35;
    color: #202021;
}

body.mp-travel-order-received-page
.woocommerce-order-details,
body.mp-travel-order-received-page
.woocommerce-customer-details {
    margin: 0 0 22px;
}

body.mp-travel-order-received-page
.woocommerce-order-details__title,
body.mp-travel-order-received-page
.woocommerce-column__title {
    margin: 0 0 12px;
    font-size: 24px;
    line-height: 1.2;
    color: #202021;
}

body.mp-travel-order-received-page
.woocommerce-table--order-details {
    border: 1px solid #e3e8ee !important;
    border-radius: 5px;
    border-collapse: separate !important;
    border-spacing: 0;
    overflow: hidden;
    box-shadow: none !important;
}

body.mp-travel-order-received-page
.woocommerce-table--order-details th,
body.mp-travel-order-received-page
.woocommerce-table--order-details td {
    padding: 13px 16px !important;
    border-color: #e3e8ee !important;
}

body.mp-travel-order-received-page
.woocommerce-table--order-details
.product-name a {
    color: #0b2b52;
    font-weight: 700;
    text-decoration: none;
}

body.mp-travel-order-received-page
.woocommerce-table--order-details
.wc-item-meta {
    display: grid;
    gap: 4px;
    margin: 8px 0 0;
    padding: 0;
    list-style: none;
    font-size: 13px;
    line-height: 1.45;
}

body.mp-travel-order-received-page
.woocommerce-table--order-details
.wc-item-meta li {
    margin: 0;
}

body.mp-travel-order-received-page
.woocommerce-customer-details address {
    padding: 16px !important;
    border: 1px solid #e3e8ee !important;
    border-radius: 5px !important;
    background: #fff;
    line-height: 1.65;
    box-shadow: none !important;
}

body.mp-travel-order-received-page
.mp-travel-confirmation-actions {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
    margin: 22px 0 8px;
}

body.mp-travel-order-received-page
.mp-travel-confirmation-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 11px 18px;
    border: 1px solid #e3e8ee;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none !important;
    box-shadow: none !important;
    transition:
        border-color .18s ease,
        background-color .18s ease;
}

body.mp-travel-order-received-page
.mp-travel-confirmation-button.is-primary {
    min-width: 170px;
    border-color: #f59e0b;
    background: #f59e0b;
    color: #fff;
}

body.mp-travel-order-received-page
.mp-travel-confirmation-button.is-secondary {
    min-width: 140px;
    background: #fff;
    color: #202021;
}

/* ---------------------------------------------------------------
   MOBILE
   --------------------------------------------------------------- */

@media (max-width: 782px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-heading h1 {
        font-size: 30px;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-steps {
        grid-template-columns: repeat(2, 1fr);
    }

    body.mp-travel-checkout-page
    .wc-block-checkout__actions_row {
        display: block;
    }

    body.mp-travel-checkout-page
    .wc-block-components-checkout-place-order-button {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        flex: 1 1 auto !important;
    }

    body.mp-travel-order-received-page
    .woocommerce-order-overview {
        grid-template-columns: 1fr 1fr;
    }

    body.mp-travel-order-received-page
    .woocommerce-order-overview li {
        border-bottom: 1px solid #e3e8ee;
    }

    body.mp-travel-order-received-page
    .mp-travel-confirmation-actions {
        flex-direction: column;
        align-items: stretch;
    }

    body.mp-travel-order-received-page
    .mp-travel-confirmation-button {
        width: 100%;
    }
}

/* MP_TRAVEL_CHECKOUT_PREMIUM_V2_END */


/* ==========================================================
   MP_TRAVEL_CHECKOUT_PREMIUM_V5
   Alcance approved checkout concept
   ========================================================== */

body.mp-travel-checkout-page {
    --alc-navy:#202021;
    --alc-orange:#F47F22;
    --alc-orange-dark:#E88A00;
    --alc-text:#142B43;
    --alc-muted:#64758A;
    --alc-border:#DDE5EE;
    --alc-bg:#F7F9FC;

    background:var(--alc-bg)!important;
}

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

body.mp-travel-checkout-page
.mp-travel-checkout-shell,
body.mp-travel-checkout-page
.wp-block-woocommerce-checkout {
    width:min(1340px,calc(100% - 64px))!important;
    max-width:1340px!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-shell {
    margin:38px auto 20px!important;
}

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

body.mp-travel-checkout-page
.mp-travel-checkout-heading {
    position:relative!important;

    display:grid!important;
    grid-template-columns:
        minmax(0,1.05fr)
        minmax(390px,.95fr)!important;

    grid-template-rows:auto auto auto!important;

    column-gap:54px!important;

    width:100%!important;
    max-width:none!important;

    min-height:230px!important;

    padding:30px 0!important;

    align-content:center!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-kicker {
    grid-column:1!important;

    margin:0 0 11px!important;

    color:var(--alc-orange)!important;

    font-size:10px!important;
    line-height:1!important;
    font-weight:800!important;
    letter-spacing:.18em!important;

    text-transform:uppercase!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-heading h1 {
    grid-column:1!important;

    width:auto!important;
    max-width:700px!important;

    margin:0!important;

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

    font-size:52px!important;
    line-height:1.03!important;
    letter-spacing:-.045em!important;
    font-weight:700!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-heading p {
    grid-column:1!important;

    max-width:560px!important;

    margin:11px 0 0!important;

    color:var(--alc-muted)!important;

    font-size:14px!important;
    line-height:1.55!important;
}

/* Real featured image of selected Package */

body.mp-travel-checkout-page
.mp-travel-checkout-hero-image {
    grid-column:2!important;
    grid-row:1 / 4!important;

    width:100%!important;
    height:230px!important;

    border-radius:5px!important;

    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;

    overflow:hidden!important;

    box-shadow:none!important;
}

/* ==========================================================
   STEPPER
   ========================================================== */

body.mp-travel-checkout-page
.mp-travel-checkout-steps {
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;

    gap:34px!important;

    margin:2px 0 20px!important;
    padding:0 8px!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-steps li {
    position:relative!important;

    display:flex!important;
    align-items:center!important;

    gap:10px!important;

    min-height:42px!important;
    padding:0!important;

    border:0!important;
    border-radius:0!important;

    background:transparent!important;

    box-shadow:none!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-steps li:not(:last-child)::after {
    content:""!important;

    position:absolute!important;

    top:50%!important;
    left:calc(100% - 3px)!important;

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

    background:#B8C5D4!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-steps li > span {
    display:grid!important;
    place-items:center!important;

    width:32px!important;
    height:32px!important;

    flex:0 0 32px!important;

    border:1px solid #CBD6E2!important;
    border-radius:100%!important;

    background:#FFF!important;
    color:#697C92!important;

    font-size:12px!important;
    font-weight:800!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-steps li strong {
    color:#40556D!important;

    font-size:13px!important;
    line-height:1.25!important;
    font-weight:700!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-steps li.is-active > span {
    border-color:var(--alc-orange)!important;
    background:var(--alc-orange)!important;
    color:#FFF!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-steps li.is-active strong {
    color:var(--alc-orange-dark)!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-steps li.is-complete > span {
    border-color:#16855D!important;
    background:#16855D!important;
    color:#FFF!important;
}

/* ==========================================================
   PACKAGE BAR
   ========================================================== */

body.mp-travel-checkout-page
.mp-travel-checkout-context {
    display:inline-flex!important;
    align-items:center!important;

    width:auto!important;

    gap:11px!important;

    min-height:46px!important;

    margin:0 0 26px!important;
    padding:8px 14px!important;

    border:0!important;
    border-radius:5px!important;

    background:var(--alc-navy)!important;

    box-shadow:none!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-context-type {
    padding:5px 8px!important;

    border-radius:5px!important;

    background:rgba(244, 127, 34,.16)!important;
    color:#FFC65D!important;

    font-size:9px!important;
    font-weight:800!important;
    letter-spacing:.07em!important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-context strong {
    color:#FFF!important;

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

body.mp-travel-checkout-page
.mp-travel-checkout-context > span:last-child {
    color:#D4DFEA!important;
    font-size:11px!important;
}

/* ==========================================================
   2 COLUMN CHECKOUT
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-components-sidebar-layout {
    display:grid!important;

    grid-template-columns:
        minmax(0,1.5fr)
        minmax(390px,.82fr)!important;

    gap:28px!important;

    align-items:start!important;
}

body.mp-travel-checkout-page
.wc-block-components-main {
    width:100%!important;
    padding:0!important;
}

/* ==========================================================
   FORM CARDS
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-components-checkout-step {
    margin:0 0 12px!important;
    padding:17px 18px!important;

    border:1px solid var(--alc-border)!important;
    border-radius:5px!important;

    background:#FFF!important;

    box-shadow:none!important;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-step__heading {
    margin:0 0 11px!important;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-step__heading h2,
body.mp-travel-checkout-page
.wc-block-components-checkout-step h2 {
    margin:0!important;

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

    font-size:16px!important;
    line-height:1.25!important;
    letter-spacing:-.015em!important;
    font-weight:700!important;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-step__description {
    font-size:11px!important;
}

/* ==========================================================
   INPUTS
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-components-text-input input,
body.mp-travel-checkout-page
.wc-block-components-combobox
.wc-block-components-combobox-control input,
body.mp-travel-checkout-page
.wc-block-components-address-form input,
body.mp-travel-checkout-page
.wc-block-components-address-form select,
body.mp-travel-checkout-page
.wc-blocks-components-select__select {
    min-height:43px!important;
    height:43px!important;

    border:1px solid #CDD8E5!important;
    border-radius:5px!important;

    background:#FFF!important;

    color:var(--alc-text)!important;

    font-size:12px!important;

    box-shadow:none!important;
}

body.mp-travel-checkout-page
.wc-block-components-text-input label,
body.mp-travel-checkout-page
.wc-block-components-combobox label {
    font-size:10px!important;
}

body.mp-travel-checkout-page textarea {
    min-height:60px!important;

    border:1px solid #CDD8E5!important;
    border-radius:5px!important;

    font-size:12px!important;

    box-shadow:none!important;
}

/* ==========================================================
   BILLING ADDRESS
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-components-address-card {
    padding:12px 14px!important;

    border:1px solid #D5DFEA!important;
    border-radius:5px!important;

    background:#FFF!important;

    box-shadow:none!important;
}

body.mp-travel-checkout-page
.wc-block-components-address-card address {
    color:#344B62!important;

    font-size:12px!important;
    line-height:1.5!important;
}

body.mp-travel-checkout-page
.wc-block-components-address-card__edit {
    color:var(--alc-navy)!important;

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

/* ==========================================================
   INTERNATIONAL PAYMENT NOTICE
   ========================================================== */

body.mp-travel-checkout-page
.mp-international-payment-notice {
    margin:0 0 12px!important;
    padding:13px 15px!important;

    border:1px solid #DFE8F2!important;
    border-left:3px solid #7796BB!important;
    border-radius:5px!important;

    background:#F4F8FD!important;

    box-shadow:none!important;
}

body.mp-travel-checkout-page
.mp-international-payment-notice strong {
    display:block!important;

    margin-bottom:4px!important;

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

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

body.mp-travel-checkout-page
.mp-international-payment-notice span {
    color:#60748B!important;

    font-size:11px!important;
    line-height:1.5!important;
}

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

body.mp-travel-checkout-page
.wc-block-components-radio-control-accordion-option {
    margin:0!important;

    border:1px solid var(--alc-orange)!important;
    border-radius:5px!important;

    background:#FFFCF7!important;

    box-shadow:none!important;
}

body.mp-travel-checkout-page
.wc-block-components-radio-control__option {
    min-height:52px!important;
    padding:10px 13px!important;
}

body.mp-travel-checkout-page
.wc-block-components-radio-control__label {
    color:var(--alc-navy)!important;

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

/* ==========================================================
   ORDER NOTE / TERMS
   ========================================================== */

body.mp-travel-checkout-page
.wp-block-woocommerce-checkout-order-note-block {
    margin-top:10px!important;
}

body.mp-travel-checkout-page
.wc-block-checkout__terms {
    margin-top:12px!important;
    padding:0!important;

    border:0!important;

    background:transparent!important;
}

body.mp-travel-checkout-page
.wc-block-checkout__terms,
body.mp-travel-checkout-page
.wc-block-checkout__terms a {
    font-size:11px!important;
    line-height:1.5!important;
}

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

body.mp-travel-checkout-page
.wc-block-checkout__sidebar {
    position:sticky!important;
    top:20px!important;

    width:100%!important;

    padding:0!important;

    border:1px solid #A7B7CA!important;
    border-radius:5px!important;

    background:#FFF!important;

    overflow:hidden!important;

    box-shadow:none!important;
}

/* Header navy */

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-checkout-step__heading:first-child {
    margin:0!important;

    padding:17px 19px!important;

    background:var(--alc-navy)!important;

    border:0!important;
}

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-checkout-step__heading:first-child h2 {
    color:#FFF!important;

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

/* Product */

body.mp-travel-checkout-page
.wc-block-components-order-summary-item {
    padding:18px!important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__image {
    width:116px!important;
    flex:0 0 116px!important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__image img {
    width:116px!important;
    height:94px!important;

    object-fit:cover!important;

    border-radius:5px!important;
}

body.mp-travel-checkout-page
.wc-block-components-product-name {
    color:var(--alc-navy)!important;

    font-size:14px!important;
    line-height:1.28!important;
    font-weight:800!important;
}

body.mp-travel-checkout-page
.wc-block-components-product-metadata,
body.mp-travel-checkout-page
.wc-block-components-product-details {
    margin-top:7px!important;

    color:#65788E!important;

    font-size:11px!important;
    line-height:1.5!important;
}

/* Coupon */

body.mp-travel-checkout-page
.wc-block-components-totals-coupon-link {
    color:#66778B!important;
    font-size:11px!important;
}

/* Totals */

body.mp-travel-checkout-page
.wc-block-components-totals-wrapper {
    padding-left:18px!important;
    padding-right:18px!important;
}

body.mp-travel-checkout-page
.wc-block-components-totals-item {
    min-height:47px!important;

    padding-top:10px!important;
    padding-bottom:10px!important;

    font-size:12px!important;
}

body.mp-travel-checkout-page
.wc-block-components-totals-item__value {
    font-size:12px!important;
    font-weight:700!important;
}

body.mp-travel-checkout-page
.wc-block-components-totals-footer-item {
    margin-top:5px!important;
    padding-top:14px!important;

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

body.mp-travel-checkout-page
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__label {
    color:var(--alc-navy)!important;

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

body.mp-travel-checkout-page
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__value {
    color:var(--alc-orange-dark)!important;

    font-size:19px!important;
    font-weight:900!important;
}

/* ==========================================================
   CTA
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-checkout__actions {
    display:flex!important;
    justify-content:center!important;

    margin-top:18px!important;
    padding:0!important;

    border:0!important;

    background:transparent!important;

    box-shadow:none!important;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-place-order-button {
    width:250px!important;
    max-width:250px!important;

    height:48px!important;
    min-height:48px!important;

    margin:0!important;

    border:0!important;
    border-radius:5px!important;

    background:var(--alc-orange)!important;
    color:#FFF!important;

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

    box-shadow:none!important;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-place-order-button::after {
    content:"→"!important;

    margin-left:10px!important;

    font-size:15px!important;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-place-order-button:hover {
    background:var(--alc-orange-dark)!important;
}

/* ==========================================================
   NO SHADOWS
   ========================================================== */

body.mp-travel-checkout-page input,
body.mp-travel-checkout-page select,
body.mp-travel-checkout-page textarea,
body.mp-travel-checkout-page button,
body.mp-travel-checkout-page
.wc-block-components-checkout-step,
body.mp-travel-checkout-page
.wc-block-checkout__sidebar {
    box-shadow:none!important;
}

/* ==========================================================
   TABLET
   ========================================================== */

@media(max-width:1050px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-heading {
        grid-template-columns:1fr!important;
        min-height:auto!important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-hero-image {
        grid-column:1!important;
        grid-row:auto!important;

        height:200px!important;

        margin-top:22px!important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-sidebar-layout {
        grid-template-columns:1fr!important;
    }

    body.mp-travel-checkout-page
    .wc-block-checkout__sidebar {
        position:static!important;
    }
}

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

@media(max-width:700px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell,
    body.mp-travel-checkout-page
    .wp-block-woocommerce-checkout {
        width:calc(100% - 28px)!important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell {
        margin-top:22px!important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-heading {
        padding:10px 0 22px!important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-heading h1 {
        font-size:34px!important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-heading p {
        font-size:13px!important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-steps {
        grid-template-columns:repeat(2,1fr)!important;

        gap:8px!important;

        padding:0!important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-steps li {
        min-height:44px!important;

        padding:7px 9px!important;

        border:1px solid var(--alc-border)!important;
        border-radius:5px!important;

        background:#FFF!important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-steps li::after {
        display:none!important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-context {
        width:100%!important;
        flex-wrap:wrap!important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-checkout-step {
        padding:14px!important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-checkout-place-order-button {
        width:100%!important;
        max-width:none!important;
    }
}

/* MP_TRAVEL_CHECKOUT_PREMIUM_V5_END */


/* ==========================================================
   MP_TRAVEL_CHECKOUT_PREMIUM_V5_REFINEMENT_V2
   Targeted visual corrections only
   ========================================================== */


/* ==========================================================
   1. PACKAGE IMAGE = TRUE HERO
   Not a floating card.
   ========================================================== */

body.mp-travel-checkout-page
.mp-travel-checkout-shell {
    margin-top:26px !important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-heading {
    position:relative !important;

    display:block !important;

    width:100% !important;
    max-width:none !important;

    min-height:250px !important;

    padding:
        48px
        calc(54% + 34px)
        44px
        0 !important;

    overflow:hidden !important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-heading
.mp-travel-checkout-kicker,
body.mp-travel-checkout-page
.mp-travel-checkout-heading h1,
body.mp-travel-checkout-page
.mp-travel-checkout-heading p {
    position:relative !important;
    z-index:3 !important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-heading h1 {
    max-width:650px !important;

    margin:0 !important;

    font-size:52px !important;
    line-height:1.03 !important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-heading p {
    max-width:540px !important;
    margin-top:10px !important;
}

/*
 * Actual Package featured image now behaves
 * like the right side of a premium hero.
 */
body.mp-travel-checkout-page
.mp-travel-checkout-hero-image {
    position:absolute !important;

    z-index:1 !important;

    top:0 !important;
    right:0 !important;
    bottom:0 !important;

    width:54% !important;
    height:100% !important;

    margin:0 !important;

    border-radius:5px !important;

    background-position:center center !important;
    background-size:cover !important;
    background-repeat:no-repeat !important;

    overflow:hidden !important;

    box-shadow:none !important;
}

/* Soft transition between text and destination image */
body.mp-travel-checkout-page
.mp-travel-checkout-hero-image::after {
    content:"" !important;

    position:absolute !important;
    inset:0 !important;

    background:
        linear-gradient(
            90deg,
            #F7F9FC 0%,
            rgba(247,249,252,.74) 7%,
            rgba(247,249,252,.18) 19%,
            rgba(247,249,252,0) 37%
        ) !important;

    pointer-events:none !important;
}


/* ==========================================================
   2. ORDER SUMMARY PRODUCT
   Title and price must NEVER overlap
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-components-order-summary-item {
    padding:16px 18px !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__image {
    width:104px !important;
    flex:0 0 104px !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__image img {
    width:104px !important;
    height:82px !important;

    object-fit:cover !important;

    border-radius:5px !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__description {
    display:grid !important;

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

    column-gap:14px !important;
    row-gap:5px !important;

    align-items:start !important;

    min-width:0 !important;
    width:100% !important;
}

body.mp-travel-checkout-page
.wc-block-components-product-name {
    grid-column:1 !important;

    min-width:0 !important;
    max-width:none !important;

    margin:0 !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;

    font-size:13px !important;
    line-height:1.3 !important;
}

/* Woo variations used for the product price */
body.mp-travel-checkout-page
.wc-block-components-product-price,
body.mp-travel-checkout-page
.wc-block-components-order-summary-item__individual-price,
body.mp-travel-checkout-page
.wc-block-components-order-summary-item__total-price {
    grid-column:2 !important;
    grid-row:1 !important;

    align-self:start !important;

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

    white-space:nowrap !important;

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

    font-size:12px !important;
    line-height:1.3 !important;
    font-weight:800 !important;
}

body.mp-travel-checkout-page
.wc-block-components-product-metadata,
body.mp-travel-checkout-page
.wc-block-components-product-details {
    grid-column:1 / -1 !important;

    width:100% !important;

    margin-top:4px !important;
}


/* ==========================================================
   3. SUBTOTAL / CARD FEE / TOTAL
   Remove large empty vertical areas.
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-wrapper {
    min-height:0 !important;

    margin:0 !important;

    padding:
        0
        18px !important;
}

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-item {
    min-height:0 !important;

    margin:0 !important;

    padding:
        10px
        0 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;

    gap:16px !important;
}

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-item__description {
    margin:0 !important;
    padding:0 !important;
}

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-item__label,
body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-item__value {
    margin:0 !important;
    padding:0 !important;

    line-height:1.35 !important;
}

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-footer-item {
    min-height:0 !important;

    margin:4px 0 0 !important;

    padding:
        14px
        0 !important;

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


/* ==========================================================
   4. PAYSTACK RADIO
   Radio + Paystack + cards on one line.
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-components-radio-control-accordion-option {
    position:relative !important;

    overflow:hidden !important;
}

body.mp-travel-checkout-page
.wc-block-components-radio-control__option {
    position:relative !important;

    display:flex !important;
    align-items:center !important;

    width:100% !important;

    min-height:56px !important;

    padding:
        10px
        16px
        10px
        52px !important;
}

/*
 * Woo normally positions this input itself.
 * Put it vertically in the centre instead of top-left.
 */
body.mp-travel-checkout-page
.wc-block-components-radio-control__input {
    position:absolute !important;

    top:50% !important;
    left:17px !important;
    right:auto !important;
    bottom:auto !important;

    margin:0 !important;

    transform:
        translateY(-50%) !important;

    z-index:3 !important;
}

body.mp-travel-checkout-page
.wc-block-components-radio-control__option-layout,
body.mp-travel-checkout-page
.wc-block-components-radio-control__secondary-option-layout {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;

    gap:10px !important;

    width:100% !important;
    min-width:0 !important;

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

body.mp-travel-checkout-page
.wc-block-components-radio-control__label-group {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;

    gap:10px !important;

    width:auto !important;
    min-width:0 !important;

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

body.mp-travel-checkout-page
.wc-block-components-radio-control__label {
    display:flex !important;
    align-items:center !important;

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

    line-height:1.2 !important;
}


/* ==========================================================
   5. PAY SECURELY = 100% OF LEFT COLUMN
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-checkout__actions,
body.mp-travel-checkout-page
.wc-block-checkout__actions_row {
    display:block !important;

    width:100% !important;
    max-width:none !important;

    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-place-order-button {
    display:flex !important;

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

    width:100% !important;
    min-width:100% !important;
    max-width:none !important;

    flex:
        1
        1
        100% !important;

    margin:
        0 !important;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media(max-width:1050px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-heading {
        min-height:auto !important;

        padding:
            28px
            0
            0 !important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-hero-image {
        position:relative !important;

        top:auto !important;
        right:auto !important;
        bottom:auto !important;

        width:100% !important;
        height:220px !important;

        margin-top:22px !important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-hero-image::after {
        display:none !important;
    }
}


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

@media(max-width:700px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-heading h1 {
        font-size:34px !important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-hero-image {
        height:190px !important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-order-summary-item__description {
        grid-template-columns:
            minmax(0,1fr) !important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-product-price,
    body.mp-travel-checkout-page
    .wc-block-components-order-summary-item__individual-price,
    body.mp-travel-checkout-page
    .wc-block-components-order-summary-item__total-price {
        grid-column:1 !important;
        grid-row:auto !important;
    }
}

/* MP_TRAVEL_CHECKOUT_PREMIUM_V5_REFINEMENT_V2_END */

/* ==========================================================
   MP_TRAVEL_CHECKOUT_PREMIUM_V5_REFINEMENT_V3
   ========================================================== */

/* ----------------------------------------------------------
   HERO FULL WIDTH WITH FADED WHITE LEFT AREA
   ---------------------------------------------------------- */

body.mp-travel-checkout-page .mp-travel-checkout-shell{
    margin-top:24px !important;
}

body.mp-travel-checkout-page .mp-travel-checkout-heading{
    position:relative !important;
    display:block !important;
    min-height:320px !important;
    padding:46px 0 34px !important;
    overflow:hidden !important;
    border-radius:5px !important;
}

body.mp-travel-checkout-page .mp-travel-checkout-hero-image{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    border-radius:5px !important;
    background-position:center center !important;
    background-size:cover !important;
    background-repeat:no-repeat !important;
    z-index:1 !important;
    overflow:hidden !important;
}

body.mp-travel-checkout-page .mp-travel-checkout-hero-image::after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:
        linear-gradient(
            90deg,
            rgba(247,249,252,.90) 0%,
            rgba(247,249,252,.90) 36%,
            rgba(247,249,252,.82) 46%,
            rgba(247,249,252,.58) 56%,
            rgba(247,249,252,.22) 67%,
            rgba(247,249,252,0) 82%
        ) !important;
    pointer-events:none !important;
}

body.mp-travel-checkout-page .mp-travel-checkout-heading .mp-travel-checkout-kicker,
body.mp-travel-checkout-page .mp-travel-checkout-heading h1,
body.mp-travel-checkout-page .mp-travel-checkout-heading p{
    position:relative !important;
    z-index:3 !important;
}

body.mp-travel-checkout-page .mp-travel-checkout-heading h1{
    max-width:540px !important;
    margin:0 !important;
    font-size:52px !important;
    line-height:1.02 !important;
}

body.mp-travel-checkout-page .mp-travel-checkout-heading p{
    max-width:500px !important;
    margin-top:10px !important;
}

body.mp-travel-checkout-page .mp-travel-checkout-steps{
    margin-top:14px !important;
}

/* ----------------------------------------------------------
   ORDER SUMMARY TITLE / PRICE NO OVERLAP
   ---------------------------------------------------------- */

body.mp-travel-checkout-page .wc-block-components-order-summary-item{
    padding:14px 16px !important;
}

body.mp-travel-checkout-page .wc-block-components-order-summary-item__image{
    width:88px !important;
    flex:0 0 88px !important;
}

body.mp-travel-checkout-page .wc-block-components-order-summary-item__image img{
    width:88px !important;
    height:72px !important;
    object-fit:cover !important;
    border-radius:5px !important;
}

body.mp-travel-checkout-page .wc-block-components-order-summary-item__description{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    grid-template-areas:
        "name price"
        "meta meta" !important;
    column-gap:12px !important;
    row-gap:4px !important;
    align-items:start !important;
    min-width:0 !important;
    width:100% !important;
}

body.mp-travel-checkout-page .wc-block-components-product-name{
    grid-area:name !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    font-size:12px !important;
    line-height:1.28 !important;
}

body.mp-travel-checkout-page .wc-block-components-product-price,
body.mp-travel-checkout-page .wc-block-components-order-summary-item__individual-price,
body.mp-travel-checkout-page .wc-block-components-order-summary-item__total-price{
    grid-area:price !important;
    justify-self:end !important;
    align-self:start !important;
    margin:0 !important;
    padding:0 !important;
    white-space:nowrap !important;
    font-size:11px !important;
    line-height:1.25 !important;
    font-weight:800 !important;
}

body.mp-travel-checkout-page .wc-block-components-product-metadata,
body.mp-travel-checkout-page .wc-block-components-product-details{
    grid-area:meta !important;
    margin-top:2px !important;
    width:100% !important;
}

/* ----------------------------------------------------------
   ORDER SUMMARY COMPACT SPACING
   ---------------------------------------------------------- */

body.mp-travel-checkout-page .wc-block-checkout__sidebar .wc-block-components-order-summary{
    margin-bottom:0 !important;
}

body.mp-travel-checkout-page .wc-block-checkout__sidebar .wc-block-components-panel{
    margin:0 !important;
}

body.mp-travel-checkout-page .wc-block-checkout__sidebar .wc-block-components-panel__button{
    min-height:42px !important;
    padding:10px 16px !important;
}

body.mp-travel-checkout-page .wc-block-checkout__sidebar .wc-block-components-totals-wrapper{
    padding:0 16px !important;
}

body.mp-travel-checkout-page .wc-block-checkout__sidebar .wc-block-components-totals-item{
    min-height:0 !important;
    padding:8px 0 !important;
    margin:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
}

body.mp-travel-checkout-page .wc-block-checkout__sidebar .wc-block-components-totals-item__label,
body.mp-travel-checkout-page .wc-block-checkout__sidebar .wc-block-components-totals-item__value{
    margin:0 !important;
    padding:0 !important;
    line-height:1.3 !important;
}

body.mp-travel-checkout-page .wc-block-checkout__sidebar .wc-block-components-totals-footer-item{
    margin-top:2px !important;
    padding-top:12px !important;
    padding-bottom:8px !important;
    min-height:0 !important;
}

body.mp-travel-checkout-page .wc-block-checkout__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__label{
    font-size:16px !important;
}

body.mp-travel-checkout-page .wc-block-checkout__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
    font-size:17px !important;
}

/* ----------------------------------------------------------
   PAYMENT OPTION ALIGNMENT
   ---------------------------------------------------------- */

body.mp-travel-checkout-page .wc-block-components-radio-control__option{
    position:relative !important;
    min-height:54px !important;
    padding:12px 16px 12px 46px !important;
    display:flex !important;
    align-items:center !important;
}

body.mp-travel-checkout-page .wc-block-components-radio-control__input{
    position:absolute !important;
    top:50% !important;
    left:16px !important;
    margin:0 !important;
    transform:translateY(-50%) !important;
    z-index:3 !important;
}

body.mp-travel-checkout-page .wc-block-components-radio-control__option-layout,
body.mp-travel-checkout-page .wc-block-components-radio-control__secondary-option-layout{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
}

body.mp-travel-checkout-page .wc-block-components-radio-control__label-group{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    width:auto !important;
    min-width:0 !important;
    flex:0 0 auto !important;
    margin:0 !important;
    padding:0 !important;
}

body.mp-travel-checkout-page .wc-block-components-radio-control__label{
    margin:0 !important;
    padding:0 !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
}

body.mp-travel-checkout-page .wc-block-components-payment-method-icons{
    margin-left:4px !important;
}

/* ----------------------------------------------------------
   CTA FULL WIDTH
   ---------------------------------------------------------- */

body.mp-travel-checkout-page .wc-block-checkout__actions,
body.mp-travel-checkout-page .wc-block-checkout__actions_row{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:14px 0 0 !important;
    padding:0 !important;
}

body.mp-travel-checkout-page .wc-block-components-checkout-place-order-button{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-width:100% !important;
    max-width:none !important;
    margin:0 !important;
}

/* ----------------------------------------------------------
   RESPONSIVE
   ---------------------------------------------------------- */

@media (max-width:1050px){
    body.mp-travel-checkout-page .mp-travel-checkout-heading{
        min-height:auto !important;
        padding:28px 0 20px !important;
    }

    body.mp-travel-checkout-page .mp-travel-checkout-hero-image{
        position:relative !important;
        inset:auto !important;
        width:100% !important;
        height:220px !important;
        margin-top:18px !important;
    }

    body.mp-travel-checkout-page .mp-travel-checkout-hero-image::after{
        display:none !important;
    }
}

@media (max-width:700px){
    body.mp-travel-checkout-page .mp-travel-checkout-heading h1{
        font-size:34px !important;
    }

    body.mp-travel-checkout-page .mp-travel-checkout-heading p{
        max-width:none !important;
    }

    body.mp-travel-checkout-page .wc-block-components-order-summary-item__description{
        grid-template-columns:minmax(0,1fr) !important;
        grid-template-areas:
            "name"
            "price"
            "meta" !important;
    }

    body.mp-travel-checkout-page .wc-block-components-product-price,
    body.mp-travel-checkout-page .wc-block-components-order-summary-item__individual-price,
    body.mp-travel-checkout-page .wc-block-components-order-summary-item__total-price{
        justify-self:start !important;
    }
}

/* MP_TRAVEL_CHECKOUT_PREMIUM_V5_REFINEMENT_V3_END */

/* ==========================================================
   MP_TRAVEL_CHECKOUT_PREMIUM_V5_REFINEMENT_V4
   ========================================================== */


/* ==========================================================
   1. REMOVE HERO COMPLETELY
   Image + title + subtitle + kicker
   ========================================================== */

body.mp-travel-checkout-page
.mp-travel-checkout-heading {
    display:none !important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-shell {
    margin-top:22px !important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-steps {
    margin-top:0 !important;
    margin-bottom:14px !important;
}


/* ==========================================================
   2. ORDER SUMMARY
   Remove excessive vertical spacing
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-checkout__sidebar {
    overflow:hidden !important;
}


/* Product row */

body.mp-travel-checkout-page
.wc-block-components-order-summary {
    margin:0 !important;
    padding:0 !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item {
    display:grid !important;

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

    column-gap:12px !important;

    align-items:start !important;

    margin:0 !important;

    padding:
        10px
        12px !important;
}

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__image {
    grid-column:1 !important;

    width:92px !important;
    min-width:92px !important;

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

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__image img {
    display:block !important;

    width:92px !important;
    height:72px !important;

    margin:0 !important;

    object-fit:cover !important;

    border-radius:5px !important;
}


/* Description restored to natural flow */

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__description {
    grid-column:2 !important;

    display:block !important;

    width:100% !important;
    min-width:0 !important;

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


/* Product title */

body.mp-travel-checkout-page
.wc-block-components-product-name {
    display:block !important;

    width:100% !important;
    max-width:none !important;

    margin:0 0 4px !important;
    padding:0 !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;

    font-size:13px !important;
    line-height:1.3 !important;
}


/* Product price below/alongside naturally — no overlap */

body.mp-travel-checkout-page
.wc-block-components-product-price,
body.mp-travel-checkout-page
.wc-block-components-order-summary-item__individual-price,
body.mp-travel-checkout-page
.wc-block-components-order-summary-item__total-price {
    position:static !important;

    display:block !important;
    float:none !important;

    width:auto !important;

    margin:0 0 5px !important;
    padding:0 !important;

    transform:none !important;

    white-space:nowrap !important;

    font-size:12px !important;
    line-height:1.3 !important;
    font-weight:800 !important;
}


/* Travel metadata */

body.mp-travel-checkout-page
.wc-block-components-product-metadata,
body.mp-travel-checkout-page
.wc-block-components-product-details {
    display:block !important;

    width:100% !important;

    margin:5px 0 0 !important;
    padding:0 !important;

    font-size:11px !important;
    line-height:1.45 !important;
}


/* ==========================================================
   COUPON — no large space
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-panel {
    margin:0 !important;
    padding:0 !important;
}

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-panel__button {
    min-height:0 !important;

    margin:0 !important;

    padding:
        9px
        12px !important;
}


/* ==========================================================
   SUBTOTAL + FEE
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-wrapper {
    min-height:0 !important;

    margin:0 !important;

    padding:
        0
        12px !important;
}

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-item {
    display:flex !important;

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

    gap:12px !important;

    min-height:0 !important;

    margin:0 !important;

    padding:
        7px
        0 !important;
}

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-item__description {
    min-height:0 !important;

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

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-item__label,
body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-item__value {
    margin:0 !important;
    padding:0 !important;

    line-height:1.3 !important;
}


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

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-footer-item {
    min-height:0 !important;

    margin:3px 0 0 !important;

    padding:
        10px
        0 !important;

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

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__label {
    font-size:16px !important;
}

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__value {
    font-size:17px !important;
}


/* ==========================================================
   3. KEEP PAYSTACK ALIGNMENT
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-components-radio-control__option {
    position:relative !important;

    display:flex !important;
    align-items:center !important;

    min-height:54px !important;

    padding:
        10px
        16px
        10px
        46px !important;
}

body.mp-travel-checkout-page
.wc-block-components-radio-control__input {
    position:absolute !important;

    top:50% !important;
    left:16px !important;

    margin:0 !important;

    transform:
        translateY(-50%) !important;

    z-index:3 !important;
}

body.mp-travel-checkout-page
.wc-block-components-radio-control__option-layout,
body.mp-travel-checkout-page
.wc-block-components-radio-control__secondary-option-layout,
body.mp-travel-checkout-page
.wc-block-components-radio-control__label-group {
    display:flex !important;

    align-items:center !important;
    justify-content:flex-start !important;

    gap:8px !important;

    width:auto !important;
    min-width:0 !important;

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

body.mp-travel-checkout-page
.wc-block-components-radio-control__label {
    margin:0 !important;
    padding:0 !important;

    white-space:nowrap !important;
}


/* ==========================================================
   4. KEEP FULL WIDTH PAY BUTTON
   ========================================================== */

body.mp-travel-checkout-page
.wc-block-checkout__actions,
body.mp-travel-checkout-page
.wc-block-checkout__actions_row {
    display:block !important;

    width:100% !important;
    max-width:none !important;

    margin:
        14px
        0
        0 !important;

    padding:0 !important;
}

body.mp-travel-checkout-page
.wc-block-components-checkout-place-order-button {
    display:flex !important;

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

    width:100% !important;
    min-width:100% !important;
    max-width:none !important;

    margin:0 !important;
}


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

@media(max-width:700px) {

    body.mp-travel-checkout-page
    .wc-block-components-order-summary-item {
        grid-template-columns:
            76px
            minmax(0,1fr) !important;

        column-gap:10px !important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-order-summary-item__image,
    body.mp-travel-checkout-page
    .wc-block-components-order-summary-item__image img {
        width:76px !important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-order-summary-item__image img {
        height:62px !important;
    }
}

/* MP_TRAVEL_CHECKOUT_PREMIUM_V5_REFINEMENT_V4_END */

/* ==========================================================
   MP_TRAVEL_CHECKOUT_ALIGNMENT_V5
   Align checkout with Alcance header container
   ========================================================== */


/* ----------------------------------------------------------
   SAME VISUAL WIDTH AS HEADER / NAVIGATION
   ---------------------------------------------------------- */

body.mp-travel-checkout-page
.mp-travel-checkout-shell,
body.mp-travel-checkout-page
.wp-block-woocommerce-checkout {
    width:min(1280px, calc(100% - 40px)) !important;
    max-width:1280px !important;

    margin-left:auto !important;
    margin-right:auto !important;
}


/* ----------------------------------------------------------
   REMOVE EXCESS SPACE DIRECTLY BELOW HEADER
   ---------------------------------------------------------- */

body.mp-travel-checkout-page
.mp-travel-checkout-shell {
    margin-top:12px !important;
    margin-bottom:18px !important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-steps {
    margin-top:0 !important;
    padding-top:0 !important;
}


/* ----------------------------------------------------------
   PACKAGE BAR / MAIN CHECKOUT ALIGNMENT
   ---------------------------------------------------------- */

body.mp-travel-checkout-page
.mp-travel-checkout-context {
    margin-top:0 !important;
}

body.mp-travel-checkout-page
.wp-block-woocommerce-checkout {
    margin-top:0 !important;
}


/* ----------------------------------------------------------
   ORDER SUMMARY
   Keep one price only.
   Woo currently renders product unit price + item total.
   ---------------------------------------------------------- */

body.mp-travel-checkout-page
.wc-block-components-order-summary-item
.wc-block-components-product-price {
    display:none !important;
}


/* Keep final product amount on the right */

body.mp-travel-checkout-page
.wc-block-components-order-summary-item__total-price {
    display:block !important;

    position:static !important;

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

    white-space:nowrap !important;

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

    font-size:12px !important;
    line-height:1.3 !important;
    font-weight:800 !important;
}


/* ----------------------------------------------------------
   Keep summary compact
   ---------------------------------------------------------- */

body.mp-travel-checkout-page
.wc-block-components-order-summary-item {
    padding-top:10px !important;
    padding-bottom:10px !important;
}

body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-item {
    padding-top:7px !important;
    padding-bottom:7px !important;
}


/* ----------------------------------------------------------
   RESPONSIVE
   ---------------------------------------------------------- */

@media(max-width:1300px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell,
    body.mp-travel-checkout-page
    .wp-block-woocommerce-checkout {
        width:calc(100% - 40px) !important;
    }
}

@media(max-width:700px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell,
    body.mp-travel-checkout-page
    .wp-block-woocommerce-checkout {
        width:calc(100% - 28px) !important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell {
        margin-top:10px !important;
    }
}

/* MP_TRAVEL_CHECKOUT_ALIGNMENT_V5_END */

/* MP_TRAVEL_ALIEXPRESS_PREMIUM_V1 */

/* ===== Premium AliExpress-inspired cards + text ===== */

body.mp-travel-checkout-page {
    --mp-card-bg: #ffffff;
    --mp-card-border: #e6eaf0;
    --mp-card-border-strong: #d9e0ea;
    --mp-text-main: #0f172a;
    --mp-text-soft: #5f6b7a;
    --mp-text-muted: #7c8797;
    --mp-accent: #f59e0b;
    --mp-accent-dark: #d97706;
    --mp-summary-bg: #ffffff;
}

/* Main cards */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-checkout__contact-fields,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-checkout__billing-fields,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-checkout__shipping-address,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-checkout__order-notes,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-checkout__payment-method,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-checkout__sidebar,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-order-summary,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-totals-wrapper,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-panel,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-checkout-step {
    background: var(--mp-card-bg) !important;
    border: 1px solid var(--mp-card-border) !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}

/* Section headings */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell h2,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell h3,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-title {
    color: var(--mp-text-main) !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
    margin-bottom: 14px !important;
}

/* Body text */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell p,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell label,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell span,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell li,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-formatted-money-amount {
    color: var(--mp-text-soft) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

/* Strong text */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell strong,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell b,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-totals-item__label,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-order-summary-item__description h4,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-order-summary__header-text {
    color: var(--mp-text-main) !important;
    font-weight: 700 !important;
}

/* Inputs */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell input[type="text"],
body.mp-travel-checkout-page 
.mp-travel-checkout-shell input[type="email"],
body.mp-travel-checkout-page 
.mp-travel-checkout-shell input[type="tel"],
body.mp-travel-checkout-page 
.mp-travel-checkout-shell input[type="number"],
body.mp-travel-checkout-page 
.mp-travel-checkout-shell textarea,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell select,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-text-input input,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-textarea textarea,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-combobox .components-combobox-control__input {
    height: 44px !important;
    min-height: 44px !important;
    background: #fff !important;
    border: 1px solid var(--mp-card-border-strong) !important;
    border-radius: 5px !important;
    color: var(--mp-text-main) !important;
    font-size: 14px !important;
    box-shadow: none !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell textarea,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-textarea textarea {
    min-height: 96px !important;
    padding-top: 12px !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-text-input label,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-textarea label {
    color: var(--mp-text-muted) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
}

/* Payment option line */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-radio-control__option,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-payment-method-label {
    min-height: 52px !important;
    align-items: center !important;
    color: var(--mp-text-main) !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-radio-control__option-layout {
    gap: 14px !important;
}

/* Order summary outer */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-checkout__sidebar {
    background: var(--mp-summary-bg) !important;
    padding: 16px !important;
}

/* Order summary product row */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-order-summary-item {
    display: grid !important;
    grid-template-columns: 96px minmax(0,1fr) auto !important;
    gap: 14px !important;
    align-items: start !important;
    padding: 14px 0 !important;
    border-bottom: 1px solid #edf1f5 !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-order-summary-item__image {
    width: 96px !important;
    min-width: 96px !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-order-summary-item__image img {
    width: 96px !important;
    height: 96px !important;
    object-fit: cover !important;
    border-radius: 5px !important;
    display: block !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-order-summary-item__description {
    min-width: 0 !important;
    width: 100% !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-order-summary-item__description h4,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-product-name {
    display: block !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    color: var(--mp-text-main) !important;
    margin: 0 0 8px !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-product-metadata,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-order-summary-item__description .wc-block-components-product-details {
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: var(--mp-text-soft) !important;
}

/* Keep only one summary product total and align right */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-product-price {
    display: none !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-order-summary-item__total-price {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    min-width: 110px !important;
    white-space: nowrap !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    color: var(--mp-text-main) !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Coupon/totals rows */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-panel__button,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-panel__content,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-totals-item {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-totals-item {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    border-top: 1px solid #edf1f5 !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-totals-item__value,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-formatted-money-amount {
    color: var(--mp-text-main) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-totals-footer-item {
    margin-top: 6px !important;
    padding-top: 14px !important;
    border-top: 1px solid #e8edf3 !important;
}

body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: var(--mp-text-main) !important;
}

/* Notice card */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .mp-travel-checkout-payment-note,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-notice-banner {
    background: #f8fafc !important;
    border: 1px solid #e7edf3 !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}

/* CTA cleaner */
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-checkout-place-order-button,
body.mp-travel-checkout-page 
.mp-travel-checkout-shell .wc-block-components-button {
    border-radius: 5px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
}

/* Responsive summary row */
@media (max-width: 980px) {
    body.mp-travel-checkout-page 
    .mp-travel-checkout-shell .wc-block-components-order-summary-item {
        grid-template-columns: 84px minmax(0,1fr) auto !important;
        gap: 12px !important;
    }

    body.mp-travel-checkout-page 
    .mp-travel-checkout-shell .wc-block-components-order-summary-item__image,
    body.mp-travel-checkout-page 
    .mp-travel-checkout-shell .wc-block-components-order-summary-item__image img {
        width: 84px !important;
        height: 84px !important;
        min-width: 84px !important;
    }
}

@media (max-width: 640px) {
    body.mp-travel-checkout-page 
    .mp-travel-checkout-shell .wc-block-components-order-summary-item {
        grid-template-columns: 74px minmax(0,1fr) !important;
    }

    body.mp-travel-checkout-page 
    .mp-travel-checkout-shell .wc-block-components-order-summary-item__total-price {
        grid-column: 2 !important;
        justify-content: flex-start !important;
        margin-top: 4px !important;
    }
}

/* MP_TRAVEL_ALIEXPRESS_PREMIUM_V1_END */

/* ==========================================================
   MP_TRAVEL_CHECKOUT_HEADER_ALIGNMENT_V6
   ========================================================== */

/* ----------------------------------------------------------
   EXACT PAGE CONTAINER
   Match Alcance header/navigation visual width
   ---------------------------------------------------------- */

body.mp-travel-checkout-page
.mp-travel-checkout-shell,
body.mp-travel-checkout-page
.wp-block-woocommerce-checkout {
    width:calc(100% - 48px) !important;
    max-width:1460px !important;

    margin-left:auto !important;
    margin-right:auto !important;
}

/* Keep checkout grid inside same boundaries */
body.mp-travel-checkout-page
.wc-block-components-sidebar-layout {
    width:100% !important;
    max-width:none !important;

    margin-left:0 !important;
    margin-right:0 !important;
}

/* Stepper aligned with cards/header */
body.mp-travel-checkout-page
.mp-travel-checkout-steps {
    width:100% !important;

    margin-left:0 !important;
    margin-right:0 !important;

    padding-left:0 !important;
    padding-right:0 !important;
}

/* ----------------------------------------------------------
   PACKAGE BAR
   Restore Alcance premium contrast after generic text rules
   ---------------------------------------------------------- */

body.mp-travel-checkout-page
.mp-travel-checkout-context {
    width:auto !important;

    margin-left:0 !important;

    background:#202021 !important;

    border-radius:5px !important;

    box-shadow:none !important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-context,
body.mp-travel-checkout-page
.mp-travel-checkout-context span,
body.mp-travel-checkout-page
.mp-travel-checkout-context strong {
    color:#FFFFFF !important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-context
.mp-travel-checkout-context-type {
    background:rgba(244, 127, 34,.17) !important;

    color:#FFC45A !important;

    font-size:10px !important;
    font-weight:800 !important;
    letter-spacing:.05em !important;
}

body.mp-travel-checkout-page
.mp-travel-checkout-context strong {
    color:#FFFFFF !important;

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

body.mp-travel-checkout-page
.mp-travel-checkout-context > span:last-child {
    color:#E1E8F0 !important;

    font-size:12px !important;
    font-weight:500 !important;
}

/* ----------------------------------------------------------
   Preserve current premium cards
   ---------------------------------------------------------- */

body.mp-travel-checkout-page
.wc-block-components-checkout-step,
body.mp-travel-checkout-page
.wc-block-checkout__sidebar {
    box-shadow:none !important;
}

/* ----------------------------------------------------------
   Responsive
   ---------------------------------------------------------- */

@media (max-width:1500px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell,
    body.mp-travel-checkout-page
    .wp-block-woocommerce-checkout {
        width:calc(100% - 48px) !important;
    }
}

@media (max-width:700px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell,
    body.mp-travel-checkout-page
    .wp-block-woocommerce-checkout {
        width:calc(100% - 28px) !important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-context {
        width:100% !important;
    }
}

/* MP_TRAVEL_CHECKOUT_HEADER_ALIGNMENT_V6_END */

/* ==========================================================
   MP_TRAVEL_ORIGINAL_CONTAINER_BASELINE
   Original MP Travel checkout dimensions
   ========================================================== */

body.mp-travel-checkout-page
.mp-travel-checkout-shell {
    width:min(1240px, calc(100% - 40px)) !important;
    max-width:1240px !important;

    margin:42px auto 22px !important;
}

body.mp-travel-checkout-page
.wp-block-woocommerce-checkout {
    width:min(1240px, calc(100% - 40px)) !important;
    max-width:1240px !important;

    margin:0 auto 56px !important;
}

/* Do not let inner checkout create another page width */
body.mp-travel-checkout-page
.wc-block-components-sidebar-layout {
    width:100% !important;
    max-width:none !important;

    margin-left:0 !important;
    margin-right:0 !important;
}

/* Original responsive baseline */
@media (max-width:900px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell,
    body.mp-travel-checkout-page
    .wp-block-woocommerce-checkout {
        width:min(calc(100% - 28px), 760px) !important;
    }
}

/* MP_TRAVEL_ORIGINAL_CONTAINER_BASELINE_END */

/* ==========================================================
   MP_TRAVEL_ELEMENTOR_CONTAINER_1140
   Align Travel Checkout to Elementor 1140px container
   ========================================================== */

body.mp-travel-checkout-page
.mp-travel-checkout-shell,
body.mp-travel-checkout-page
.wp-block-woocommerce-checkout {
    width:100% !important;
    max-width:1140px !important;

    margin-left:auto !important;
    margin-right:auto !important;

    padding-left:0 !important;
    padding-right:0 !important;
}

/* Hero is hidden, so shell only contains stepper/package bar */
body.mp-travel-checkout-page
.mp-travel-checkout-shell {
    margin-top:24px !important;
    margin-bottom:22px !important;
}

/* Actual checkout starts on exactly the same vertical axis */
body.mp-travel-checkout-page
.wp-block-woocommerce-checkout {
    margin-top:0 !important;
    margin-bottom:56px !important;
}

/* Inner Woo grid must not introduce another width */
body.mp-travel-checkout-page
.wc-block-components-sidebar-layout {
    width:100% !important;
    max-width:100% !important;

    margin-left:0 !important;
    margin-right:0 !important;
}

/* Stepper aligned with Elementor container */
body.mp-travel-checkout-page
.mp-travel-checkout-steps {
    width:100% !important;

    margin-left:0 !important;
    margin-right:0 !important;

    padding-left:0 !important;
    padding-right:0 !important;
}

/* Package bar begins at same left edge */
body.mp-travel-checkout-page
.mp-travel-checkout-context {
    margin-left:0 !important;
}

/* Tablet/mobile gutter */
@media (max-width:1180px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell,
    body.mp-travel-checkout-page
    .wp-block-woocommerce-checkout {
        width:calc(100% - 40px) !important;
        max-width:1140px !important;
    }
}

@media (max-width:767px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell,
    body.mp-travel-checkout-page
    .wp-block-woocommerce-checkout {
        width:calc(100% - 30px) !important;
    }
}

/* MP_TRAVEL_ELEMENTOR_CONTAINER_1140_END */

/* MP_TRAVEL_REMOVE_PACKAGE_CONTEXT_V1 */
body.mp-travel-checkout-page .mp-travel-checkout-context {
    display: none !important;
}
/* MP_TRAVEL_REMOVE_PACKAGE_CONTEXT_V1_END */


/* ==========================================================
   MP_TRAVEL_CHECKOUT_TRUST_POLISH_V2
   ========================================================== */

/*
 * IMPORTANT:
 * Border belongs ONLY to Secure international payment card.
 */
body.mp-travel-checkout-page
.mp-international-payment-notice {
    position:relative !important;

    border:
        1px solid
        #DCE5EF !important;

    border-left:
        1px solid
        #DCE5EF !important;

    border-top:
        3px solid
        #6F89AD !important;

    border-radius:
        5px !important;

    background:
        #F5F8FC !important;

    padding:
        17px 20px !important;

    box-shadow:
        none !important;
}

/* Kill erroneous class if browser still has it in DOM */
body.mp-travel-checkout-page
.mp-checkout-protected-note {
    border-top:0 !important;
    border-left:0 !important;
}

/* Security line above CTA */
body.mp-travel-checkout-page
.mp-checkout-trust-note {
    display:flex !important;

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

    gap:7px !important;

    width:100% !important;

    margin:
        0
        0
        10px !important;

    color:
        #607080 !important;

    font-size:
        12px !important;

    line-height:
        1.4 !important;

    font-weight:
        500 !important;
}

body.mp-travel-checkout-page
.mp-checkout-trust-note__icon {
    display:inline-flex !important;

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

    width:17px !important;
    height:17px !important;

    flex:
        0
        0
        17px !important;

    border-radius:
        100% !important;

    background:
        #159447 !important;

    color:
        #FFFFFF !important;

    font-size:
        10px !important;

    font-weight:
        800 !important;
}

body.mp-travel-checkout-page
.mp-checkout-trust-note__text {
    color:
        #607080 !important;

    font-size:
        12px !important;

    font-weight:
        500 !important;
}

/* MP_TRAVEL_CHECKOUT_TRUST_POLISH_V2_END */

/* ==========================================================
   MP_TRAVEL_TRUST_ORANGE_V2
   Alcance orange secure payment card
   ========================================================== */

body.mp-travel-checkout-page
.mp-international-payment-notice {
    border:
        1px solid
        #F4D9AC !important;

    border-top:
        3px solid
        #F47F22 !important;

    border-left:
        1px solid
        #F4D9AC !important;

    background:
        #FFF8ED !important;

    border-radius:
        5px !important;

    box-shadow:
        none !important;
}

body.mp-travel-checkout-page
.mp-international-payment-notice strong {
    color:
        #202021 !important;
}

body.mp-travel-checkout-page
.mp-international-payment-notice span,
body.mp-travel-checkout-page
.mp-international-payment-notice p {
    color:
        #5F6875 !important;
}

/* MP_TRAVEL_TRUST_ORANGE_V2_END */


/* ==========================================================
   MP_TRAVEL_STEP_SUMMARY_EXACT_V2
   Exact selectors from current checkout
   ========================================================== */

/* Completed step — exact real selector */
body.mp-travel-checkout-page
.mp-travel-checkout-steps li.is-complete > span {
    background:#82BD41 !important;
    border-color:#82BD41 !important;
    color:#FFFFFF !important;
}

/* Fallback for first completed Trip Review indicator */
body.mp-travel-checkout-page
.mp-travel-checkout-steps li:first-child > span {
    background:#82BD41 !important;
    border-color:#82BD41 !important;
    color:#FFFFFF !important;
}

/* Order Summary — exact Woo Blocks sidebar/card */
body.mp-travel-checkout-page
.wc-block-checkout__sidebar {
    border:1px solid #E3E8EF !important;
    box-shadow:none !important;
    border-radius:5px !important;
    background:#FFFFFF !important;
}

/* Product area inside summary — same light border language */
body.mp-travel-checkout-page
.wc-block-components-order-summary {
    border-color:#E3E8EF !important;
    box-shadow:none !important;
}

/* Avoid dark dividers */
body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-totals-wrapper,
body.mp-travel-checkout-page
.wc-block-checkout__sidebar
.wc-block-components-panel {
    border-color:#E8ECF1 !important;
}

/* MP_TRAVEL_STEP_SUMMARY_EXACT_V2_END */

/* ==========================================================
   MP_TRAVEL_ORDER_PAY_PREMIUM_V1
   Alcance payment stage
   Elementor 1140px
   ========================================================== */


/* ----------------------------------------------------------
   ORDER-PAY PAGE WIDTH
   Same container used by Traveller Details
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
.mp-travel-checkout-shell,
body.mp-travel-order-pay-page
.woocommerce {
    width:100% !important;
    max-width:1140px !important;

    margin-left:auto !important;
    margin-right:auto !important;
}


/* Stepper */
body.mp-travel-order-pay-page
.mp-travel-checkout-shell {
    margin-top:24px !important;
    margin-bottom:22px !important;
}


/* ----------------------------------------------------------
   SECURE PAYMENT NOTICE
   Currently generated before order-pay content.
   Keep it inside Elementor container.
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
.mp-international-payment-notice {
    width:100% !important;
    max-width:1140px !important;

    margin:
        0
        auto
        18px !important;

    padding:
        17px
        20px !important;

    border:
        1px solid
        #F4D9AC !important;

    border-top:
        3px solid
        #F47F22 !important;

    border-radius:
        5px !important;

    background:
        #FFF8ED !important;

    box-shadow:
        none !important;
}


/* ----------------------------------------------------------
   MAIN ORDER PAY CONTENT
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
.woocommerce {
    margin-top:0 !important;
    margin-bottom:56px !important;

    color:#202021 !important;
}


/* ----------------------------------------------------------
   ORDER OVERVIEW
   Order number / date / total / payment method
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
.woocommerce-order-overview {
    display:grid !important;

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

    gap:0 !important;

    width:100% !important;

    margin:
        0
        0
        18px !important;

    padding:
        18px
        20px !important;

    border:
        1px solid
        #E3E8EF !important;

    border-radius:
        5px !important;

    background:
        #FFFFFF !important;

    list-style:none !important;

    box-shadow:none !important;
}

body.mp-travel-order-pay-page
.woocommerce-order-overview li {
    float:none !important;

    width:auto !important;

    margin:0 !important;

    padding:
        0
        18px !important;

    border-right:
        1px solid
        #E7ECF2 !important;

    color:#68788A !important;

    font-size:11px !important;
    line-height:1.35 !important;

    text-transform:uppercase !important;
}

body.mp-travel-order-pay-page
.woocommerce-order-overview li:first-child {
    padding-left:0 !important;
}

body.mp-travel-order-pay-page
.woocommerce-order-overview li:last-child {
    border-right:0 !important;
}

body.mp-travel-order-pay-page
.woocommerce-order-overview li strong {
    display:block !important;

    margin-top:4px !important;

    color:#202021 !important;

    font-size:16px !important;
    line-height:1.3 !important;

    font-weight:700 !important;

    text-transform:none !important;
}


/* ----------------------------------------------------------
   PAYMENT INSTRUCTION
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
.woocommerce > p {
    margin:
        0
        0
        12px !important;

    color:#526579 !important;

    font-size:14px !important;
    line-height:1.55 !important;
}


/* ----------------------------------------------------------
   PAYMENT CARD
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
form#order_review {
    width:100% !important;

    margin:0 !important;

    padding:
        20px !important;

    border:
        1px solid
        #E3E8EF !important;

    border-radius:
        5px !important;

    background:
        #FFFFFF !important;

    box-shadow:none !important;
}


/* Remove old heavy/empty payment background */
body.mp-travel-order-pay-page
#payment {
    min-height:0 !important;

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

    border:0 !important;

    border-radius:0 !important;

    background:
        transparent !important;

    box-shadow:none !important;
}


/* Any genuinely empty gateway box should disappear */
body.mp-travel-order-pay-page
#payment .payment_box:empty,
body.mp-travel-order-pay-page
#payment .wc_payment_methods:empty,
body.mp-travel-order-pay-page
#payment .payment_methods:empty {
    display:none !important;
}


/* Payment methods */
body.mp-travel-order-pay-page
#payment ul.payment_methods {
    margin:
        0
        0
        14px !important;

    padding:0 !important;

    border:0 !important;

    list-style:none !important;
}

body.mp-travel-order-pay-page
#payment ul.payment_methods li {
    margin:0 !important;

    padding:
        13px
        15px !important;

    border:
        1px solid
        #F2C77D !important;

    border-radius:
        5px !important;

    background:
        #FFFCF7 !important;
}


/* ----------------------------------------------------------
   PAY BUTTON
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
#payment .form-row,
body.mp-travel-order-pay-page
.form-row.place-order {
    width:100% !important;

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

    background:
        transparent !important;
}

body.mp-travel-order-pay-page
#place_order {
    display:flex !important;

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

    width:100% !important;
    max-width:none !important;

    min-height:52px !important;

    margin:
        0 !important;

    padding:
        0
        22px !important;

    border:
        1px solid
        #F47F22 !important;

    border-radius:
        5px !important;

    background:
        #F47F22 !important;

    color:
        #FFFFFF !important;

    font-size:
        14px !important;

    font-weight:
        700 !important;

    box-shadow:
        none !important;
}

body.mp-travel-order-pay-page
#place_order:hover {
    border-color:
        #E88A00 !important;

    background:
        #E88A00 !important;

    color:
        #FFFFFF !important;
}


/* ----------------------------------------------------------
   CANCEL = SECONDARY ACTION
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
a.cancel,
body.mp-travel-order-pay-page
a.button.cancel,
body.mp-travel-order-pay-page
.woocommerce-button.cancel {
    display:flex !important;

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

    width:100% !important;

    min-height:46px !important;

    margin:
        10px
        0
        0 !important;

    padding:
        0
        18px !important;

    border:
        1px solid
        #DDE4EC !important;

    border-radius:
        5px !important;

    background:
        #FFFFFF !important;

    color:
        #536477 !important;

    font-size:
        13px !important;

    font-weight:
        600 !important;

    text-decoration:none !important;

    box-shadow:none !important;
}


/* ----------------------------------------------------------
   SAFE TRUST MESSAGE — CSS ONLY
   No JavaScript / no DOM insertion
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
form#order_review::after {
    content:
        "✓  Secure checkout · Protected card processing";

    display:block !important;

    margin:
        12px
        0
        0 !important;

    color:
        #60802F !important;

    font-size:
        12px !important;

    line-height:
        1.4 !important;

    text-align:center !important;
}


/* ----------------------------------------------------------
   RESPONSIVE
   ---------------------------------------------------------- */

@media(max-width:1180px) {

    body.mp-travel-order-pay-page
    .mp-travel-checkout-shell,
    body.mp-travel-order-pay-page
    .woocommerce,
    body.mp-travel-order-pay-page
    .mp-international-payment-notice {
        width:calc(100% - 40px) !important;
        max-width:1140px !important;
    }
}

@media(max-width:767px) {

    body.mp-travel-order-pay-page
    .mp-travel-checkout-shell,
    body.mp-travel-order-pay-page
    .woocommerce,
    body.mp-travel-order-pay-page
    .mp-international-payment-notice {
        width:calc(100% - 30px) !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce-order-overview {
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;

        gap:14px 0 !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce-order-overview li:nth-child(2) {
        border-right:0 !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce-order-overview li:nth-child(3) {
        padding-left:0 !important;
    }

    body.mp-travel-order-pay-page
    form#order_review {
        padding:16px !important;
    }
}

/* MP_TRAVEL_ORDER_PAY_PREMIUM_V1_END */

/* ==========================================================
   MP_TRAVEL_ORDER_PAY_PREMIUM_V2
   Alcance Payment Stage
   ========================================================== */


/* ==========================================================
   CONTAINER — SAME ELEMENTOR 1140PX
   ========================================================== */

body.mp-travel-order-pay-page
.mp-travel-checkout-shell,

body.mp-travel-order-pay-page
.woocommerce,

body.mp-travel-order-pay-page
.mp-international-payment-notice {
    width:100% !important;
    max-width:1140px !important;

    margin-left:auto !important;
    margin-right:auto !important;
}


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

body.mp-travel-order-pay-page
.mp-international-payment-notice {
    margin-top:0 !important;
    margin-bottom:20px !important;

    padding:16px 18px !important;

    border:1px solid #F4D9AC !important;
    border-top:3px solid #F47F22 !important;

    border-radius:5px !important;

    background:#FFF8ED !important;

    box-shadow:none !important;
}

body.mp-travel-order-pay-page
.mp-international-payment-notice strong {
    margin-bottom:4px !important;

    color:#102A43 !important;

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

body.mp-travel-order-pay-page
.mp-international-payment-notice span {
    color:#607080 !important;

    font-size:12px !important;
    line-height:1.55 !important;
}


/* ==========================================================
   STEPPER
   ========================================================== */

body.mp-travel-order-pay-page
.mp-travel-checkout-shell {
    margin-top:24px !important;
    margin-bottom:24px !important;
}

body.mp-travel-order-pay-page
.mp-travel-checkout-steps {
    margin:0 !important;
}


/* Completed stages */

body.mp-travel-order-pay-page
.mp-travel-checkout-steps li.is-complete > span,

body.mp-travel-order-pay-page
.mp-travel-checkout-steps li:nth-child(1) > span,

body.mp-travel-order-pay-page
.mp-travel-checkout-steps li:nth-child(2) > span {
    background:#82BD41 !important;
    border-color:#82BD41 !important;
    color:#FFFFFF !important;
}


/* Payment active */

body.mp-travel-order-pay-page
.mp-travel-checkout-steps li:nth-child(3) > span {
    background:#F47F22 !important;
    border-color:#F47F22 !important;
    color:#FFFFFF !important;
}


/* ==========================================================
   MAIN PAYMENT BODY
   ========================================================== */

body.mp-travel-order-pay-page
.woocommerce {
    margin-top:0 !important;
    margin-bottom:56px !important;

    color:#202021 !important;
}


/* ==========================================================
   ORDER INFO — PREMIUM CARD
   ========================================================== */

body.mp-travel-order-pay-page
.woocommerce-order-overview {
    display:grid !important;

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

    width:100% !important;

    margin:0 0 28px !important;

    padding:20px 22px !important;

    border:1px solid #E1E7EE !important;
    border-radius:5px !important;

    background:#FFFFFF !important;

    list-style:none !important;

    box-shadow:none !important;
}

body.mp-travel-order-pay-page
.woocommerce-order-overview li {
    float:none !important;

    width:auto !important;

    margin:0 !important;

    padding:0 20px !important;

    border-right:1px solid #E6EBF1 !important;

    color:#778494 !important;

    font-size:10px !important;
    line-height:1.35 !important;

    letter-spacing:.04em !important;

    text-transform:uppercase !important;
}

body.mp-travel-order-pay-page
.woocommerce-order-overview li:first-child {
    padding-left:0 !important;
}

body.mp-travel-order-pay-page
.woocommerce-order-overview li:last-child {
    border-right:0 !important;
}

body.mp-travel-order-pay-page
.woocommerce-order-overview li strong {
    display:block !important;

    margin-top:5px !important;

    color:#102A43 !important;

    font-size:16px !important;
    line-height:1.25 !important;

    font-weight:700 !important;

    letter-spacing:0 !important;

    text-transform:none !important;
}


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

body.mp-travel-order-pay-page
.woocommerce > p {
    max-width:760px !important;

    margin:0 auto 15px !important;

    color:#536579 !important;

    font-size:14px !important;
    line-height:1.55 !important;
}


/* ==========================================================
   PAYSTACK ACTION ZONE
   ========================================================== */

body.mp-travel-order-pay-page
form#order_review {
    width:100% !important;
    max-width:760px !important;

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

    border:0 !important;

    background:transparent !important;

    box-shadow:none !important;
}


/* Actual payment container */

body.mp-travel-order-pay-page
#payment {
    width:100% !important;

    margin:0 !important;

    padding:20px !important;

    border:1px solid #E1E7EE !important;
    border-radius:5px !important;

    background:#FFFFFF !important;

    box-shadow:none !important;
}


/* Secure indicator */

body.mp-travel-order-pay-page
#payment::before {
    content:"✓  Secure checkout · Protected card processing";

    display:block !important;

    margin:0 0 14px !important;

    padding:0 !important;

    color:#669629 !important;

    font-size:12px !important;
    line-height:1.4 !important;

    font-weight:600 !important;

    text-align:left !important;
}


/*
 * Remove the old security message that appeared
 * as a large empty white box.
 */

body.mp-travel-order-pay-page
form#order_review::after {
    content:none !important;
    display:none !important;
}


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

body.mp-travel-order-pay-page
#payment ul.payment_methods {
    margin:0 0 14px !important;
    padding:0 !important;

    border:0 !important;

    list-style:none !important;
}

body.mp-travel-order-pay-page
#payment ul.payment_methods li {
    margin:0 !important;

    padding:13px 15px !important;

    border:1px solid #F3C97F !important;
    border-radius:5px !important;

    background:#FFFCF7 !important;

    color:#202021 !important;

    box-shadow:none !important;
}


/* ==========================================================
   PAY BUTTON
   Cover Paystack/Woo button variations
   ========================================================== */

body.mp-travel-order-pay-page
#place_order,

body.mp-travel-order-pay-page
#submit_paystack_payment_form,

body.mp-travel-order-pay-page
button#submit_paystack_payment_form,

body.mp-travel-order-pay-page
input#submit_paystack_payment_form,

body.mp-travel-order-pay-page
form#order_review button.button.alt,

body.mp-travel-order-pay-page
form#order_review input.button.alt,

body.mp-travel-order-pay-page
#payment button.button,

body.mp-travel-order-pay-page
#payment input.button {
    display:flex !important;

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

    width:100% !important;
    max-width:none !important;

    min-height:52px !important;

    margin:0 !important;

    padding:0 20px !important;

    border:1px solid #F47F22 !important;
    border-radius:5px !important;

    background:#F47F22 !important;

    color:#FFFFFF !important;

    font-size:14px !important;
    line-height:1 !important;

    font-weight:700 !important;

    text-align:center !important;

    box-shadow:none !important;
}


/* Hover */

body.mp-travel-order-pay-page
#place_order:hover,

body.mp-travel-order-pay-page
#submit_paystack_payment_form:hover,

body.mp-travel-order-pay-page
form#order_review button.button.alt:hover {
    border-color:#E88A00 !important;
    background:#E88A00 !important;
}


/* ==========================================================
   CANCEL
   Secondary text action, not another giant card
   ========================================================== */

body.mp-travel-order-pay-page
a.cancel,

body.mp-travel-order-pay-page
a.button.cancel,

body.mp-travel-order-pay-page
.woocommerce-button.cancel {
    display:block !important;

    width:auto !important;

    min-height:0 !important;

    margin:14px auto 0 !important;
    padding:4px 6px !important;

    border:0 !important;

    background:transparent !important;

    color:#6B7786 !important;

    font-size:12px !important;
    line-height:1.4 !important;

    font-weight:500 !important;

    text-align:center !important;

    text-decoration:none !important;

    box-shadow:none !important;
}

body.mp-travel-order-pay-page
a.cancel:hover,

body.mp-travel-order-pay-page
a.button.cancel:hover {
    color:#D97706 !important;

    text-decoration:underline !important;
}


/* ==========================================================
   REMOVE EMPTY VISUAL SPACE
   ========================================================== */

body.mp-travel-order-pay-page
#payment .payment_box:empty,

body.mp-travel-order-pay-page
#payment .wc_payment_methods:empty,

body.mp-travel-order-pay-page
#payment .payment_methods:empty {
    display:none !important;
}


/* ==========================================================
   MP_TRAVEL_ORDER_PAY_PREMIUM_V2_END
   ========================================================== */


/* ==========================================================
   MP_TRAVEL_CHECKOUT_FLOW_RESPONSIVE_V1
   Traveller Details + Payment + Confirmation
   ========================================================== */


/* ----------------------------------------------------------
   <= 1180px
   Elementor side gutter
   ---------------------------------------------------------- */

@media(max-width:1180px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell,

    body.mp-travel-checkout-page
    .wp-block-woocommerce-checkout,

    body.mp-travel-order-pay-page
    .mp-travel-checkout-shell,

    body.mp-travel-order-pay-page
    .woocommerce,

    body.mp-travel-order-pay-page
    .mp-international-payment-notice,

    body.woocommerce-order-received
    .woocommerce {
        width:calc(100% - 40px) !important;
        max-width:1140px !important;
    }
}


/* ----------------------------------------------------------
   <= 900px
   Two-column checkout becomes one-column
   ---------------------------------------------------------- */

@media(max-width:900px) {

    body.mp-travel-checkout-page
    .wc-block-components-sidebar-layout {
        display:block !important;
    }

    body.mp-travel-checkout-page
    .wc-block-components-main,

    body.mp-travel-checkout-page
    .wc-block-checkout__sidebar {
        width:100% !important;
        max-width:none !important;
    }

    body.mp-travel-checkout-page
    .wc-block-checkout__sidebar {
        position:static !important;

        margin-top:18px !important;
    }


    /* Stepper becomes clean 2 × 2 */

    body.mp-travel-checkout-page
    .mp-travel-checkout-steps,

    body.mp-travel-order-pay-page
    .mp-travel-checkout-steps {
        display:grid !important;

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

        gap:10px !important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-steps li,

    body.mp-travel-order-pay-page
    .mp-travel-checkout-steps li {
        min-height:46px !important;

        padding:8px 10px !important;

        border:1px solid #E1E7EE !important;
        border-radius:5px !important;

        background:#FFFFFF !important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-steps li::after,

    body.mp-travel-order-pay-page
    .mp-travel-checkout-steps li::after {
        display:none !important;
    }


    /* Payment overview */

    body.mp-travel-order-pay-page
    .woocommerce-order-overview {
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;

        gap:16px 0 !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce-order-overview li:nth-child(2) {
        border-right:0 !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce-order-overview li:nth-child(3) {
        padding-left:0 !important;
    }
}


/* ----------------------------------------------------------
   <= 767px
   Mobile
   ---------------------------------------------------------- */

@media(max-width:767px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-shell,

    body.mp-travel-checkout-page
    .wp-block-woocommerce-checkout,

    body.mp-travel-order-pay-page
    .mp-travel-checkout-shell,

    body.mp-travel-order-pay-page
    .woocommerce,

    body.mp-travel-order-pay-page
    .mp-international-payment-notice,

    body.woocommerce-order-received
    .woocommerce {
        width:calc(100% - 30px) !important;
    }


    /* Cards */

    body.mp-travel-checkout-page
    .wc-block-components-checkout-step {
        padding:15px !important;
    }

    body.mp-travel-checkout-page
    .wc-block-checkout__sidebar {
        padding:14px !important;
    }


    /* Payment */

    body.mp-travel-order-pay-page
    #payment {
        padding:16px !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce-order-overview {
        padding:16px !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce-order-overview li {
        padding-left:12px !important;
        padding-right:12px !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce-order-overview li strong {
        font-size:14px !important;
    }


    /* Buttons */

    body.mp-travel-checkout-page
    .wc-block-components-checkout-place-order-button,

    body.mp-travel-order-pay-page
    #place_order,

    body.mp-travel-order-pay-page
    #submit_paystack_payment_form,

    body.mp-travel-order-pay-page
    form#order_review button.button.alt {
        width:100% !important;
        max-width:none !important;

        min-height:50px !important;
    }
}


/* ----------------------------------------------------------
   <= 480px
   Small phones
   ---------------------------------------------------------- */

@media(max-width:480px) {

    body.mp-travel-checkout-page
    .mp-travel-checkout-steps,

    body.mp-travel-order-pay-page
    .mp-travel-checkout-steps {
        gap:7px !important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-steps li strong,

    body.mp-travel-order-pay-page
    .mp-travel-checkout-steps li strong {
        font-size:11px !important;
    }

    body.mp-travel-checkout-page
    .mp-travel-checkout-steps li > span,

    body.mp-travel-order-pay-page
    .mp-travel-checkout-steps li > span {
        width:28px !important;
        height:28px !important;

        flex-basis:28px !important;

        font-size:11px !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce-order-overview {
        grid-template-columns:1fr !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce-order-overview li {
        padding:10px 0 !important;

        border-right:0 !important;
        border-bottom:1px solid #E9EDF2 !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce-order-overview li:last-child {
        border-bottom:0 !important;
    }
}


/* ----------------------------------------------------------
   CONFIRMATION PAGE — SAME DESIGN LANGUAGE
   ---------------------------------------------------------- */

body.woocommerce-order-received
.woocommerce {
    width:100% !important;
    max-width:1140px !important;

    margin-left:auto !important;
    margin-right:auto !important;
}

body.woocommerce-order-received
.woocommerce-order-overview,

body.woocommerce-order-received
.woocommerce-order-details,

body.woocommerce-order-received
.woocommerce-customer-details {
    border:1px solid #E1E7EE !important;
    border-radius:5px !important;

    background:#FFFFFF !important;

    box-shadow:none !important;
}


/* MP_TRAVEL_CHECKOUT_FLOW_RESPONSIVE_V1_END */

/* ==========================================================
   MP_TRAVEL_ORDER_PAY_PREMIUM_V3
   Alcance Payment Stage
   ========================================================== */


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

body.mp-travel-order-pay-page
.mp-travel-checkout-shell,

body.mp-travel-order-pay-page
.woocommerce,

body.mp-travel-order-pay-page
.mp-international-payment-notice {
    width:100% !important;
    max-width:1140px !important;

    margin-left:auto !important;
    margin-right:auto !important;
}


/* ==========================================================
   SECURE PAYMENT NOTICE
   ========================================================== */

body.mp-travel-order-pay-page
.mp-international-payment-notice {
    margin:
        0
        auto
        24px !important;

    padding:
        15px
        18px !important;

    border:
        1px solid
        #F4D9AC !important;

    border-top:
        3px solid
        #F47F22 !important;

    border-radius:
        5px !important;

    background:
        #FFF8ED !important;

    box-shadow:
        none !important;
}


/* ==========================================================
   STEPPER
   ========================================================== */

body.mp-travel-order-pay-page
.mp-travel-checkout-shell {
    margin-top:0 !important;
    margin-bottom:26px !important;
}

body.mp-travel-order-pay-page
.mp-travel-checkout-steps {
    margin:
        0 !important;
}


/* Previous steps */

body.mp-travel-order-pay-page
.mp-travel-checkout-steps
li:nth-child(1) > span,

body.mp-travel-order-pay-page
.mp-travel-checkout-steps
li:nth-child(2) > span {
    background:
        #82BD41 !important;

    border-color:
        #82BD41 !important;

    color:
        #FFFFFF !important;
}


/* Active payment */

body.mp-travel-order-pay-page
.mp-travel-checkout-steps
li:nth-child(3) > span {
    background:
        #F47F22 !important;

    border-color:
        #F47F22 !important;

    color:
        #FFFFFF !important;
}


/* ==========================================================
   MAIN BODY
   ========================================================== */

body.mp-travel-order-pay-page
.woocommerce {
    margin-top:0 !important;
    margin-bottom:54px !important;
}


/* ==========================================================
   BOOKING SUMMARY
   Four minimalist cards
   ========================================================== */

body.mp-travel-order-pay-page
ul.woocommerce-order-overview {
    display:grid !important;

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

    gap:
        12px !important;

    width:
        100% !important;

    margin:
        0
        0
        30px !important;

    padding:
        0 !important;

    border:
        0 !important;

    background:
        transparent !important;

    list-style:
        none !important;
}

body.mp-travel-order-pay-page
ul.woocommerce-order-overview
li {
    float:
        none !important;

    display:
        flex !important;

    flex-direction:
        column !important;

    justify-content:
        center !important;

    min-width:
        0 !important;

    min-height:
        88px !important;

    margin:
        0 !important;

    padding:
        15px
        16px !important;

    border:
        1px solid
        #E2E8EF !important;

    border-radius:
        5px !important;

    background:
        #FFFFFF !important;

    color:
        #748194 !important;

    font-size:
        10px !important;

    line-height:
        1.3 !important;

    letter-spacing:
        .045em !important;

    text-transform:
        uppercase !important;

    box-shadow:
        none !important;
}

body.mp-travel-order-pay-page
ul.woocommerce-order-overview
li strong {
    display:
        block !important;

    width:
        100% !important;

    margin-top:
        6px !important;

    color:
        #102A43 !important;

    font-size:
        16px !important;

    line-height:
        1.25 !important;

    font-weight:
        700 !important;

    letter-spacing:
        0 !important;

    text-transform:
        none !important;

    overflow-wrap:
        anywhere !important;
}


/* Payment method card subtle accent */

body.mp-travel-order-pay-page
ul.woocommerce-order-overview
li:last-child {
    border-top:
        2px solid
        #F47F22 !important;
}


/* ==========================================================
   PAYMENT ACTION AREA
   ========================================================== */

body.mp-travel-order-pay-page
.woocommerce > p {
    width:
        100% !important;

    max-width:
        720px !important;

    margin:
        0
        auto
        12px !important;

    color:
        #586A7D !important;

    font-size:
        14px !important;

    line-height:
        1.55 !important;
}


/* Gateway form — whatever Paystack calls it */

body.mp-travel-order-pay-page
.woocommerce form {
    position:
        relative !important;

    width:
        100% !important;

    max-width:
        720px !important;

    margin:
        0
        auto !important;

    padding:
        20px !important;

    border:
        1px solid
        #E2E8EF !important;

    border-radius:
        5px !important;

    background:
        #FFFFFF !important;

    box-shadow:
        none !important;
}


/* Green secure line */

body.mp-travel-order-pay-page
.woocommerce form::before {
    content:
        "✓  Secure checkout · Protected card processing";

    display:
        block !important;

    margin:
        0
        0
        14px !important;

    color:
        #6B9630 !important;

    font-size:
        12px !important;

    line-height:
        1.4 !important;

    font-weight:
        600 !important;
}


/* ==========================================================
   PAYSTACK / PAY NOW BUTTON
   Exact + broad gateway coverage
   ========================================================== */

body.mp-travel-order-pay-page
#submit_paystack_payment_form,

body.mp-travel-order-pay-page
input#submit_paystack_payment_form,

body.mp-travel-order-pay-page
button#submit_paystack_payment_form,

body.mp-travel-order-pay-page
.woocommerce form
input[type="submit"].button,

body.mp-travel-order-pay-page
.woocommerce form
button[type="submit"].button,

body.mp-travel-order-pay-page
.woocommerce form
.button.alt:not(.cancel),

body.mp-travel-order-pay-page
.woocommerce
#place_order {
    display:
        block !important;

    width:
        100% !important;

    max-width:
        none !important;

    min-height:
        52px !important;

    margin:
        0 !important;

    padding:
        0
        22px !important;

    border:
        1px solid
        #F47F22 !important;

    border-radius:
        5px !important;

    background:
        #F47F22 !important;

    color:
        #FFFFFF !important;

    font-size:
        14px !important;

    line-height:
        50px !important;

    font-weight:
        700 !important;

    text-align:
        center !important;

    text-decoration:
        none !important;

    box-shadow:
        none !important;

    cursor:
        pointer !important;
}


/* Hover */

body.mp-travel-order-pay-page
#submit_paystack_payment_form:hover,

body.mp-travel-order-pay-page
.woocommerce form
.button.alt:not(.cancel):hover,

body.mp-travel-order-pay-page
.woocommerce
#place_order:hover {
    border-color:
        #E68F00 !important;

    background:
        #E68F00 !important;

    color:
        #FFFFFF !important;
}


/* ==========================================================
   CANCEL
   Cancel order + return to Packages
   ========================================================== */

body.mp-travel-order-pay-page
.woocommerce form
a.cancel,

body.mp-travel-order-pay-page
.woocommerce form
a.button.cancel,

body.mp-travel-order-pay-page
a.button.cancel {
    display:
        block !important;

    width:
        100% !important;

    max-width:
        none !important;

    min-height:
        46px !important;

    margin:
        10px
        0
        0 !important;

    padding:
        0
        18px !important;

    border:
        1px solid
        #DDE4EC !important;

    border-radius:
        5px !important;

    background:
        #FFFFFF !important;

    color:
        #58697A !important;

    font-size:
        12px !important;

    line-height:
        44px !important;

    font-weight:
        600 !important;

    text-align:
        center !important;

    text-decoration:
        none !important;

    box-shadow:
        none !important;
}

body.mp-travel-order-pay-page
a.button.cancel:hover {
    border-color:
        #F1C069 !important;

    color:
        #D77D00 !important;

    background:
        #FFFBF4 !important;
}


/* ==========================================================
   REMOVE OLD EMPTY GATEWAY BOXES
   ========================================================== */

body.mp-travel-order-pay-page
#payment:empty,

body.mp-travel-order-pay-page
.payment_box:empty,

body.mp-travel-order-pay-page
.wc_payment_methods:empty {
    display:
        none !important;
}


/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media(max-width:1180px) {

    body.mp-travel-order-pay-page
    .mp-travel-checkout-shell,

    body.mp-travel-order-pay-page
    .woocommerce,

    body.mp-travel-order-pay-page
    .mp-international-payment-notice {
        width:
            calc(100% - 40px) !important;

        max-width:
            1140px !important;
    }
}


@media(max-width:900px) {

    body.mp-travel-order-pay-page
    ul.woocommerce-order-overview {
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            ) !important;
    }

    body.mp-travel-order-pay-page
    .mp-travel-checkout-steps {
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            ) !important;

        gap:
            9px !important;
    }
}


@media(max-width:767px) {

    body.mp-travel-order-pay-page
    .mp-travel-checkout-shell,

    body.mp-travel-order-pay-page
    .woocommerce,

    body.mp-travel-order-pay-page
    .mp-international-payment-notice {
        width:
            calc(100% - 30px) !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce form {
        max-width:
            none !important;

        padding:
            16px !important;
    }

    body.mp-travel-order-pay-page
    ul.woocommerce-order-overview
    li {
        min-height:
            78px !important;

        padding:
            13px !important;
    }
}


@media(max-width:520px) {

    body.mp-travel-order-pay-page
    ul.woocommerce-order-overview {
        grid-template-columns:
            1fr !important;

        gap:
            8px !important;
    }

    body.mp-travel-order-pay-page
    ul.woocommerce-order-overview
    li {
        min-height:
            auto !important;
    }

    body.mp-travel-order-pay-page
    .mp-travel-checkout-steps {
        gap:
            7px !important;
    }

    body.mp-travel-order-pay-page
    .mp-travel-checkout-steps
    li strong {
        font-size:
            11px !important;
    }
}


/* MP_TRAVEL_ORDER_PAY_PREMIUM_V3_END */

/* ==========================================================
   MP_TRAVEL_PAYMENT_ACTION_POLISH_V4
   ========================================================== */


/* ----------------------------------------------------------
   PAYMENT ACTION AREA
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
.woocommerce form {
    position:relative !important;

    width:100% !important;
    max-width:720px !important;

    margin:0 auto !important;

    padding:
        58px
        18px
        18px !important;

    border:1px solid #E2E8EF !important;
    border-radius:5px !important;

    background:#FFFFFF !important;

    box-shadow:none !important;
}


/* ----------------------------------------------------------
   REMOVE OLD FLOATING SECURITY MESSAGE
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
#payment::before {
    content:none !important;
    display:none !important;
}


/* ----------------------------------------------------------
   SECURITY ICON
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
.woocommerce form::before {
    content:"✓" !important;

    position:absolute !important;

    top:18px !important;
    left:18px !important;

    display:flex !important;

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

    width:22px !important;
    height:22px !important;

    margin:0 !important;

    border-radius:100% !important;

    background:#82BD41 !important;
    color:#FFFFFF !important;

    font-size:12px !important;
    line-height:1 !important;
    font-weight:800 !important;

    text-align:center !important;
}


/* ----------------------------------------------------------
   SECURITY TEXT
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
.woocommerce form::after {
    content:"Secure checkout · Protected card processing" !important;

    position:absolute !important;

    top:20px !important;
    left:50px !important;

    display:block !important;

    margin:0 !important;

    color:#526579 !important;

    font-size:12px !important;
    line-height:18px !important;

    font-weight:600 !important;

    text-align:left !important;
}


/* ----------------------------------------------------------
   ALCANCE PAYMENT BUTTON
   Covers Woo + Paystack button variants
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
#submit_paystack_payment_form,

body.mp-travel-order-pay-page
button#submit_paystack_payment_form,

body.mp-travel-order-pay-page
input#submit_paystack_payment_form,

body.mp-travel-order-pay-page
#place_order,

body.mp-travel-order-pay-page
.woocommerce form
button[type="submit"],

body.mp-travel-order-pay-page
.woocommerce form
input[type="submit"],

body.mp-travel-order-pay-page
.woocommerce form
.button:not(.cancel),

body.mp-travel-order-pay-page
.woocommerce
button.button:not(.cancel),

body.mp-travel-order-pay-page
.woocommerce
input.button:not(.cancel) {
    display:block !important;

    width:100% !important;
    max-width:none !important;

    height:52px !important;
    min-height:52px !important;

    margin:0 !important;

    padding:0 22px !important;

    border:
        1px solid
        #F47F22 !important;

    border-radius:5px !important;

    background:
        #F47F22 !important;

    color:
        #FFFFFF !important;

    -webkit-text-fill-color:
        #FFFFFF !important;

    font-family:inherit !important;

    font-size:14px !important;
    line-height:50px !important;

    font-weight:700 !important;

    letter-spacing:0 !important;

    text-align:center !important;

    text-decoration:none !important;

    box-shadow:none !important;

    opacity:1 !important;

    cursor:pointer !important;

    appearance:none !important;
}


/* Hover */

body.mp-travel-order-pay-page
#submit_paystack_payment_form:hover,

body.mp-travel-order-pay-page
#place_order:hover,

body.mp-travel-order-pay-page
.woocommerce form
button[type="submit"]:hover,

body.mp-travel-order-pay-page
.woocommerce form
input[type="submit"]:hover,

body.mp-travel-order-pay-page
.woocommerce form
.button:not(.cancel):hover {
    border-color:#E58F00 !important;
    background:#E58F00 !important;
    color:#FFFFFF !important;
}


/* ----------------------------------------------------------
   CANCEL MUST REMAIN SECONDARY
   ---------------------------------------------------------- */

body.mp-travel-order-pay-page
.woocommerce
a.cancel,

body.mp-travel-order-pay-page
.woocommerce
a.button.cancel {
    display:block !important;

    width:100% !important;

    min-height:44px !important;

    margin:10px 0 0 !important;
    padding:0 16px !important;

    border:1px solid #E2E8EF !important;
    border-radius:5px !important;

    background:#FFFFFF !important;

    color:#687789 !important;

    font-size:12px !important;
    line-height:42px !important;

    font-weight:500 !important;

    text-align:center !important;

    text-decoration:none !important;

    box-shadow:none !important;
}


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media(max-width:767px) {

    body.mp-travel-order-pay-page
    .woocommerce form {
        max-width:none !important;

        padding:
            56px
            14px
            14px !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce form::before {
        left:14px !important;
    }

    body.mp-travel-order-pay-page
    .woocommerce form::after {
        left:46px !important;

        font-size:11px !important;
    }

    body.mp-travel-order-pay-page
    #submit_paystack_payment_form,

    body.mp-travel-order-pay-page
    #place_order,

    body.mp-travel-order-pay-page
    .woocommerce form
    button[type="submit"],

    body.mp-travel-order-pay-page
    .woocommerce form
    input[type="submit"] {
        width:100% !important;
        height:50px !important;
        min-height:50px !important;
    }
}


/* MP_TRAVEL_PAYMENT_ACTION_POLISH_V4_END */

/* ==========================================================
   MP_TRAVEL_CONFIRMATION_PREMIUM_V1
   Alcance Travel — Confirmation Stage
   ========================================================== */


/* ==========================================================
   1. GLOBAL CONFIRMATION CONTAINER
   ========================================================== */

body.woocommerce-order-received
.woocommerce {
    width:100% !important;
    max-width:1140px !important;

    margin:
        0
        auto
        56px !important;

    color:#202021 !important;
}


/* ==========================================================
   2. STEPPER
   ========================================================== */

body.woocommerce-order-received
.mp-travel-checkout-shell {
    width:100% !important;
    max-width:1140px !important;

    margin:
        24px
        auto
        24px !important;
}


/* completed steps */

body.woocommerce-order-received
.mp-travel-checkout-steps
li:nth-child(1) > span,

body.woocommerce-order-received
.mp-travel-checkout-steps
li:nth-child(2) > span,

body.woocommerce-order-received
.mp-travel-checkout-steps
li:nth-child(3) > span {
    background:#82BD41 !important;
    border-color:#82BD41 !important;
    color:#FFFFFF !important;
}


/* current confirmation */

body.woocommerce-order-received
.mp-travel-checkout-steps
li:nth-child(4) > span {
    background:#F47F22 !important;
    border-color:#F47F22 !important;
    color:#FFFFFF !important;
}


/* ==========================================================
   3. PAYMENT SUCCESS NOTICE
   ========================================================== */

body.woocommerce-order-received
.woocommerce-thankyou-order-received,

body.woocommerce-order-received
.woocommerce-notice--success {
    position:relative !important;

    margin:
        0
        0
        18px !important;

    padding:
        18px
        20px
        18px
        56px !important;

    border:
        1px solid
        #DCEBC8 !important;

    border-left:
        3px solid
        #82BD41 !important;

    border-radius:
        5px !important;

    background:
        #F7FBF2 !important;

    color:
        #173D2A !important;

    font-size:
        14px !important;

    line-height:
        1.5 !important;

    font-weight:
        700 !important;

    box-shadow:
        none !important;
}


/* green confirmation icon */

body.woocommerce-order-received
.woocommerce-thankyou-order-received::before,

body.woocommerce-order-received
.woocommerce-notice--success::before {
    content:"✓" !important;

    position:absolute !important;

    top:50% !important;
    left:18px !important;

    display:flex !important;

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

    width:24px !important;
    height:24px !important;

    margin:0 !important;

    transform:
        translateY(-50%) !important;

    border-radius:
        100% !important;

    background:
        #82BD41 !important;

    color:
        #FFFFFF !important;

    font-size:
        12px !important;

    font-weight:
        800 !important;
}


/* ==========================================================
   4. ORDER OVERVIEW
   Minimal cards — remove duplicated email
   ========================================================== */

body.woocommerce-order-received
ul.woocommerce-order-overview {
    display:grid !important;

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

    gap:
        10px !important;

    width:
        100% !important;

    margin:
        0
        0
        20px !important;

    padding:
        0 !important;

    border:
        0 !important;

    background:
        transparent !important;

    list-style:
        none !important;
}


/*
 * Email already appears again inside Billing Address.
 * Remove it here to avoid duplication and desktop overlap.
 */

body.woocommerce-order-received
.woocommerce-order-overview__email {
    display:none !important;
}


/* individual summary cards */

body.woocommerce-order-received
ul.woocommerce-order-overview
li {
    float:none !important;

    display:flex !important;

    flex-direction:column !important;
    justify-content:center !important;

    width:auto !important;
    min-width:0 !important;

    min-height:
        82px !important;

    margin:
        0 !important;

    padding:
        14px
        16px !important;

    border:
        1px solid
        #E2E8EF !important;

    border-radius:
        5px !important;

    background:
        #FFFFFF !important;

    color:
        #748194 !important;

    font-size:
        10px !important;

    line-height:
        1.3 !important;

    letter-spacing:
        .04em !important;

    text-transform:
        uppercase !important;

    box-shadow:
        none !important;

    overflow:
        hidden !important;
}


/* value */

body.woocommerce-order-received
ul.woocommerce-order-overview
li strong {
    display:block !important;

    width:100% !important;

    margin-top:
        6px !important;

    color:
        #102A43 !important;

    font-size:
        15px !important;

    line-height:
        1.3 !important;

    font-weight:
        700 !important;

    letter-spacing:
        0 !important;

    text-transform:
        none !important;

    white-space:
        normal !important;

    overflow-wrap:
        anywhere !important;
}


/* total card */

body.woocommerce-order-received
.woocommerce-order-overview__total {
    border-top:
        2px solid
        #F47F22 !important;
}

body.woocommerce-order-received
.woocommerce-order-overview__total
strong {
    color:
        #F47F22 !important;
}


/* payment method */

body.woocommerce-order-received
.woocommerce-order-overview__payment-method {
    border-top:
        2px solid
        #F47F22 !important;
}


/* ==========================================================
   5. ORDER DETAILS — PREMIUM CARD
   ========================================================== */

body.woocommerce-order-received
.woocommerce-order-details {
    width:
        100% !important;

    margin:
        0
        0
        18px !important;

    padding:
        20px !important;

    border:
        1px solid
        #E2E8EF !important;

    border-radius:
        5px !important;

    background:
        #FFFFFF !important;

    box-shadow:
        none !important;
}


/* section title */

body.woocommerce-order-received
.woocommerce-order-details__title {
    margin:
        0
        0
        16px !important;

    padding:
        0 !important;

    color:
        #102A43 !important;

    font-size:
        18px !important;

    line-height:
        1.25 !important;

    font-weight:
        700 !important;
}


/* order table */

body.woocommerce-order-received
.woocommerce-table--order-details {
    width:
        100% !important;

    margin:
        0 !important;

    border:
        0 !important;

    border-collapse:
        separate !important;

    border-spacing:
        0 !important;

    background:
        #FFFFFF !important;
}


/* header */

body.woocommerce-order-received
.woocommerce-table--order-details
thead th {
    padding:
        12px
        14px !important;

    border:
        0 !important;

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

    background:
        #F8FAFC !important;

    color:
        #526579 !important;

    font-size:
        11px !important;

    line-height:
        1.3 !important;

    font-weight:
        700 !important;

    text-transform:
        uppercase !important;
}


/* product row */

body.woocommerce-order-received
.woocommerce-table--order-details
tbody td {
    padding:
        18px
        14px !important;

    border:
        0 !important;

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

    color:
        #41566B !important;

    font-size:
        13px !important;

    line-height:
        1.55 !important;

    vertical-align:
        top !important;
}


/* product name */

body.woocommerce-order-received
.woocommerce-table--order-details
.product-name > a,

body.woocommerce-order-received
.woocommerce-table--order-details
.product-name {
    color:
        #102A43 !important;

    font-weight:
        700 !important;

    text-decoration:
        none !important;
}


/* package metadata */

body.woocommerce-order-received
.woocommerce-table--order-details
.wc-item-meta {
    margin:
        10px
        0
        0 !important;

    padding:
        0 !important;

    list-style:
        none !important;
}

body.woocommerce-order-received
.woocommerce-table--order-details
.wc-item-meta li {
    display:flex !important;

    gap:
        5px !important;

    margin:
        4px
        0 !important;

    padding:
        0 !important;

    color:
        #607287 !important;

    font-size:
        12px !important;

    line-height:
        1.45 !important;
}

body.woocommerce-order-received
.woocommerce-table--order-details
.wc-item-meta strong {
    color:
        #253D55 !important;

    font-weight:
        700 !important;
}


/* ==========================================================
   6. ORDER TOTALS
   ========================================================== */

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot th,

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot td {
    padding:
        11px
        14px !important;

    border:
        0 !important;

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

    background:
        #FFFFFF !important;

    color:
        #263E55 !important;

    font-size:
        13px !important;

    line-height:
        1.4 !important;
}

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot th {
    font-weight:
        600 !important;
}


/* final total */

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot tr:last-child th,

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot tr:last-child td {
    padding-top:
        15px !important;

    padding-bottom:
        15px !important;

    border-bottom:
        0 !important;

    color:
        #102A43 !important;

    font-size:
        15px !important;

    font-weight:
        800 !important;
}

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot tr:last-child td {
    color:
        #F47F22 !important;
}


/* ==========================================================
   7. BILLING DETAILS
   ========================================================== */

body.woocommerce-order-received
.woocommerce-customer-details {
    width:
        100% !important;

    margin:
        0
        0
        20px !important;

    padding:
        20px !important;

    border:
        1px solid
        #E2E8EF !important;

    border-radius:
        5px !important;

    background:
        #FFFFFF !important;

    box-shadow:
        none !important;
}

body.woocommerce-order-received
.woocommerce-customer-details
.woocommerce-column__title {
    margin:
        0
        0
        14px !important;

    padding:
        0 !important;

    color:
        #102A43 !important;

    font-size:
        18px !important;

    line-height:
        1.25 !important;

    font-weight:
        700 !important;
}


/* remove generic Woo inner box */

body.woocommerce-order-received
.woocommerce-customer-details
address {
    margin:
        0 !important;

    padding:
        0 !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    background:
        transparent !important;

    color:
        #526579 !important;

    font-size:
        13px !important;

    line-height:
        1.8 !important;

    font-style:
        normal !important;

    box-shadow:
        none !important;
}


/* phone / email */

body.woocommerce-order-received
.woocommerce-customer-details
.woocommerce-customer-details--phone,

body.woocommerce-order-received
.woocommerce-customer-details
.woocommerce-customer-details--email {
    margin:
        8px
        0
        0 !important;

    color:
        #253D55 !important;

    font-size:
        13px !important;
}


/* ==========================================================
   8. FINAL ACTIONS
   ========================================================== */

body.woocommerce-order-received
.mp-travel-confirmation-actions {
    display:flex !important;

    justify-content:flex-end !important;

    align-items:center !important;

    gap:
        10px !important;

    width:
        100% !important;

    margin:
        20px
        0
        0 !important;
}


/* primary — Browse packages */

body.woocommerce-order-received
.mp-travel-confirmation-actions
a:first-child {
    display:inline-flex !important;

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

    min-width:
        180px !important;

    min-height:
        48px !important;

    padding:
        0
        22px !important;

    border:
        1px solid
        #F47F22 !important;

    border-radius:
        5px !important;

    background:
        #F47F22 !important;

    color:
        #FFFFFF !important;

    font-size:
        13px !important;

    line-height:
        1 !important;

    font-weight:
        700 !important;

    text-decoration:
        none !important;

    box-shadow:
        none !important;
}


/* secondary — Back home */

body.woocommerce-order-received
.mp-travel-confirmation-actions
a:last-child {
    display:inline-flex !important;

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

    min-width:
        160px !important;

    min-height:
        48px !important;

    padding:
        0
        22px !important;

    border:
        1px solid
        #DDE4EC !important;

    border-radius:
        5px !important;

    background:
        #FFFFFF !important;

    color:
        #253D55 !important;

    font-size:
        13px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    text-decoration:
        none !important;

    box-shadow:
        none !important;
}


/* hover */

body.woocommerce-order-received
.mp-travel-confirmation-actions
a:first-child:hover {
    border-color:#E78D00 !important;
    background:#E78D00 !important;
    color:#FFFFFF !important;
}

body.woocommerce-order-received
.mp-travel-confirmation-actions
a:last-child:hover {
    border-color:#F0C374 !important;
    background:#FFFAF2 !important;
    color:#D67900 !important;
}


/* ==========================================================
   9. RESPONSIVE — TABLET
   ========================================================== */

@media(max-width:1180px) {

    body.woocommerce-order-received
    .woocommerce,

    body.woocommerce-order-received
    .mp-travel-checkout-shell {
        width:
            calc(100% - 40px) !important;

        max-width:
            1140px !important;
    }
}


@media(max-width:900px) {

    body.woocommerce-order-received
    ul.woocommerce-order-overview {
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
    }

    body.woocommerce-order-received
    .mp-travel-checkout-steps {
        display:grid !important;

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

        gap:
            10px !important;
    }

    body.woocommerce-order-received
    .mp-travel-checkout-steps li {
        min-height:
            46px !important;

        padding:
            8px
            10px !important;

        border:
            1px solid
            #E2E8EF !important;

        border-radius:
            5px !important;

        background:
            #FFFFFF !important;
    }

    body.woocommerce-order-received
    .mp-travel-checkout-steps
    li::after {
        display:none !important;
    }
}


/* ==========================================================
   10. RESPONSIVE — MOBILE
   ========================================================== */

@media(max-width:767px) {

    body.woocommerce-order-received
    .woocommerce,

    body.woocommerce-order-received
    .mp-travel-checkout-shell {
        width:
            calc(100% - 30px) !important;
    }

    body.woocommerce-order-received
    .woocommerce-order-details,

    body.woocommerce-order-received
    .woocommerce-customer-details {
        padding:
            16px !important;
    }

    body.woocommerce-order-received
    .woocommerce-table--order-details
    thead {
        display:none !important;
    }

    body.woocommerce-order-received
    .woocommerce-table--order-details
    tbody tr {
        display:grid !important;

        grid-template-columns:
            1fr !important;
    }

    body.woocommerce-order-received
    .woocommerce-table--order-details
    tbody td {
        display:block !important;

        width:
            100% !important;

        padding:
            14px
            0 !important;
    }

    body.woocommerce-order-received
    .woocommerce-table--order-details
    tbody
    .product-total {
        padding-top:
            0 !important;

        color:
            #F47F22 !important;

        font-weight:
            700 !important;
    }

    body.woocommerce-order-received
    .mp-travel-confirmation-actions {
        flex-direction:
            column !important;

        align-items:
            stretch !important;
    }

    body.woocommerce-order-received
    .mp-travel-confirmation-actions
    a {
        width:
            100% !important;

        max-width:
            none !important;

        min-width:
            0 !important;
    }
}


/* ==========================================================
   11. SMALL PHONES
   ========================================================== */

@media(max-width:480px) {

    body.woocommerce-order-received
    ul.woocommerce-order-overview {
        grid-template-columns:
            1fr !important;

        gap:
            8px !important;
    }

    body.woocommerce-order-received
    ul.woocommerce-order-overview
    li {
        min-height:
            70px !important;
    }

    body.woocommerce-order-received
    .woocommerce-thankyou-order-received,

    body.woocommerce-order-received
    .woocommerce-notice--success {
        padding:
            15px
            14px
            15px
            48px !important;
    }

    body.woocommerce-order-received
    .woocommerce-thankyou-order-received::before,

    body.woocommerce-order-received
    .woocommerce-notice--success::before {
        left:
            14px !important;
    }

    body.woocommerce-order-received
    .woocommerce-order-details__title,

    body.woocommerce-order-received
    .woocommerce-customer-details
    .woocommerce-column__title {
        font-size:
            16px !important;
    }

    body.woocommerce-order-received
    .wc-item-meta li {
        display:block !important;
    }
}


/* MP_TRAVEL_CONFIRMATION_PREMIUM_V1_END */

/* ==========================================================
   MP_TRAVEL_CONFIRMATION_MINIMAL_V2
   ========================================================== */


/* ==========================================================
   BASE CONTAINER
   ========================================================== */

body.woocommerce-order-received
.woocommerce,

body.woocommerce-order-received
.mp-travel-checkout-shell,

body.woocommerce-order-received
.mp-travel-confirmation-actions {
    width:100% !important;
    max-width:1140px !important;

    margin-left:auto !important;
    margin-right:auto !important;

    box-sizing:border-box !important;
}


/* ==========================================================
   STEPPER — MORE COMPACT
   ========================================================== */

body.woocommerce-order-received
.mp-travel-checkout-shell {
    margin-top:20px !important;
    margin-bottom:20px !important;
}

body.woocommerce-order-received
.mp-travel-checkout-steps li > span {
    width:32px !important;
    height:32px !important;
    min-width:32px !important;

    font-size:12px !important;
}

body.woocommerce-order-received
.mp-travel-checkout-steps li strong {
    font-size:13px !important;
}


/* completed */

body.woocommerce-order-received
.mp-travel-checkout-steps li:nth-child(1) > span,

body.woocommerce-order-received
.mp-travel-checkout-steps li:nth-child(2) > span,

body.woocommerce-order-received
.mp-travel-checkout-steps li:nth-child(3) > span {
    background:#82BD41 !important;
    border-color:#82BD41 !important;
    color:#FFFFFF !important;
}


/* current */

body.woocommerce-order-received
.mp-travel-checkout-steps li:nth-child(4) > span {
    background:#F47F22 !important;
    border-color:#F47F22 !important;
    color:#FFFFFF !important;
}


/* ==========================================================
   SUCCESS
   ========================================================== */

body.woocommerce-order-received
.woocommerce-thankyou-order-received,

body.woocommerce-order-received
.woocommerce-notice--success {
    position:relative !important;

    min-height:56px !important;

    margin:0 0 16px !important;

    padding:
        14px
        16px
        14px
        50px !important;

    border:1px solid #DCEBC8 !important;
    border-left:3px solid #82BD41 !important;

    border-radius:5px !important;

    background:#F8FBF4 !important;

    color:#173D2A !important;

    font-size:13px !important;
    line-height:1.4 !important;
    font-weight:700 !important;

    box-shadow:none !important;

    box-sizing:border-box !important;
}

body.woocommerce-order-received
.woocommerce-thankyou-order-received::before,

body.woocommerce-order-received
.woocommerce-notice--success::before {
    content:"✓" !important;

    position:absolute !important;

    top:50% !important;
    left:16px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    width:22px !important;
    height:22px !important;

    transform:translateY(-50%) !important;

    border-radius:100% !important;

    background:#82BD41 !important;
    color:#FFFFFF !important;

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


/* ==========================================================
   SUMMARY
   EXACTLY 4 CARDS
   ========================================================== */

body.woocommerce-order-received
ul.woocommerce-order-overview {
    display:grid !important;

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

    gap:10px !important;

    width:100% !important;

    margin:0 0 16px !important;
    padding:0 !important;

    border:0 !important;

    background:transparent !important;

    list-style:none !important;
}


/*
 * Woo outputs:
 * 1 Order
 * 2 Date
 * 3 Email
 * 4 Total
 * 5 Payment
 *
 * Email is already available in Billing.
 */

body.woocommerce-order-received
ul.woocommerce-order-overview
li:nth-child(3),

body.woocommerce-order-received
li.woocommerce-order-overview__email,

body.woocommerce-order-received
.woocommerce-order-overview__email {
    display:none !important;
}


/* card */

body.woocommerce-order-received
ul.woocommerce-order-overview
li {
    float:none !important;

    display:flex !important;

    flex-direction:column !important;
    justify-content:center !important;
    align-items:flex-start !important;

    min-width:0 !important;
    width:auto !important;

    min-height:68px !important;

    margin:0 !important;

    padding:11px 13px !important;

    border:1px solid #E2E8EF !important;
    border-radius:5px !important;

    background:#FFFFFF !important;

    color:#7A8796 !important;

    font-size:9px !important;
    line-height:1.25 !important;

    letter-spacing:.045em !important;
    text-transform:uppercase !important;

    box-shadow:none !important;

    box-sizing:border-box !important;
}


/* values */

body.woocommerce-order-received
ul.woocommerce-order-overview
li strong {
    display:block !important;

    width:100% !important;

    margin-top:4px !important;

    color:#102A43 !important;

    font-size:14px !important;
    line-height:1.25 !important;

    font-weight:700 !important;

    letter-spacing:0 !important;
    text-transform:none !important;

    overflow-wrap:anywhere !important;
}


/* total + payment subtle accent */

body.woocommerce-order-received
.woocommerce-order-overview__total,

body.woocommerce-order-received
.woocommerce-order-overview__payment-method {
    border-top:2px solid #F47F22 !important;
}

body.woocommerce-order-received
.woocommerce-order-overview__total strong {
    color:#F47F22 !important;
}


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

body.woocommerce-order-received
.woocommerce-order-details {
    margin:0 0 14px !important;

    padding:16px !important;

    border:1px solid #E2E8EF !important;
    border-radius:5px !important;

    background:#FFFFFF !important;

    box-shadow:none !important;

    box-sizing:border-box !important;
}

body.woocommerce-order-received
.woocommerce-order-details__title {
    margin:0 0 12px !important;

    color:#102A43 !important;

    font-size:16px !important;
    line-height:1.2 !important;

    font-weight:700 !important;
}


/* table */

body.woocommerce-order-received
.woocommerce-table--order-details {
    margin:0 !important;

    border:0 !important;

    border-collapse:separate !important;
    border-spacing:0 !important;

    background:#FFFFFF !important;
}

body.woocommerce-order-received
.woocommerce-table--order-details
thead th {
    padding:10px 12px !important;

    border:0 !important;
    border-bottom:1px solid #E6EBF1 !important;

    background:#F8FAFC !important;

    color:#637487 !important;

    font-size:10px !important;
    font-weight:700 !important;

    text-transform:uppercase !important;
}

body.woocommerce-order-received
.woocommerce-table--order-details
tbody td {
    padding:14px 12px !important;

    border:0 !important;
    border-bottom:1px solid #E8EDF2 !important;

    color:#526579 !important;

    font-size:12px !important;
    line-height:1.5 !important;

    vertical-align:top !important;
}


/* product */

body.woocommerce-order-received
.woocommerce-table--order-details
.product-name {
    color:#102A43 !important;

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


/* metadata */

body.woocommerce-order-received
.woocommerce-table--order-details
.wc-item-meta {
    margin:7px 0 0 !important;
    padding:0 !important;

    list-style:none !important;
}

body.woocommerce-order-received
.woocommerce-table--order-details
.wc-item-meta li {
    margin:3px 0 !important;

    color:#637487 !important;

    font-size:11px !important;
    line-height:1.4 !important;
}

body.woocommerce-order-received
.woocommerce-table--order-details
.wc-item-meta strong {
    color:#30475E !important;
}


/* totals */

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot th,

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot td {
    padding:9px 12px !important;

    border:0 !important;
    border-bottom:1px solid #E9EDF2 !important;

    background:#FFFFFF !important;

    color:#41566B !important;

    font-size:12px !important;
}

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot tr:last-child th,

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot tr:last-child td {
    padding-top:12px !important;
    padding-bottom:12px !important;

    border-bottom:0 !important;

    color:#102A43 !important;

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

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot tr:last-child td {
    color:#F47F22 !important;
}


/* payment method last row */

body.woocommerce-order-received
.woocommerce-table--order-details
tfoot tr:last-child td {
    overflow-wrap:anywhere !important;
}


/* ==========================================================
   BILLING
   ========================================================== */

body.woocommerce-order-received
.woocommerce-customer-details {
    margin:0 0 16px !important;

    padding:16px !important;

    border:1px solid #E2E8EF !important;
    border-radius:5px !important;

    background:#FFFFFF !important;

    box-shadow:none !important;

    box-sizing:border-box !important;
}

body.woocommerce-order-received
.woocommerce-customer-details
.woocommerce-column__title {
    margin:0 0 10px !important;

    color:#102A43 !important;

    font-size:16px !important;
    line-height:1.2 !important;

    font-weight:700 !important;
}

body.woocommerce-order-received
.woocommerce-customer-details
address {
    margin:0 !important;
    padding:0 !important;

    border:0 !important;

    background:transparent !important;

    color:#586B7F !important;

    font-size:12px !important;
    line-height:1.65 !important;

    font-style:normal !important;

    box-shadow:none !important;
}

body.woocommerce-order-received
.woocommerce-customer-details--phone,

body.woocommerce-order-received
.woocommerce-customer-details--email {
    margin-top:6px !important;

    color:#30475E !important;

    font-size:12px !important;
}


/* ==========================================================
   ACTIONS
   Properly aligned inside 1140 container
   ========================================================== */

body.woocommerce-order-received
.mp-travel-confirmation-actions {
    display:flex !important;

    justify-content:flex-end !important;
    align-items:center !important;

    gap:8px !important;

    margin-top:16px !important;
    margin-bottom:0 !important;

    padding:0 !important;
}


/* Browse packages */

body.woocommerce-order-received
.mp-travel-confirmation-actions
a:first-child {
    display:inline-flex !important;

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

    width:auto !important;

    min-width:160px !important;
    min-height:44px !important;

    padding:0 20px !important;

    border:1px solid #F47F22 !important;
    border-radius:5px !important;

    background:#F47F22 !important;

    color:#FFFFFF !important;

    font-size:12px !important;
    line-height:1 !important;

    font-weight:700 !important;

    text-decoration:none !important;

    box-shadow:none !important;
}


/* Back home */

body.woocommerce-order-received
.mp-travel-confirmation-actions
a:last-child {
    display:inline-flex !important;

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

    width:auto !important;

    min-width:135px !important;
    min-height:44px !important;

    padding:0 18px !important;

    border:1px solid #DDE4EC !important;
    border-radius:5px !important;

    background:#FFFFFF !important;

    color:#30475E !important;

    font-size:12px !important;
    line-height:1 !important;

    font-weight:600 !important;

    text-decoration:none !important;

    box-shadow:none !important;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media(max-width:1180px) {

    body.woocommerce-order-received
    .woocommerce,

    body.woocommerce-order-received
    .mp-travel-checkout-shell,

    body.woocommerce-order-received
    .mp-travel-confirmation-actions {
        width:calc(100% - 40px) !important;
        max-width:1140px !important;
    }
}


@media(max-width:900px) {

    body.woocommerce-order-received
    ul.woocommerce-order-overview {
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
    }

    body.woocommerce-order-received
    .mp-travel-checkout-steps {
        display:grid !important;

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

        gap:8px !important;
    }

    body.woocommerce-order-received
    .mp-travel-checkout-steps li {
        min-height:42px !important;

        padding:6px 8px !important;

        border:1px solid #E2E8EF !important;
        border-radius:5px !important;

        background:#FFFFFF !important;
    }

    body.woocommerce-order-received
    .mp-travel-checkout-steps li::after {
        display:none !important;
    }
}


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

@media(max-width:767px) {

    body.woocommerce-order-received
    .woocommerce,

    body.woocommerce-order-received
    .mp-travel-checkout-shell,

    body.woocommerce-order-received
    .mp-travel-confirmation-actions {
        width:calc(100% - 30px) !important;
    }

    body.woocommerce-order-received
    .woocommerce-order-details,

    body.woocommerce-order-received
    .woocommerce-customer-details {
        padding:14px !important;
    }

    body.woocommerce-order-received
    .woocommerce-table--order-details
    thead {
        display:none !important;
    }

    body.woocommerce-order-received
    .woocommerce-table--order-details
    tbody tr {
        display:block !important;
    }

    body.woocommerce-order-received
    .woocommerce-table--order-details
    tbody td {
        display:block !important;

        width:100% !important;

        padding:11px 0 !important;
    }

    body.woocommerce-order-received
    .woocommerce-table--order-details
    tbody .product-total {
        padding-top:0 !important;

        color:#F47F22 !important;

        font-weight:700 !important;
    }

    body.woocommerce-order-received
    .mp-travel-confirmation-actions {
        flex-direction:column !important;

        align-items:stretch !important;
    }

    body.woocommerce-order-received
    .mp-travel-confirmation-actions a {
        width:100% !important;

        min-width:0 !important;
        max-width:none !important;
    }
}


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

@media(max-width:480px) {

    body.woocommerce-order-received
    ul.woocommerce-order-overview {
        grid-template-columns:1fr !important;

        gap:7px !important;
    }

    body.woocommerce-order-received
    ul.woocommerce-order-overview li {
        min-height:60px !important;
    }

    body.woocommerce-order-received
    .mp-travel-checkout-steps
    li strong {
        font-size:11px !important;
    }
}


/* MP_TRAVEL_CONFIRMATION_MINIMAL_V2_END */

/* MP_TRAVEL_CONFIRMATION_ACTIONS_SPACING_V3 */

/* Billing termina sem espaço exagerado */
body.woocommerce-order-received
.woocommerce-customer-details {
    margin-bottom:0 !important;
}

/* Remove espaço residual do Woo depois do billing */
body.woocommerce-order-received
.woocommerce {
    margin-bottom:0 !important;
    padding-bottom:0 !important;
}

/* Actions imediatamente abaixo do último card */
body.woocommerce-order-received
.mp-travel-confirmation-actions {
    width:100% !important;
    max-width:1140px !important;

    display:flex !important;
    justify-content:flex-end !important;
    align-items:center !important;

    gap:8px !important;

    margin:
        10px
        auto
        28px !important;

    padding:0 !important;

    clear:both !important;

    box-sizing:border-box !important;
}

/* ligeiramente mais minimalistas */
body.woocommerce-order-received
.mp-travel-confirmation-actions a:first-child {
    min-width:150px !important;
    min-height:42px !important;

    padding:0 18px !important;

    font-size:12px !important;
}

body.woocommerce-order-received
.mp-travel-confirmation-actions a:last-child {
    min-width:125px !important;
    min-height:42px !important;

    padding:0 17px !important;

    font-size:12px !important;
}


/* Tablet */
@media(max-width:1180px) {
    body.woocommerce-order-received
    .mp-travel-confirmation-actions {
        width:calc(100% - 40px) !important;
    }
}


/* Mobile */
@media(max-width:767px) {
    body.woocommerce-order-received
    .mp-travel-confirmation-actions {
        width:calc(100% - 30px) !important;

        flex-direction:column !important;
        align-items:stretch !important;

        margin-top:10px !important;
        margin-bottom:24px !important;
    }

    body.woocommerce-order-received
    .mp-travel-confirmation-actions a {
        width:100% !important;

        min-width:0 !important;
        max-width:none !important;
    }
}

/* MP_TRAVEL_CONFIRMATION_ACTIONS_SPACING_V3_END */

/* ==========================================================
   MP_TRAVEL_CONFIRMATION_GRID_FIX_V3
   Remove Woo clearfix pseudo-elements from CSS Grid
   ========================================================== */

/* Woo clearfix was occupying grid columns */
body.woocommerce-order-received
ul.woocommerce-order-overview::before,

body.woocommerce-order-received
ul.woocommerce-order-overview::after {
    content:none !important;
    display:none !important;
}


/* Four real summary cards, one clean row */
body.woocommerce-order-received
ul.woocommerce-order-overview {
    display:grid !important;

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

    gap:10px !important;

    width:100% !important;

    margin:
        0
        0
        16px !important;

    padding:0 !important;
}


/* Email remains hidden because it is already in Billing */
body.woocommerce-order-received
ul.woocommerce-order-overview
li.woocommerce-order-overview__email {
    display:none !important;
}


/* Reset any Woo float/clear behavior */
body.woocommerce-order-received
ul.woocommerce-order-overview > li {
    float:none !important;
    clear:none !important;

    width:auto !important;

    margin:0 !important;

    grid-column:auto !important;
    grid-row:auto !important;
}


/* Keep cards compact */
body.woocommerce-order-received
ul.woocommerce-order-overview > li {
    min-height:68px !important;

    padding:
        11px
        13px !important;
}


/* Tablet */
@media(max-width:900px) {

    body.woocommerce-order-received
    ul.woocommerce-order-overview {
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
    }
}


/* Mobile */
@media(max-width:480px) {

    body.woocommerce-order-received
    ul.woocommerce-order-overview {
        grid-template-columns:
            1fr !important;
    }
}

/* MP_TRAVEL_CONFIRMATION_GRID_FIX_V3_END */

/* ==========================================================
   MP_TRAVEL_CONFIRMATION_NOTICE_TOP_GREEN_BORDER_V1
   ========================================================== */

body.woocommerce-order-received .woocommerce-notice,
body.woocommerce-order-received .woocommerce-message,
body.woocommerce-order-received .mp-travel-confirmation-notice,
body.woocommerce-order-received .mp-travel-checkout-confirmation-notice,
body.woocommerce-order-received .mp-travel-checkout-confirmation-success {
    border-left: 1px solid #D9E6C7 !important;
    border-right: 1px solid #D9E6C7 !important;
    border-bottom: 1px solid #D9E6C7 !important;
    border-top: 4px solid #82BD41 !important;
    border-radius: 5px !important;
    background: #F7FBF1 !important;
    box-shadow: none !important;
}

/* MP_TRAVEL_CONFIRMATION_NOTICE_TOP_GREEN_BORDER_V1_END */
