/* ==================================================================
   PRICING TABLE v8.0 — FINAL CLEAN VERSION
   Colors: #FFFFFF | #DD5128 | #FDF1EC | #1A1A2E
   Font: Playfair Display
   ================================================================== */

/* ============================================================
   GLOBAL — NO HORIZONTAL SCROLL ANYWHERE
   ============================================================ */
html, body {
    overflow-x: hidden !important;
    max-width: 100% !important;
}

/* ============================================================
   PAGE WRAPPER
   ============================================================ */
.acpt-page {
    max-width: 1400px !important;
    margin: 0 auto !important;
 
    width: 100% !important;
    overflow-x: hidden !important;
}

.acpt-page .site-main
 {
    margin-top: 30px !important;
    width: 100% !important;
    max-width: 95% !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 auto;
}

.acpt-page #secondary,
.acpt-page .widget-area,
.acpt-page .woocommerce-notices-wrapper,
.acpt-page .woocommerce-result-count,
.acpt-page .woocommerce-ordering,
.acpt-page ul.products,
.acpt-page .ast-shop-toolbar-container,
.acpt-page .woocommerce-pagination,
.acpt-page .woocommerce-info,
.acpt-page .ast-woo-shop-topbar {
    display: none !important;
}

/* ============================================================
   PAGE HEADER
   ============================================================ */
.acpt-page-hd {
    text-align: center !important;
    margin-bottom: 60px !important;
    padding: 0 20px !important;
}

h1.acpt-page-title,
body .acpt-page h1.acpt-page-title {
    font-family: 'Playfair Display', serif !important;
    font-size: 52px !important;
    font-weight: 800 !important;
    color: #1A1A2E !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    letter-spacing: -1.2px !important;
    line-height: 1.1 !important;
}

.acpt-page-desc,
.acpt-page-desc p {
    font-family: 'Playfair Display', serif !important;
    font-size: 19px !important;
    color: #6C757D !important;
    max-width: 680px !important;
    margin: 0 auto !important;
    line-height: 1.7 !important;
    font-style: italic !important;
}

p.acpt-page-small-heading,
body p.acpt-page-small-heading,
.acpt-page p.acpt-page-small-heading {
    display: inline-block !important;
    font-family: 'Playfair Display', serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #DD5128 !important;
    text-transform: uppercase !important;
    letter-spacing: 4px !important;
    margin: 24px auto 0 !important;
    padding: 8px 22px !important;
    text-align: center !important;
    background: #FDF1EC !important;
    border-radius: 100px !important;
    border: 1px solid rgba(221, 81, 40, 0.18) !important;
}

/* ============================================================
   WRAP RESET
   ============================================================ */
.acpt-wrap,
.acpt-wrap *,
.acpt-bottom-section,
.acpt-bottom-section * {
    box-sizing: border-box !important;
    font-family: 'Playfair Display', serif !important;
}

.acpt-wrap {
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
}

/* ============================================================
   DESKTOP CONTAINER — Rounded card, clips children
   ============================================================ */
.acpt-desk {
    background: #FFFFFF !important;
    border-radius: 20px !important;
    padding: 0 !important;
    box-shadow:
        0 1px 3px rgba(26, 26, 46, 0.04),
        0 14px 50px rgba(26, 26, 46, 0.08) !important;
    border: 1px solid rgba(26, 26, 46, 0.06) !important;
    overflow: hidden !important;
}

.acpt-table {
    width: 100% !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    table-layout: fixed !important;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
}

.acpt-table,
.acpt-table tr,
.acpt-table td,
.acpt-table th {
    border: none !important;
}

.acpt-col-lbl {
    width: 28% !important;
    min-width: 280px !important;
}

.acpt-col-pkg {
    min-width: 200px !important;
}

.acpt-c {
    vertical-align: middle !important;
    background: transparent !important;
    border: none !important;
}

/* ============================================================
   LABEL COLUMN BASE — Cream Highlight on All Body Rows
   ============================================================ */
.acpt-lbl {
    text-align: left !important;
    color: #1A1A2E !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    position: relative !important;
    background: rgba(253, 241, 236, 0.55) !important;
    border-right: 1px solid rgba(221, 81, 40, 0.08) !important;
}

/* ============================================================
   PACKAGE CELLS
   ============================================================ */
.acpt-pkg {
    text-align: center !important;
    background: #FFFFFF !important;
    position: relative !important;
}

/* ============================================================
   ROW 1 — HERO HEADER (Service Name + Package + Price)
   ============================================================ */
.acpt-r1 {
    background: linear-gradient(180deg, #FDF1EC 0%, rgba(253, 241, 236, 0.4) 100%) !important;
}

.acpt-r1 .acpt-lbl {
    padding: 40px 32px 32px !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #DD5128 !important;
    vertical-align: middle !important;
    letter-spacing: 2px !important;
    line-height: 1.3 !important;
    text-transform: uppercase !important;
    background-color: #ffffff !important;
    text-align: center !important;
    border-right: 1px solid rgba(26, 26, 46, 0.06) !important;
}
.acpt-r td.acpt-c.acpt-lbl.acpt-r1-lbl {
    background-color: white !important;
}
.acpt-r1 .acpt-pkg {
    padding: 40px 24px 32px !important;
    vertical-align: middle !important;
    position: relative !important;
    background: transparent !important;
}

.acpt-pname {
    display: block !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #1A1A2E !important;
    margin-bottom: 10px !important;
    line-height: 1.2 !important;
    letter-spacing: -0.3px !important;
}

.acpt-pprice {
    display: block !important;
    font-size: 36px !important;
    font-weight: 800 !important;
    color: #DD5128 !important;
    line-height: 1 !important;
    letter-spacing: -1.2px !important;
    margin-top: 4px !important;
    margin-bottom: 6px !important;
}

.acpt-pmo {
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #6C757D !important;
    letter-spacing: 0.4px !important;
    display: block !important;
    margin-top: 4px !important;
    margin-left: 0 !important;
}

/* ============================================================
   POPULAR BADGE
   ============================================================ */
.acpt-badge {
    display: inline-block !important;
    background: linear-gradient(135deg, #DD5128 0%, #c4451f 100%) !important;
    color: #FFFFFF !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.8px !important;
    padding: 6px 16px !important;
    border-radius: 100px !important;
    margin-bottom: 14px !important;
    line-height: 1 !important;
    box-shadow: 0 4px 12px rgba(221, 81, 40, 0.35) !important;
}

/* ============================================================
   POPULAR COLUMN HIGHLIGHT
   ============================================================ */
.acpt-pop {
    background: #FDF1EC !important;
    position: relative !important;
}

.acpt-r1 .acpt-pop {
    background: linear-gradient(180deg, #FDF1EC 0%, rgba(253, 241, 236, 0.7) 100%) !important;
}

.acpt-r1 .acpt-pop::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 4px !important;
    background: linear-gradient(90deg, #DD5128, #c4451f) !important;
}

/* ============================================================
   ROWS 2-4 — SUB HEADERS
   ============================================================ */
.acpt-rsub .acpt-lbl {
    padding: 6px 24px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #6C757D !important;
    border: none !important;
    border-right: 1px solid rgba(221, 81, 40, 0.08) !important;
    letter-spacing: 0.3px !important;
    background: rgba(253, 241, 236, 0.55) !important;
}

.acpt-rsub .acpt-pkg {
    padding: 6px 24px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #6C757D !important;
    border: none !important;
    letter-spacing: 0.3px !important;
    background: transparent !important;
}

.acpt-rsub:last-of-type .acpt-lbl,
.acpt-rsub:last-of-type .acpt-pkg {
    padding-bottom: 20px !important;
}

/* ============================================================
   SECTION BAR — "FEATURES" Strip
   ============================================================ */
.acpt-sep-row {
    background: linear-gradient(90deg, #FDF1EC 0%, rgba(253, 241, 236, 0.4) 100%) !important;
}

.acpt-sep-cell {
    padding: 14px 32px !important;
    height: auto !important;
    background: transparent !important;
    text-align: left !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    color: #DD5128 !important;
    text-transform: uppercase !important;
    letter-spacing: 3px !important;
    border-top: 1px solid rgba(221, 81, 40, 0.12) !important;
    border-bottom: 1px solid rgba(221, 81, 40, 0.12) !important;
    border-right: none !important;
}

.acpt-sep-cell::after {
    content: "FEATURES" !important;
}

/* ============================================================
   FEATURE ROWS — Alternating Light Backgrounds
   ============================================================ */
.acpt-fr {
    transition: background 0.2s ease !important;
}

.acpt-odd .acpt-pkg {
    background: #FFFFFF !important;
}

.acpt-even .acpt-pkg {
    background: rgba(253, 241, 236, 0.35) !important;
}

.acpt-fr:hover .acpt-pkg:not(.acpt-pop) {
    background: #FDF1EC !important;
}

.acpt-fr:hover .acpt-lbl {
    background: rgba(253, 241, 236, 0.9) !important;
}

.acpt-fl {
    padding: 18px 32px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1A1A2E !important;
    border: none !important;
    border-right: 1px solid rgba(221, 81, 40, 0.08) !important;
    line-height: 1.4 !important;
    background: rgba(253, 241, 236, 0.55) !important;
}

.acpt-fv {
    padding: 18px 24px !important;
    font-size: 14px !important;
    color: #1A1A2E !important;
    border: none !important;
}

/* ============================================================
   VALUE PILLS — Numbers & Text Badges
   ============================================================ */
.acpt-num {
    display: inline-block !important;
    background: rgba(253, 241, 236, 0.8) !important;
    color: #DD5128 !important;
    font-weight: 800 !important;
    font-size: 14px !important;
    padding: 6px 18px !important;
    border-radius: 100px !important;
    letter-spacing: 0 !important;
    border: 1px solid rgba(221, 81, 40, 0.15) !important;
    min-width: 50px !important;
    font-family: 'Playfair Display', serif !important;
}

.acpt-txt {
    display: inline-block !important;
    background: rgba(253, 241, 236, 0.8) !important;
    color: #DD5128 !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    padding: 6px 16px !important;
    border-radius: 100px !important;
    line-height: 1.4 !important;
    border: 1px solid rgba(221, 81, 40, 0.15) !important;
    font-family: 'Playfair Display', serif !important;
}

.acpt-pop .acpt-num,
.acpt-pop .acpt-txt {
    background: #FFFFFF !important;
    border-color: rgba(221, 81, 40, 0.3) !important;
}

.acpt-nil {
    color: rgba(26, 26, 46, 0.18) !important;
    font-size: 22px !important;
    font-weight: 300 !important;
    display: inline-block !important;
}

.acpt-fv svg {
    display: inline-block !important;
}

/* ============================================================
   ADDON ROW
   ============================================================ */
.acpt-ar .acpt-lbl {
    padding: 24px 32px 20px !important;
    background: rgba(253, 241, 236, 0.55) !important;
    border-right: 1px solid rgba(221, 81, 40, 0.08) !important;
}

.acpt-ar .acpt-pkg {
    padding: 24px 24px 20px !important;
    background: #FFFFFF !important;
}

.acpt-ar .acpt-pop {
    background: #FDF1EC !important;
}

/* ============================================================
   CART ROW — Final row, NO bottom gap, rounded corners
   ============================================================ */
.acpt-cr .acpt-lbl {
    padding: 20px 32px 20px !important;
    border: none !important;
    border-right: 1px solid rgba(221, 81, 40, 0.08) !important;
    border-bottom-left-radius: 20px !important;
    background: rgba(253, 241, 236, 0.55) !important;
    vertical-align: middle !important;
}

.acpt-cr .acpt-pkg {
    padding: 20px 24px 20px !important;
    border: none !important;
    background: #FFFFFF !important;
    vertical-align: middle !important;
}

.acpt-cr .acpt-pkg:last-child {
    border-bottom-right-radius: 20px !important;
}

.acpt-cr .acpt-pop {
    background: #FDF1EC !important;
}

.acpt-cr .acpt-pop:last-child {
    border-bottom-right-radius: 20px !important;
}

/* ============================================================
   BUTTONS — Addon
   ============================================================ */
button.acpt-addon-btn,
body button.acpt-addon-btn,
body .acpt-wrap button.acpt-addon-btn,
body .acpt-mob button.acpt-addon-btn,
.woocommerce button.acpt-addon-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 20px !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 1.5px solid rgba(221, 81, 40, 0.4) !important;
    color: #DD5128 !important;
    border-radius: 100px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
    box-shadow: none !important;
    outline: none !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

button.acpt-addon-btn:hover,
body button.acpt-addon-btn:hover {
    background-color: #DD5128 !important;
    color: #FFFFFF !important;
    border-color: #DD5128 !important;
    text-decoration: none !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 18px rgba(221, 81, 40, 0.25) !important;
}

button.acpt-addon-btn:focus,
button.acpt-addon-btn:active {
    outline: none !important;
    box-shadow: none !important;
}

/* ============================================================
   BUTTONS — Cart
   ============================================================ */
button.acpt-cart-btn,
body button.acpt-cart-btn,
body .acpt-wrap button.acpt-cart-btn,
body .acpt-mob button.acpt-cart-btn,
.woocommerce button.acpt-cart-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 15px 24px !important;
    background-color: #1A1A2E !important;
    background-image: none !important;
    color: #FFFFFF !important;
    border: 1.5px solid #1A1A2E !important;
    border-radius: 100px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
    box-shadow: 0 4px 14px rgba(26, 26, 46, 0.15) !important;
    outline: none !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
}

button.acpt-cart-btn:hover,
body button.acpt-cart-btn:hover {
    background-color: #DD5128 !important;
    color: #FFFFFF !important;
    border-color: #DD5128 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 24px rgba(221, 81, 40, 0.35) !important;
    text-decoration: none !important;
}

.acpt-pop button.acpt-cart-btn {
    background-color: #DD5128 !important;
    border-color: #DD5128 !important;
    box-shadow: 0 6px 18px rgba(221, 81, 40, 0.35) !important;
}

.acpt-pop button.acpt-cart-btn:hover {
    background-color: #1A1A2E !important;
    border-color: #1A1A2E !important;
}

button.acpt-cart-btn:active {
    transform: translateY(0) !important;
}

button.acpt-cart-btn:focus {
    outline: none !important;
}

button.acpt-cart-btn.acpt-btn-loading {
    opacity: 0.7 !important;
    pointer-events: none !important;
}

/* ============================================================
   MOBILE — CARDS, NO HORIZONTAL SCROLL
   ============================================================ */
.acpt-mob {
    display: none !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

@media (max-width: 968px) {
    .acpt-desk {
        display: none !important;
    }

    .acpt-mob {
        display: flex !important;
        flex-direction: column !important;
        gap: 24px !important;
        border-radius: 16px !important;
      
    }

    .acpt-mcard {
        background: #FFFFFF !important;
        border: 1px solid rgba(26, 26, 46, 0.08) !important;
        border-radius: 20px !important;
        padding: 32px 24px 26px !important;
        box-shadow:
            0 2px 6px rgba(26, 26, 46, 0.04),
            0 10px 30px rgba(26, 26, 46, 0.06) !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 6px !important;
        position: relative !important;
        overflow: hidden !important;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .acpt-mcard * {
        max-width: 100% !important;
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
    }

    .acpt-mcard:hover {
        transform: translateY(-3px) !important;
        box-shadow:
            0 2px 6px rgba(26, 26, 46, 0.04),
            0 16px 40px rgba(26, 26, 46, 0.1) !important;
    }

    .acpt-mcard-pop {
        border: 2px solid #DD5128 !important;
        background: linear-gradient(180deg, #FDF1EC 0%, #FFFFFF 30%) !important;
        box-shadow:
            0 2px 6px rgba(221, 81, 40, 0.1),
            0 14px 40px rgba(221, 81, 40, 0.15) !important;
    }

    .acpt-mcard-pop::before {
        content: "" !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        height: 4px !important;
        background: linear-gradient(90deg, #DD5128, #c4451f) !important;
    }

    .acpt-mcard .acpt-badge {
        position: absolute !important;
        top: 14px !important;
        right: 14px !important;
        transform: none !important;
        margin: 0 !important;
    }

    .acpt-mname {
        text-align: center !important;
        font-size: 24px !important;
        font-weight: 800 !important;
        color: #1A1A2E !important;
        margin-top: 8px !important;
        letter-spacing: -0.5px !important;
        word-break: break-word !important;
    }

    .acpt-mprice {
        text-align: center !important;
        font-size: 40px !important;
        font-weight: 800 !important;
        color: #DD5128 !important;
        letter-spacing: -1.2px !important;
        line-height: 1 !important;
        margin: 8px 0 4px !important;
    }

    .acpt-msub {
        text-align: center !important;
        font-size: 12px !important;
        font-weight: 500 !important;
        color: #6C757D !important;
        letter-spacing: 0.3px !important;
    }

    .acpt-mfeats {
        border-top: 1px solid rgba(26, 26, 46, 0.08) !important;
        padding-top: 18px !important;
        margin: 18px 0 18px !important;
    }

    .acpt-mfr {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 12px 0 !important;
        border-bottom: 1px solid rgba(26, 26, 46, 0.05) !important;
        gap: 12px !important;
        flex-wrap: wrap !important;
    }

    .acpt-mfr:last-child {
        border-bottom: none !important;
    }

    .acpt-mfl {
        font-size: 13px !important;
        font-weight: 600 !important;
        color: #1A1A2E !important;
        flex: 1 1 60% !important;
        min-width: 0 !important;
    }

    .acpt-mfv {
        font-size: 13px !important;
        font-weight: 700 !important;
        flex: 0 0 auto !important;
        max-width: 100% !important;
    }

    .acpt-mfv .acpt-num,
    .acpt-mfv .acpt-txt {
        padding: 5px 14px !important;
        font-size: 12px !important;
        min-width: auto !important;
        max-width: 100% !important;
        white-space: normal !important;
        text-align: center !important;
        word-break: break-word !important;
    }

    .acpt-addon-btn-m {
        width: 100% !important;
        justify-content: center !important;
        margin-bottom: 10px !important;
        padding: 12px 20px !important;
    }

    .acpt-cart-btn-m {
        width: 100% !important;
        padding: 16px 24px !important;
    }

    .acpt-mcard-pop .acpt-cart-btn-m {
        background-color: #DD5128 !important;
        border-color: #DD5128 !important;
    }

    h1.acpt-page-title,
    body .acpt-page h1.acpt-page-title {
        font-size: 36px !important;
        letter-spacing: -0.8px !important;
    }

    .acpt-page-desc,
    .acpt-page-desc p {
        font-size: 16px !important;
    }

    .acpt-page {
        padding: 40px 14px 60px !important;
    }

    .acpt-page-hd {
        margin-bottom: 44px !important;
    }

    p.acpt-page-small-heading {
        font-size: 10px !important;
        letter-spacing: 3px !important;
        padding: 7px 18px !important;
    }
}

@media (max-width: 480px) {
    h1.acpt-page-title,
    body .acpt-page h1.acpt-page-title {
        font-size: 28px !important;
    }

    .acpt-page-desc,
    .acpt-page-desc p {
        font-size: 15px !important;
    }

    .acpt-page {
        padding: 32px 12px 50px !important;
    }

    .acpt-mcard {
        padding: 28px 18px 22px !important;
    }

    .acpt-mname {
        font-size: 22px !important;
    }

    .acpt-mprice {
        font-size: 34px !important;
    }
}

/* ============================================================
   ADDON MODAL
   ============================================================ */
.acpt-modal {
    display: none !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 9999999 !important;
    align-items: center !important;
    justify-content: center !important;
}

.acpt-modal.acpt-modal-open {
    display: flex !important;
}

.acpt-modal-ov {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: rgba(26, 26, 46, 0.6) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    cursor: pointer !important;
}

.acpt-modal-box {
    position: relative !important;
    z-index: 2 !important;
    width: 92% !important;
    max-width: 560px !important;
    max-height: 82vh !important;
    background: #FFFFFF !important;
    border-radius: 24px !important;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.2) !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    animation: acptSlideIn 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

@keyframes acptSlideIn {
    from { opacity: 0; transform: translateY(40px) scale(0.96); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.acpt-modal-hd {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 24px 28px 20px !important;
    border-bottom: 1px solid rgba(26, 26, 46, 0.06) !important;
}

h3.acpt-modal-tt,
body .acpt-modal h3.acpt-modal-tt {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #1A1A2E !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.3 !important;
    letter-spacing: -0.4px !important;
}

button.acpt-modal-x,
body button.acpt-modal-x {
    background: none !important;
    background-color: rgba(26, 26, 46, 0.05) !important;
    background-image: none !important;
    border: none !important;
    cursor: pointer !important;
    padding: 10px !important;
    border-radius: 12px !important;
    color: #6C757D !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: none !important;
    outline: none !important;
    transition: all 0.2s ease !important;
}

button.acpt-modal-x:hover {
    background-color: #FDF1EC !important;
    color: #DD5128 !important;
    transform: rotate(90deg) !important;
}

.acpt-modal-bd {
    padding: 20px 28px !important;
    overflow-y: auto !important;
    flex: 1 !important;
}

.acpt-modal-load {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 50px !important;
    color: #DD5128 !important;
}

.acpt-addon-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.acpt-addon-item {
    display: block !important;
    padding: 18px !important;
    background: #FDF1EC !important;
    border-radius: 14px !important;
    transition: all 0.25s ease !important;
    border: 1.5px solid transparent !important;
}

.acpt-addon-item:hover {
    border-color: rgba(221, 81, 40, 0.3) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 18px rgba(221, 81, 40, 0.1) !important;
}

.acpt-addon-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    gap: 14px !important;
}

.acpt-addon-info {
    flex: 1 !important;
    min-width: 0 !important;
}

.acpt-addon-nm {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1A1A2E !important;
    margin-bottom: 6px !important;
    line-height: 1.3 !important;
    letter-spacing: -0.2px !important;
    font-family: 'Playfair Display', serif !important;
}

.acpt-addon-pr {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #DD5128 !important;
    letter-spacing: -0.3px !important;
    font-family: 'Playfair Display', serif !important;
}

.acpt-addon-tabs {
    display: flex !important;
    gap: 6px !important;
    margin-top: 14px !important;
    padding-top: 14px !important;
    border-top: 1px dashed rgba(221, 81, 40, 0.3) !important;
}

button.acpt-tab-btn,
body button.acpt-tab-btn,
body .acpt-modal button.acpt-tab-btn {
    flex: 1 !important;
    padding: 9px 14px !important;
    background-color: #FFFFFF !important;
    background-image: none !important;
    color: #1A1A2E !important;
    border: 1.5px solid #DD5128 !important;
    border-radius: 100px !important;
    font-family: 'Playfair Display', serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-shadow: none !important;
    outline: none !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

button.acpt-tab-btn:hover {
    background-color: #FDF1EC !important;
    color: #DD5128 !important;
}

button.acpt-tab-btn.acpt-tab-active,
body button.acpt-tab-btn.acpt-tab-active,
.acpt-modal button.acpt-tab-btn.acpt-tab-active {
    background-color: #DD5128 !important;
    color: #FFFFFF !important;
    border-color: #DD5128 !important;
}

.acpt-addon-unit-info {
    display: inline-block !important;
    margin-bottom: 6px !important;
}

.acpt-unit-badge {
    display: inline-block !important;
    padding: 4px 12px !important;
    background: #DD5128 !important;
    color: #FFFFFF !important;
    border-radius: 100px !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    font-family: 'Playfair Display', serif !important;
}

.acpt-addon-ctrls {
    display: flex !important;
    align-items: stretch !important;
    flex-shrink: 0 !important;
    height: 42px !important;
    background: #FFFFFF !important;
    border: 1.5px solid rgba(221, 81, 40, 0.2) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
}

button.acpt-qbtn,
body button.acpt-qbtn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 100% !important;
    background-color: #FFFFFF !important;
    background-image: none !important;
    border: none !important;
    cursor: pointer !important;
    color: #1A1A2E !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    outline: none !important;
    transition: all 0.15s ease !important;
}

button.acpt-qbtn:hover {
    background-color: #DD5128 !important;
    color: #FFFFFF !important;
}

.acpt-qdisplay {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 100% !important;
    background: #FFFFFF !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #1A1A2E !important;
    user-select: none !important;
    border-left: 1px solid rgba(221, 81, 40, 0.1) !important;
    border-right: 1px solid rgba(221, 81, 40, 0.1) !important;
}

.acpt-addon-empty {
    text-align: center !important;
    padding: 50px 16px !important;
    color: #6C757D !important;
    font-size: 14px !important;
}

.acpt-addon-empty svg {
    margin-bottom: 12px !important;
    opacity: 0.3 !important;
}

.acpt-modal-ft {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 20px 28px 24px !important;
    border-top: 1px solid rgba(26, 26, 46, 0.06) !important;
    gap: 14px !important;
    background: #FDF1EC !important;
}

.acpt-modal-tot {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.acpt-modal-tot-l {
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #6C757D !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
}

.acpt-modal-tot-v {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #1A1A2E !important;
    letter-spacing: -0.6px !important;
}

button.acpt-modal-sub,
body button.acpt-modal-sub {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 13px 22px !important;
    background-color: #DD5128 !important;
    background-image: none !important;
    color: #FFFFFF !important;
    border: 1.5px solid #DD5128 !important;
    border-radius: 100px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    box-shadow: 0 4px 14px rgba(221, 81, 40, 0.3) !important;
    outline: none !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
}

button.acpt-modal-sub:hover {
    background-color: #1A1A2E !important;
    border-color: #1A1A2E !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 24px rgba(26, 26, 46, 0.25) !important;
}

button.acpt-modal-sub.acpt-btn-loading {
    opacity: 0.7 !important;
    pointer-events: none !important;
}

/* ============================================================
   TOAST
   ============================================================ */
.acpt-toast {
    position: fixed !important;
    top: 28px !important;
    right: 28px !important;
    z-index: 99999999 !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 16px 22px !important;
    background: #1A1A2E !important;
    color: #FFFFFF !important;
    border-radius: 14px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25) !important;
    transform: translateX(calc(100% + 40px)) !important;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    max-width: 420px !important;
    line-height: 1.5 !important;
}

.acpt-toast.acpt-toast-in {
    transform: translateX(0) !important;
}

.acpt-toast-ok {
    border-left: 4px solid #2E7D32 !important;
}

.acpt-toast-err {
    border-left: 4px solid #C62828 !important;
}

.acpt-toast-info {
    border-left: 4px solid #DD5128 !important;
}

a.acpt-toast-link,
body .acpt-toast a.acpt-toast-link {
    color: #DD5128 !important;
    text-decoration: underline !important;
    margin-left: 4px !important;
    font-weight: 700 !important;
}

a.acpt-toast-link:hover {
    color: #FFFFFF !important;
}

button.acpt-toast-x,
body button.acpt-toast-x {
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    color: #FFFFFF !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin-left: 6px !important;
    opacity: 0.7 !important;
    display: flex !important;
    box-shadow: none !important;
    outline: none !important;
}

button.acpt-toast-x:hover {
    opacity: 1 !important;
}

@media (max-width: 968px) {
    .acpt-toast {
        right: 12px !important;
        left: 12px !important;
        top: 12px !important;
        max-width: calc(100vw - 24px) !important;
    }
}

/* ============================================================
   BOTTOM SECTION
   ============================================================ */
.acpt-bottom-section {
  margin-bottom:30px;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

@media (max-width: 968px) {
    .acpt-bottom-section {
        margin-top: 50px !important;
    }
}

/* Hide any old billing switch */
.acpt-addon-billing {
    display: none !important;
}

/* ============================================================
   SECTION HEADINGS — Inside Feature Rows
   ============================================================ */
.acpt-section-heading {
    background: linear-gradient(90deg, #FDF1EC 0%, rgba(253, 241, 236, 0.5) 100%) !important;
}

.acpt-section-cell,
body .acpt-table .acpt-section-cell {
   
    border-top: 1px solid rgba(221, 81, 40, 0.15) !important;
    border-bottom: 1px solid rgba(221, 81, 40, 0.15) !important;
    border-right: none !important;
    font-family: 'Playfair Display', serif !important;
}

/* Mobile section heading */
.acpt-mfr-heading {
    margin: 16px 0 8px !important;
    padding: 10px 14px !important;
    background: #FDF1EC !important;
    color: #DD5128 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    border-radius: 8px !important;
    text-align: center !important;
    font-family: 'Playfair Display', serif !important;
    border: 1px solid rgba(221, 81, 40, 0.2) !important;
}
td.acpt-c.acpt-section-cell {
    background-color: #f9f9f9 !important;
    font-size: 19px;
    color: #DD5128;
    font-weight: 800;
}
@media (max-width: 768px) {.acpt-mfr-heading {
    font-size: 19px;
    color: #DD5128;
    font-weight: 800;
    padding: 15px 0px;
}}





/* ============================================================
   v8.2.1 — Force clickability on cart buttons
   ============================================================ */

button.acpt-cart-btn,
body button.acpt-cart-btn,
body .acpt-wrap button.acpt-cart-btn,
body .acpt-mob button.acpt-cart-btn {
    pointer-events: auto !important;
    cursor: pointer !important;
    position: relative !important;
    z-index: 10 !important;
    user-select: none !important;
}

button.acpt-cart-btn * {
    pointer-events: none !important;
}

/* Make sure cart row cells don't block clicks */
.acpt-cr .acpt-pkg,
body .acpt-table .acpt-cr .acpt-pkg {
    pointer-events: auto !important;
    position: relative !important;
    z-index: 5 !important;
}

/* Same for addon button — keep consistent */
button.acpt-addon-btn,
body button.acpt-addon-btn {
    pointer-events: auto !important;
    cursor: pointer !important;
    position: relative !important;
    z-index: 10 !important;
}

button.acpt-addon-btn * {
    pointer-events: none !important;
}




/* ============================================================
   v8.6 — SERVICE LOGO (Above Service Name)
   ============================================================ */

/* Desktop logo — Row 1 left column */
.acpt-r1 .acpt-lbl {
    text-align: center !important;
}

img.acpt-service-logo,
body img.acpt-service-logo {
    display: block !important;
    max-width: 120px !important;
    width: auto !important;
    height: auto !important;
    margin: 0 auto 18px !important;
    border-radius: 16px !important;
    box-shadow:
       0 8px 24px rgb(221 81 40 / 8%), 0 2px 6px rgba(221, 81, 40, 0.1) !important;
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
padding:6px;
}

img.acpt-service-logo:hover {
    transform: scale(1.05) rotate(-3deg) !important;
}

.acpt-service-name {
    display: block !important;
}

/* Mobile logo — top of each card */
img.acpt-mlogo,
body img.acpt-mlogo {
    display: block !important;
    max-width: 70px !important;
    width: auto !important;
    height: auto !important;
    margin: 0 auto 14px !important;
    border-radius: 14px !important;
    box-shadow:
        0 6px 18px rgba(221, 81, 40, 0.18),
        0 2px 6px rgba(221, 81, 40, 0.1) !important;
}

@media (max-width: 968px) {
    img.acpt-service-logo {
        max-width: 76px !important;
        margin-bottom: 14px !important;
    }
}

@media (max-width: 480px) {
    img.acpt-service-logo {
        max-width: 64px !important;
    }

    img.acpt-mlogo {
        max-width: 60px !important;
    }
}









