/* -------------------------------------------------------------
   LUMII CONFIGURATOR funnel stylesheet
   Highly specific selectors to override Elementor default styles
   ------------------------------------------------------------- */

/* Variables Scope isolated to the wrapper */
.elementor-widget-shortcode .lumii-config-wrapper,
.elementor-text-editor .lumii-config-wrapper,
.lumii-config-wrapper {
    --lumii-bg: #EDEDDE;
    --lumii-card-bg: #ffffff;
    --lumii-card-border: #184646;
    --lumii-card-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    --lumii-card-shadow-hover: 0 12px 24px rgba(24, 70, 70, 0.12);
    --lumii-primary: #184646;
    --lumii-primary-light: #2c6e6e;
    --lumii-primary-dark: #0f2f2f;
    --lumii-secondary: #FAA21B;
    --lumii-accent: #00B2A1;
    --lumii-text: #000000;
    --lumii-text-muted: #555555;
    --lumii-text-light: #888888;
    --lumii-success: #00B2A1;
    --lumii-success-light: #e6f7f6;
    --lumii-input-bg: #ffffff;
    --lumii-input-border: #cccccc;
    --lumii-input-focus: rgba(0, 178, 161, 0.15);

    /* Summary (Page C) specific tokens - matches client site styling */
    --lumii-summary-bg: #EEEEEE;
    --lumii-summary-input-border: #CAD5D4;
    --lumii-summary-input-text: #4D4D4D;
    --lumii-summary-required-color: #C02B0A;
    --lumii-summary-checkbox-border: #686E77;
    --lumii-summary-label-color: #112337;
}

/* Base Wrapper Specificity & Resets */
.elementor-widget-shortcode .lumii-config-wrapper,
.elementor-text-editor .lumii-config-wrapper,
.lumii-config-wrapper {
    font-family: 'Inter', sans-serif !important;
    color: var(--lumii-text) !important;
    line-height: 1.6 !important;
    margin-top: 20px !important;
    margin-bottom: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 1400px !important;
    padding: 0 15px !important;
    box-sizing: border-box !important;
}

.elementor-widget-shortcode .lumii-config-wrapper *,
.elementor-text-editor .lumii-config-wrapper *,
.lumii-config-wrapper * {
    box-sizing: border-box !important;
}

/* Specific overrides to counteract Elementor default paddings, section margins, and inheritances */
.elementor-widget-shortcode .lumii-config-wrapper p,
.elementor-text-editor .lumii-config-wrapper p,
.lumii-config-wrapper p {
    margin-top: 0 !important;
    margin-bottom: 15px !important;
    line-height: 1.6 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper h2,
.elementor-widget-shortcode .lumii-config-wrapper h3,
.elementor-widget-shortcode .lumii-config-wrapper h4,
.elementor-widget-shortcode .lumii-config-wrapper h5,
.elementor-text-editor .lumii-config-wrapper h2,
.elementor-text-editor .lumii-config-wrapper h3,
.elementor-text-editor .lumii-config-wrapper h4,
.elementor-text-editor .lumii-config-wrapper h5,
.lumii-config-wrapper h2,
.lumii-config-wrapper h3,
.lumii-config-wrapper h4,
.lumii-config-wrapper h5 {
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    margin-top: 0 !important;
}

/* Page Column Containment & Spacing */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-configurator-wrapper,
.elementor-text-editor .lumii-config-wrapper .lumii-plans-configurator-wrapper,
.lumii-config-wrapper .lumii-plans-configurator-wrapper {
    position: relative !important;
    margin-bottom: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper #lumii-channels-content-wrapper,
.elementor-text-editor .lumii-config-wrapper #lumii-channels-content-wrapper,
.lumii-config-wrapper #lumii-channels-content-wrapper {
    position: relative !important;
    margin-bottom: 0 !important;
}

/* 2-Column Horizontal Layout for Plans Page */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-configurator-row,
.elementor-text-editor .lumii-config-wrapper .lumii-configurator-row,
.lumii-config-wrapper .lumii-configurator-row {
    display: flex !important;
    flex-direction: row !important;
    gap: 30px !important;
    margin-bottom: 0 !important;
    width: 100% !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-sidebar-wrapper,
.elementor-text-editor .lumii-config-wrapper .lumii-phone-sidebar-wrapper,
.lumii-config-wrapper .lumii-phone-sidebar-wrapper {
    width: 300px !important;
    flex-shrink: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid-wrapper,
.elementor-text-editor .lumii-config-wrapper .lumii-plans-grid-wrapper,
.lumii-config-wrapper .lumii-plans-grid-wrapper {
    flex: 1 !important;
}

@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-configurator-row,
    .elementor-text-editor .lumii-config-wrapper .lumii-configurator-row,
    .lumii-config-wrapper .lumii-configurator-row {
        flex-direction: column !important;
    }
    
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-sidebar-wrapper,
    .elementor-text-editor .lumii-config-wrapper .lumii-phone-sidebar-wrapper,
    .lumii-config-wrapper .lumii-phone-sidebar-wrapper {
        width: 100% !important;
    }
}

/* Phone Sidebar Container Reset */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-sidebar,
.elementor-text-editor .lumii-config-wrapper .lumii-phone-sidebar,
.lumii-config-wrapper .lumii-phone-sidebar {
    background: #F8F8F2 !important;
    border: none !important;
    border-radius: 16px !important;
    padding: 24px !important;
    box-shadow: none !important;
    height: fit-content !important;
    box-sizing: border-box !important;
}

/* TV Sidebar Container styling */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-tv-sidebar,
.elementor-text-editor .lumii-config-wrapper .lumii-tv-sidebar,
.lumii-config-wrapper .lumii-tv-sidebar {
    background: #ffffff !important;
    border: 1px solid rgba(24, 70, 70, 0.1) !important;
    border-radius: 16px !important;
    padding: 25px !important;
    box-shadow: var(--lumii-card-shadow) !important;
    height: fit-content !important;
}

/* Sidebar Title Typography */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sidebar-title,
.elementor-text-editor .lumii-config-wrapper .lumii-sidebar-title,
.lumii-config-wrapper .lumii-sidebar-title {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 20px !important;
    line-height: 24px !important;
    color: #0D2621 !important;
    margin: 0 !important;
}

/* Sidebar Description Typography */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sidebar-desc,
.elementor-text-editor .lumii-config-wrapper .lumii-sidebar-desc,
.lumii-config-wrapper .lumii-sidebar-desc {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    line-height: 20px !important;
    color: #0D2621 !important;
    margin: 8px 0 20px 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-options-list,
.elementor-text-editor .lumii-config-wrapper .lumii-phone-options-list,
.lumii-config-wrapper .lumii-phone-options-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.lumii-phone-options-list button,
.lumii-phone-addon {
    padding: 16px 24px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-item,
.elementor-text-editor .lumii-config-wrapper .lumii-phone-item,
.lumii-config-wrapper .lumii-phone-item,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-internet-item,
.elementor-text-editor .lumii-config-wrapper .lumii-internet-item,
.lumii-config-wrapper .lumii-internet-item,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-addon,
.elementor-text-editor .lumii-config-wrapper .lumii-phone-addon,
.lumii-config-wrapper .lumii-phone-addon {
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 16px 24px !important;
    box-sizing: border-box !important;
    background: transparent !important;
    border: 1px solid #1F5454 !important;
    border-radius: 100px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    position: relative !important;
    text-align: center !important;
    width: 100% !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    color: #1F5454 !important;
    white-space: normal !important;
    word-wrap: break-word !important;
}

@media (hover: hover) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-item:hover,
    .elementor-text-editor .lumii-config-wrapper .lumii-phone-item:hover,
    .lumii-config-wrapper .lumii-phone-item:hover,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-internet-item:hover,
    .elementor-text-editor .lumii-config-wrapper .lumii-internet-item:hover,
    .lumii-config-wrapper .lumii-internet-item:hover,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-addon:hover,
    .elementor-text-editor .lumii-config-wrapper .lumii-phone-addon:hover,
    .lumii-config-wrapper .lumii-phone-addon:hover {
        color: #EDEDDE !important;
        background-color: #1F5454 !important;
        border: 1px solid #1F5454 !important;
    }
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-item.active,
.elementor-text-editor .lumii-config-wrapper .lumii-phone-item.active,
.lumii-config-wrapper .lumii-phone-item.active,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-internet-item.active,
.elementor-text-editor .lumii-config-wrapper .lumii-internet-item.active,
.lumii-config-wrapper .lumii-internet-item.active,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-addon.active,
.elementor-text-editor .lumii-config-wrapper .lumii-phone-addon.active,
.lumii-config-wrapper .lumii-phone-addon.active {
    color: #EDEDDE !important;
    background-color: #1F5454 !important;
    border: 1px solid #1F5454 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-item-name,
.elementor-text-editor .lumii-config-wrapper .lumii-phone-item-name,
.lumii-config-wrapper .lumii-phone-item-name {
    width: 100% !important;
    text-align: center !important;
    padding: 0 25px !important;
    white-space: normal !important;
    word-wrap: break-word !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-item-check,
.elementor-text-editor .lumii-config-wrapper .lumii-phone-item-check,
.lumii-config-wrapper .lumii-phone-item-check {
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    color: #EDEDDE !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    position: absolute !important;
    right: 20px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    flex-shrink: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-item.active .lumii-phone-item-check,
.elementor-text-editor .lumii-config-wrapper .lumii-phone-item.active .lumii-phone-item-check,
.lumii-config-wrapper .lumii-phone-item.active .lumii-phone-item-check,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-internet-item.active .lumii-phone-item-check,
.elementor-text-editor .lumii-config-wrapper .lumii-internet-item.active .lumii-phone-item-check,
.lumii-config-wrapper .lumii-internet-item.active .lumii-phone-item-check,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-addon.active .lumii-phone-item-check,
.elementor-text-editor .lumii-config-wrapper .lumii-phone-addon.active .lumii-phone-item-check,
.lumii-config-wrapper .lumii-phone-addon.active .lumii-phone-item-check {
    display: flex !important;
}

/* Plans Grid */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid,
.elementor-text-editor .lumii-config-wrapper .lumii-plans-grid,
.lumii-config-wrapper .lumii-plans-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 20px !important;
}

@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-plans-grid,
    .lumii-config-wrapper .lumii-plans-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-plans-grid,
    .lumii-config-wrapper .lumii-plans-grid {
        grid-template-columns: 1fr !important;
    }
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-card,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-card,
.lumii-config-wrapper .lumii-plan-card {
    background: #F8F8F2 !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 30px 20px !important;
    box-shadow: none !important;
    transition: background 0.3s, box-shadow 0.3s, transform 0.4s !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    cursor: pointer !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-card:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-card:hover,
.lumii-config-wrapper .lumii-plan-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-card.active,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-card.active,
.lumii-config-wrapper .lumii-plan-card.active {
    border: none !important;
    background: #F8F8F2 !important;
    box-shadow: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-badge,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-badge,
.lumii-config-wrapper .lumii-plan-badge {
    display: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-icons,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-icons,
.lumii-config-wrapper .lumii-plan-icons {
    display: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-card-icon-svg,
.elementor-text-editor .lumii-config-wrapper .lumii-card-icon-svg,
.lumii-config-wrapper .lumii-card-icon-svg {
    width: 42px !important;
    height: 42px !important;
    stroke: #00B2A1 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-title,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-title,
.lumii-config-wrapper .lumii-plan-title {
    font-family: 'Inter', serif !important;
    font-weight: 400 !important;
    font-size: 32px !important;
    line-height: 32px !important;
    color: #0D2621 !important;
    margin: 0 !important;
    order: 1 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-price-wrap,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-price-wrap,
.lumii-config-wrapper .lumii-plan-price-wrap {
    margin: 0 !important;
    display: flex !important;
    align-items: baseline !important;
    order: 3 !important;
    margin-top: auto !important; /* Pushes the price and button to the very bottom */
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-price,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-price,
.lumii-config-wrapper .lumii-plan-price {
    font-size: 38px !important;
    font-weight: 600 !important;
    color: #333333 !important;
    line-height: 1 !important;
    display: inline-block !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-price .price-suffix,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-price .price-suffix,
.lumii-config-wrapper .lumii-plan-price .price-suffix {
    font-size: 0.45em !important;
    vertical-align: super !important;
    position: relative !important;
    top: -0.2em !important;
    margin-left: 2px !important;
    font-weight: 500 !important;
    color: #333333 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-period,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-period,
.lumii-config-wrapper .lumii-plan-period {
    display: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features,
.lumii-config-wrapper .lumii-plan-features {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    flex-grow: 1 !important;
    order: 2 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features ul,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features ul,
.lumii-config-wrapper .lumii-plan-features ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features h4,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features h5,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features strong,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features h4,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features h5,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features strong,
.lumii-config-wrapper .lumii-plan-features h4,
.lumii-config-wrapper .lumii-plan-features h5,
.lumii-config-wrapper .lumii-plan-features strong {
    font-family: 'Inter', serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 22.5px !important;
    color: #0D2621 !important;
    margin: 0 !important;
    display: block !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features strong:first-child,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features strong:first-child,
.lumii-config-wrapper .lumii-plan-features strong:first-child,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features h4:first-child,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features h4:first-child,
.lumii-config-wrapper .lumii-plan-features h4:first-child,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features h5:first-child,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features h5:first-child,
.lumii-config-wrapper .lumii-plan-features h5:first-child {
    margin-top: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features p,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features p,
.lumii-config-wrapper .lumii-plan-features p {
    font-family: 'Inter', serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 22.5px !important;
    color: #0D2621 !important;
    margin: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features .lumii-separator,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features .lumii-separator,
.lumii-config-wrapper .lumii-plan-features .lumii-separator {
    font-family: 'Inter', serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    color: #0D2621 !important;
    margin: 0 !important;
    line-height: 22.5px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features li,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features li,
.lumii-config-wrapper .lumii-plan-features li {
    position: relative !important;
    padding-left: 20px !important;
    margin: 0 !important;
    font-family: 'Inter', serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 22.5px !important;
    color: #0D2621 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features li::before,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features li::before,
.lumii-config-wrapper .lumii-plan-features li::before {
    content: '✓' !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    color: #0D2621 !important;
    font-weight: bold !important;
    font-size: 15px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-select-plan-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-select-plan-btn,
.lumii-config-wrapper .lumii-select-plan-btn {
    background: transparent !important;
    color: #0D2621 !important;
    border: 2px solid #0D2621 !important;
    border-radius: 100px !important;
    padding: 12px 24px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 16px !important;
    cursor: pointer !important;
    transition: all 0.3s !important;
    text-align: center !important;
    width: 100% !important;
    display: block !important;
    text-decoration: none !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    order: 4 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-card.active .lumii-select-plan-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-card.active .lumii-select-plan-btn,
.lumii-config-wrapper .lumii-plan-card.active .lumii-select-plan-btn,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-select-plan-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-select-plan-btn:hover,
.lumii-select-plan-btn:hover {
    background: #0D2621 !important;
    color: #ffffff !important;
    border-color: #0D2621 !important;
    box-shadow: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-no-plans-msg,
.elementor-text-editor .lumii-config-wrapper .lumii-no-plans-msg,
.lumii-config-wrapper .lumii-no-plans-msg {
    grid-column: 1 / -1 !important;
    text-align: center !important;
    padding: 40px !important;
    background: #ffffff !important;
    border-radius: 16px !important;
    border: 1px solid rgba(24, 70, 70, 0.1) !important;
}

/* Addons Section */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-addons-section,
.elementor-text-editor .lumii-config-wrapper .lumii-addons-section,
.lumii-config-wrapper .lumii-addons-section {
    margin-top: 40px !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0px !important;
    padding: 0 !important;
    box-shadow: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-section-title,
.elementor-text-editor .lumii-config-wrapper .lumii-section-title,
.lumii-config-wrapper .lumii-section-title {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--lumii-primary) !important;
    margin: 0 0 20px 0 !important;
    border-bottom: 2px solid var(--lumii-bg) !important;
    padding-bottom: 10px !important;
}

/* GigaSpire Block */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-addon-card-block,
.elementor-text-editor .lumii-config-wrapper .lumii-addon-card-block,
.lumii-config-wrapper .lumii-addon-card-block {
    display: flex !important;
    align-items: center !important;
    gap: 25px !important;
    background: #ffffff !important;
    border: 2px solid var(--lumii-input-border) !important;
    border-radius: 16px !important;
    padding: 25px !important;
    margin-bottom: 25px !important;
    transition: all 0.3s !important;
}

@media (max-width: 768px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-addon-card-block,
    .elementor-text-editor .lumii-config-wrapper .lumii-addon-card-block,
    .lumii-config-wrapper .lumii-addon-card-block {
        flex-direction: column !important;
        text-align: center !important;
    }
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-addon-block-image,
.elementor-text-editor .lumii-config-wrapper .lumii-addon-block-image,
.lumii-config-wrapper .lumii-addon-block-image {
    flex-shrink: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-hardware-img,
.elementor-text-editor .lumii-config-wrapper .lumii-hardware-img,
.lumii-config-wrapper .lumii-hardware-img {
    width: 120px !important;
    height: auto !important;
    border-radius: 8px !important;
    display: block !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-addon-block-details,
.elementor-text-editor .lumii-config-wrapper .lumii-addon-block-details,
.lumii-config-wrapper .lumii-addon-block-details {
    flex-grow: 1 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-addon-block-title,
.elementor-text-editor .lumii-config-wrapper .lumii-addon-block-title,
.lumii-config-wrapper .lumii-addon-block-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    margin: 0 0 6px 0 !important;
    color: var(--lumii-primary) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-addon-block-desc,
.elementor-text-editor .lumii-config-wrapper .lumii-addon-block-desc,
.lumii-config-wrapper .lumii-addon-block-desc {
    font-size: 14px !important;
    color: var(--lumii-text-muted) !important;
    margin: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-addon-block-triggers,
.elementor-text-editor .lumii-config-wrapper .lumii-addon-block-triggers,
.lumii-config-wrapper .lumii-addon-block-triggers,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row-actions,
.elementor-text-editor .lumii-config-wrapper .lumii-option-row-actions,
.lumii-config-wrapper .lumii-option-row-actions {
    display: flex !important;
    gap: 10px !important;
    flex-shrink: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-router-trigger,
.elementor-text-editor .lumii-config-wrapper .lumii-router-trigger,
.lumii-config-wrapper .lumii-router-trigger,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-mesh-trigger,
.elementor-text-editor .lumii-config-wrapper .lumii-mesh-trigger,
.lumii-config-wrapper .lumii-mesh-trigger,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-addon-trigger,
.elementor-text-editor .lumii-config-wrapper .lumii-addon-trigger,
.lumii-config-wrapper .lumii-addon-trigger {
    background: #ffffff !important;
    color: var(--lumii-primary) !important;
    border: 2px solid var(--lumii-input-border) !important;
    border-radius: 8px !important;
    padding: 10px 18px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
}

@media (hover: hover) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-router-trigger:hover,
    .elementor-text-editor .lumii-config-wrapper .lumii-router-trigger:hover,
    .lumii-config-wrapper .lumii-router-trigger:hover,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-mesh-trigger:hover,
    .elementor-text-editor .lumii-config-wrapper .lumii-mesh-trigger:hover,
    .lumii-config-wrapper .lumii-mesh-trigger:hover,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-addon-trigger:hover,
    .elementor-text-editor .lumii-config-wrapper .lumii-addon-trigger:hover,
    .lumii-config-wrapper .lumii-addon-trigger:hover {
        border-color: var(--lumii-accent) !important;
        color: var(--lumii-accent) !important;
    }
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-router-trigger.active,
.elementor-text-editor .lumii-config-wrapper .lumii-router-trigger.active,
.lumii-config-wrapper .lumii-router-trigger.active,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-mesh-trigger.active,
.elementor-text-editor .lumii-config-wrapper .lumii-mesh-trigger.active,
.lumii-config-wrapper .lumii-mesh-trigger.active,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-addon-trigger.active,
.elementor-text-editor .lumii-config-wrapper .lumii-addon-trigger.active,
.lumii-config-wrapper .lumii-addon-trigger.active {
    background: var(--lumii-accent) !important;
    border-color: var(--lumii-accent) !important;
    color: #ffffff !important;
}

/* Option rows */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-options-block-rows,
.elementor-text-editor .lumii-config-wrapper .lumii-options-block-rows,
.lumii-config-wrapper .lumii-options-block-rows {
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row,
.elementor-text-editor .lumii-config-wrapper .lumii-option-row,
.lumii-config-wrapper .lumii-option-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 20px 0 !important;
    border-bottom: 1px solid var(--lumii-input-border) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row:last-child,
.elementor-text-editor .lumii-config-wrapper .lumii-option-row:last-child,
.lumii-config-wrapper .lumii-option-row:last-child {
    border-bottom: none !important;
    padding-bottom: 0 !important;
}

@media (max-width: 600px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row,
    .elementor-text-editor .lumii-config-wrapper .lumii-option-row,
    .lumii-config-wrapper .lumii-option-row {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 15px !important;
    }
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row-actions,
    .elementor-text-editor .lumii-config-wrapper .lumii-option-row-actions,
    .lumii-config-wrapper .lumii-option-row-actions {
        width: 100% !important;
    }
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row-actions button,
    .elementor-text-editor .lumii-config-wrapper .lumii-option-row-actions button,
    .lumii-config-wrapper .lumii-option-row-actions button {
        flex: 1 !important;
    }
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row-title,
.elementor-text-editor .lumii-config-wrapper .lumii-option-row-title,
.lumii-config-wrapper .lumii-option-row-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    margin: 0 0 4px 0 !important;
    color: var(--lumii-primary) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row-desc,
.elementor-text-editor .lumii-config-wrapper .lumii-option-row-desc,
.lumii-config-wrapper .lumii-option-row-desc {
    font-size: 13px !important;
    color: var(--lumii-text-muted) !important;
    margin: 0 !important;
}

/* Cart Bar — sits in normal document flow right after the configurator
   content, and "sticks" to the bottom of the viewport while its parent
   (.lumii-config-wrapper) is still on screen — native CSS sticky, no JS
   scroll math needed for the sticking behaviour itself. It releases and
   scrolls away naturally once the wrapper's bottom edge reaches it.
   Width is intentionally left at 100% here — true edge-to-edge bleed is
   applied precisely in JS (see fixStickyBarWidth() in lumii-engine.js),
   since the old 100vw/negative-margin CSS trick was getting clipped by
   an ancestor and only showing part-width. Visibility (hidden at the
   top of the page, revealed on scroll) is layered on via opacity so it
   doesn't disturb the sticky flow position — see checkStickyBarVisibility()
   in lumii-engine.js. */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-cart-bar,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-cart-bar,
.lumii-config-wrapper .lumii-sticky-cart-bar {
    position: sticky !important;
    bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    /* N4 (client 2026-08-26) : chaque section/conteneur Elementor du site est en
       position: relative; z-index: 999 (et l'en-tête fixe aussi) — à 50 la barre
       passait SOUS la section suivante (accueil) et sous l'en-tête. 9990 reste sous
       les popups Elementor (9999) et sous nos modales (999999). */
    z-index: 9990 !important;
    border-radius: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    display: none !important;
    flex-direction: column !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}

/* Rendered once a plan is selected — still invisible (opacity 0) until
   .lumii-sticky-shown is also present. */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-cart-bar.lumii-sticky-visible,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-cart-bar.lumii-sticky-visible,
.lumii-config-wrapper .lumii-sticky-cart-bar.lumii-sticky-visible {
    display: flex !important;
}

/* Faded into view — added by the scroll listener once the page is no
   longer at the very top. */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-cart-bar.lumii-sticky-visible.lumii-sticky-shown,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-cart-bar.lumii-sticky-visible.lumii-sticky-shown,
.lumii-config-wrapper .lumii-sticky-cart-bar.lumii-sticky-visible.lumii-sticky-shown {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* Pointer events are back to normal since nothing overlays page content anymore */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-channels-tracker,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-channels-tracker,
.lumii-config-wrapper .lumii-sticky-channels-tracker,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-main-cart,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-main-cart,
.lumii-config-wrapper .lumii-sticky-main-cart,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-cart-dropdown-panel,
.elementor-text-editor .lumii-config-wrapper .lumii-cart-dropdown-panel,
.lumii-config-wrapper .lumii-cart-dropdown-panel {
    pointer-events: auto !important;
}

/* SVG Icon styles to replace inline stylings */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-screen-icon,
.elementor-text-editor .lumii-config-wrapper .lumii-screen-icon,
.lumii-config-wrapper .lumii-screen-icon {
    width: 32.5px !important;
    height: 26px !important;
    color: #EDEDDE !important;
    display: inline-block !important;
    vertical-align: middle !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-cart-icon,
.elementor-text-editor .lumii-config-wrapper .lumii-cart-icon,
.lumii-config-wrapper .lumii-cart-icon {
    width: 38.25px !important;
    height: 34px !important;
    color: #EDEDDE !important;
    margin-right: 12px !important;
    display: inline-block !important;
    vertical-align: middle !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plus-circle-icon,
.elementor-text-editor .lumii-config-wrapper .lumii-plus-circle-icon,
.lumii-config-wrapper .lumii-plus-circle-icon {
    width: 34px !important;
    height: 34px !important;
    color: #EDEDDE !important;
    margin-left: 8px !important;
    display: inline-block !important;
    vertical-align: middle !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

/* TOP TRACKER BAR (full width of its section) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-channels-tracker,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-channels-tracker,
.lumii-config-wrapper .lumii-sticky-channels-tracker {
    background-color: #0D2621 !important;
    padding: 16px 0 !important;
    height: 71px !important;
    width: 100% !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
}

/* Inner centered text content row */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-channels-tracker-content,
.elementor-text-editor .lumii-config-wrapper .lumii-channels-tracker-content,
.lumii-config-wrapper .lumii-channels-tracker-content {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 16px !important;
    width: 100% !important;
    max-width: 1600px !important;
    margin: 0 auto !important;
    padding: 0 100px 0 60px !important;
    box-sizing: border-box !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channels-tracker-text,
.elementor-text-editor .lumii-config-wrapper .lumii-channels-tracker-text,
.lumii-config-wrapper .lumii-channels-tracker-text {
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
    font-size: 17px !important;
    line-height: 25.5px !important;
    color: #EDEDDE !important;
    display: inline-flex !important;
    align-items: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channels-tracker-count,
.elementor-text-editor .lumii-config-wrapper .lumii-channels-tracker-count,
.lumii-config-wrapper .lumii-channels-tracker-count {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 26px !important;
    line-height: 39px !important;
    color: #EDEDDE !important;
    margin-left: 10px !important;
}

/* DROPDOWN ACCORDION PANEL (Full Width of Viewport) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-cart-dropdown-panel,
.elementor-text-editor .lumii-config-wrapper .lumii-cart-dropdown-panel,
.lumii-config-wrapper .lumii-cart-dropdown-panel {
    background-color: #ffffff !important;
    border-top: 1px solid #EDEDDE !important;
    width: 100% !important;
    max-width: 100vw !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important; /* Let inner container handle vertical padding */
    box-sizing: border-box !important;
    box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.15) !important;
    border-radius: 0 !important;
}

/* Inner dropdown container to enforce stay-in-column constraint */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-inner-dropdown-container,
.elementor-text-editor .lumii-config-wrapper .lumii-inner-dropdown-container,
.lumii-config-wrapper .lumii-inner-dropdown-container {
    width: 100% !important;
    max-width: 1140px !important;
    margin: 0 auto !important;
    padding: 35px 12px 100px 12px !important;
    box-sizing: border-box !important;
    position: relative !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-dropdown-grid,
.elementor-text-editor .lumii-config-wrapper .lumii-dropdown-grid,
.lumii-config-wrapper .lumii-dropdown-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 200px) !important;
    justify-content: center !important;
    column-gap: 20px !important;
    row-gap: 20px !important;
    width: auto !important;
    max-width: 860px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-dropdown-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-dropdown-grid,
    .lumii-config-wrapper .lumii-dropdown-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
        max-width: none !important;
        width: 100% !important;
    }
}

@media (max-width: 600px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-dropdown-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-dropdown-grid,
    .lumii-config-wrapper .lumii-dropdown-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        max-width: none !important;
        width: 100% !important;
    }
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-dropdown-col,
.elementor-text-editor .lumii-config-wrapper .lumii-dropdown-col,
.lumii-config-wrapper .lumii-dropdown-col {
    display: flex !important;
    flex-direction: column !important;
}

/* Headings feature secondary Brand Gold accent #FAA21B with prepended SVGs */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-col-title,
.elementor-text-editor .lumii-config-wrapper .lumii-col-title,
.lumii-config-wrapper .lumii-col-title {
    display: flex !important;
    align-items: center !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important; /* Regular weight matching SPAN_10, SPAN_25 */
    color: rgb(13, 38, 33) !important; /* #0D2621 Dark Green */
    margin: 0 0 16px 0 !important;
    border-bottom: 1px solid rgb(204, 204, 204) !important; /* Light grey bottom border */
    padding: 8px 0 16px 0 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    height: 43px !important;
    box-sizing: border-box !important;
    column-gap: 18px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-col-icon,
.elementor-text-editor .lumii-config-wrapper .lumii-col-icon,
.lumii-config-wrapper .lumii-col-icon {
    width: 22.5px !important;
    height: 18px !important;
    color: rgb(250, 162, 27) !important; /* #FAA21B Orange/Gold */
    margin: 0 !important;
    display: block !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-col-list,
.elementor-text-editor .lumii-config-wrapper .lumii-col-list,
.lumii-config-wrapper .lumii-col-list {
    list-style: none !important;
    margin: 0 0 0 8px !important; /* margin-left: 8px */
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

/* Dropdown Accordion Item Typography (Pure clean text names, no prices, no borders) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-col-list li,
.elementor-text-editor .lumii-config-wrapper .lumii-col-list li,
.lumii-config-wrapper .lumii-col-list li {
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important; /* Bold 700 matching client's SPAN_14, SPAN_19 */
    font-size: 15px !important;
    line-height: 18.2px !important;
    color: rgb(13, 38, 33) !important; /* Dark Green #0D2621 */
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-bottom: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-col-list li .item-name,
.elementor-text-editor .lumii-config-wrapper .lumii-col-list li .item-name,
.lumii-config-wrapper .lumii-col-list li .item-name {
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important; /* Bold 700 weight matching client SPAN_14 */
    font-size: 15px !important;
    line-height: 18.2px !important;
    color: rgb(13, 38, 33) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-col-list li.lumii-empty-item,
.elementor-text-editor .lumii-config-wrapper .lumii-col-list li.lumii-empty-item,
.lumii-config-wrapper .lumii-col-list li.lumii-empty-item {
    color: var(--lumii-text-light) !important;
    font-style: italic !important;
    border-bottom: none !important;
}

/* Optional Addon Remove Button (X) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-remove-addon-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-remove-addon-btn,
.lumii-config-wrapper .lumii-remove-addon-btn {
    background: none !important;
    border: none !important;
    color: #888888 !important;
    font-size: 14px !important;
    font-weight: bold !important;
    cursor: pointer !important;
    padding: 0 4px !important;
    margin-left: 10px !important;
    line-height: 1 !important;
    transition: color 0.2s !important;
    border-radius: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-remove-addon-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-remove-addon-btn:hover,
.lumii-config-wrapper .lumii-remove-addon-btn:hover {
    color: #ff0000 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-dropdown-footer,
.elementor-text-editor .lumii-config-wrapper .lumii-dropdown-footer,
.lumii-config-wrapper .lumii-dropdown-footer {
    width: 100% !important;
    max-width: 860px !important;
    margin: 35px auto 0 auto !important; /* Increased padding gap from columns block */
    display: block !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-clear-cart-trigger,
.elementor-text-editor .lumii-config-wrapper .lumii-clear-cart-trigger,
.lumii-clear-cart-trigger {
    display: block !important;
    text-align: right !important;
    width: 100% !important;
    margin: 0 !important;
    color: rgb(13, 38, 33) !important;
    font-size: 15px !important; /* Slightly larger font size */
    font-weight: 700 !important;
    text-decoration: underline !important;
    cursor: pointer !important;
    transition: color 0.2s !important;
    border-radius: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-clear-cart-trigger:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-clear-cart-trigger:hover,
.lumii-clear-cart-trigger:hover {
    color: rgb(13, 38, 33) !important; /* Same color on hover, no change */
}

/* BOTTOM CART BAR (full width of its section) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-main-cart,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-main-cart,
.lumii-config-wrapper .lumii-sticky-main-cart {
    background-color: rgb(31, 84, 84) !important;
    padding: 26px 0 !important;
    height: 104px !important;
    width: 100% !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
}

/* Inner centered text content row */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-main-cart-content,
.elementor-text-editor .lumii-config-wrapper .lumii-main-cart-content,
.lumii-config-wrapper .lumii-main-cart-content {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 1600px !important;
    margin: 0 auto !important;
    padding: 0 100px 0 60px !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
    box-sizing: border-box !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-cart-left,
.elementor-text-editor .lumii-config-wrapper .lumii-cart-left,
.lumii-config-wrapper .lumii-cart-left {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    cursor: pointer !important;
    user-select: none;
    border-radius: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-cart-label,
.elementor-text-editor .lumii-config-wrapper .lumii-cart-label,
.lumii-config-wrapper .lumii-cart-label {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 34px !important;
    line-height: 34px !important;
    color: #EDEDDE !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-cart-pricing-wrap,
.elementor-text-editor .lumii-config-wrapper .lumii-cart-pricing-wrap,
.lumii-config-wrapper .lumii-cart-pricing-wrap {
    display: flex !important;
    align-items: center !important;
    flex-grow: 0 !important;
    justify-content: flex-end !important;
    margin-left: auto !important;
    margin-right: 100px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-total-price,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-total-price,
.lumii-config-wrapper .lumii-sticky-total-price {
    color: #EDEDDE !important;
    display: inline-flex !important;
    align-items: baseline !important;
}

/* Align and style dollar sign to match client design */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-price-dollar,
.elementor-text-editor .lumii-config-wrapper .lumii-price-dollar,
.lumii-price-dollar {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 18px !important;
    color: #EDEDDE !important;
    margin-right: 4px !important;
    align-self: flex-start !important;
    line-height: 1 !important;
    padding-top: 4px !important;
}

/* Beautiful Inter big numbers configuration */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-price-amount,
.elementor-text-editor .lumii-config-wrapper .lumii-price-amount,
.lumii-price-amount {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 32px !important;
    line-height: 32px !important;
    color: #EDEDDE !important;
}

/* Beautiful Inter smaller period text aligned right */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-price-period,
.elementor-text-editor .lumii-config-wrapper .lumii-price-period,
.lumii-config-wrapper .lumii-price-period {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    line-height: 18.2px !important;
    color: #EDEDDE !important;
    margin-left: 0 !important;
    vertical-align: super !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-cart-right,
.elementor-text-editor .lumii-config-wrapper .lumii-cart-right,
.lumii-config-wrapper .lumii-cart-right {
    display: flex !important;
    align-items: center;
    border-radius: 0 !important;
}

/* Next Button Re-Styling (Pill-shaped, comfortable padding) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-next-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-next-btn,
.lumii-sticky-next-btn {
    background-color: rgb(250, 162, 27) !important;
    border: 2px solid rgb(250, 162, 27) !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    line-height: 16px !important;
    color: rgb(13, 38, 33) !important;
    padding: 16px 24px !important;
    border-radius: 60px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 260px !important;
    height: 52px !important;
    box-sizing: border-box !important;
    transition: 0.24s ease-out !important;
    box-shadow: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-next-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-next-btn:hover,
.lumii-sticky-next-btn:hover {
    background-color: rgb(250, 162, 27) !important;
    border-color: rgb(250, 162, 27) !important;
    color: rgb(13, 38, 33) !important;
    transform: none !important;
}

/* Mobile Responsiveness for Sticky Footer Cart Bar */
@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-channels-tracker,
    .elementor-text-editor .lumii-config-wrapper .lumii-sticky-channels-tracker,
    .lumii-config-wrapper .lumii-sticky-channels-tracker {
        padding: 8px 0 !important;
        height: auto !important;
    }
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-channels-tracker-content,
    .elementor-text-editor .lumii-config-wrapper .lumii-channels-tracker-content,
    .lumii-config-wrapper .lumii-channels-tracker-content {
        padding: 0 15px !important;
        justify-content: center !important;
    }
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-channels-tracker-text,
    .elementor-text-editor .lumii-config-wrapper .lumii-channels-tracker-text,
    .lumii-config-wrapper .lumii-channels-tracker-text {
        font-size: 14px !important;
        line-height: 20px !important;
    }
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-main-cart,
    .elementor-text-editor .lumii-config-wrapper .lumii-sticky-main-cart,
    .lumii-config-wrapper .lumii-sticky-main-cart {
        padding: 12px 0 !important;
        height: auto !important;
    }
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-main-cart-content,
    .elementor-text-editor .lumii-config-wrapper .lumii-main-cart-content,
    .lumii-main-cart-content {
        padding: 0 15px !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    /* Hide the word "Panier" on mobile & tablet to make room */
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-cart-label span,
    .elementor-text-editor .lumii-config-wrapper .lumii-cart-label span,
    .lumii-config-wrapper .lumii-cart-label span {
        display: none !important;
    }
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-cart-icon,
    .elementor-text-editor .lumii-config-wrapper .lumii-cart-icon,
    .lumii-config-wrapper .lumii-cart-icon {
        width: 26px !important;
        height: 22px !important;
        margin-right: 0 !important;
    }
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-plus-circle-icon,
    .elementor-text-editor .lumii-config-wrapper .lumii-plus-circle-icon,
    .lumii-config-wrapper .lumii-plus-circle-icon {
        width: 20px !important;
        height: 20px !important;
        margin-left: 6px !important;
    }
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-price-amount,
    .elementor-text-editor .lumii-config-wrapper .lumii-price-amount,
    .lumii-config-wrapper .lumii-price-amount {
        font-size: 24px !important;
        line-height: 24px !important;
    }
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-price-period,
    .elementor-text-editor .lumii-config-wrapper .lumii-price-period,
    .lumii-config-wrapper .lumii-price-period {
        font-size: 11px !important;
        line-height: 14px !important;
    }
    /* Compact next button layout on mobile & tablet to fit inline */
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-next-btn,
    .elementor-text-editor .lumii-config-wrapper .lumii-sticky-next-btn,
    .lumii-sticky-next-btn {
        padding: 10px 18px !important;
        font-size: 14px !important;
        line-height: 14px !important;
        width: auto !important;
        height: 42px !important;
        border-radius: 40px !important;
        flex-shrink: 0 !important;
        box-sizing: border-box !important;
    }
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-next-btn .lumii-btn-chevron,
    .elementor-text-editor .lumii-config-wrapper .lumii-sticky-next-btn .lumii-btn-chevron,
    .lumii-sticky-next-btn .lumii-btn-chevron {
        width: 1.2em !important;
        height: 1.2em !important;
        margin-left: 8px !important;
    }
}

/* Layout Page B - Channels adjustments */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-filter-container,
.elementor-text-editor .lumii-config-wrapper .lumii-filter-container,
.lumii-config-wrapper .lumii-filter-container {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin-bottom: 30px !important;
    justify-content: center;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-filter-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-filter-btn,
.lumii-config-wrapper .lumii-filter-btn {
    background: #fff !important;
    border: 1px solid var(--lumii-input-border) !important;
    border-radius: 20px !important;
    padding: 8px 18px !important;
    cursor: pointer !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    transition: all 0.3s !important;
    color: var(--lumii-text-muted) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-filter-btn.active,
.elementor-text-editor .lumii-config-wrapper .lumii-filter-btn.active,
.lumii-config-wrapper .lumii-filter-btn.active {
    background: var(--lumii-accent) !important;
    border-color: var(--lumii-accent) !important;
    color: #fff !important;
    box-shadow: 0 4px 10px rgba(0, 178, 161, 0.15) !important;
}
@media (hover: hover) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-filter-btn:hover,
    .elementor-text-editor .lumii-config-wrapper .lumii-filter-btn:hover,
    .lumii-config-wrapper .lumii-filter-btn:hover {
        background: var(--lumii-accent) !important;
        border-color: var(--lumii-accent) !important;
        color: #fff !important;
        box-shadow: 0 4px 10px rgba(0, 178, 161, 0.15) !important;
    }
}.elementor-widget-shortcode .lumii-config-wrapper .lumii-channels-grid,
.elementor-text-editor .lumii-config-wrapper .lumii-channels-grid,
.lumii-config-wrapper .lumii-channels-grid {
    display: grid !important;
    grid-template-columns: repeat(7, 1fr) !important;
    gap: 15px !important;
    margin-bottom: 120px !important;
}

@media (max-width: 1199px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-channels-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-channels-grid,
    .lumii-config-wrapper .lumii-channels-grid {
        grid-template-columns: repeat(5, 1fr) !important;
    }
}

@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-channels-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-channels-grid,
    .lumii-config-wrapper .lumii-channels-grid {
        grid-template-columns: repeat(4, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-channels-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-channels-grid,
    .lumii-config-wrapper .lumii-channels-grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 480px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-channels-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-channels-grid,
    .lumii-config-wrapper .lumii-channels-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-skip-step-wrapper,
.elementor-text-editor .lumii-config-wrapper .lumii-skip-step-wrapper,
.lumii-config-wrapper .lumii-skip-step-wrapper {
    text-align: center !important;
    margin-bottom: 25px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-skip-step-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-skip-step-btn,
.lumii-config-wrapper .lumii-skip-step-btn {
    display: inline-block !important;
    background-color: #FAA21B !important;
    color: #0D2621 !important;
    border: 2px solid #FAA21B !important;
    padding: 16px 24px !important;
    border-radius: 50px !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    text-align: center !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: none !important;
    text-transform: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-skip-step-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-skip-step-btn:hover,
.lumii-config-wrapper .lumii-skip-step-btn:hover {
    background-color: transparent !important;
    color: #FAA21B !important;
    border-color: #FAA21B !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-card-wrapper,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-card-wrapper,
.lumii-config-wrapper .lumii-channel-card-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    margin-bottom: 10px !important;
    position: relative !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-card,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-card,
.lumii-config-wrapper .lumii-channel-card {
    background: #ffffff !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 4px !important;
    padding: 10px !important;
    text-align: center !important;
    cursor: pointer !important;
    position: relative !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: none !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-card:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-card:hover,
.lumii-config-wrapper .lumii-channel-card:hover {
    transform: scale(1.02) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-card.selected,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-card.selected,
.lumii-config-wrapper .lumii-channel-card.selected {
    border: 2px solid #0D2621 !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

/* Limit reached styling for channels selection */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-card.limit-reached,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-card.limit-reached,
.lumii-config-wrapper .lumii-channel-card.limit-reached {
    opacity: 0.35 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
}

/* Disable hover popup container showing up when limit reached */
.elementor-widget-shortcode .lumii-config-wrapper .limit-reached-wrapper:hover .lumii-channel-hover-overlay,
.elementor-text-editor .lumii-config-wrapper .limit-reached-wrapper:hover .lumii-channel-hover-overlay,
.lumii-config-wrapper .limit-reached-wrapper:hover .lumii-channel-hover-overlay {
    opacity: 0 !important;
    transform: translateY(100%) !important;
    pointer-events: none !important;
}

/* Keep the info '?' button active and fully clickable */
.elementor-widget-shortcode .lumii-config-wrapper .limit-reached-wrapper .lumii-channel-info-btn,
.elementor-text-editor .lumii-config-wrapper .limit-reached-wrapper .lumii-channel-info-btn,
.lumii-config-wrapper .limit-reached-wrapper .lumii-channel-info-btn {
    opacity: 1 !important;
    pointer-events: auto !important;
    cursor: pointer !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-logo-container,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-logo-container,
.lumii-config-wrapper .lumii-channel-logo-container {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-logo,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-logo,
.lumii-config-wrapper .lumii-channel-logo {
    max-width: 80% !important;
    max-height: 80% !important;
    object-fit: contain !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-fallback-logo,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-fallback-logo,
.lumii-config-wrapper .lumii-channel-fallback-logo {
    max-width: 80% !important;
    max-height: 80% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-hover-overlay,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-hover-overlay,
.lumii-config-wrapper .lumii-channel-hover-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-color: #0D2621 !important;
    color: #ffffff !important;
    opacity: 0 !important;
    transform: translateY(100%) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px !important;
    box-sizing: border-box !important;
    z-index: 5 !important;
    border-radius: 4px !important;
}

/* Hover trigger state on wrapper */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-card-wrapper:hover .lumii-channel-hover-overlay,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-card-wrapper:hover .lumii-channel-hover-overlay,
.lumii-config-wrapper .lumii-channel-card-wrapper:hover .lumii-channel-hover-overlay {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-hover-title,
.elementor-text-editor .lumii-config-wrapper .lumii-hover-title,
.lumii-config-wrapper .lumii-hover-title {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin: 0 0 4px 0 !important;
    line-height: 1.2 !important;
    text-transform: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-hover-desc,
.elementor-text-editor .lumii-config-wrapper .lumii-hover-desc,
.lumii-config-wrapper .lumii-hover-desc {
    font-family: 'Inter', sans-serif !important;
    font-size: 10px !important;
    color: #EDEDDE !important;
    margin: 0 0 10px 0 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    text-transform: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-hover-select-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-hover-select-btn,
.lumii-config-wrapper .lumii-hover-select-btn {
    background-color: transparent !important;
    color: #ffffff !important;
    border: 1px solid #ffffff !important;
    border-radius: 4px !important;
    padding: 4px 12px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    outline: none !important;
    text-transform: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-hover-select-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-hover-select-btn:hover,
.lumii-config-wrapper .lumii-hover-select-btn:hover {
    background-color: #ffffff !important;
    color: #0D2621 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-info-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-info-btn,
.lumii-config-wrapper .lumii-channel-info-btn {
    border: 1.5px solid #0D2621 !important;
    border-radius: 50% !important;
    width: 18px !important;
    height: 18px !important;
    line-height: 15px !important;
    text-align: center !important;
    margin-top: 8px !important;
    font-weight: 700 !important;
    font-size: 11px !important;
    color: #0D2621 !important;
    cursor: pointer !important;
    display: inline-block !important;
    transition: all 0.2s ease !important;
    font-family: 'Inter', sans-serif !important;
    box-sizing: border-box !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-info-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-info-btn:hover,
.lumii-config-wrapper .lumii-channel-info-btn:hover {
    background-color: #0D2621 !important;
    color: #ffffff !important;
}

/* Hide default channel title and price under logo */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-title,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-title,
.lumii-config-wrapper .lumii-channel-title,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-price,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-price,
.lumii-config-wrapper .lumii-channel-price {
    display: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-badge,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-badge,
.lumii-config-wrapper .lumii-channel-badge {
    position: absolute !important;
    top: -8px !important;
    right: -8px !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
    background: #0D2621 !important;
    border: 2px solid #ffffff !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    z-index: 10 !important;
    opacity: 0 !important;
    transform: scale(0.5) !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-card.selected ~ .lumii-channel-badge,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-card.selected ~ .lumii-channel-badge,
.lumii-config-wrapper .lumii-channel-card.selected ~ .lumii-channel-badge {
    opacity: 1 !important;
    transform: scale(1) !important;
}

/* Intent Gate Styles */
.elementor-widget-shortcode .lumii-config-wrapper #lumii-intent-gate,
.elementor-text-editor .lumii-config-wrapper #lumii-intent-gate,
.lumii-config-wrapper #lumii-intent-gate {
    text-align: center !important;
    max-width: 600px !important;
    margin: 10px auto !important;
    padding: 10px 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-intent-title,
.elementor-text-editor .lumii-config-wrapper .lumii-intent-title,
.lumii-config-wrapper .lumii-intent-title {
    border: none !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 18px !important;
    line-height: 27px !important;
    color: #0D2621 !important;
    margin-top: 0 !important;
    margin-bottom: 30px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-intent-buttons,
.elementor-text-editor .lumii-config-wrapper .lumii-intent-buttons,
.lumii-config-wrapper .lumii-intent-buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper #lumii-intent-now,
.elementor-text-editor .lumii-config-wrapper #lumii-intent-now,
.lumii-config-wrapper #lumii-intent-now,
.elementor-widget-shortcode .lumii-config-wrapper #lumii-intent-not-yet,
.elementor-text-editor .lumii-config-wrapper #lumii-intent-not-yet,
.lumii-config-wrapper #lumii-intent-not-yet {
    display: inline-block !important;
    width: 100% !important;
    max-width: 320px !important;
    background-color: #FAA21B !important;
    color: #0D2621 !important;
    border: 2px solid #FAA21B !important;
    padding: 16px 24px !important;
    border-radius: 50px !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    text-align: center !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: none !important;
    text-transform: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper #lumii-intent-now:hover,
.elementor-text-editor .lumii-config-wrapper #lumii-intent-now:hover,
.lumii-config-wrapper #lumii-intent-now:hover,
.elementor-widget-shortcode .lumii-config-wrapper #lumii-intent-not-yet:hover,
.elementor-text-editor .lumii-config-wrapper #lumii-intent-not-yet:hover,
.lumii-config-wrapper #lumii-intent-not-yet:hover {
    background-color: transparent !important;
    color: #FAA21B !important;
    border-color: #FAA21B !important;
}

/* Explicit order enforcement to keep Maintenant above Plus tard */
.elementor-widget-shortcode .lumii-config-wrapper #lumii-intent-now,
.elementor-text-editor .lumii-config-wrapper #lumii-intent-now,
.lumii-config-wrapper #lumii-intent-now {
    order: 1 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper #lumii-intent-not-yet,
.elementor-text-editor .lumii-config-wrapper #lumii-intent-not-yet,
.lumii-config-wrapper #lumii-intent-not-yet {
    order: 2 !important;
}

/* No channels fallback box */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-no-channels-box,
.elementor-text-editor .lumii-config-wrapper .lumii-no-channels-box,
.lumii-config-wrapper .lumii-no-channels-box {
    text-align: center !important;
    padding: 50px !important;
}

/* Page C - Summary Invoice & Form layout */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-container,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-container,
.lumii-config-wrapper .lumii-summary-container {
    display: grid !important;
    grid-template-columns: 1.2fr 0.8fr !important;
    gap: 40px !important;
    align-items: start !important;
    margin-bottom: 40px !important;
}

@media (max-width: 900px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-container,
    .elementor-text-editor .lumii-config-wrapper .lumii-summary-container,
    .lumii-config-wrapper .lumii-summary-container {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-box,
.elementor-text-editor .lumii-config-wrapper .lumii-box,
.lumii-config-wrapper .lumii-box {
    background: var(--lumii-card-bg) !important;
    border: 1px solid rgba(24, 70, 70, 0.1) !important;
    border-radius: 16px !important;
    padding: 30px !important;
    box-shadow: var(--lumii-card-shadow) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-box-title,
.elementor-text-editor .lumii-config-wrapper .lumii-box-title,
.lumii-config-wrapper .lumii-box-title {
    font-size: 20px !important;
    font-weight: 700 !important;
    margin-top: 0 !important;
    margin-bottom: 20px !important;
    padding-bottom: 15px !important;
    border-bottom: 2px solid var(--lumii-accent) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-form-group,
.elementor-text-editor .lumii-config-wrapper .lumii-form-group,
.lumii-config-wrapper .lumii-form-group {
    margin-bottom: 20px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-form-group label,
.elementor-text-editor .lumii-config-wrapper .lumii-form-group label,
.lumii-config-wrapper .lumii-form-group label {
    display: block !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    margin-bottom: 8px !important;
    color: var(--lumii-summary-label-color) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-form-group label .lumii-required-mark,
.elementor-text-editor .lumii-config-wrapper .lumii-form-group label .lumii-required-mark,
.lumii-config-wrapper .lumii-form-group label .lumii-required-mark {
    color: var(--lumii-summary-required-color) !important;
    margin-left: 2px !important;
    font-weight: 500 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-form-control,
.elementor-text-editor .lumii-config-wrapper .lumii-form-control,
.lumii-config-wrapper .lumii-form-control {
    width: 100% !important;
    border: 1px solid var(--lumii-summary-input-border) !important;
    border-radius: 4px !important;
    padding: 16px 24px !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    color: var(--lumii-summary-input-text) !important;
    background-color: var(--lumii-input-bg) !important;
    transition: all 0.24s ease-in-out !important;
    box-sizing: border-box !important;
}

.elementor-widget-shortcode .lumii-config-wrapper input.lumii-form-control,
.elementor-text-editor .lumii-config-wrapper input.lumii-form-control,
.lumii-config-wrapper input.lumii-form-control {
    height: 54px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-form-control:focus,
.elementor-text-editor .lumii-config-wrapper .lumii-form-control:focus,
.lumii-config-wrapper .lumii-form-control:focus {
    outline: none !important;
    border-color: var(--lumii-accent) !important;
    background-color: #fff !important;
    box-shadow: 0 0 0 3px var(--lumii-input-focus) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper textarea.lumii-form-control,
.elementor-text-editor .lumii-config-wrapper textarea.lumii-form-control,
.lumii-config-wrapper textarea.lumii-form-control {
    resize: vertical !important;
    min-height: 192px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-submit-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-submit-btn,
.lumii-config-wrapper .lumii-submit-btn {
    background: var(--lumii-accent) !important;
    color: white !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 14px 20px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.3s !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    box-shadow: 0 4px 12px rgba(0, 178, 161, 0.2) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-submit-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-submit-btn:hover,
.lumii-config-wrapper .lumii-submit-btn:hover {
    background: var(--lumii-primary) !important;
    box-shadow: 0 6px 15px rgba(24, 70, 70, 0.25) !important;
    transform: translateY(-2px) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-submit-btn:disabled,
.elementor-text-editor .lumii-config-wrapper .lumii-submit-btn:disabled,
.lumii-config-wrapper .lumii-submit-btn:disabled {
    opacity: 0.7 !important;
    cursor: not-allowed !important;
    transform: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-invoice-list,
.elementor-text-editor .lumii-config-wrapper .lumii-invoice-list,
.lumii-config-wrapper .lumii-invoice-list {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-invoice-item,
.elementor-text-editor .lumii-config-wrapper .lumii-invoice-item,
.lumii-config-wrapper .lumii-invoice-item {
    display: flex !important;
    justify-content: space-between !important;
    padding: 12px 0 !important;
    border-bottom: 1px dashed var(--lumii-input-border) !important;
    font-size: 14px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-invoice-item.plan-row,
.elementor-text-editor .lumii-config-wrapper .lumii-invoice-item.plan-row,
.lumii-config-wrapper .lumii-invoice-item.plan-row {
    font-weight: 700 !important;
    font-size: 15px !important;
    border-bottom: 1px solid var(--lumii-input-border) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-invoice-item.subtotal-row,
.elementor-text-editor .lumii-config-wrapper .lumii-invoice-item.subtotal-row,
.lumii-config-wrapper .lumii-invoice-item.subtotal-row {
    font-weight: 600 !important;
    border-bottom: none !important;
    padding-top: 15px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-invoice-item.total-row,
.elementor-text-editor .lumii-config-wrapper .lumii-invoice-item.total-row,
.lumii-config-wrapper .lumii-invoice-item.total-row {
    font-weight: 800 !important;
    font-size: 18px !important;
    color: var(--lumii-accent) !important;
    border-top: 2px solid var(--lumii-accent) !important;
    border-bottom: none !important;
    padding-top: 20px !important;
    margin-top: 10px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-channels-list-collapsed,
.elementor-text-editor .lumii-config-wrapper .lumii-channels-list-collapsed,
.lumii-config-wrapper .lumii-channels-list-collapsed {
    padding-left: 15px !important;
    font-size: 12px !important;
    color: var(--lumii-text-muted) !important;
    max-height: 100px !important;
    overflow-y: auto !important;
    margin-top: 5px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-spinner,
.elementor-text-editor .lumii-config-wrapper .lumii-spinner,
.lumii-config-wrapper .lumii-spinner {
    border: 2px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 50% !important;
    border-top: 2px solid #fff !important;
    width: 16px !important;
    height: 16px !important;
    animation: lumii-spin 0.8s linear infinite !important;
    display: none !important;
}

@keyframes lumii-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-alert,
.elementor-text-editor .lumii-config-wrapper .lumii-alert,
.lumii-config-wrapper .lumii-alert {
    padding: 15px !important;
    border-radius: 8px !important;
    margin-bottom: 20px !important;
    font-size: 15px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-alert-success,
.elementor-text-editor .lumii-config-wrapper .lumii-alert-success,
.lumii-config-wrapper .lumii-alert-success {
    background-color: var(--lumii-success-light) !important;
    color: #065f46 !important;
    border: 1px solid #a7f3d0 !important;
    white-space: pre-line !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-alert-error,
.elementor-text-editor .lumii-config-wrapper .lumii-alert-error,
.lumii-config-wrapper .lumii-alert-error {
    background-color: #fee2e2 !important;
    color: #991b1b !important;
    border: 1px solid #fecaca !important;
}

/* Custom Grid Headers above phone selection and plans cards */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-grid-header,
.elementor-text-editor .lumii-config-wrapper .lumii-grid-header,
.lumii-config-wrapper .lumii-grid-header {
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    line-height: 22.5px !important;
    color: #0D2621 !important;
    margin: 0 0 15px 0 !important;
    text-transform: none !important;
}

/* Premium pricing text label styling under channel logos */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-channel-price-label,
.elementor-text-editor .lumii-config-wrapper .lumii-channel-price-label,
.lumii-config-wrapper .lumii-channel-price-label {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #0D2621 !important;
    margin-top: 10px !important;
    text-align: center !important;
}

/* Popup Information Modal Styling */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-overlay,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-overlay,
.lumii-config-wrapper .lumii-modal-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background-color: rgba(0, 0, 0, 0.6) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 999999 !important;
    backdrop-filter: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease, visibility 0.3s ease !important;
    visibility: hidden !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-overlay.active,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-overlay.active,
.lumii-config-wrapper .lumii-modal-overlay.active {
    opacity: 1 !important;
    pointer-events: auto !important;
    visibility: visible !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-container,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-container,
.lumii-config-wrapper .lumii-modal-container {
    background-color: #ffffff !important;
    border-radius: 0px !important;
    width: 90% !important;
    max-width: 550px !important;
    position: relative !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2) !important;
    padding: 30px !important;
    box-sizing: border-box !important;
    animation: lumiiModalScaleIn 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-close-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-close-btn,
.lumii-config-wrapper .lumii-modal-close-btn {
    position: absolute !important;
    top: 15px !important;
    right: 15px !important;
    background: transparent !important;
    border: none !important;
    font-size: 28px !important;
    line-height: 1 !important;
    color: #0D2621 !important;
    cursor: pointer !important;
    transition: color 0.2s ease !important;
    padding: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-close-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-close-btn:hover,
.lumii-config-wrapper .lumii-modal-close-btn:hover {
    color: #FAA21B !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-content,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-content,
.lumii-config-wrapper .lumii-modal-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-header,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-header,
.lumii-config-wrapper .lumii-modal-header {
    margin-bottom: 20px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-logo,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-logo,
.lumii-config-wrapper .lumii-modal-logo {
    max-height: 90px !important;
    max-width: 100% !important;
    object-fit: contain !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-fallback-logo svg,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-fallback-logo svg,
.lumii-config-wrapper .lumii-modal-fallback-logo svg {
    width: 64px !important;
    height: 64px !important;
    stroke: #0D2621 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-title,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-title,
.lumii-config-wrapper .lumii-modal-title {
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    font-size: 24px !important;
    line-height: 32px !important;
    color: #0D2621 !important;
    margin: 0 0 15px 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-description,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-description,
.lumii-config-wrapper .lumii-modal-description {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: #4A5568 !important;
    margin: 0 !important;
}

body.lumii-modal-open {
    overflow: hidden !important;
}

@keyframes lumiiModalScaleIn {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Page C: Redesigned Summary and Form Styles */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-container-title-wrap,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-container-title-wrap,
.lumii-config-wrapper .lumii-summary-container-title-wrap {
    width: 100% !important;
    margin-bottom: 20px !important;
    padding: 0 10px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-main-title,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-main-title,
.lumii-config-wrapper .lumii-summary-main-title {
    font-family: 'Inter', sans-serif !important;
    font-size: 32px !important;
    font-weight: 400 !important;
    color: #0D2621 !important;
    margin: 0 !important;
    text-transform: none !important;
}

/* Wrapper for the entire summary step gets the light grey page background, like the client site */
.elementor-widget-shortcode .lumii-config-wrapper.lumii-step-summary,
.elementor-text-editor .lumii-config-wrapper.lumii-step-summary,
.lumii-config-wrapper.lumii-step-summary {
    background-color: var(--lumii-summary-bg) !important;
    padding: 40px 15px !important;
    border-radius: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-container,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-container,
.lumii-config-wrapper .lumii-summary-container {
    display: grid !important;
    grid-template-columns: 1.2fr 0.8fr !important;
    gap: 50px !important;
    align-items: start !important;
}

@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-container,
    .elementor-text-editor .lumii-config-wrapper .lumii-summary-container,
    .lumii-config-wrapper .lumii-summary-container {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
}

/* Form Column Styling */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-form-column,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-form-column,
.lumii-config-wrapper .lumii-summary-form-column {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* Success confirmation block (replaces the form after a successful submission) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-confirmation-block,
.elementor-text-editor .lumii-config-wrapper .lumii-confirmation-block,
.lumii-config-wrapper .lumii-confirmation-block {
    font-family: 'Inter', sans-serif !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-confirmation-title,
.elementor-text-editor .lumii-config-wrapper .lumii-confirmation-title,
.lumii-config-wrapper .lumii-confirmation-title {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 22px !important;
    line-height: 33px !important;
    color: #0D2621 !important;
    margin: 0 0 20px 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-confirmation-block p,
.elementor-text-editor .lumii-config-wrapper .lumii-confirmation-block p,
.lumii-config-wrapper .lumii-confirmation-block p {
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
    font-size: 17px !important;
    line-height: 25.5px !important;
    color: #0D2621 !important;
    margin: 0 0 20px 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-form-row,
.elementor-text-editor .lumii-config-wrapper .lumii-form-row,
.lumii-config-wrapper .lumii-form-row {
    display: flex !important;
    gap: 20px !important;
    width: 100% !important;
    margin-bottom: 20px !important;
}

@media (max-width: 576px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-form-row,
    .elementor-text-editor .lumii-config-wrapper .lumii-form-row,
    .lumii-config-wrapper .lumii-form-row {
        flex-direction: column !important;
        gap: 20px !important;
        margin-bottom: 0 !important;
    }
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-form-row .lumii-form-group,
.elementor-text-editor .lumii-config-wrapper .lumii-form-row .lumii-form-group,
.lumii-config-wrapper .lumii-form-row .lumii-form-group {
    flex: 1 !important;
    margin-bottom: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-form-group.full-width,
.elementor-text-editor .lumii-config-wrapper .lumii-form-group.full-width,
.lumii-config-wrapper .lumii-form-group.full-width {
    width: 100% !important;
    margin-bottom: 20px !important;
}

/* Custom Checkbox Alignment */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-checkbox-label,
.elementor-text-editor .lumii-config-wrapper .lumii-checkbox-label,
.lumii-config-wrapper .lumii-checkbox-label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    cursor: pointer !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    color: var(--lumii-summary-label-color) !important;
    user-select: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-checkbox-label input[type="checkbox"],
.elementor-text-editor .lumii-config-wrapper .lumii-checkbox-label input[type="checkbox"],
.lumii-config-wrapper .lumii-checkbox-label input[type="checkbox"] {
    width: 20px !important;
    height: 20px !important;
    border: 1px solid var(--lumii-summary-checkbox-border) !important;
    border-radius: 2px !important;
    cursor: pointer !important;
    accent-color: var(--lumii-primary) !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-form-section-title,
.elementor-text-editor .lumii-config-wrapper .lumii-form-section-title,
.lumii-config-wrapper .lumii-form-section-title {
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    line-height: 21px !important;
    color: var(--lumii-summary-label-color) !important;
    margin: 0 0 20px 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-checkbox-grid,
.elementor-text-editor .lumii-config-wrapper .lumii-checkbox-grid,
.lumii-config-wrapper .lumii-checkbox-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-checkbox-grid-row,
.elementor-text-editor .lumii-config-wrapper .lumii-checkbox-grid-row,
.lumii-config-wrapper .lumii-checkbox-grid-row {
    display: flex !important;
    gap: 25px !important;
    flex-wrap: wrap !important;
}

/* Right Column Summary Card Widget Styling */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-card,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-card,
.lumii-config-wrapper .lumii-summary-card {
    background-color: #ffffff !important;
    border-radius: 0px !important;
    border: 1px solid #E2E8F0 !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -2px rgba(0, 0, 0, 0.02) !important;
    overflow: hidden !important;
    width: 100% !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-card-header,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-card-header,
.lumii-config-wrapper .lumii-summary-card-header {
    background-color: #0D2621 !important;
    padding: 20px 24px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    color: #ffffff !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-cart-icon,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-cart-icon,
.lumii-config-wrapper .lumii-summary-cart-icon {
    width: 24px !important;
    height: 24px !important;
    stroke: #ffffff !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-card-body,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-card-body,
.lumii-config-wrapper .lumii-summary-card-body {
    padding: 24px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-contract-wrap,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-contract-wrap,
.lumii-config-wrapper .lumii-summary-contract-wrap {
    margin-bottom: 25px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-contract-wrap label,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-contract-wrap label,
.lumii-config-wrapper .lumii-summary-contract-wrap label {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--lumii-text-muted) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-select-wrapper,
.elementor-text-editor .lumii-config-wrapper .lumii-select-wrapper,
.lumii-config-wrapper .lumii-select-wrapper {
    position: relative !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-select-wrapper select.lumii-form-control,
.elementor-text-editor .lumii-config-wrapper .lumii-select-wrapper select.lumii-form-control,
.lumii-config-wrapper .lumii-select-wrapper select.lumii-form-control {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    height: 54px !important;
    padding-right: 44px !important;
    cursor: pointer !important;
    background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.292893 0.292893C0.683417 -0.097631 1.31658 -0.097631 1.70711 0.292893L5 3.58579L8.29289 0.292893C8.68342 -0.0976311 9.31658 -0.0976311 9.70711 0.292893C10.0976 0.683417 10.0976 1.31658 9.70711 1.70711L5.70711 5.70711C5.31658 6.09763 4.68342 6.09763 4.29289 5.70711L0.292893 1.70711C-0.0976311 1.31658 -0.0976311 0.683418 0.292893 0.292893Z' fill='rgba(17, 35, 55, 0.65)'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 20px center !important;
    background-size: 10px 6px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-sections-list,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-sections-list,
.lumii-config-wrapper .lumii-summary-sections-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    margin-bottom: 25px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-sec,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-sec,
.lumii-config-wrapper .lumii-summary-sec {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-sec-title,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-sec-title,
.lumii-config-wrapper .lumii-summary-sec-title {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #4A5568 !important;
    text-transform: uppercase !important;
    margin: 0 0 5px 0 !important;
    border-bottom: 1px solid #EDF2F7 !important;
    padding-bottom: 6px !important;
    letter-spacing: 0.5px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-sec-title svg,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-sec-title svg,
.lumii-config-wrapper .lumii-summary-sec-title svg {
    width: 16px !important;
    height: 16px !important;
    stroke: #FAA21B !important; /* Orange branding color for icons */
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-sec-item,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-sec-item,
.lumii-config-wrapper .lumii-summary-sec-item {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    color: #2D3748 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-sec-item.bold,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-sec-item.bold,
.lumii-config-wrapper .lumii-summary-sec-item.bold {
    font-weight: 700 !important;
    color: #1A202C !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-sec-item .chevron-icon,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-sec-item .chevron-icon,
.lumii-config-wrapper .lumii-summary-sec-item .chevron-icon {
    width: 1.8em !important;
    height: 1.8em !important;
    margin-right: 6px !important;
    stroke: #718096 !important;
    transition: transform 0.2s ease !important;
    vertical-align: middle !important;
    display: inline-block !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-sec-item.collapsed .chevron-icon,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-sec-item.collapsed .chevron-icon,
.lumii-config-wrapper .lumii-summary-sec-item.collapsed .chevron-icon {
    transform: rotate(-90deg) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-collapsed-list,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-collapsed-list,
.lumii-config-wrapper .lumii-summary-collapsed-list {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    color: #718096 !important;
    padding-left: 18px !important;
    margin: 5px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

/* Bottom 3-Column Footer Grid */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-footer-grid,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-footer-grid,
.lumii-config-wrapper .lumii-summary-footer-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px !important;
    margin-bottom: 20px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-footer-col,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-footer-col,
.lumii-config-wrapper .lumii-summary-footer-col {
    background-color: #F7FAFC !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 6px !important;
    padding: 12px 6px !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    box-sizing: border-box !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-footer-col.economies-col,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-footer-col.economies-col,
.lumii-config-wrapper .lumii-summary-footer-col.economies-col {
    background-color: #FDF4E7 !important;
    border-color: #F8E3C6 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-footer-col .col-label,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-footer-col .col-label,
.lumii-config-wrapper .lumii-summary-footer-col .col-label {
    font-family: 'Inter', sans-serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #718096 !important;
    margin-bottom: 6px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-footer-col.economies-col .col-label,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-footer-col.economies-col .col-label,
.lumii-config-wrapper .lumii-summary-footer-col.economies-col .col-label {
    color: #C27803 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-footer-col .col-value,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-footer-col .col-value,
.lumii-config-wrapper .lumii-summary-footer-col .col-value {
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #0D2621 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-footer-col .col-value sup,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-footer-col .col-value sup,
.lumii-config-wrapper .lumii-summary-footer-col .col-value sup {
    font-size: 10px !important;
    top: -0.45em !important;
    font-weight: 700 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-note,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-note,
.lumii-config-wrapper .lumii-summary-note {
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    line-height: 1.5 !important;
    color: #718096 !important;
    margin: 0 0 25px 0 !important;
    font-style: italic !important;
    text-align: center !important;
}

/* Green Submit Button inside Card */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-submit-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-submit-btn,
.lumii-config-wrapper .lumii-summary-submit-btn {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background-color: #0d2621 !important;
    color: #ffffff !important;
    border: 2px solid #0d2621 !important;
    border-radius: 30px !important;
    padding: 15px 30px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-sizing: border-box !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-submit-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-submit-btn:hover,
.lumii-config-wrapper .lumii-summary-submit-btn:hover {
    background-color: #FAA21B !important;
    border-color: #FAA21B !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-submit-btn .chevron-right-icon,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-submit-btn .chevron-right-icon,
.lumii-config-wrapper .lumii-summary-submit-btn .chevron-right-icon {
    width: 1.2em !important;
    height: 1.2em !important;
    stroke: currentColor !important;
    vertical-align: middle !important;
    display: inline-block !important;
}

/* Quantity selector controls and actions layout */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row-actions-container,
.elementor-text-editor .lumii-config-wrapper .lumii-option-row-actions-container,
.lumii-config-wrapper .lumii-option-row-actions-container {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row-buttons,
.elementor-text-editor .lumii-config-wrapper .lumii-option-row-buttons,
.lumii-config-wrapper .lumii-option-row-buttons {
    display: flex !important;
    gap: 8px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-qty-selector,
.elementor-text-editor .lumii-config-wrapper .lumii-qty-selector,
.lumii-config-wrapper .lumii-qty-selector {
    display: flex !important;
    align-items: center !important;
    border: 2px solid #0D2621 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
    height: 42px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 0px !important; /* Sharp corners */
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-qty-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-qty-btn,
.lumii-config-wrapper .lumii-qty-btn {
    width: 36px !important;
    height: 100% !important;
    background: transparent !important;
    border: none !important;
    color: #0D2621 !important;
    font-size: 18px !important;
    font-weight: bold !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    transition: background-color 0.2s ease !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-qty-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-qty-btn:hover,
.lumii-config-wrapper .lumii-qty-btn:hover {
    background-color: #EDEDDE !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-qty-input,
.elementor-text-editor .lumii-config-wrapper .lumii-qty-input,
.lumii-config-wrapper .lumii-qty-input {
    width: 32px !important;
    height: 100% !important;
    border: none !important;
    border-left: 1px solid #0D2621 !important;
    border-right: 1px solid #0D2621 !important;
    text-align: center !important;
    color: #0D2621 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    padding: 0 !important;
    background: transparent !important;
    margin: 0 !important;
    -moz-appearance: textfield !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-qty-input::-webkit-outer-spin-button,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-qty-input::-webkit-inner-spin-button,
.elementor-text-editor .lumii-config-wrapper .lumii-qty-input::-webkit-outer-spin-button,
.elementor-text-editor .lumii-config-wrapper .lumii-qty-input::-webkit-inner-spin-button,
.lumii-config-wrapper .lumii-qty-input::-webkit-outer-spin-button,
.lumii-config-wrapper .lumii-qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .split-btn,
.elementor-text-editor .lumii-config-wrapper .split-btn,
.lumii-config-wrapper .split-btn {
    border-radius: 0px !important; /* Sharp corners */
    border: 2px solid #0D2621 !important;
    color: #0D2621 !important;
    background: transparent !important;
    padding: 10px 14px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .split-btn:hover,
.elementor-text-editor .lumii-config-wrapper .split-btn:hover,
.lumii-config-wrapper .split-btn:hover {
    background-color: #EDEDDE !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .split-btn.active,
.elementor-text-editor .lumii-config-wrapper .split-btn.active,
.lumii-config-wrapper .split-btn.active {
    background-color: #0D2621 !important;
    color: #ffffff !important;
    border-color: #0D2621 !important;
}

/* Inline Channel Logos List */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-relationship-channels-wrap,
.elementor-text-editor .lumii-config-wrapper .lumii-relationship-channels-wrap,
.lumii-config-wrapper .lumii-relationship-channels-wrap {
    margin-top: 30px !important;
    margin-bottom: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    border-radius: 0px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-relationship-channels-row,
.elementor-text-editor .lumii-config-wrapper .lumii-relationship-channels-row,
.lumii-config-wrapper .lumii-relationship-channels-row {
    background: #ffffff !important;
    border: 1px solid #E5E7EB !important;
    padding: 40px !important;
    border-radius: 0px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 24px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-relationship-channels-label,
.elementor-text-editor .lumii-config-wrapper .lumii-relationship-channels-label,
.lumii-config-wrapper .lumii-relationship-channels-label {
    font-family: 'Inter', serif !important;
    font-size: 20px !important;
    line-height: 24px !important;
    font-weight: 400 !important;
    color: #0D2621 !important;
    text-transform: none !important;
    min-width: auto !important;
    white-space: nowrap !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-relationship-channels-list,
.elementor-text-editor .lumii-config-wrapper .lumii-relationship-channels-list,
.lumii-config-wrapper .lumii-relationship-channels-list {
    display: flex !important;
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
    gap: 0.25rem !important;
    justify-content: flex-end !important;
    align-items: center !important;
    flex: 1 !important;
}

/* Custom Channel Logo Box */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-inline-channel-box,
.elementor-text-editor .lumii-config-wrapper .lumii-inline-channel-box,
.lumii-config-wrapper .lumii-inline-channel-box {
    width: 4.375rem !important;
    height: 3.125rem !important;
    border: 1px solid #eee !important;
    padding: 0.3125rem 0.4375rem !important;
    text-align: center !important;
    background: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-inline-channel-box img,
.elementor-text-editor .lumii-config-wrapper .lumii-inline-channel-box img,
.lumii-config-wrapper .lumii-inline-channel-box img {
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 !important;
}

/* Dots Box (with borders matches image 2) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-inline-channel-dots,
.elementor-text-editor .lumii-config-wrapper .lumii-inline-channel-dots,
.lumii-config-wrapper .lumii-inline-channel-dots {
    width: 4.375rem !important;
    height: 3.125rem !important;
    border: 1px solid #eee !important;
    padding: 0.3125rem 0.4375rem !important;
    text-align: center !important;
    background: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #0D2621 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
    user-select: none !important;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
}

/* Underlined Voir Plus Trigger (Inter 300 15px #0D2621) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-voir-plus-trigger,
.elementor-text-editor .lumii-config-wrapper .lumii-voir-plus-trigger,
.lumii-config-wrapper .lumii-voir-plus-trigger {
    background: transparent !important;
    border: none !important;
    color: #0D2621 !important;
    text-decoration: underline !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    padding: 0 !important;
    margin: 0 0 0 10px !important;
    cursor: pointer !important;
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    transition: opacity 0.2s ease !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-voir-plus-trigger:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-voir-plus-trigger:hover,
.lumii-config-wrapper .lumii-voir-plus-trigger:hover {
    background: transparent !important;
    color: #0D2621 !important;
    text-decoration: underline !important;
    opacity: 0.7 !important;
}

/* Modals overlays styling (remove backdrop blur) */
.elementor-widget-shortcode .lumii-config-wrapper .RelationshipChannelModal,
.elementor-text-editor .lumii-config-wrapper .RelationshipChannelModal,
.lumii-config-wrapper .RelationshipChannelModal {
    backdrop-filter: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .RelationshipChannelModal .lumii-modal-container,
.elementor-text-editor .lumii-config-wrapper .RelationshipChannelModal .lumii-modal-container,
.lumii-config-wrapper .RelationshipChannelModal .lumii-modal-container {
    max-width: 842px !important;
    max-height: 80vh !important;
    overflow-y: auto !important;
    border-radius: 0px !important;
    padding: 60px 45px !important;
    background: #ffffff !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .RelationshipChannelModal .lumii-modal-content,
.elementor-text-editor .lumii-config-wrapper .RelationshipChannelModal .lumii-modal-content,
.lumii-config-wrapper .RelationshipChannelModal .lumii-modal-content {
    align-items: stretch !important;
    text-align: left !important;
    display: block !important;
}

/* Channel Popups Grid: 8 columns of 5rem with 1rem gap */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-channels-grid,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-channels-grid,
.lumii-config-wrapper .lumii-modal-channels-grid {
    display: grid !important;
    grid-template-columns: repeat(8, 5rem) !important;
    gap: 1rem !important;
    width: 100% !important;
    margin-top: 0 !important;
    justify-content: center !important;
}

/* Channel Popup Item: 5rem width/height with no hover border change */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-channel-item,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-channel-item,
.lumii-config-wrapper .lumii-modal-channel-item {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    border: 1px solid #E5E7EB !important;
    padding: 8px !important;
    width: 5rem !important;
    height: 5rem !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-channel-item:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-channel-item:hover,
.lumii-config-wrapper .lumii-modal-channel-item:hover {
    border-color: #E5E7EB !important; /* no hover border change */
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-channel-item img,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-channel-item img,
.lumii-config-wrapper .lumii-modal-channel-item img {
    max-height: 45px !important;
    max-width: 100% !important;
    object-fit: contain !important;
    margin-bottom: 0 !important;
    background: transparent !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-channel-item span,
.elementor-text-editor .lumii-config-wrapper .lumii-modal-channel-item span,
.lumii-config-wrapper .lumii-modal-channel-item span {
    display: none !important;
}

/* Responsiveness media queries for actions container and channel lists */
@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-relationship-channels-row,
    .elementor-text-editor .lumii-config-wrapper .lumii-relationship-channels-row,
    .lumii-config-wrapper .lumii-relationship-channels-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 16px !important;
        padding: 40px 20px !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-relationship-channels-label,
    .elementor-text-editor .lumii-config-wrapper .lumii-relationship-channels-label,
    .lumii-config-wrapper .lumii-relationship-channels-label {
        white-space: normal !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-relationship-channels-list,
    .elementor-text-editor .lumii-config-wrapper .lumii-relationship-channels-list,
    .lumii-config-wrapper .lumii-relationship-channels-list {
        justify-content: flex-start !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-channels-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-modal-channels-grid,
    .lumii-config-wrapper .lumii-modal-channels-grid {
        grid-template-columns: repeat(auto-fill, 5rem) !important;
    }
}

@media (max-width: 576px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-modal-channels-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-modal-channels-grid,
    .lumii-config-wrapper .lumii-modal-channels-grid {
        grid-template-columns: repeat(auto-fill, 5rem) !important;
    }
}

@media (max-width: 600px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row-actions-container,
    .elementor-text-editor .lumii-config-wrapper .lumii-option-row-actions-container,
    .lumii-config-wrapper .lumii-option-row-actions-container {
        width: 100% !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }
    
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row-buttons,
    .elementor-text-editor .lumii-config-wrapper .lumii-option-row-buttons,
    .lumii-config-wrapper .lumii-option-row-buttons {
        width: 100% !important;
    }
    
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-option-row-buttons button,
    .elementor-text-editor .lumii-config-wrapper .lumii-option-row-buttons button,
    .lumii-config-wrapper .lumii-option-row-buttons button {
        flex: 1 !important;
    }
}

/* Service Plan Cards Layout & Typography realignments (image_824302.png specifications) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-card,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-card,
.lumii-config-wrapper .lumii-plan-card {
    background: #F8F8F2 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-icons,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-icons,
.lumii-config-wrapper .lumii-plan-icons {
    display: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-title,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-title,
.lumii-config-wrapper .lumii-plan-title {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 32px !important;
    line-height: 32px !important;
    color: #0D2621 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features p,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features li,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features h4,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features h5,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features strong,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features p,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features li,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features h4,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features h5,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features strong,
.lumii-config-wrapper .lumii-plan-features,
.lumii-config-wrapper .lumii-plan-features p,
.lumii-config-wrapper .lumii-plan-features li,
.lumii-config-wrapper .lumii-plan-features h4,
.lumii-config-wrapper .lumii-plan-features h5,
.lumii-config-wrapper .lumii-plan-features strong {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    line-height: 22px !important;
    color: #0D2621 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-features li::before,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-features li::before,
.lumii-config-wrapper .lumii-plan-features li::before {
    color: #0D2621 !important;
    font-size: 15px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-price,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-price,
.lumii-config-wrapper .lumii-plan-price {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 34px !important;
    color: #0D2621 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-price .price-suffix,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-price .price-suffix,
.lumii-config-wrapper .lumii-plan-price .price-suffix {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    color: #0D2621 !important;
    vertical-align: super !important;
    position: relative !important;
    top: -0.5em !important;
    margin-left: 2px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-select-plan-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-select-plan-btn,
.lumii-config-wrapper .lumii-select-plan-btn {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    line-height: 16px !important;
    color: #1F5454 !important;
    border: 1px solid #1F5454 !important;
    background: transparent !important;
    border-radius: 100px !important;
    padding: 12px 24px !important;
    transition: all 0.3s ease !important;
    order: 4 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-card.active .lumii-select-plan-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-card.active .lumii-select-plan-btn,
.lumii-config-wrapper .lumii-plan-card.active .lumii-select-plan-btn,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-select-plan-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-select-plan-btn:hover,
.lumii-select-plan-btn:hover {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    line-height: 16px !important;
    color: #EDEDDE !important;
    background-color: #1F5454 !important;
    border: 1px solid #1F5454 !important;
    box-shadow: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-note-bottom,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-note-bottom,
.lumii-config-wrapper .lumii-plan-note-bottom {
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
    font-size: 11px !important;
    line-height: 16px !important;
    color: #0D2621 !important;
    text-align: center !important;
    margin: 0 !important;
    width: 100% !important;
    display: block !important;
    order: 5 !important;
}

/* Card Layout Spacing & Gap Updates */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-card,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-card,
.lumii-config-wrapper .lumii-plan-card {
    padding: 40px 24px !important;
    gap: 1rem !important;
}

/* Card Main Icon/Image dynamic mapping container */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-image-wrap,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-image-wrap,
.lumii-config-wrapper .lumii-plan-image-wrap {
    max-width: 150px !important;
    width: 100% !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-icon-img,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-icon-img,
.lumii-config-wrapper .lumii-plan-icon-img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
}

/* Configurator Sidebar Sections Spacing & Layout Alignment */
.lumii-sidebar-section-wrap {
    margin-bottom: 20px !important;
}

/* Heading with Icon Wrapper */
.lumii-sidebar-heading-wrap {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin-bottom: 20px !important;
}

/* Sidebar Section Icons */
.lumii-sidebar-section-icon {
    width: 28px !important;
    height: 28px !important;
    object-fit: contain !important;
}

/* Trigger Link Feature ("Ce forfait est-il pour moi ?" and "En savoir plus ?") */
.lumii-sidebar-trigger-wrap,
.lumii-sidebar-addon-trigger-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    cursor: pointer !important;
    margin-top: 10px !important;
    transition: opacity 0.2s ease !important;
    text-decoration: none !important;
}

.lumii-sidebar-trigger-wrap:hover,
.lumii-sidebar-addon-trigger-wrap:hover {
    opacity: 0.8 !important;
}

.lumii-sidebar-trigger-text {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    color: #0D2621 !important;
    text-decoration: none !important;
}

.lumii-sidebar-addon-trigger-text {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 11px !important;
    line-height: 28px !important;
    color: #0D2621 !important;
    text-decoration: none !important;
}

.lumii-sidebar-trigger-icon,
.lumii-sidebar-addon-trigger-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.lumii-sidebar-trigger-icon svg,
.lumii-sidebar-addon-trigger-icon svg {
    width: 16px !important;
    height: 16px !important;
    stroke: #0D2621 !important;
    fill: none !important;
}

/* Optional Addons Heading */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sidebar-addons-title,
.elementor-text-editor .lumii-config-wrapper .lumii-sidebar-addons-title,
.lumii-config-wrapper .lumii-sidebar-addons-title {
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
    font-size: 17px !important;
    line-height: 25px !important;
    color: #0D2621 !important;
    margin: 25px 0 15px 0 !important;
    text-align: left !important;
}

.lumii-sidebar-addon-item-wrap {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    margin-bottom: 20px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.lumii-sidebar-addon-item-wrap:last-child {
    margin-bottom: 0 !important;
}

/* Optional Addons Price Line */
.lumii-sidebar-addon-price-row {
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    line-height: 18px !important;
    color: #0D2621 !important;
    text-align: center !important;
    margin-top: 4px !important;
}

.lumii-sidebar-addon-trigger-wrap {
    margin-top: 4px !important;
}

/* Sidebar Information Detail Popup Modal */
#lumii-sidebar-info-modal .lumii-modal-container {
    padding: 60px 45px !important;
    max-width: 500px !important;
    width: 90% !important;
    background: #ffffff !important;
    border-radius: 0px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15) !important;
    position: relative !important;
    box-sizing: border-box !important;
}

#lumii-sidebar-info-modal .lumii-modal-body-layout {
    display: flex !important;
    gap: 20px !important;
    align-items: flex-start !important;
}

#lumii-sidebar-info-modal .lumii-modal-image-col {
    flex-shrink: 0 !important;
}

#lumii-sidebar-info-modal .lumii-modal-sidebar-img {
    width: 55px !important;
    height: auto !important;
    object-fit: contain !important;
}

#lumii-sidebar-info-modal .lumii-modal-text-col {
    flex-grow: 1 !important;
}

#lumii-sidebar-info-modal .lumii-modal-title {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 22px !important;
    line-height: 33px !important;
    color: #0D2621 !important;
    margin: 0 0 12px 0 !important;
    text-align: left !important;
}

#lumii-sidebar-info-modal .lumii-modal-description,
#lumii-sidebar-info-modal .lumii-modal-description p,
#lumii-sidebar-info-modal .lumii-modal-description li {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    line-height: 22px !important;
    color: #0D2621 !important;
    margin: 0 !important;
    text-align: left !important;
}

#lumii-sidebar-info-modal .lumii-modal-description ul {
    list-style: disc !important;
    padding-left: 20px !important;
    margin: 10px 0 !important;
}

#lumii-sidebar-info-modal .lumii-modal-description li {
    margin-bottom: 6px !important;
}

/* Global triggers underline removal override */
.lumii-sidebar-modal-trigger,
.lumii-sidebar-modal-trigger *,
.lumii-sidebar-trigger-wrap,
.lumii-sidebar-trigger-wrap *,
.lumii-sidebar-addon-trigger-wrap,
.lumii-sidebar-addon-trigger-wrap * {
    text-decoration: none !important;
}

/* Multi-Option Modal Layout (Condition A) */
#lumii-sidebar-info-modal.lumii-modal-multi .lumii-modal-container {
    max-width: 800px !important;
}
#lumii-sidebar-info-modal .lumii-modal-multi-options-layout {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    gap: 40px !important;
    width: 100% !important;
    padding: 20px 0 !important;
}
@media (max-width: 600px) {
    #lumii-sidebar-info-modal .lumii-modal-multi-options-layout {
        flex-direction: column !important;
        gap: 20px !important;
    }
}
#lumii-sidebar-info-modal .lumii-modal-option-column {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
    flex: 1 !important;
}
#lumii-sidebar-info-modal .lumii-modal-column-icon {
    width: 50px !important;
    height: 50px !important;
    margin-bottom: 20px !important;
    object-fit: contain !important;
}
#lumii-sidebar-info-modal .lumii-modal-column-title {
    font-family: 'Inter', sans-serif !important;
    font-size: 22px !important;
    font-weight: 500 !important;
    line-height: 33px !important;
    color: #0D2621 !important;
    margin: 0 !important;
    text-align: left !important;
}
/* Intro + per-column copy: without these the multi-option pop-up rendered
   nothing but icons and speed names, which answered none of the question
   "Ce forfait est-il pour moi ?" (client feedback 2026-08-22). */
#lumii-sidebar-info-modal .lumii-modal-multi-intro {
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 26px !important;
    color: #0D2621 !important;
    text-align: left !important;
    margin: 0 0 28px 0 !important;
}
#lumii-sidebar-info-modal .lumii-modal-column-desc {
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    color: #0D2621 !important;
    text-align: left !important;
    margin-top: 10px !important;
}
#lumii-sidebar-info-modal .lumii-modal-column-desc p {
    margin: 0 0 8px 0 !important;
}
#lumii-sidebar-info-modal .lumii-modal-column-desc p:last-child {
    margin-bottom: 0 !important;
}

/* Single-Option Modal Layout (Condition B) */
.lumii-modal-single-option-layout {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
    width: 100% !important;
}
.lumii-modal-single-icon {
    width: 50px !important;
    height: 50px !important;
    margin-bottom: 20px !important;
    object-fit: contain !important;
}
.lumii-modal-single-option-layout .lumii-modal-title {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 22px !important;
    line-height: 33px !important;
    color: #0D2621 !important;
    margin: 0 0 12px 0 !important;
    text-align: left !important;
}
.lumii-modal-single-option-layout .lumii-modal-description {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    line-height: 22px !important;
    color: #0D2621 !important;
    margin: 0 !important;
    text-align: left !important;
    width: 100% !important;
}

/* LOCATION GRATUITE Section */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-free-rentals-section,
.elementor-text-editor .lumii-config-wrapper .lumii-free-rentals-section,
.lumii-config-wrapper .lumii-free-rentals-section {
    width: 100% !important;
    max-width: 1400px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 30px !important;
    margin-bottom: 40px !important;
    box-sizing: border-box !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-free-rental-header-badge,
.elementor-text-editor .lumii-config-wrapper .lumii-free-rental-header-badge,
.lumii-config-wrapper .lumii-free-rental-header-badge {
    display: inline-block !important;
    border: 1px solid #00B2A1 !important;
    padding: 1rem 1.5rem !important;
    font-weight: 400 !important;
    font-family: "Inter", serif !important;
    font-size: 1rem !important;
    margin-bottom: 1.5625rem !important;
    border-radius: 0.25rem !important;
    background: transparent !important;
    color: #0D2621 !important;
    text-transform: uppercase !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-free-rental-cards-list,
.elementor-text-editor .lumii-config-wrapper .lumii-free-rental-cards-list,
.lumii-config-wrapper .lumii-free-rental-cards-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    width: 100% !important;
}

/* Card Row Item */
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item,
.elementor-text-editor .lumii-config-wrapper .card-row-item,
.lumii-config-wrapper .card-row-item {
    width: 100% !important;
    background: #F8F8F2 !important;
    padding: 2rem !important;
    font-weight: 400 !important;
    display: flex !important;
    align-items: center !important;
    gap: 1.5rem !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item-left,
.elementor-text-editor .lumii-config-wrapper .card-row-item-left,
.lumii-config-wrapper .card-row-item-left {
    display: flex !important;
    align-items: center !important;
    gap: 1rem !important;
    flex: 1 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item__image,
.elementor-text-editor .lumii-config-wrapper .card-row-item__image,
.lumii-config-wrapper .card-row-item__image {
    width: 100% !important;
    min-width: 14.375rem !important;
    max-width: 14.375rem !important;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item__image img,
.elementor-text-editor .lumii-config-wrapper .card-row-item__image img,
.lumii-config-wrapper .card-row-item__image img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item-info,
.elementor-text-editor .lumii-config-wrapper .card-row-item-info,
.lumii-config-wrapper .card-row-item-info {
    flex: 1 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item-title,
.elementor-text-editor .lumii-config-wrapper .card-row-item-title,
.lumii-config-wrapper .card-row-item-title {
    font-family: 'Inter', serif !important;
    font-size: 32px !important;
    line-height: 32px !important;
    font-weight: 400 !important;
    color: #0D2621 !important;
    margin: 0 0 10px 0 !important;
    text-transform: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item-desc,
.elementor-text-editor .lumii-config-wrapper .card-row-item-desc,
.lumii-config-wrapper .card-row-item-desc {
    font-family: 'Inter', serif !important;
    font-size: 15px !important;
    line-height: 22.5px !important;
    font-weight: 400 !important;
    color: #0D2621 !important;
    margin: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item-desc p,
.elementor-text-editor .lumii-config-wrapper .card-row-item-desc p,
.lumii-config-wrapper .card-row-item-desc p {
    font-family: 'Inter', serif !important;
    font-size: 15px !important;
    line-height: 22.5px !important;
    font-weight: 400 !important;
    color: #0D2621 !important;
    margin: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item-right,
.elementor-text-editor .lumii-config-wrapper .card-row-item-right,
.lumii-config-wrapper .card-row-item-right {
    display: flex !important;
    align-items: center !important;
    gap: 1.5rem !important;
    flex-shrink: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item-price-wrap,
.elementor-text-editor .lumii-config-wrapper .card-row-item-price-wrap,
.lumii-config-wrapper .card-row-item-price-wrap {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item-price-label,
.elementor-text-editor .lumii-config-wrapper .card-row-item-price-label,
.lumii-config-wrapper .card-row-item-price-label {
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
    font-size: 15px !important;
    line-height: 22px !important;
    color: #0D2621 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item-price,
.elementor-text-editor .lumii-config-wrapper .card-row-item-price,
.lumii-config-wrapper .card-row-item-price {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 34px !important;
    line-height: 1.1 !important;
    color: #0D2621 !important;
    position: relative !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item-price .super-cents,
.elementor-text-editor .lumii-config-wrapper .card-row-item-price .super-cents,
.lumii-config-wrapper .card-row-item-price .super-cents {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    line-height: 18px !important;
    color: #0D2621 !important;
    vertical-align: super !important;
    margin-left: 2px !important;
}

/* Inclus Button styling (#BUTTON_1) */
.elementor-widget-shortcode .lumii-config-wrapper #BUTTON_1,
.elementor-text-editor .lumii-config-wrapper #BUTTON_1,
.lumii-config-wrapper #BUTTON_1,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-included-btn,
.elementor-text-editor .lumii-config-wrapper .lumii-included-btn,
.lumii-config-wrapper .lumii-included-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 52px !important;
    width: 190px !important;
    background: rgb(31, 84, 84) !important;
    border: 2px solid rgb(13, 38, 33) !important;
    border-radius: 60px !important;
    color: rgb(237, 237, 222) !important;
    font-family: 'Inter', serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 16px !important;
    padding: 16px 24px !important;
    transition: 0.24s ease-out !important;
    cursor: pointer !important;
    position: relative !important;
    text-transform: none !important;
    box-shadow: none !important;
    outline: none !important;
    text-decoration: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper #BUTTON_1:hover,
.elementor-text-editor .lumii-config-wrapper #BUTTON_1:hover,
.lumii-config-wrapper #BUTTON_1:hover,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-included-btn:hover,
.elementor-text-editor .lumii-config-wrapper .lumii-included-btn:hover,
.lumii-config-wrapper .lumii-included-btn:hover {
    background-color: #FAA21B !important;
    color: #0D2621 !important;
    border-color: #FAA21B !important;
}

.elementor-widget-shortcode .lumii-config-wrapper #I_2,
.elementor-text-editor .lumii-config-wrapper #I_2,
.lumii-config-wrapper #I_2,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-included-btn i,
.elementor-text-editor .lumii-config-wrapper .lumii-included-btn i,
.lumii-config-wrapper .lumii-included-btn i {
    display: inline-block !important;
    height: 16px !important;
    width: 16px !important;
    margin-left: 8px !important;
    color: inherit !important;
    font-size: 16px !important;
    line-height: 16px !important;
}

/* Responsiveness for LOCATION GRATUITE section */
@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item,
    .elementor-text-editor .lumii-config-wrapper .card-row-item,
    .lumii-config-wrapper .card-row-item {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 1.5rem !important;
        padding: 1.5rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item-left,
    .elementor-text-editor .lumii-config-wrapper .card-row-item-left,
    .lumii-config-wrapper .card-row-item-left {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 1rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item__image,
    .elementor-text-editor .lumii-config-wrapper .card-row-item__image,
    .lumii-config-wrapper .card-row-item__image {
        max-width: 100% !important;
        min-width: auto !important;
        width: 12rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item-right,
    .elementor-text-editor .lumii-config-wrapper .card-row-item-right,
    .lumii-config-wrapper .card-row-item-right {
        flex-direction: column !important;
        align-items: center !important;
        gap: 1rem !important;
        width: 100% !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item-price-wrap,
    .elementor-text-editor .lumii-config-wrapper .card-row-item-price-wrap,
    .lumii-config-wrapper .card-row-item-price-wrap {
        align-items: center !important;
    }
    }
}

/* Encore plus de chaînes Section */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-more-channels-header-block,
.elementor-text-editor .lumii-config-wrapper .lumii-more-channels-header-block,
.lumii-config-wrapper .lumii-more-channels-header-block {
    width: 100% !important;
    text-align: center !important;
    margin-top: 50px !important;
    margin-bottom: 30px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-more-channels-title,
.elementor-text-editor .lumii-config-wrapper .lumii-more-channels-title,
.lumii-config-wrapper .lumii-more-channels-title {
    font-family: 'Inter', sans-serif !important;
    font-size: 32px !important;
    line-height: 32px !important;
    font-weight: 400 !important;
    color: #0D2621 !important;
    margin: 0 0 20px 0 !important;
    text-transform: none !important;
    text-align: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-more-channels-badge,
.elementor-text-editor .lumii-config-wrapper .lumii-more-channels-badge,
.lumii-config-wrapper .lumii-more-channels-badge {
    display: inline-block !important;
    border: 1px solid #00B2A1 !important;
    padding: 1rem 1.5rem !important;
    font-weight: 400 !important;
    font-family: "Inter", serif !important;
    font-size: 1rem !important;
    margin-bottom: 1.5625rem !important;
    border-radius: 0.25rem !important;
    background: transparent !important;
    color: #0D2621 !important;
    text-transform: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-more-channels-cards-list,
.elementor-text-editor .lumii-config-wrapper .lumii-more-channels-cards-list,
.lumii-config-wrapper .lumii-more-channels-cards-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 1400px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* TV Card row items */
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv .card-row-item__content,
.elementor-text-editor .lumii-config-wrapper .card-row-item--tv .card-row-item__content,
.lumii-config-wrapper .card-row-item--tv .card-row-item__content {
    max-width: 33% !important;
    display: flex !important;
    align-items: center !important;
    gap: 1rem !important;
    flex: 1 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv .card-row-item__image,
.elementor-text-editor .lumii-config-wrapper .card-row-item--tv .card-row-item__image,
.lumii-config-wrapper .card-row-item--tv .card-row-item__image {
    min-width: 9.375rem !important;
    max-width: 9.375rem !important;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv .card-row-item__image img,
.elementor-text-editor .lumii-config-wrapper .card-row-item--tv .card-row-item__image img,
.lumii-config-wrapper .card-row-item--tv .card-row-item__image img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv .card-row-item-title,
.elementor-text-editor .lumii-config-wrapper .card-row-item--tv .card-row-item-title,
.lumii-config-wrapper .card-row-item--tv .card-row-item-title {
    font-family: 'Inter', serif !important;
    font-size: 22px !important;
    line-height: 33px !important;
    font-weight: 500 !important;
    color: #0D2621 !important;
    margin: 0 0 8px 0 !important;
    text-transform: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv .card-row-item-desc,
.elementor-text-editor .lumii-config-wrapper .card-row-item--tv .card-row-item-desc,
.lumii-config-wrapper .card-row-item--tv .card-row-item-desc {
    font-family: 'Inter', serif !important;
    font-size: 15px !important;
    line-height: 22px !important;
    font-weight: 400 !important;
    color: #0D2621 !important;
    margin: 0 !important;
}

/* TV Channel Logos List */
.elementor-widget-shortcode .lumii-config-wrapper .tv-channels-list,
.elementor-text-editor .lumii-config-wrapper .tv-channels-list,
.lumii-config-wrapper .tv-channels-list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.25rem !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex: 1 !important;
    margin: 0 1.5rem !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .tv-channels-list__item,
.elementor-text-editor .lumii-config-wrapper .tv-channels-list__item,
.lumii-config-wrapper .tv-channels-list__item {
    position: relative !important;
    width: 4.375rem !important;
    height: 3.125rem !important;
    border: 1px solid #eee !important;
    padding: 0.3125rem 0.4375rem !important;
    text-align: center !important;
    background: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .tv-channels-list__item img,
.elementor-text-editor .lumii-config-wrapper .tv-channels-list__item img,
.lumii-config-wrapper .tv-channels-list__item img {
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    display: block !important;
}

/* Container 3: Action wrapper */
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action,
.elementor-text-editor .lumii-config-wrapper .card-row-item__action,
.lumii-config-wrapper .card-row-item__action {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 1.5rem !important;
    flex-shrink: 0 !important;
}

/* Secondary green outline trigger button */
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action .lumii-addon-trigger,
.elementor-text-editor .lumii-config-wrapper .card-row-item__action .lumii-addon-trigger,
.lumii-config-wrapper .card-row-item__action .lumii-addon-trigger,
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action--equipment .lumii-addon-trigger,
.elementor-text-editor .lumii-config-wrapper .card-row-item__action--equipment .lumii-addon-trigger,
.lumii-config-wrapper .card-row-item__action--equipment .lumii-addon-trigger,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line .lumii-router-trigger,
.elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line .lumii-router-trigger,
.lumii-config-wrapper .lumii-equipment-action-line .lumii-router-trigger {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 52px !important;
    width: 190px !important;
    background: transparent !important;
    border: 0.125rem solid rgb(31, 84, 84) !important;
    border-radius: 60px !important;
    color: rgb(31, 84, 84) !important;
    font-family: 'Inter', serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 16px !important;
    padding: 16px 24px !important;
    transition: 0.24s ease-out !important;
    cursor: pointer !important;
    position: relative !important;
    text-transform: none !important;
    box-shadow: none !important;
    outline: none !important;
    text-decoration: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action .lumii-addon-trigger.active,
.elementor-text-editor .lumii-config-wrapper .card-row-item__action .lumii-addon-trigger.active,
.lumii-config-wrapper .card-row-item__action .lumii-addon-trigger.active,
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action--equipment .lumii-addon-trigger.active,
.elementor-text-editor .lumii-config-wrapper .card-row-item__action--equipment .lumii-addon-trigger.active,
.lumii-config-wrapper .card-row-item__action--equipment .lumii-addon-trigger.active,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line .lumii-router-trigger.active,
.elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line .lumii-router-trigger.active,
.lumii-config-wrapper .lumii-equipment-action-line .lumii-router-trigger.active {
    background-color: rgb(31, 84, 84) !important;
    color: #ffffff !important;
    border-color: rgb(31, 84, 84) !important;
}
@media (hover: hover) {
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action .lumii-addon-trigger:hover,
    .elementor-text-editor .lumii-config-wrapper .card-row-item__action .lumii-addon-trigger:hover,
    .lumii-config-wrapper .card-row-item__action .lumii-addon-trigger:hover,
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action--equipment .lumii-addon-trigger:hover,
    .elementor-text-editor .lumii-config-wrapper .card-row-item__action--equipment .lumii-addon-trigger:hover,
    .lumii-config-wrapper .card-row-item__action--equipment .lumii-addon-trigger:hover,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line .lumii-router-trigger:hover,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line .lumii-router-trigger:hover,
    .lumii-config-wrapper .lumii-equipment-action-line .lumii-router-trigger:hover {
        background-color: rgb(31, 84, 84) !important;
        color: #ffffff !important;
        border-color: rgb(31, 84, 84) !important;
    }
}

/* Responsiveness for Encore plus de chaînes */
@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--tv,
    .lumii-config-wrapper .card-row-item--tv {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 1.5rem !important;
        padding: 2rem 1.5rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv .card-row-item__content,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--tv .card-row-item__content,
    .lumii-config-wrapper .card-row-item--tv .card-row-item__content {
        max-width: 100% !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 1rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv .card-row-item__image,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--tv .card-row-item__image,
    .lumii-config-wrapper .card-row-item--tv .card-row-item__image {
        max-width: 100% !important;
        min-width: auto !important;
        width: 10rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .tv-channels-list,
    .elementor-text-editor .lumii-config-wrapper .tv-channels-list,
    .lumii-config-wrapper .tv-channels-list {
        justify-content: center !important;
        margin: 1rem 0 !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv .card-row-item__action,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--tv .card-row-item__action,
    .lumii-config-wrapper .card-row-item--tv .card-row-item__action {
        flex-direction: column !important;
        align-items: center !important;
        gap: 1rem !important;
        width: 100% !important;
    }
    }
}

/* Options Section */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-options-header-block,
.elementor-text-editor .lumii-config-wrapper .lumii-options-header-block,
.lumii-config-wrapper .lumii-options-header-block {
    width: 100% !important;
    text-align: center !important;
    margin-top: 50px !important;
    margin-bottom: 30px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-options-title,
.elementor-text-editor .lumii-config-wrapper .lumii-options-title,
.lumii-config-wrapper .lumii-options-title {
    font-family: 'Inter', sans-serif !important;
    font-size: 32px !important;
    line-height: 32px !important;
    font-weight: 400 !important;
    color: #0D2621 !important;
    margin: 0 0 20px 0 !important;
    text-transform: none !important;
    text-align: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-options-badge,
.elementor-text-editor .lumii-config-wrapper .lumii-options-badge,
.lumii-config-wrapper .lumii-options-badge {
    display: inline-block !important;
    border: 1px solid #00B2A1 !important;
    padding: 1rem 1.5rem !important;
    font-weight: 400 !important;
    font-family: "Inter", serif !important;
    font-size: 1rem !important;
    margin-bottom: 1.5625rem !important;
    border-radius: 0.25rem !important;
    background: transparent !important;
    color: #0D2621 !important;
    text-transform: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-options-cards-list,
.elementor-text-editor .lumii-config-wrapper .lumii-options-cards-list,
.lumii-config-wrapper .lumii-options-cards-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 1400px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Card options content layout */
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__content,
.elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__content,
.lumii-config-wrapper .card-row-item--options .card-row-item__content {
    flex: 1 !important;
    max-width: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 1rem !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__image,
.elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__image,
.lumii-config-wrapper .card-row-item--options .card-row-item__image {
    min-width: 9.375rem !important;
    max-width: 9.375rem !important;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__image img,
.elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__image img,
.lumii-config-wrapper .card-row-item--options .card-row-item__image img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item-title,
.elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item-title,
.lumii-config-wrapper .card-row-item--options .card-row-item-title {
    font-family: 'Inter', serif !important;
    font-size: 22px !important;
    line-height: 33px !important;
    font-weight: 500 !important;
    color: #0D2621 !important;
    margin: 0 0 8px 0 !important;
    text-transform: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item-desc,
.elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item-desc,
.lumii-config-wrapper .card-row-item--options .card-row-item-desc {
    font-family: 'Inter', serif !important;
    font-size: 15px !important;
    line-height: 22px !important;
    font-weight: 400 !important;
    color: #0D2621 !important;
    margin: 0 !important;
}

/* Container 2: Action Wrapper (Qty Selector + Price + Button) */
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action,
.elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action,
.lumii-config-wrapper .card-row-item--options .card-row-item__action {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 2.5rem !important;
    flex-shrink: 0 !important;
}

/* Quantity Selector Specific Override for Options Section */
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-selector,
.elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-selector,
.lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-selector {
    display: flex !important;
    align-items: center !important;
    border: none !important;
    background: transparent !important;
    height: auto !important;
    overflow: visible !important;
    gap: 1.2rem !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-btn,
.elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-btn,
.lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-btn {
    width: auto !important;
    height: auto !important;
    background: transparent !important;
    border: none !important;
    color: #0D2621 !important;
    font-size: 28px !important;
    font-weight: 300 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 5px !important;
    transition: color 0.15s ease !important;
    box-shadow: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-btn:hover,
.elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-btn:hover,
.lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-btn:hover {
    background-color: transparent !important;
    color: rgb(31, 84, 84) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-input,
.elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-input,
.lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-input {
    width: 50px !important;
    height: 50px !important;
    border: 1px solid #CBD5E1 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    text-align: center !important;
    color: #0D2621 !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    padding: 0 !important;
    box-shadow: none !important;
}

/* Responsiveness for Options cards */
@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options,
    .lumii-config-wrapper .card-row-item--options {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 1.5rem !important;
        padding: 2rem 1.5rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__content,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__content,
    .lumii-config-wrapper .card-row-item--options .card-row-item__content {
        max-width: 100% !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 1rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__image,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__image,
    .lumii-config-wrapper .card-row-item--options .card-row-item__image {
        max-width: 100% !important;
        min-width: auto !important;
        width: 10rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action,
    .lumii-config-wrapper .card-row-item--options .card-row-item__action {
        flex-direction: column !important;
        align-items: center !important;
        gap: 1rem !important;
        width: 100% !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-selector,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-selector,
    .lumii-config-wrapper .card-row-item--options .card-row-item__action .lumii-qty-selector {
        margin: 1rem 0 !important;
    }
}

/* Equipment, Router & Options Section Action Column */
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--equipment .card-row-item__action--equipment,
.elementor-text-editor .lumii-config-wrapper .card-row-item--equipment .card-row-item__action--equipment,
.lumii-config-wrapper .card-row-item--equipment .card-row-item__action--equipment,
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--router .card-row-item__action--equipment,
.elementor-text-editor .lumii-config-wrapper .card-row-item--router .card-row-item__action--equipment,
.lumii-config-wrapper .card-row-item--router .card-row-item__action--equipment,
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action--equipment,
.elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action--equipment,
.lumii-config-wrapper .card-row-item--options .card-row-item__action--equipment {
    display: flex !important;
    flex-direction: column !important;
    gap: 1.5rem !important;
    align-items: flex-end !important;
    flex-shrink: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line,
.elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line,
.lumii-config-wrapper .lumii-equipment-action-line {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 2.5rem !important;
    justify-content: flex-end !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-price-block,
.elementor-text-editor .lumii-config-wrapper .lumii-equipment-price-block,
.lumii-config-wrapper .lumii-equipment-price-block {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    min-width: 100px !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-label,
.elementor-text-editor .lumii-config-wrapper .lumii-equipment-label,
.lumii-config-wrapper .lumii-equipment-label {
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    color: rgb(156, 163, 175) !important;
    font-weight: 500 !important;
    margin-bottom: 2px !important;
    letter-spacing: 0.05em !important;
}

/* Ensure font sizing matches options */
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--equipment .card-row-item-title,
.elementor-text-editor .lumii-config-wrapper .card-row-item--equipment .card-row-item-title,
.lumii-config-wrapper .card-row-item--equipment .card-row-item-title,
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--router .card-row-item-title,
.elementor-text-editor .lumii-config-wrapper .card-row-item--router .card-row-item-title,
.lumii-config-wrapper .card-row-item--router .card-row-item-title {
    font-family: 'Inter', serif !important;
    font-size: 22px !important;
    line-height: 33px !important;
    font-weight: 500 !important;
    color: #0D2621 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--equipment .card-row-item-desc,
.elementor-text-editor .lumii-config-wrapper .card-row-item--equipment .card-row-item-desc,
.lumii-config-wrapper .card-row-item--equipment .card-row-item-desc,
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--router .card-row-item-desc,
.elementor-text-editor .lumii-config-wrapper .card-row-item--router .card-row-item-desc,
.lumii-config-wrapper .card-row-item--router .card-row-item-desc {
    font-family: 'Inter', serif !important;
    font-size: 15px !important;
    line-height: 22px !important;
    font-weight: 400 !important;
    color: #0D2621 !important;
}

/* Responsiveness overrides for equipment actions */
@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action--equipment,
    .elementor-text-editor .lumii-config-wrapper .card-row-item__action--equipment,
    .lumii-config-wrapper .card-row-item__action--equipment {
        width: 100% !important;
        align-items: stretch !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line,
    .lumii-config-wrapper .lumii-equipment-action-line {
        flex-direction: column !important;
        align-items: center !important;
        gap: 1rem !important;
        width: 100% !important;
        border-bottom: 1px solid #E5E7EB !important;
        padding-bottom: 1.5rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:last-child,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:last-child,
    .lumii-config-wrapper .lumii-equipment-action-line:last-child {
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-price-block,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-price-block,
    .lumii-config-wrapper .lumii-equipment-price-block {
        align-items: center !important;
        min-width: auto !important;
    }
}

/* Disclaimer text styles and spacing */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-section-disclaimer,
.elementor-text-editor .lumii-config-wrapper .lumii-section-disclaimer,
.lumii-config-wrapper .lumii-section-disclaimer {
    width: 100% !important;
    text-align: center !important;
    margin-top: 1.5rem !important;
    margin-bottom: 5rem !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 10px !important;
    line-height: 18px !important;
    color: #0D2621 !important;
}

/* Highly specific override for GigaSpire router buttons */
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--router .lumii-router-trigger,
.elementor-text-editor .lumii-config-wrapper .card-row-item--router .lumii-router-trigger,
.lumii-config-wrapper .card-row-item--router .lumii-router-trigger {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 52px !important;
    width: 190px !important;
    background: transparent !important;
    border: 0.125rem solid rgb(31, 84, 84) !important;
    border-radius: 60px !important;
    color: rgb(31, 84, 84) !important;
    font-family: 'Inter', serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 16px !important;
    padding: 16px 24px !important;
    transition: 0.24s ease-out !important;
    cursor: pointer !important;
    position: relative !important;
    text-transform: none !important;
    box-shadow: none !important;
    outline: none !important;
    text-decoration: none !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--router .lumii-router-trigger:hover,
.elementor-text-editor .lumii-config-wrapper .card-row-item--router .lumii-router-trigger:hover,
.lumii-config-wrapper .card-row-item--router .lumii-router-trigger:hover,
.elementor-widget-shortcode .lumii-config-wrapper .card-row-item--router .lumii-router-trigger.active,
.elementor-text-editor .lumii-config-wrapper .card-row-item--router .lumii-router-trigger.active,
.lumii-config-wrapper .card-row-item--router .lumii-router-trigger.active {
    background-color: rgb(31, 84, 84) !important;
    color: #ffffff !important;
    border-color: rgb(31, 84, 84) !important;
}

/* =============================================================
   RESPONSIVE DESIGN SYSTEM OVERRIDES (Mobile & Tablet)
   Counteracts Elementor layouts to ensure perfect fit
   ============================================================= */

@media (max-width: 991px) {
    /* 1. Main Configurator Rows & Sidebars Stack */
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-configurator-row,
    .elementor-text-editor .lumii-config-wrapper .lumii-configurator-row,
    .lumii-config-wrapper .lumii-configurator-row {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 24px !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-sidebar-wrapper,
    .elementor-text-editor .lumii-config-wrapper .lumii-phone-sidebar-wrapper,
    .lumii-config-wrapper .lumii-phone-sidebar-wrapper,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid-wrapper,
    .elementor-text-editor .lumii-config-wrapper .lumii-plans-grid-wrapper,
    .lumii-config-wrapper .lumii-plans-grid-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* 2. Sidebar Buttons Row Stacking (100% width vertical stack to match client site) */
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-options-list,
    .elementor-text-editor .lumii-config-wrapper .lumii-phone-options-list,
    .lumii-config-wrapper .lumii-phone-options-list {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
        width: 100% !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-options-list .lumii-sidebar-addon-item-wrap,
    .elementor-text-editor .lumii-config-wrapper .lumii-phone-options-list .lumii-sidebar-addon-item-wrap,
    .lumii-config-wrapper .lumii-phone-options-list .lumii-sidebar-addon-item-wrap {
        width: 100% !important;
        align-items: stretch !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-item,
    .elementor-text-editor .lumii-config-wrapper .lumii-phone-item,
    .lumii-config-wrapper .lumii-phone-item,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-internet-item,
    .elementor-text-editor .lumii-config-wrapper .lumii-internet-item,
    .lumii-config-wrapper .lumii-internet-item,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-phone-addon,
    .elementor-text-editor .lumii-config-wrapper .lumii-phone-addon,
    .lumii-config-wrapper .lumii-phone-addon {
        width: 100% !important;
        flex: none !important;
        padding: 14px 20px !important;
        font-size: 16px !important;
        display: inline-flex !important;
        justify-content: center !important;
        text-align: center !important;
        box-sizing: border-box !important;
    }

    /* 3. Plans Grid Tablet/Mobile Card columns */
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-plans-grid,
    .lumii-config-wrapper .lumii-plans-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
        width: 100% !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-card,
    .elementor-text-editor .lumii-config-wrapper .lumii-plan-card,
    .lumii-config-wrapper .lumii-plan-card {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* 4. Included TV Cards Row Stack */
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv .card-row-item__content,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--tv .card-row-item__content,
    .lumii-config-wrapper .card-row-item--tv .card-row-item__content {
        max-width: 100% !important;
        width: 100% !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
    }

    /* Relationship Channels Row adjustments for mobile/tablet */
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-relationship-channels-row,
    .elementor-text-editor .lumii-config-wrapper .lumii-relationship-channels-row,
    .lumii-config-wrapper .lumii-relationship-channels-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 24px 16px !important;
        gap: 12px !important;
        border-radius: 12px !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-relationship-channels-label,
    .elementor-text-editor .lumii-config-wrapper .lumii-relationship-channels-label,
    .lumii-config-wrapper .lumii-relationship-channels-label {
        font-family: 'Inter', sans-serif !important;
        font-size: 17px !important;
        line-height: 24px !important;
        font-weight: 500 !important;
        color: #0D2621 !important;
        white-space: normal !important;
        margin-bottom: 4px !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-relationship-channels-list,
    .elementor-text-editor .lumii-config-wrapper .lumii-relationship-channels-list,
    .lumii-config-wrapper .lumii-relationship-channels-list {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-voir-plus-trigger,
    .elementor-text-editor .lumii-config-wrapper .lumii-voir-plus-trigger,
    .lumii-config-wrapper .lumii-voir-plus-trigger {
        display: inline-flex !important;
        align-items: center !important;
        height: 3.125rem !important;
        margin-left: 8px !important;
        margin-top: 0 !important;
        font-family: 'Inter', sans-serif !important;
        font-weight: 300 !important;
        font-size: 15px !important;
        color: #0D2621 !important;
        text-decoration: underline !important;
    }

    /* 5. Force Row Actions Layout Stack/Side-by-Side based on Qty selector presence */
    
    /* Default side-by-side layout for TV and Location Gratuite (no qty selector) */
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item-right,
    .elementor-text-editor .lumii-config-wrapper .card-row-item-right,
    .lumii-config-wrapper .card-row-item-right,
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv .card-row-item__action,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--tv .card-row-item__action,
    .lumii-config-wrapper .card-row-item--tv .card-row-item__action {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
        gap: 12px !important;
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

    /* Options Cards Actions: Price & Qty on line 1, Button full-width on line 2 (ONLY if Qty Selector is present) */
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector),
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector),
    .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
        gap: 12px 0px !important;
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .card-row-item-price-wrap,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .card-row-item-price-wrap,
    .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .card-row-item-price-wrap {
        order: 1 !important;
        width: auto !important;
        flex: 1 !important;
        display: flex !important;
        justify-content: flex-start !important;
        align-items: center !important;
        text-align: left !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-qty-selector,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-qty-selector,
    .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-qty-selector {
        order: 2 !important;
        width: auto !important;
        flex: 0 0 auto !important;
        display: flex !important;
        justify-content: flex-end !important;
        margin: 0 !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-addon-trigger,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-addon-trigger,
    .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-addon-trigger {
        order: 3 !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 1 1 100% !important;
        margin-top: 12px !important;
        height: 48px !important;
    }

    /* Equipment/Router Action lines with qty selector: Label/Price & Qty on line 1, Button full-width on line 2 */
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector),
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector),
    .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
        gap: 12px 0px !important;
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-equipment-price-block,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-equipment-price-block,
    .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-equipment-price-block {
        order: 1 !important;
        width: auto !important;
        flex: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        text-align: left !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-qty-selector,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-qty-selector,
    .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-qty-selector {
        order: 2 !important;
        width: auto !important;
        flex: 0 0 auto !important;
        display: flex !important;
        justify-content: flex-end !important;
        margin: 0 !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-addon-trigger,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-addon-trigger,
    .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-addon-trigger,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-router-trigger,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-router-trigger,
    .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-router-trigger {
        order: 3 !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 1 1 100% !important;
        margin-top: 12px !important;
        height: 48px !important;
    }

    /* Fallback if equipment action line has no quantity selector (runs inline side-by-side) */
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)),
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)),
    .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)) {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
        gap: 12px !important;
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }
}

@media (max-width: 768px) {
    /* Plans Grid Mobile Stacking (1 column on mobile) */
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid,
    .elementor-text-editor .lumii-config-wrapper .lumii-plans-grid,
    .lumii-config-wrapper .lumii-plans-grid {
        grid-template-columns: 1fr !important;
    }

    /* 6. Card Row Item Details Stack centering */
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item,
    .elementor-text-editor .lumii-config-wrapper .card-row-item,
    .lumii-config-wrapper .card-row-item {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 1.5rem !important;
        padding: 2rem 1rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item-left,
    .elementor-text-editor .lumii-config-wrapper .card-row-item-left,
    .lumii-config-wrapper .card-row-item-left {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
    }

    /* 7. Action Button Sizing adjustments for narrow screens when side-by-side (no qty selector) */
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item:not(:has(.lumii-qty-selector)) .lumii-addon-trigger,
    .elementor-text-editor .lumii-config-wrapper .card-row-item:not(:has(.lumii-qty-selector)) .lumii-addon-trigger,
    .lumii-config-wrapper .card-row-item:not(:has(.lumii-qty-selector)) .lumii-addon-trigger,
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item:not(:has(.lumii-qty-selector)) .lumii-router-trigger,
    .elementor-text-editor .lumii-config-wrapper .card-row-item:not(:has(.lumii-qty-selector)) .lumii-router-trigger,
    .lumii-config-wrapper .card-row-item:not(:has(.lumii-qty-selector)) .lumii-router-trigger,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)) .lumii-addon-trigger,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)) .lumii-addon-trigger,
    .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)) .lumii-addon-trigger,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)) .lumii-router-trigger,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)) .lumii-router-trigger,
    .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)) .lumii-router-trigger {
        width: 130px !important;
        max-width: 130px !important;
        height: 44px !important;
        padding: 8px 12px !important;
        font-size: 14px !important;
        line-height: 14px !important;
    }

    /* 8. Qty Selector size adjustments */
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action .lumii-qty-selector,
    .elementor-text-editor .lumii-config-wrapper .card-row-item__action .lumii-qty-selector,
    .lumii-config-wrapper .card-row-item__action .lumii-qty-selector {
        gap: 0.5rem !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action .lumii-qty-input,
    .elementor-text-editor .lumii-config-wrapper .card-row-item__action .lumii-qty-input,
    .lumii-config-wrapper .card-row-item__action .lumii-qty-input {
        width: 40px !important;
        height: 40px !important;
        font-size: 14px !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action .lumii-qty-btn,
    .elementor-text-editor .lumii-config-wrapper .card-row-item__action .lumii-qty-btn,
    .lumii-config-wrapper .card-row-item__action .lumii-qty-btn {
        font-size: 22px !important;
    }
}

/* =============================================================
   TABLET-SPECIFIC OVERRIDES (Only active between 768px & 991px)
   ============================================================= */
@media (min-width: 768px) and (max-width: 991px) {
    /* 1. Center the price and button horizontally on tablet (instead of space-between) when NO quantity selector is present */
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item-right,
    .elementor-text-editor .lumii-config-wrapper .card-row-item-right,
    .lumii-config-wrapper .card-row-item-right,
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item__action:not(:has(.lumii-qty-selector)),
    .elementor-text-editor .lumii-config-wrapper .card-row-item__action:not(:has(.lumii-qty-selector)),
    .lumii-config-wrapper .card-row-item__action:not(:has(.lumii-qty-selector)),
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--tv .card-row-item__action,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--tv .card-row-item__action,
    .lumii-config-wrapper .card-row-item--tv .card-row-item__action,
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action:not(:has(.lumii-qty-selector)),
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action:not(:has(.lumii-qty-selector)),
    .lumii-config-wrapper .card-row-item--options .card-row-item__action:not(:has(.lumii-qty-selector)),
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)),
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)),
    .lumii-config-wrapper .lumii-equipment-action-line:not(:has(.lumii-qty-selector)) {
        display: flex !important;
        flex-direction: row !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        gap: 30px !important;
    }

    /* Reset button width for option cards with no quantity selector to fit side-by-side */
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action:not(:has(.lumii-qty-selector)) .lumii-addon-trigger,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action:not(:has(.lumii-qty-selector)) .lumii-addon-trigger,
    .lumii-config-wrapper .card-row-item--options .card-row-item__action:not(:has(.lumii-qty-selector)) .lumii-addon-trigger {
        width: 130px !important;
        max-width: 130px !important;
        flex: none !important;
        margin-top: 0 !important;
    }

    /* 2. Grid layout for options with quantity selector on tablet (Image 2) */
    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector),
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector),
    .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) {
        display: grid !important;
        grid-template-areas: 
            "price qty"
            "btn btn" !important;
        grid-template-columns: auto auto !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 12px 30px !important;
        width: 100% !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .card-row-item-price-wrap,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .card-row-item-price-wrap,
    .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .card-row-item-price-wrap {
        grid-area: price !important;
        justify-self: end !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-qty-selector,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-qty-selector,
    .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-qty-selector {
        grid-area: qty !important;
        justify-self: start !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-addon-trigger,
    .elementor-text-editor .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-addon-trigger,
    .lumii-config-wrapper .card-row-item--options .card-row-item__action:has(.lumii-qty-selector) .lumii-addon-trigger {
        grid-area: btn !important;
        justify-self: center !important;
        width: 170px !important;
        max-width: 170px !important;
        margin-top: 0 !important;
    }

    /* 3. Grid layout for equipment action lines with quantity selector on tablet (Image 4) */
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector),
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector),
    .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) {
        display: grid !important;
        grid-template-areas: 
            "price qty"
            "btn btn" !important;
        grid-template-columns: auto auto !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 12px 30px !important;
        width: 100% !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-equipment-price-block,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-equipment-price-block,
    .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-equipment-price-block {
        grid-area: price !important;
        justify-self: end !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-qty-selector,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-qty-selector,
    .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-qty-selector {
        grid-area: qty !important;
        justify-self: start !important;
    }

    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-addon-trigger,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-addon-trigger,
    .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-addon-trigger,
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-router-trigger,
    .elementor-text-editor .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-router-trigger,
    .lumii-config-wrapper .lumii-equipment-action-line:has(.lumii-qty-selector) .lumii-router-trigger {
        grid-area: btn !important;
        justify-self: center !important;
        width: 170px !important;
        max-width: 170px !important;
        margin-top: 0 !important;
    }
}

/* Styled right angle chevron icon for configurator buttons with transition */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-btn-chevron,
.elementor-text-editor .lumii-config-wrapper .lumii-btn-chevron,
.lumii-config-wrapper .lumii-btn-chevron {
    display: inline-block !important;
    margin-left: 12px !important;
    transition: transform 0.24s ease-out !important;
    vertical-align: middle !important;
    width: 1.2em !important;
    height: 1.2em !important;
    stroke-width: 2.5px !important;
}

/* Hover transition effect: translate chevron on hover */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-next-btn:hover .lumii-btn-chevron,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-next-btn:hover .lumii-btn-chevron,
.lumii-config-wrapper .lumii-sticky-next-btn:hover .lumii-btn-chevron,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-skip-step-btn:hover .lumii-btn-chevron,
.elementor-text-editor .lumii-config-wrapper .lumii-skip-step-btn:hover .lumii-btn-chevron,
.lumii-config-wrapper .lumii-skip-step-btn:hover .lumii-btn-chevron,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-select-plan-btn:hover .lumii-btn-chevron,
.elementor-text-editor .lumii-config-wrapper .lumii-select-plan-btn:hover .lumii-btn-chevron,
.lumii-config-wrapper .lumii-select-plan-btn:hover .lumii-btn-chevron,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-filter-btn:hover .lumii-btn-chevron,
.elementor-text-editor .lumii-config-wrapper .lumii-filter-btn:hover .lumii-btn-chevron,
.lumii-config-wrapper .lumii-filter-btn:hover .lumii-btn-chevron {
    transform: translateX(4px) !important;
}

/* Specificity fix: Make sure limit-reached unselected channel cards cannot show hover overlays */
.elementor-widget-shortcode .lumii-config-wrapper .limit-reached-wrapper.lumii-channel-card-wrapper:hover .lumii-channel-hover-overlay,
.elementor-text-editor .lumii-config-wrapper .limit-reached-wrapper.lumii-channel-card-wrapper:hover .lumii-channel-hover-overlay,
.lumii-config-wrapper .limit-reached-wrapper.lumii-channel-card-wrapper:hover .lumii-channel-hover-overlay {
    opacity: 0 !important;
    transform: translateY(100%) !important;
    pointer-events: none !important;
}

/* Upfront fees styling in sticky footer total */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-upfront-add,
.elementor-text-editor .lumii-config-wrapper .lumii-sticky-upfront-add,
.lumii-config-wrapper .lumii-sticky-upfront-add {
    font-size: 14px !important;
    color: #EDEDDE !important;
    opacity: 0.85 !important;
    margin-left: 8px !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    align-self: center !important;
    white-space: nowrap !important;
}

@media (max-width: 991px) {
    .elementor-widget-shortcode .lumii-config-wrapper .lumii-sticky-upfront-add,
    .elementor-text-editor .lumii-config-wrapper .lumii-sticky-upfront-add,
    .lumii-config-wrapper .lumii-sticky-upfront-add {
        font-size: 11px !important;
        margin-left: 4px !important;
    }
}

/* Solo Page Centered Layout (No Sidebar) */
.lumii-configurator-row.lumii-no-sidebar {
    justify-content: center !important;
    margin-top: 30px !important;
}

.lumii-no-sidebar .lumii-plan-card {
    padding: 80px 60px !important;
}

@media (max-width: 768px) {
    .lumii-no-sidebar .lumii-plan-card {
        padding: 40px 24px !important;
    }
}

.lumii-configurator-row.lumii-no-sidebar .lumii-plans-grid-wrapper {
    max-width: 1370px !important;
    margin: 0 auto !important;
    width: 100% !important;
}

/* Matching Client's Forfait Grid & Cards Style (Solo & Duo/Trio) */
.lumii-config-wrapper .lumii-more-channels-badge {
    padding: 8px 16px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    border-radius: 4px !important;
    margin-bottom: 24px !important;
    display: inline-block !important;
}

/* Centered & Smaller Wi-Fi / Plan Icons */
.lumii-config-wrapper .lumii-plan-image-wrap {
    max-width: 80px !important;
    width: 100% !important;
    margin: 0 0 16px 0 !important;
    display: flex !important;
    align-items: center !important;
}

.lumii-config-wrapper .lumii-plan-icon-img {
    max-width: 80px !important;
    width: 100% !important;
    height: auto !important;
}

/* Bullet list text size, weight & spacing */
.lumii-config-wrapper .lumii-plan-features {
    flex-grow: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    margin-bottom: 28px !important;
}

.lumii-config-wrapper .lumii-plan-features p,
.lumii-config-wrapper .lumii-plan-features li,
.lumii-config-wrapper .lumii-plan-features h4,
.lumii-config-wrapper .lumii-plan-features h5,
.lumii-config-wrapper .lumii-plan-features strong {
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
    font-size: 14px !important;
    line-height: 20px !important;
}

.lumii-config-wrapper .lumii-plan-features li {
    margin-bottom: 6px !important;
}

/* Push select buttons to bottom for perfect height alignment & apply 16px padding */
.lumii-plan-card .lumii-select-plan-btn {
    margin-top: auto !important;
    padding: 16px 24px !important;
}

/* Center single plan cards dynamic grid alignment */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid:has(> :only-child),
.elementor-text-editor .lumii-config-wrapper .lumii-plans-grid:has(> :only-child),
.lumii-config-wrapper .lumii-plans-grid:has(> :only-child),
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid.lumii-single-plan,
.elementor-text-editor .lumii-config-wrapper .lumii-plans-grid.lumii-single-plan,
.lumii-config-wrapper .lumii-plans-grid.lumii-single-plan {
    display: flex !important;
    justify-content: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid:has(> :only-child) .lumii-plan-card,
.elementor-text-editor .lumii-config-wrapper .lumii-plans-grid:has(> :only-child) .lumii-plan-card,
.lumii-config-wrapper .lumii-plans-grid:has(> :only-child) .lumii-plan-card,
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid.lumii-single-plan .lumii-plan-card,
.elementor-text-editor .lumii-config-wrapper .lumii-plans-grid.lumii-single-plan .lumii-plan-card,
.lumii-config-wrapper .lumii-plans-grid.lumii-single-plan .lumii-plan-card {
    max-width: 430px !important;
    width: 100% !important;
}

/* ============================================================
   LUMII – Upgrade-modal reskin → client style (Antigravity)
   Target: #lumii-upgrade-modal  /  .lumii-upgrade-modal-container
   ============================================================ */

/* 1. OVERLAY — full-screen dark backdrop, panel centered */
.lumii-config-wrapper .lumii-modal-overlay#lumii-upgrade-modal {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(0, 0, 0, 0.75) !important;
    display: flex !important;
    align-items: center !important;   /* panel centered vertically */
    justify-content: center !important;
    z-index: 999999 !important;
    transition: opacity 0.3s ease-in-out !important;
    overflow: auto !important;
}

/* 2. MODAL PANEL — centered on screen, no border-radius on container */
.lumii-config-wrapper .lumii-upgrade-modal-container {
    position: relative !important;
    width: 100% !important;
    max-width: 940px !important;
    max-height: 85vh !important;
    background: rgb(252, 252, 251) !important;
    border: 1px solid rgb(252, 252, 251) !important;
    border-radius: 0 !important;
    padding: 50px 40px !important;
    overflow: hidden auto !important;
    box-shadow: none !important;

    /* slide-up animation */
    animation: lumiiSlideUpModal 0.3s ease-in-out !important;
}

@keyframes lumiiSlideUpModal {
    from { transform: translateY(30px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}

/* 3. CLOSE BUTTON — top-right, Font Awesome × icon style */
.lumii-config-wrapper .lumii-upgrade-close-btn {
    position: absolute !important;
    top: 20px !important;
    right: 22px !important;
    width: 18px !important;
    height: 24px !important;
    background: transparent !important;
    border: none !important;
    font-size: 24px !important;
    line-height: 24px !important;
    color: rgb(13, 38, 33) !important;
    cursor: pointer !important;
    padding: 0 !important;
    display: block !important;
    transition: color 0.2s !important;
}
.lumii-config-wrapper .lumii-upgrade-close-btn:hover {
    color: rgb(0, 178, 161) !important;
}

/* 4. MODAL TITLE — larger, centered */
.lumii-config-wrapper .lumii-upgrade-modal-title {
    font-family: 'Inter', serif !important;
    font-size: 42px !important;
    font-weight: 700 !important;
    line-height: 1.14 !important;
    color: rgb(13, 38, 33) !important;
    text-align: center !important;
    margin: 0 0 40px !important;
}

/* 5. CARDS GRID — 3 equal columns, centred */
.lumii-config-wrapper .lumii-upgrade-cards-grid {
    display: flex !important;
    flex-flow: row wrap !important;
    justify-content: center !important;
    gap: 24px !important;
    margin: 0 -12px !important;
    margin-bottom: 0 !important;
}

/* 6. INDIVIDUAL CARD */
.lumii-config-wrapper .lumii-upgrade-card {
    display: flex !important;
    flex-flow: column nowrap !important;
    gap: 16px !important;
    flex: 1 1 248px !important;
    max-width: 320px !important;
    min-height: 100% !important;
    padding: 40px 24px !important;
    background: rgb(248, 248, 242) !important;
    border-radius: 0 !important;
    border: none !important;
    position: relative !important;
    box-shadow: none !important;
    text-align: left !important;
}

/* 7. CARD ICON WRAPPER — teal Font Awesome icons row */
.lumii-config-wrapper .lumii-upgrade-icon-wrap {
    display: flex !important;
    flex-flow: row nowrap !important;
    gap: 16px !important;
    align-items: center !important;
    height: 54px !important;
    margin-bottom: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
}

/* img falls back gracefully; client uses FA icons injected via JS */
.lumii-config-wrapper .lumii-upgrade-icon-wrap img.lumii-upgrade-icon-img {
    display: block !important;
    width: auto !important;
    max-width: 120px !important;
    height: 54px !important;
    object-fit: contain !important;
}

/* 8. CARD TITLE */
.lumii-config-wrapper .lumii-upgrade-title {
    font-family: 'Inter', serif !important;
    font-size: 22px !important;
    font-weight: 500 !important;
    line-height: 33px !important;
    color: rgb(13, 38, 33) !important;
    margin: 0 0 16px !important;
    min-height: 66px !important;   /* keeps 3-col row heights aligned */
}

/* 9. "À partir de" label */
.lumii-config-wrapper .lumii-upgrade-apartir {
    display: block !important;
    font-family: 'Inter', serif !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    line-height: 22.5px !important;
    color: rgb(13, 38, 33) !important;
    margin: 0 0 20px !important;
}

/* 10. PRICE WRAP */
.lumii-config-wrapper .lumii-upgrade-price-wrap {
    display: flex !important;
    align-items: baseline !important;
    margin: 0 0 30px !important;
    height: auto !important;
    font-size: 34px !important;
    line-height: 18.2px !important;
}

/* 10a. Dollar amount */
.lumii-config-wrapper .lumii-upgrade-price {
    font-family: 'Inter', serif !important;
    font-size: 34px !important;
    font-weight: 500 !important;
    line-height: 18.2px !important;
    color: rgb(13, 38, 33) !important;
    display: block !important;
}

/* 10b. Cents + /mois superscript */
.lumii-config-wrapper .lumii-upgrade-price .price-suffix,
.lumii-config-wrapper .lumii-upgrade-price sup {
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 18.2px !important;
    color: rgb(13, 38, 33) !important;
    margin-left: 2px !important;
    position: relative !important;
    top: -7.866px !important;
    vertical-align: baseline !important;
}

/* 11. "Voir ce forfait" button — outlined pill, full card width */
.lumii-config-wrapper .lumii-upgrade-view-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 52px !important;
    padding: 16px 24px !important;
    background: transparent !important;
    border: 2px solid rgb(31, 84, 84) !important;
    border-radius: 60px !important;
    font-family: 'Inter', serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 16px !important;
    color: rgb(31, 84, 84) !important;
    text-decoration: none !important;
    text-align: center !important;
    cursor: pointer !important;
    transition: 0.24s ease-out !important;
    box-sizing: border-box !important;
    margin-top: auto !important;   /* pushes button to bottom of card */
}
.lumii-config-wrapper .lumii-upgrade-view-btn:hover {
    background: rgb(31, 84, 84) !important;
    color: rgb(237, 237, 222) !important;
}

/* 12. FOOTER / POURSUIVRE ROW */
.lumii-config-wrapper .lumii-upgrade-modal-footer {
    display: flex !important;
    justify-content: center !important;
    margin-top: 24px !important;
    text-align: center !important;
}

/* 13. "Poursuivre" button — filled dark-green pill */
.lumii-config-wrapper #lumii-upgrade-poursuivre-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 52px !important;
    padding: 16px 24px !important;
    background: rgb(31, 84, 84) !important;
    border: 2px solid rgb(31, 84, 84) !important;
    border-radius: 60px !important;
    font-family: 'Inter', serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 16px !important;
    color: rgb(237, 237, 222) !important;
    cursor: pointer !important;
    transition: 0.24s ease-out !important;
    white-space: nowrap !important;
}
.lumii-config-wrapper #lumii-upgrade-poursuivre-btn:hover {
    background: #0D2621 !important;
    border-color: #0D2621 !important;
}

/* 14. RESPONSIVE — mobile stacks cards vertically */
@media (max-width: 768px) {
    .lumii-config-wrapper .lumii-upgrade-modal-container {
        padding: 40px 20px !important;
        max-height: 85vh !important;
    }
    .lumii-config-wrapper .lumii-upgrade-modal-title {
        font-size: 28px !important;
        margin-bottom: 24px !important;
    }
    .lumii-config-wrapper .lumii-upgrade-card {
        width: 100% !important;
        max-width: 100% !important;
    }
    .lumii-config-wrapper .lumii-upgrade-cards-grid {
        flex-flow: column nowrap !important;
        align-items: stretch !important;
    }
}

/* ============================================================
   LUMII – Contrat Section styles
   ============================================================ */
.lumii-config-wrapper .lumii-contrat-section {
    margin-top: 35px !important;
    margin-bottom: 45px !important;
}

.lumii-config-wrapper .lumii-contrat-rows-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

/* Card item override for contrat rows (since they don't have images) */
.lumii-config-wrapper .card-row-item--contrat {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background-color: #F8F8F2 !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 2rem !important;
    transition: all 0.3s ease !important;
    box-sizing: border-box !important;
}

.lumii-config-wrapper .card-row-item--contrat:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
}

.lumii-config-wrapper .card-row-item--contrat .card-row-item-left {
    display: flex !important;
    align-items: center !important;
    flex: 1 1 auto !important;
}

.lumii-config-wrapper .card-row-item--contrat .card-row-item-title {
    font-family: 'Inter', serif !important;
    font-weight: 500 !important;
    font-size: 28px !important;
    color: #0D2621 !important;
    margin: 0 !important;
    line-height: 38px !important;
}

/* Actions block positioning */
.lumii-config-wrapper .card-row-item--contrat .card-row-item__action--equipment {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 20px !important;
}

/* Button & Price Action Line */
.lumii-config-wrapper .card-row-item--contrat .lumii-equipment-action-line {
    display: flex !important;
    align-items: center !important;
    gap: 24px !important;
}

.lumii-config-wrapper .card-row-item--contrat .lumii-equipment-price-block {
    display: flex !important;
    align-items: baseline !important;
}

.lumii-config-wrapper .card-row-item--contrat .card-row-item-price {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 34px !important;
    line-height: 1.1 !important;
    color: #0D2621 !important;
    display: flex !important;
    align-items: baseline !important;
}

.lumii-config-wrapper .card-row-item--contrat .card-row-item-price .super-cents {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    position: relative !important;
    top: -6px !important;
    margin-left: 2px !important;
    color: #0D2621 !important;
}

/* Outlined Choisir button */
.lumii-config-wrapper .lumii-contrat-trigger {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 190px !important;
    height: 52px !important;
    background: transparent !important;
    border: 2px solid rgb(31, 84, 84) !important;
    border-radius: 60px !important;
    color: rgb(31, 84, 84) !important;
    font-family: 'Inter', serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.24s ease-out !important;
    outline: none !important;
    box-sizing: border-box !important;
}

.lumii-config-wrapper .lumii-contrat-trigger:hover,
.lumii-config-wrapper .lumii-contrat-trigger.active {
    background-color: rgb(31, 84, 84) !important;
    color: #ffffff !important;
    border-color: rgb(31, 84, 84) !important;
}

/* Responsive styles */
@media (max-width: 768px) {
    .lumii-config-wrapper .card-row-item--contrat {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 16px !important;
        padding: 20px !important;
    }
    
    .lumii-config-wrapper .card-row-item--contrat .card-row-item__action--equipment {
        width: 100% !important;
        justify-content: space-between !important;
    }
    
    .lumii-config-wrapper .card-row-item--contrat .lumii-equipment-action-line {
        width: 100% !important;
        justify-content: space-between !important;
    }
}

/* -------------------------------------------------------------
   SHORTCODE BASE CHANNELS BUTTON & MODAL
   ------------------------------------------------------------- */
.lumii-base-channels-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    padding: 12px 28px !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    outline: none !important;
}

.lumii-base-channels-btn--filled {
    background-color: var(--lumii-secondary, #FAA21B) !important;
    color: #ffffff !important;
    border: 2px solid var(--lumii-secondary, #FAA21B) !important;
}

.lumii-base-channels-btn--filled:hover {
    background-color: transparent !important;
    color: var(--lumii-secondary, #FAA21B) !important;
    border-color: var(--lumii-secondary, #FAA21B) !important;
}

.lumii-base-channels-btn--outline {
    background-color: transparent !important;
    color: var(--lumii-secondary, #FAA21B) !important;
    border: 2px solid var(--lumii-secondary, #FAA21B) !important;
}

.lumii-base-channels-btn--outline:hover {
    background-color: var(--lumii-secondary, #FAA21B) !important;
    color: var(--lumii-primary, #184646) !important;
    border-color: var(--lumii-secondary, #FAA21B) !important;
}

/* On Demand (À La Carte) Teal/Green Button Styles */
.lumii-ondemand-channels-btn--filled {
    background-color: var(--lumii-accent, #00B2A1) !important;
    color: var(--lumii-primary, #184646) !important;
    border: 2px solid var(--lumii-accent, #00B2A1) !important;
}

.lumii-ondemand-channels-btn--filled:hover {
    background-color: transparent !important;
    color: var(--lumii-accent, #00B2A1) !important;
    border-color: var(--lumii-accent, #00B2A1) !important;
}

.lumii-ondemand-channels-btn--outline {
    background-color: transparent !important;
    color: var(--lumii-accent, #00B2A1) !important;
    border: 2px solid var(--lumii-accent, #00B2A1) !important;
}

.lumii-ondemand-channels-btn--outline:hover {
    background-color: var(--lumii-accent, #00B2A1) !important;
    color: var(--lumii-primary, #184646) !important;
    border-color: var(--lumii-accent, #00B2A1) !important;
}

/* Custom Header Section for Plans Page */
.lumii-plans-header-section {
    text-align: center !important;
    margin-bottom: 30px !important;
    padding: 10px 0 !important;
}

.lumii-plans-header-section .lumii-plans-header-title {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 32px !important;
    line-height: 32px !important;
    color: #0D2621 !important;
    margin-bottom: 12px !important;
}

.lumii-plans-header-section .lumii-plans-header-text {
    font-family: 'Inter', sans-serif !important;
    font-weight: 300 !important;
    font-size: 17px !important;
    color: #0D2621 !important;
    margin: 0 !important;
}

.lumii-plans-header-section .lumii-plans-header-text a {
    color: #0D2621 !important;
    text-decoration: underline !important;
}

.lumii-plans-header-section .lumii-plans-header-text a:hover {
    color: var(--lumii-accent, #00B2A1) !important;
}

/* Disclaimer lines under the plans grid (supports an optional second line) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-section-disclaimer .lumii-disclaimer-line,
.elementor-text-editor .lumii-config-wrapper .lumii-section-disclaimer .lumii-disclaimer-line,
.lumii-config-wrapper .lumii-section-disclaimer .lumii-disclaimer-line {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-section-disclaimer .lumii-disclaimer-line--extra,
.elementor-text-editor .lumii-config-wrapper .lumii-section-disclaimer .lumii-disclaimer-line--extra,
.lumii-config-wrapper .lumii-section-disclaimer .lumii-disclaimer-line--extra {
    margin-top: 2px !important;
}

/* "Le plus populaire" tag on the highlighted plan card */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-card--popular,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-card--popular,
.lumii-config-wrapper .lumii-plan-card--popular {
    overflow: visible !important;
}

/* Room above the grid so the tag is not clipped by the wrapper */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-plans-grid,
.elementor-text-editor .lumii-config-wrapper .lumii-plans-grid,
.lumii-config-wrapper .lumii-plans-grid {
    padding-top: 1rem !important;
}

.elementor-widget-shortcode .lumii-config-wrapper .lumii-plan-popular-bar,
.elementor-text-editor .lumii-config-wrapper .lumii-plan-popular-bar,
.lumii-config-wrapper .lumii-plan-popular-bar {
    position: absolute !important;
    top: -0.9375rem !important;
    left: 50% !important;
    -webkit-transform: translateX(-50%) !important;
    -ms-transform: translateX(-50%) !important;
    transform: translateX(-50%) !important;
    width: 80% !important;
    background: #FAA21B !important;
    color: #0D2621 !important;
    font-family: "Inter", serif !important;
    padding: 0.5rem 1.5rem !important;
    font-size: 1rem !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    border-radius: 0.25rem !important;
    text-align: center !important;
    z-index: 3 !important;
    pointer-events: none !important;
    box-sizing: border-box !important;
}

/* Header cart icon: relative wrapper + green "items in cart" dot */
.lumii-header-cart-ready {
    position: relative !important;
    cursor: pointer !important;
}

.lumii-header-cart-ready .lumii-header-cart-dot {
    position: absolute !important;
    top: 2px !important;
    right: 2px !important;
    width: 10px !important;
    height: 10px !important;
    border-radius: 50% !important;
    background: #2ECFAF !important;
    display: none !important;
    pointer-events: none !important;
    z-index: 5 !important;
}

.lumii-header-cart-ready.lumii-header-cart-filled .lumii-header-cart-dot {
    display: block !important;
}

/* Contract period selector is hidden on the summary page (value carried over from the plan) */
.elementor-widget-shortcode .lumii-config-wrapper .lumii-summary-contract-wrap,
.elementor-text-editor .lumii-config-wrapper .lumii-summary-contract-wrap,
.lumii-config-wrapper .lumii-summary-contract-wrap {
    display: none !important;
}

/* ------------------------------------------------------------------
   Site-wide cart bar (injected via wp_footer on pages without the
   configurator): there is no tall wrapper to stick inside, so pin it
   to the viewport bottom instead.
   ------------------------------------------------------------------ */
.lumii-config-wrapper .lumii-sticky-cart-bar.lumii-global-cart-bar {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    margin: 0 !important;
}

/* ------------------------------------------------------------------
   Summary card-only view for an Elementor-managed checkout layout.
   Elementor owns the page background, spacing and column proportions;
   the configurator only fills the column in which its shortcode lives.
   ------------------------------------------------------------------ */
.elementor-widget-shortcode .lumii-config-wrapper.lumii-step-summary.lumii-view-summary-only,
.elementor-text-editor .lumii-config-wrapper.lumii-step-summary.lumii-view-summary-only,
.lumii-config-wrapper.lumii-step-summary.lumii-view-summary-only {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background-color: transparent !important;
}

.elementor-widget-shortcode .lumii-config-wrapper.lumii-view-summary-only .lumii-summary-container,
.elementor-text-editor .lumii-config-wrapper.lumii-view-summary-only .lumii-summary-container,
.lumii-config-wrapper.lumii-view-summary-only .lumii-summary-container {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    gap: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper.lumii-view-summary-only .lumii-summary-widget-column,
.elementor-text-editor .lumii-config-wrapper.lumii-view-summary-only .lumii-summary-widget-column,
.lumii-config-wrapper.lumii-view-summary-only .lumii-summary-widget-column {
    width: 100% !important;
    min-width: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper.lumii-view-summary-only .lumii-summary-footer-grid,
.elementor-text-editor .lumii-config-wrapper.lumii-view-summary-only .lumii-summary-footer-grid,
.lumii-config-wrapper.lumii-view-summary-only .lumii-summary-footer-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.elementor-widget-shortcode .lumii-config-wrapper.lumii-view-summary-only .lumii-summary-footer-col,
.elementor-text-editor .lumii-config-wrapper.lumii-view-summary-only .lumii-summary-footer-col,
.lumii-config-wrapper.lumii-view-summary-only .lumii-summary-footer-col {
    min-width: 0 !important;
}

.elementor-widget-shortcode .lumii-config-wrapper.lumii-view-summary-only .lumii-summary-footer-col .col-value,
.elementor-text-editor .lumii-config-wrapper.lumii-view-summary-only .lumii-summary-footer-col .col-value,
.lumii-config-wrapper.lumii-view-summary-only .lumii-summary-footer-col .col-value {
    white-space: nowrap !important;
}
