/* =========================================================
   IranicaServer ViewCart V8
   Fully isolated visual namespace: irc8-*
   Font family is inherited from Mahlin; everything else is explicit.
   ========================================================= */

/* ---------- global V8 isolation ---------- */
.irc8-zone,
.irc8-zone *,
.irc8-product-head,
.irc8-product-head *,
.irc8-product-row,
.irc8-product-row * {
    box-sizing: border-box !important;
    font-family: inherit !important;
}

.irc8-zone [data-rtl-wrapper],
.irc8-zone [data-rtl="true"],
.irc8-product-row [data-rtl-wrapper],
.irc8-product-row [data-rtl="true"],
.irc8-product-head [data-rtl-wrapper],
.irc8-product-head [data-rtl="true"] {
    font-family: inherit !important;
}

/* =========================================================
   COMPACT PRODUCT HEADER
   Physical LEFT -> RIGHT:
   actions | price | product | icon
   ========================================================= */

.cart-main-wrapper .irc8-product-head {
    display: grid !important;
    grid-template-columns: 86px 152px minmax(0, 1fr) 44px !important;
    align-items: center !important;
    gap: 10px !important;
    direction: ltr !important;

    width: 100% !important;
    min-height: 42px !important;
    margin: 0 0 7px !important;
    padding: 5px 11px !important;

    border: 1px solid #dce5ef !important;
    border-radius: 10px !important;
    background: #f4f7fb !important;
    color: #334155 !important;

    box-shadow: none !important;
}

.cart-main-wrapper .irc8-product-head > [class*="col-"] {
    width: auto !important;
    max-width: none !important;
    flex: none !important;
    margin: 0 !important;
    padding: 0 !important;

    direction: rtl !important;
    color: #334155 !important;
    background: transparent !important;
    text-shadow: none !important;
}

.cart-main-wrapper .irc8-product-head > div:nth-child(1) {
    grid-column: 4 !important;
}

.cart-main-wrapper .irc8-product-head > div:nth-child(2) {
    grid-column: 3 !important;
    text-align: right !important;
}

.cart-main-wrapper .irc8-product-head > div:nth-child(3) {
    grid-column: 2 !important;
    text-align: center !important;
}

.cart-main-wrapper .irc8-product-head > div:nth-child(4) {
    grid-column: 1 !important;
    text-align: center !important;
}

/* Quantity-enabled header */
.cart-main-wrapper .irc8-product-head:has(> div:nth-child(5)) {
    grid-template-columns: 86px 152px 84px minmax(0, 1fr) 44px !important;
}

.cart-main-wrapper .irc8-product-head:has(> div:nth-child(5)) > div:nth-child(1) { grid-column: 5 !important; }
.cart-main-wrapper .irc8-product-head:has(> div:nth-child(5)) > div:nth-child(2) { grid-column: 4 !important; }
.cart-main-wrapper .irc8-product-head:has(> div:nth-child(5)) > div:nth-child(3) { grid-column: 3 !important; text-align: center !important; }
.cart-main-wrapper .irc8-product-head:has(> div:nth-child(5)) > div:nth-child(4) { grid-column: 2 !important; text-align: center !important; }
.cart-main-wrapper .irc8-product-head:has(> div:nth-child(5)) > div:nth-child(5) { grid-column: 1 !important; text-align: center !important; }

/* =========================================================
   COMPACT PRODUCT ROW
   ========================================================= */

.cart-main-wrapper .product-item:has(> .irc8-product-row) {
    position: relative !important;
    overflow: hidden !important;

    min-height: 0 !important;
    margin: 0 0 7px !important;
    padding: 0 !important;

    border: 1px solid #e2e9f1 !important;
    border-radius: 11px !important;
    background: #ffffff !important;

    box-shadow: none !important;
    transform: none !important;
}

.cart-main-wrapper .product-item:has(> .irc8-product-row)::before {
    content: "" !important;
    position: absolute !important;
    top: 7px !important;
    right: 0 !important;
    bottom: 7px !important;
    width: 3px !important;
    border-radius: 3px 0 0 3px !important;
    background: #236BFF !important;
}

.cart-main-wrapper .irc8-product-row {
    display: grid !important;
    grid-template-columns: 86px 152px minmax(0, 1fr) 44px !important;
    align-items: center !important;
    gap: 10px !important;

    direction: ltr !important;
    width: 100% !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 8px 11px 8px 13px !important;

    background: #ffffff !important;
    color: #0f172a !important;
}

.cart-main-wrapper .irc8-product-icon-col,
.cart-main-wrapper .irc8-product-info,
.cart-main-wrapper .irc8-product-price,
.cart-main-wrapper .irc8-product-actions,
.cart-main-wrapper .irc8-product-row > .col-md-2 {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
    margin: 0 !important;
    padding: 0 !important;
    direction: rtl !important;
}

.cart-main-wrapper .irc8-product-icon-col {
    grid-column: 4 !important;
    display: flex !important;
    justify-content: center !important;
}

.cart-main-wrapper .irc8-product-info {
    grid-column: 3 !important;
    text-align: right !important;
}

.cart-main-wrapper .irc8-product-price {
    grid-column: 2 !important;
    text-align: center !important;
}

.cart-main-wrapper .irc8-product-actions {
    grid-column: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
}

.cart-main-wrapper .irc8-product-icon {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;

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

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

    border: 1px solid #dce8ff !important;
    border-radius: 9px !important;
    background: #eef4ff !important;
    color: #236BFF !important;

    box-shadow: none !important;
}

.cart-main-wrapper .irc8-product-name,
.cart-main-wrapper .irc8-product-name * {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;

    color: #0f172a !important;
    background: transparent !important;

    font-weight: 900 !important;
    line-height: 1.45 !important;
}

.cart-main-wrapper .irc8-product-meta,
.cart-main-wrapper .irc8-product-meta * {
    margin: 2px 0 0 !important;
    padding: 0 !important;

    color: #64748b !important;
    background: transparent !important;

    line-height: 1.4 !important;
}

.cart-main-wrapper .irc8-product-price-main,
.cart-main-wrapper .irc8-product-price-main * {
    display: block !important;
    direction: ltr !important;

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

    color: #174fd1 !important;
    background: transparent !important;

    font-weight: 950 !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
}

.cart-main-wrapper .irc8-product-period,
.cart-main-wrapper .irc8-product-period * {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 22px !important;
    margin: 3px 0 0 !important;
    padding: 2px 8px !important;

    border: 1px solid #dbe7fb !important;
    border-radius: 999px !important;
    background: #f2f7ff !important;
    color: #41628d !important;

    font-weight: 750 !important;
    line-height: 1.2 !important;
}

.cart-main-wrapper .irc8-action-edit,
.cart-main-wrapper .irc8-action-delete {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;

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

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

    border-radius: 8px !important;
    box-shadow: none !important;
}

.cart-main-wrapper .irc8-action-edit {
    border: 1px solid #cfe0ff !important;
    background: #eff6ff !important;
    color: #236BFF !important;
}

.cart-main-wrapper .irc8-action-delete {
    border: 1px solid #fecaca !important;
    background: #fff1f2 !important;
    color: #dc2626 !important;
}

.cart-main-wrapper .irc8-action-edit *,
.cart-main-wrapper .irc8-action-edit {
    color: #236BFF !important;
}

.cart-main-wrapper .irc8-action-delete *,
.cart-main-wrapper .irc8-action-delete {
    color: #dc2626 !important;
}

/* quantity-enabled row */
.cart-main-wrapper .irc8-product-row:has(> .col-md-2) {
    grid-template-columns: 86px 152px 84px minmax(0, 1fr) 44px !important;
}

.cart-main-wrapper .irc8-product-row:has(> .col-md-2) .irc8-product-icon-col { grid-column: 5 !important; }
.cart-main-wrapper .irc8-product-row:has(> .col-md-2) .irc8-product-info { grid-column: 4 !important; }
.cart-main-wrapper .irc8-product-row:has(> .col-md-2) > .col-md-2 { grid-column: 3 !important; text-align: center !important; }
.cart-main-wrapper .irc8-product-row:has(> .col-md-2) .irc8-product-price { grid-column: 2 !important; }
.cart-main-wrapper .irc8-product-row:has(> .col-md-2) .irc8-product-actions { grid-column: 1 !important; }

/* =========================================================
   V8 LOWER ZONE
   ========================================================= */

.irc8-zone {
    --irc8-blue: #236BFF;
    --irc8-blue-soft: #eef4ff;
    --irc8-green: #059669;
    --irc8-green-soft: #ecfdf5;
    --irc8-purple: #7c3aed;
    --irc8-purple-soft: #f5f3ff;
    --irc8-cyan: #0891b2;
    --irc8-cyan-soft: #ecfeff;
    --irc8-orange: #ea580c;
    --irc8-orange-soft: #fff7ed;
    --irc8-navy: #10264f;
    --irc8-text: #0f172a;
    --irc8-muted: #64748b;
    --irc8-border: #dfe7f1;

    width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;

    direction: rtl !important;
    color: var(--irc8-text) !important;
    background: transparent !important;
}

/* =========================================================
   OFFERS
   ========================================================= */

.irc8-zone .irc8-offers {
    width: 100% !important;
    margin: 0 !important;
    padding: 16px !important;

    border: 1px solid var(--irc8-border) !important;
    border-radius: 17px !important;
    background: #f6f8fb !important;

    color: var(--irc8-text) !important;
    box-shadow: none !important;
}

.irc8-zone .irc8-offers-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;

    margin: 0 0 13px !important;
    padding: 0 0 12px !important;

    border-bottom: 1px solid #e4eaf2 !important;
    background: transparent !important;
}

.irc8-zone .irc8-offers-heading {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 0 !important;

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

    color: var(--irc8-text) !important;
    background: transparent !important;
}

.irc8-zone .irc8-offers-icon {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;

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

    border: 1px solid #d3e1fb !important;
    border-radius: 11px !important;
    background: #eaf1ff !important;
    color: #236BFF !important;

    box-shadow: none !important;
}

.irc8-zone .irc8-offers-title,
.irc8-zone .irc8-offers-title *,
.irc8-zone .irc8-offers-subtitle,
.irc8-zone .irc8-offers-subtitle * {
    background: transparent !important;
}

.irc8-zone .irc8-offers-title,
.irc8-zone .irc8-offers-title * {
    display: block !important;
    margin: 0 !important;

    color: #0f172a !important;
    font-weight: 950 !important;
    line-height: 1.55 !important;
}

.irc8-zone .irc8-offers-subtitle,
.irc8-zone .irc8-offers-subtitle * {
    display: block !important;
    margin: 2px 0 0 !important;

    color: #58677c !important;
    line-height: 1.55 !important;
}

.irc8-zone .irc8-offers-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;

    min-height: 34px !important;
    margin: 0 !important;
    padding: 6px 11px !important;

    border: 1px solid #bfdbfe !important;
    border-radius: 999px !important;
    background: #dbeafe !important;
    color: #1e3a8a !important;

    font-weight: 900 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;

    box-shadow: none !important;
}

.irc8-zone .irc8-offers-badge *,
.irc8-zone .irc8-offers-badge {
    color: #1e3a8a !important;
}

/* ---------- unique dynamic offer cards ---------- */
.irc8-zone .irc8-offer-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 9px !important;

    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
}

.irc8-zone .irc8-offer {
    --offer-accent: #236BFF;
    --offer-soft: #eef4ff;

    display: flex !important;
    flex-direction: column !important;

    min-width: 0 !important;
    min-height: 166px !important;

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

    border: 1px solid #e2e9f1 !important;
    border-radius: 13px !important;
    background: #ffffff !important;
    color: #0f172a !important;

    box-shadow: none !important;
    transform: none !important;
}

.irc8-zone .irc8-offer--purple { --offer-accent: #7c3aed; --offer-soft: #f5f3ff; }
.irc8-zone .irc8-offer--blue   { --offer-accent: #236BFF; --offer-soft: #eef4ff; }
.irc8-zone .irc8-offer--cyan   { --offer-accent: #0891b2; --offer-soft: #ecfeff; }
.irc8-zone .irc8-offer--orange { --offer-accent: #ea580c; --offer-soft: #fff7ed; }

.irc8-zone .irc8-offer:hover {
    border-color: #ccd8e6 !important;
    background: #ffffff !important;
    box-shadow: none !important;
    transform: none !important;
}

.irc8-zone .irc8-offer-icon {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;

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

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

    border: 1px solid color-mix(in srgb, var(--offer-accent) 18%, #ffffff) !important;
    border-radius: 10px !important;
    background: var(--offer-soft) !important;
    color: var(--offer-accent) !important;

    box-shadow: none !important;
}

.irc8-zone .irc8-offer-name,
.irc8-zone .irc8-offer-name *,
.irc8-zone .irc8-offer-group,
.irc8-zone .irc8-offer-group *,
.irc8-zone .irc8-offer-price,
.irc8-zone .irc8-offer-price *,
.irc8-zone .irc8-offer-cycle,
.irc8-zone .irc8-offer-cycle *,
.irc8-zone .irc8-offer-setup,
.irc8-zone .irc8-offer-setup * {
    background: transparent !important;
}

.irc8-zone .irc8-offer-name,
.irc8-zone .irc8-offer-name * {
    display: block !important;
    overflow: hidden !important;

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

    color: #0f172a !important;
    font-weight: 900 !important;
    line-height: 1.45 !important;

    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.irc8-zone .irc8-offer-group,
.irc8-zone .irc8-offer-group * {
    display: block !important;
    overflow: hidden !important;

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

    color: #64748b !important;
    line-height: 1.4 !important;

    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.irc8-zone .irc8-offer-price-row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: 4px 6px !important;

    margin: auto 0 0 !important;
    padding: 9px 0 0 !important;

    border-top: 1px solid #edf1f5 !important;
    background: transparent !important;
}

.irc8-zone .irc8-offer-price,
.irc8-zone .irc8-offer-price * {
    direction: ltr !important;
    color: var(--offer-accent) !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
}

.irc8-zone .irc8-offer-cycle,
.irc8-zone .irc8-offer-cycle *,
.irc8-zone .irc8-offer-setup,
.irc8-zone .irc8-offer-setup * {
    color: #64748b !important;
    line-height: 1.4 !important;
}

.irc8-zone .irc8-offer-action {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;

    align-self: flex-start !important;
    width: auto !important;
    min-width: 80px !important;
    min-height: 31px !important;

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

    border: 1px solid var(--offer-accent) !important;
    border-radius: 8px !important;
    background: var(--offer-accent) !important;
    color: #ffffff !important;

    box-shadow: none !important;
    text-decoration: none !important;
}

.irc8-zone .irc8-offer-action,
.irc8-zone .irc8-offer-action * {
    color: #ffffff !important;
    background: transparent !important;
}

/* =========================================================
   ASSURANCES - each card owns its colors
   ========================================================= */

.irc8-zone .irc8-assurance-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px !important;

    width: 100% !important;
    margin: 11px 0 0 !important;
    padding: 0 !important;
}

.irc8-zone .irc8-assurance {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;

    min-width: 0 !important;
    min-height: 46px !important;

    margin: 0 !important;
    padding: 8px 9px !important;

    border-radius: 10px !important;
    box-shadow: none !important;
}

.irc8-zone .irc8-assurance--secure {
    border: 1px solid #bbf7d0 !important;
    background: #ecfdf5 !important;
    color: #065f46 !important;
}
.irc8-zone .irc8-assurance--support {
    border: 1px solid #bfdbfe !important;
    background: #eff6ff !important;
    color: #1e3a8a !important;
}
.irc8-zone .irc8-assurance--guarantee {
    border: 1px solid #ddd6fe !important;
    background: #f5f3ff !important;
    color: #5b21b6 !important;
}
.irc8-zone .irc8-assurance--fast {
    border: 1px solid #fed7aa !important;
    background: #fff7ed !important;
    color: #9a3412 !important;
}

.irc8-zone .irc8-assurance-icon {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;

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

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

    border-radius: 8px !important;
    background: rgba(255,255,255,.72) !important;
    color: inherit !important;
}

.irc8-zone .irc8-assurance-text,
.irc8-zone .irc8-assurance-text * {
    color: inherit !important;
    background: transparent !important;
    font-weight: 850 !important;
}

/* =========================================================
   CHECKOUT PANEL
   ========================================================= */

.irc8-zone .irc8-checkout-panel {
    display: grid !important;
    grid-template-columns: minmax(220px, .75fr) minmax(0, 1.7fr) minmax(205px, .62fr) !important;
    gap: 14px !important;
    align-items: center !important;

    width: 100% !important;
    margin: 13px 0 0 !important;
    padding: 16px !important;

    border: 1px solid #0b1c3d !important;
    border-radius: 17px !important;
    background: #10264f !important;
    color: #ffffff !important;

    box-shadow: none !important;
}

.irc8-zone .irc8-checkout-intro {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    min-width: 0 !important;

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

    background: transparent !important;
}

.irc8-zone .irc8-checkout-icon {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;

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

    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 11px !important;
    background: rgba(255,255,255,.09) !important;
    color: #ffffff !important;
}

.irc8-zone .irc8-checkout-title,
.irc8-zone .irc8-checkout-title *,
.irc8-zone .irc8-checkout-subtitle,
.irc8-zone .irc8-checkout-subtitle * {
    background: transparent !important;
}

.irc8-zone .irc8-checkout-title,
.irc8-zone .irc8-checkout-title * {
    display: block !important;
    color: #ffffff !important;
    font-weight: 950 !important;
}

.irc8-zone .irc8-checkout-subtitle,
.irc8-zone .irc8-checkout-subtitle * {
    display: block !important;
    margin-top: 2px !important;
    color: #c8d4e7 !important;
    line-height: 1.45 !important;
}

.irc8-zone .irc8-checkout-lines {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 7px !important;
    min-width: 0 !important;

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

.irc8-zone .irc8-checkout-line {
    min-width: 0 !important;
    min-height: 59px !important;

    margin: 0 !important;
    padding: 9px 10px !important;

    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 9px !important;
    background: #17345f !important;
    color: #ffffff !important;
}

.irc8-zone .irc8-checkout-label,
.irc8-zone .irc8-checkout-label * {
    display: block !important;
    margin: 0 0 4px !important;

    color: #b8c7dc !important;
    background: transparent !important;
}

.irc8-zone .irc8-checkout-value,
.irc8-zone .irc8-checkout-value * {
    display: block !important;
    direction: ltr !important;

    color: #ffffff !important;
    background: transparent !important;

    font-weight: 950 !important;
    white-space: nowrap !important;
}

.irc8-zone .irc8-checkout-total {
    min-width: 0 !important;
    margin: 0 !important;
    padding: 11px 12px !important;

    border: 1px solid #cbdcf7 !important;
    border-radius: 11px !important;
    background: #ffffff !important;
    color: #10264f !important;
}

.irc8-zone .irc8-checkout-total-label,
.irc8-zone .irc8-checkout-total-label * {
    display: block !important;
    color: #64748b !important;
    background: transparent !important;
}

.irc8-zone .irc8-checkout-total-value,
.irc8-zone .irc8-checkout-total-value * {
    display: block !important;
    margin-top: 2px !important;
    direction: ltr !important;

    color: #10264f !important;
    background: transparent !important;

    font-weight: 950 !important;
    white-space: nowrap !important;
}

.irc8-zone .irc8-checkout-actions {
    grid-column: 1 / -1 !important;

    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;

    width: 100% !important;
    margin: 0 !important;
    padding: 12px 0 0 !important;

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

.irc8-zone .irc8-back-button,
.irc8-zone .irc8-pay-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;

    min-height: 39px !important;
    margin: 0 !important;
    padding: 7px 12px !important;

    border-radius: 9px !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

.irc8-zone .irc8-back-button {
    border: 1px solid rgba(255,255,255,.22) !important;
    background: #183966 !important;
    color: #ffffff !important;
}

.irc8-zone .irc8-back-button,
.irc8-zone .irc8-back-button * {
    color: #ffffff !important;
}

.irc8-zone .irc8-pay-button {
    border: 1px solid #059669 !important;
    background: #059669 !important;
    color: #ffffff !important;
}

.irc8-zone .irc8-pay-button,
.irc8-zone .irc8-pay-button * {
    color: #ffffff !important;
}

.irc8-zone .irc8-pay-button:hover {
    border-color: #047857 !important;
    background: #047857 !important;
    color: #ffffff !important;
}

.irc8-zone .irc8-secure-note {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;

    margin-right: auto !important;
    padding: 0 !important;

    color: #c8d4e7 !important;
    background: transparent !important;
}

.irc8-zone .irc8-secure-note,
.irc8-zone .irc8-secure-note * {
    color: #c8d4e7 !important;
}

/* =========================================================
   Responsive
   ========================================================= */

@media (max-width: 1020px) {
    .irc8-zone .irc8-offer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .irc8-zone .irc8-checkout-panel {
        grid-template-columns: 1fr 1fr !important;
    }

    .irc8-zone .irc8-checkout-intro {
        grid-column: 1 !important;
    }

    .irc8-zone .irc8-checkout-total {
        grid-column: 2 !important;
    }

    .irc8-zone .irc8-checkout-lines {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
    }
}

@media (max-width: 760px) {
    .cart-main-wrapper .irc8-product-head {
        display: none !important;
    }

    .cart-main-wrapper .irc8-product-row,
    .cart-main-wrapper .irc8-product-row:has(> .col-md-2) {
        grid-template-columns: 40px minmax(0, 1fr) auto !important;
        gap: 6px 8px !important;
        min-height: 0 !important;
        padding: 9px 10px !important;
    }

    .cart-main-wrapper .irc8-product-icon-col {
        grid-column: 3 !important;
        grid-row: 1 / span 3 !important;
        align-self: start !important;
    }

    .cart-main-wrapper .irc8-product-info {
        grid-column: 2 !important;
        grid-row: 1 !important;
    }

    .cart-main-wrapper .irc8-product-price {
        grid-column: 2 !important;
        grid-row: 2 !important;
        text-align: right !important;
    }

    .cart-main-wrapper .irc8-product-row > .col-md-2 {
        grid-column: 2 !important;
        grid-row: 3 !important;
        text-align: right !important;
    }

    .cart-main-wrapper .irc8-product-actions {
        grid-column: 1 !important;
        grid-row: 1 / span 3 !important;
        flex-direction: column !important;
        align-self: center !important;
    }

    .irc8-zone .irc8-offers {
        padding: 13px !important;
    }

    .irc8-zone .irc8-offers-head {
        align-items: flex-start !important;
    }

    .irc8-zone .irc8-offers-badge {
        display: none !important;
    }

    .irc8-zone .irc8-assurance-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 640px) {
    .irc8-zone .irc8-offer-grid {
        grid-template-columns: 1fr !important;
    }

    .irc8-zone .irc8-checkout-panel {
        grid-template-columns: 1fr !important;
        padding: 13px !important;
    }

    .irc8-zone .irc8-checkout-intro,
    .irc8-zone .irc8-checkout-total,
    .irc8-zone .irc8-checkout-lines {
        grid-column: 1 !important;
        grid-row: auto !important;
    }

    .irc8-zone .irc8-checkout-lines {
        grid-template-columns: 1fr !important;
    }

    .irc8-zone .irc8-checkout-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .irc8-zone .irc8-back-button,
    .irc8-zone .irc8-pay-button {
        width: 100% !important;
    }

    .irc8-zone .irc8-secure-note {
        margin-right: 0 !important;
        justify-content: center !important;
        text-align: center !important;
    }
}

@media (max-width: 420px) {
    .irc8-zone .irc8-assurance-grid {
        grid-template-columns: 1fr !important;
    }
}
