/* ═══════════════════════════════════════════════════════════════════
   _80_checkout.css — DGRIE newdgrie checkout (Phase 8)
   8b: Cart page. 8c onepage styles appended later.
   Quiet luxury — design tokens from _01_tokens.css
   ═══════════════════════════════════════════════════════════════════ */

.dg-cart {
    max-width: var(--dg-container-max, 1400px);
    margin: 0 auto;
    padding: var(--dg-space-2xl, 48px) var(--dg-gutter, 24px) var(--dg-space-4xl, 96px);
}

.dg-cart__head {
    margin-bottom: var(--dg-space-2xl, 48px);
    padding-bottom: var(--dg-space-lg, 24px);
    border-bottom: 0.5px solid var(--dg-line, #e8e6e0);
}
.dg-eyebrow {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xxs, 11px);
    letter-spacing: var(--dg-tracking-widest, 0.18em);
    text-transform: uppercase;
    color: var(--dg-gold, #8b6f47);
    font-weight: 500;
    margin: 0 0 var(--dg-space-xs, 8px);
}
.dg-cart__title {
    font-family: var(--dg-font-serif);
    font-size: var(--dg-text-3xl, 54px);
    font-weight: 400;
    color: var(--dg-ink, #1a1a1a);
    margin: 0;
    line-height: 1.1;
}

/* ── Two-column layout ── */
.dg-cart__layout {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: var(--dg-space-3xl, 64px);
    align-items: start;
}

/* ── Item list ── */
.dg-cart__items { min-width: 0; }
.dg-cart__totals { margin-bottom: var(--dg-space-md, 16px); }
.dg-cart__list {
    border-top: 0.5px solid var(--dg-line, #e8e6e0);
}

.dg-cart-item {
    display: grid;
    grid-template-columns: 120px 1fr auto auto;
    gap: var(--dg-space-lg, 24px);
    padding: var(--dg-space-xl, 32px) 0;
    border-bottom: 0.5px solid var(--dg-line, #e8e6e0);
    align-items: start;
}
.dg-cart-item__media {
    width: 120px;
    height: 150px;
    background: var(--dg-stone, #f1efe9);
    overflow: hidden;
}
.dg-cart-item__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.dg-cart-item__body { min-width: 0; }
.dg-cart-item__name {
    font-family: var(--dg-font-serif);
    font-size: var(--dg-text-lg, 22px);
    font-weight: 400;
    margin: 0 0 var(--dg-space-md, 16px);
    line-height: 1.25;
}
.dg-cart-item__name a {
    color: var(--dg-ink, #1a1a1a);
    text-decoration: none;
}
.dg-cart-item__name a:hover { color: var(--dg-gold, #8b6f47); }

.dg-cart-item__spec {
    margin: 0 0 var(--dg-space-md, 16px);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dg-space-xs, 8px) var(--dg-space-xl, 32px);
}
.dg-cart-item__spec-row {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.dg-cart-item__spec-row dt {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xxs, 11px);
    color: var(--dg-muted, #6b6b6b);
    margin: 0;
}
.dg-cart-item__spec-row dd {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xs, 12px);
    color: var(--dg-ink, #1a1a1a);
    font-weight: 500;
    margin: 0;
}

.dg-cart-item__msg {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xs, 12px);
    margin: var(--dg-space-xs, 8px) 0;
}
.dg-cart-item__msg--error { color: var(--dg-error, #a04545); }
.dg-cart-item__msg--notice { color: var(--dg-warning, #c08948); }

/* ── Size profile card (matches PDP / order detail) ── */
.dg-cart-size {
    display: flex;
    align-items: center;
    gap: var(--dg-space-lg, 24px);
    margin: var(--dg-space-lg, 24px) 0 0;
    padding: var(--dg-space-lg, 20px) var(--dg-space-xl, 28px);
    background: var(--dg-cream, #fafaf7);
    border: 0.5px solid var(--dg-line, #e8e6e0);
}
.dg-cart-size__avatar {
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: var(--dg-ink, #1a1a1a);
    color: var(--dg-paper, #fff);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-lg, 22px);
    line-height: 1;
}
.dg-cart-size__body { flex: 1 1 auto; min-width: 0; }
.dg-cart-size__eyebrow {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xxs, 11px);
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--dg-muted, #6b6b6b);
    margin: 0 0 4px;
}
.dg-cart-size__name {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-md, 18px);
    color: var(--dg-ink, #1a1a1a);
    margin: 0;
    line-height: 1.3;
}
.dg-cart-size__name strong { font-weight: 600; }
.dg-cart-size__desc {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xs, 14px);
    color: var(--dg-muted, #6b6b6b);
    display: block;
}
.dg-cart-size__change {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: var(--dg-space-xs, 8px);
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xs, 12px);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--dg-ink, #1a1a1a);
    text-decoration: none;
    padding: var(--dg-space-sm, 12px) var(--dg-space-lg, 22px);
    border: 0.5px solid var(--dg-ink, #1a1a1a);
    transition: background 200ms, color 200ms;
}
.dg-cart-size__change svg { display: block; }
.dg-cart-size__change:hover {
    background: var(--dg-ink, #1a1a1a);
    color: var(--dg-paper, #fff);
}

.dg-cart-item__controls {
    display: flex;
    gap: var(--dg-space-lg, 24px);
    margin-top: var(--dg-space-lg, 12px);
}
.dg-cart-item__edit,
.dg-cart-item__remove {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xs, 11px);
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--dg-muted, #6b6b6b);
    text-decoration: none;
    border-bottom: 0.5px solid #000;
    transition: color 150ms, border-color 150ms;
}
.dg-cart-item__edit:hover { color: var(--dg-ink, #1a1a1a); border-bottom-color: var(--dg-ink, #1a1a1a); }
.dg-cart-item__remove:hover { color: var(--dg-error, #a04545); border-bottom-color: var(--dg-error, #a04545); }

.dg-cart-item__qty { text-align: center; }
.dg-cart-item__qty-label {
    display: block;
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xxs, 11px);
    color: var(--dg-muted, #6b6b6b);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: var(--dg-space-xs, 8px);
}
.dg-cart-item__qty-input {
    width: 56px;
    padding: var(--dg-space-sm, 10px);
    border: 0.5px solid var(--dg-line, #e8e6e0);
    text-align: center;
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-sm, 14px);
    background: var(--dg-paper, #fff);
}
.dg-cart-item__qty-input:focus {
    outline: none;
    border-color: var(--dg-ink, #1a1a1a);
}

.dg-cart-item__price {
    text-align: right;
    font-family: var(--dg-font-serif);
    font-size: var(--dg-text-md, 18px);
    color: var(--dg-ink, #1a1a1a);
    white-space: nowrap;
}
.dg-cart-item__price-unit {
    display: block;
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xxs, 11px);
    color: var(--dg-faint, #999);
    margin-top: 4px;
}

/* ── Cart actions ── */
.dg-cart__actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: var(--dg-space-xl, 32px);
}
.dg-cart__continue {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-sm, 14px);
    color: var(--dg-ink, #1a1a1a);
    text-decoration: none;
}
.dg-cart__continue:hover { color: var(--dg-gold, #8b6f47); }
.dg-cart__update {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xs, 12px);
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: var(--dg-space-sm, 12px) var(--dg-space-lg, 24px);
    background: transparent;
    color: var(--dg-ink, #1a1a1a);
    border: 0.5px solid var(--dg-ink, #1a1a1a);
    cursor: pointer;
    transition: background 150ms, color 150ms;
}
.dg-cart__update:hover { background: var(--dg-ink, #1a1a1a); color: var(--dg-paper, #fff); }

/* ── Summary aside (sticky) ── */
.dg-cart__aside { position: sticky; top: var(--dg-space-xl, 32px); }
.dg-cart__summary {
    background: var(--dg-cream, #fafaf7);
    border: 0.5px solid var(--dg-line, #e8e6e0);
    padding: var(--dg-space-xl, 32px);
}
.dg-cart__summary-h {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xxs, 11px);
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--dg-gold, #8b6f47);
    font-weight: 500;
    margin: 0 0 var(--dg-space-lg, 24px);
    padding-bottom: var(--dg-space-md, 16px);
    border-bottom: 0.5px solid var(--dg-line, #e8e6e0);
}

.dg-cart-totals { width: 100%; border-collapse: collapse; }
.dg-cart-totals td {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-sm, 14px);
    color: var(--dg-ink-soft, #4a4a4a);
    padding: var(--dg-space-sm, 10px) 0;
}
.dg-cart-totals td.a-right,
.dg-cart-totals td:last-child { text-align: right; }
.dg-cart-totals tfoot td,
.dg-cart-totals .grand_total td,
.dg-cart-totals tr.grand_total strong,
.dg-cart-totals strong {
    font-family: var(--dg-font-serif);
    font-size: var(--dg-text-lg, 22px);
    color: var(--dg-ink, #1a1a1a);
    font-weight: 400;
    padding-top: var(--dg-space-md, 16px);
    white-space: nowrap;
}

.dg-cart__vat {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xxs, 11px);
    color: var(--dg-faint, #999);
    font-style: italic;
    margin: var(--dg-space-md, 16px) 0 var(--dg-space-lg, 24px);
    text-align: center;
}

.dg-cart__checkout {
    display: block;
    text-align: center;
    background: var(--dg-ink, #1a1a1a);
    color: var(--dg-paper, #fff);
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-sm, 13px);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: var(--dg-space-md, 18px);
    text-decoration: none;
    transition: background 200ms;
}
.dg-cart__checkout:hover { background: var(--dg-gold, #8b6f47); color: var(--dg-paper, #fff);  }

.dg-cart__coupon {
    margin-top: var(--dg-space-lg, 24px);
    padding-top: var(--dg-space-lg, 24px);
    border-top: 0.5px solid var(--dg-line, #e8e6e0);
}
.dg-coupon__label {
    display: block;
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xxs, 11px);
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--dg-muted, #6b6b6b);
    margin-bottom: var(--dg-space-xs, 8px);
}

.dg-coupon__input {
    flex: 1 1 auto;
    min-width: 0;
    padding: var(--dg-space-sm, 10px) var(--dg-space-md, 14px);
    border: 0.5px solid var(--dg-line, #e8e6e0);
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-sm, 13px);
    background: var(--dg-paper, #fff);
}
.dg-coupon__input:focus { outline: none; border-color: var(--dg-ink, #1a1a1a); }
.dg-coupon__apply {
    flex: 0 0 auto;
    padding: 0 var(--dg-space-lg, 20px);
    background: var(--dg-ink, #1a1a1a);
    color: var(--dg-paper, #fff);
    border: 0;
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xxs, 11px);
    letter-spacing: 0.05em;
    text-transform: uppercase;
    cursor: pointer;
    transition: background 150ms;
}
.dg-coupon__apply:hover { background: var(--dg-gold, #8b6f47); }
.dg-coupon__cancel {
    margin-top: var(--dg-space-sm, 10px);
    background: none;
    border: 0;
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xxs, 11px);
    color: var(--dg-muted, #6b6b6b);
    text-decoration: underline;
    cursor: pointer;
    padding: 0;
}
.dg-coupon__cancel:hover { color: var(--dg-error, #a04545); }

.dg-cart__trust {
    list-style: none;
    margin: var(--dg-space-lg, 24px) 0 0;
    padding: var(--dg-space-lg, 24px) 0 0;
    border-top: 0.5px solid var(--dg-line, #e8e6e0);
}
.dg-cart__trust li {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xs, 12px);
    color: var(--dg-muted, #6b6b6b);
    padding: var(--dg-space-xs, 6px) 0;
    padding-left: var(--dg-space-md, 18px);
    position: relative;
}


/* ── Cross-sell ── */
.dg-cart__crosssell { margin-top: var(--dg-space-4xl, 96px); }

/* ── Empty cart ── */
.dg-cart--empty { min-height: 50vh; }
.dg-cart-empty {
    max-width: var(--dg-container-prose, 720px);
    margin: var(--dg-space-4xl, 96px) auto;
    text-align: center;
    background: var(--dg-cream, #fafaf7);
    border: 0.5px solid var(--dg-line, #e8e6e0);
    padding: var(--dg-space-4xl, 96px) var(--dg-space-2xl, 48px);
}
.dg-cart-empty__title {
    font-family: var(--dg-font-serif);
    font-size: var(--dg-text-2xl, 38px);
    font-weight: 400;
    color: var(--dg-ink, #1a1a1a);
    margin: var(--dg-space-sm, 12px) 0 var(--dg-space-md, 16px);
}
.dg-cart-empty__text {
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-base, 16px);
    color: var(--dg-muted, #6b6b6b);
    margin: 0 auto var(--dg-space-xl, 32px);
    max-width: 420px;
    line-height: 1.6;
}
.dg-cart-empty__cta {
    display: inline-block;
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xs, 12px);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--dg-ink, #1a1a1a);
    border: 0.5px solid var(--dg-ink, #1a1a1a);
    padding: var(--dg-space-md, 16px) var(--dg-space-2xl, 40px);
    text-decoration: none;
    transition: background 200ms, color 200ms;
}
.dg-cart-empty__cta:hover { background: var(--dg-ink, #1a1a1a); color: var(--dg-paper, #fff); }

/* ── Responsive ── */
@media (max-width: 1023px) {
    .dg-cart__layout { grid-template-columns: 1fr; gap: var(--dg-space-2xl, 48px); }
    .dg-cart__aside { position: static; }
    .dg-cart__title { font-size: var(--dg-text-2xl, 38px); }
    .dg-cart-item {
        grid-template-columns: 88px 1fr;
        grid-template-areas:
            "media body"
            "media qty"
            "price price";
        gap: var(--dg-space-md, 16px);
    }
    .dg-cart-item__media { width: 88px; height: 110px; grid-area: media; }
    .dg-cart-item__body { grid-area: body; }
    .dg-cart-item__qty { grid-area: qty; text-align: left; }
    .dg-cart-item__price { grid-area: price; text-align: left; padding-top: var(--dg-space-sm, 12px); border-top: 0.5px dotted var(--dg-line, #e8e6e0); }
    .dg-cart-item__spec { grid-template-columns: 1fr; }
    .dg-cart-size { flex-wrap: wrap; gap: var(--dg-space-md, 16px); padding: var(--dg-space-md, 16px); }
}
@media (max-width: 600px) {
    .dg-cart { padding: var(--dg-space-xl, 32px) var(--dg-gutter-mobile, 16px) var(--dg-space-3xl, 64px); }
    .dg-cart-item__spec { grid-template-columns: 1fr; }
}




/* ═══════════════════════════════════════════════════════════════════
   8c — Onepage checkout editorial (appended Phase 8c)
   2-col: accordion steps (left) + order summary aside (right).
   Reuses 8b sticky tokens. Accordion #checkoutSteps = NATIVE structure
   (skinned only, never restructured). Variant C order summary.
   marker: DG-8C-ED v1.0
   ═══════════════════════════════════════════════════════════════════ */

.dg-co {
    max-width: var(--dg-container-max, 1400px);
    margin: 0 auto;
    padding: var(--dg-space-2xl, 48px) var(--dg-gutter, 24px) var(--dg-space-4xl, 96px);
}
.dg-co__head {
    margin-bottom: var(--dg-space-2xl, 48px);
    padding-bottom: var(--dg-space-lg, 24px);
    border-bottom: 0.5px solid var(--dg-line, #e8e6e0);
}
.dg-co__title {
    font-family: var(--dg-font-serif);
    font-size: var(--dg-text-2xl, 38px);
    font-weight: 400;
    color: var(--dg-ink, #1a1a1a);
    margin: var(--dg-space-xs, 8px) 0 0;
}
.dg-co__layout {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: var(--dg-space-3xl, 64px);
    align-items: start;
}
.dg-co__aside { position: sticky; top: var(--dg-space-xl, 32px); }
.dg-co__summary {
    background: var(--dg-paper, #fff);
    border: 0.5px solid var(--dg-ink, #1a1a1a);
}
.dg-co__summary-h {
    font-family: var(--dg-font-serif);
    font-size: var(--dg-text-md, 18px);
    color: var(--dg-ink, #1a1a1a);
    margin: 0;
    padding: var(--dg-space-lg, 22px) var(--dg-space-lg, 24px);
    border-bottom: 0.5px solid var(--dg-line, #e8e6e0);
}
.dg-co__secure {
    display: flex;
    align-items: center;
    gap: var(--dg-space-xs, 8px);
    font-size: var(--dg-text-xxs, 11px);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--dg-faint, #999);
    margin: var(--dg-space-md, 16px) 0 0;
    padding: 6px 4px;
}

/* ── Accordion steps — native #checkoutSteps .section, editorial skin ── */
#checkoutSteps.opc { list-style: none; margin: 0; padding: 0; }
#checkoutSteps .section {
    background: var(--dg-paper, #fff);
    border: 0.5px solid var(--dg-line, #e8e6e0);
    border-bottom: none;
}
#checkoutSteps .section:last-child { border-bottom: 0.5px solid var(--dg-line, #e8e6e0); }
#checkoutSteps .step-title {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 24px;
    cursor: pointer;
}
#checkoutSteps .step-title .number {
    width: 26px; height: 26px;
    border: 0.5px solid var(--dg-faint, #b4b2a9);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: var(--dg-text-xs, 12px);
    color: var(--dg-faint, #999);
    flex-shrink: 0;
}
#checkoutSteps .step-title h2 {
    flex: 1;
    font-family: var(--dg-font-sans);
    font-size: var(--dg-text-xxs, 11px);
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--dg-muted, #6b6b6b);
    font-weight: 500;
    margin: 0;
}
#checkoutSteps .step-title a {
    font-size: var(--dg-text-xxs, 11px);
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--dg-muted, #6b6b6b);
    border: 0.5px solid var(--dg-line, #e8e6e0);
    padding: 8px 16px;
    text-decoration: none;
}
#checkoutSteps .section.saved .step-title .number {
    border-color: var(--dg-success, #4a7c59);
    color: var(--dg-success, #4a7c59);
}
#checkoutSteps .section.active { background: var(--dg-cream, #fafaf7); }
#checkoutSteps .section.active .step-title .number {
    background: var(--dg-ink, #1a1a1a);
    border-color: var(--dg-ink, #1a1a1a);
    color: var(--dg-paper, #fff);
}
#checkoutSteps .section.active .step-title h2 { color: var(--dg-gold, #8b6f47); }
#checkoutSteps .section:not(.allow):not(.active):not(.saved) { opacity: 0.45; }
#checkoutSteps .section:not(.allow):not(.active):not(.saved) .step-title { cursor: default; }
#checkoutSteps .section .step {
    padding: 0 24px 24px 64px;
}
#checkoutSteps .section .step .buttons-set {
    margin-top: 22px;
    border: none;
    padding: 0;
}
#checkoutSteps .section .step .buttons-set button,
#checkoutSteps .section .step button.button {
    background: var(--dg-ink, #1a1a1a);
    color: var(--dg-paper, #fff);
    border: none;
    font-size: var(--dg-text-xs, 12px);
    letter-spacing: 0.18em;
    text-transform: uppercase;
    padding: 15px 38px;
    cursor: pointer;
}
#checkoutSteps .section .step .buttons-set button:hover,
#checkoutSteps .section .step button.button:hover {
    background: var(--dg-gold, #8b6f47);
}
#checkoutSteps .section .step .back-link a {
    font-size: var(--dg-text-xs, 12px);
    color: var(--dg-muted, #6b6b6b);
    text-decoration: none;
}
#checkoutSteps .section .step input.input-text,
#checkoutSteps .section .step select,
#checkoutSteps .section .step textarea {
    border: 0.5px solid var(--dg-line, #e8e6e0);
    padding: 11px 14px;
    font-size: var(--dg-text-sm, 14px);
    color: var(--dg-ink, #1a1a1a);
    background: var(--dg-paper, #fff);
    font-family: var(--dg-font-sans);
}
#checkoutSteps .section .step input.input-text:focus,
#checkoutSteps .section .step select:focus,
#checkoutSteps .section .step textarea:focus {
    outline: none;
    border-color: var(--dg-ink, #1a1a1a);
}
#checkoutSteps .section .step label,
#checkoutSteps .section .step .field label {
    font-size: var(--dg-text-xxs, 11px);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--dg-faint, #999);
}

/* ── Order summary — Variant C (Minimal Editorial) ── */
.dg-co-sum__items {
    padding: 20px 24px;
    border-bottom: 0.5px solid var(--dg-line, #e8e6e0);
}
.dg-co-sum__item { display: flex; gap: 14px; }
.dg-co-sum__item + .dg-co-sum__item {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 0.5px dotted var(--dg-line, #e8e6e0);
}
.dg-co-sum__media {
    width: 64px; height: 80px;
    background: var(--dg-stone, #f1efe9);
    border: 0.5px solid var(--dg-line, #e8e6e0);
    flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
}
.dg-co-sum__media img { width: 100%; height: 100%; object-fit: cover; }
.dg-co-sum__media-ph {
    font-size: var(--dg-text-xxs, 11px);
    letter-spacing: 0.1em;
    color: var(--dg-faint, #b4b2a9);
}
.dg-co-sum__body { flex: 1; min-width: 0; }
.dg-co-sum__name {
    font-family: var(--dg-font-serif);
    font-size: var(--dg-text-sm, 15px);
    color: var(--dg-ink, #1a1a1a);
    line-height: 1.35;
    margin: 0;
}
.dg-co-sum__meta {
    font-size: var(--dg-text-xxs, 11px);
    color: var(--dg-faint, #999);
    letter-spacing: 0.08em;
    margin: 5px 0;
}
.dg-co-sum__size {
    font-size: var(--dg-text-xs, 12px);
    color: var(--dg-gold, #8b6f47);
    letter-spacing: 0.04em;
    margin: 0;
}
.dg-co-sum__price {
    font-size: var(--dg-text-sm, 14px);
    color: var(--dg-ink, #1a1a1a);
    white-space: nowrap;
}
.dg-co-sum__lines {
    padding: 20px 24px;
    border-bottom: 0.5px solid var(--dg-line, #e8e6e0);
}
.dg-co-sum__line {
    display: flex;
    justify-content: space-between;
    font-size: var(--dg-text-sm, 13px);
    color: var(--dg-ink-soft, #4a4a4a);
}
.dg-co-sum__line + .dg-co-sum__line { margin-top: 12px; }
.dg-co-sum__free { color: var(--dg-success, #4a7c59); }
.dg-co-sum__total {
    padding: 30px 24px 24px;
    text-align: center;
}
.dg-co-sum__total-l {
    font-size: var(--dg-text-xxs, 11px);
    letter-spacing: 0.26em;
    text-transform: uppercase;
    color: var(--dg-faint, #999);
    margin: 0 0 10px;
}
.dg-co-sum__total-v {
    font-family: var(--dg-font-serif);
    font-size: 36px;
    color: var(--dg-ink, #1a1a1a);
    letter-spacing: 0.01em;
    margin: 0;
}
.dg-co-sum__vat {
    font-size: 10px;
    color: var(--dg-faint, #999);
    letter-spacing: 0.05em;
    margin: 7px 0 0;
}
.dg-co-sum__rule {
    display: block;
    width: 40px; height: 1px;
    background: var(--dg-gold, #8b6f47);
    margin: 22px auto 0;
}
.dg-co-sum__trust {
    list-style: none;
    margin: 0;
    padding: 16px 24px 20px;
    border-top: 0.5px solid var(--dg-line, #e8e6e0);
}
.dg-co-sum__trust li {
    font-size: var(--dg-text-xxs, 11px);
    color: var(--dg-muted, #6b6b6b);
    letter-spacing: 0.05em;
    padding-left: 18px;
    position: relative;
}
.dg-co-sum__trust li + li { margin-top: 9px; }
.dg-co-sum__trust li::before {
    content: '';
    position: absolute;
    left: 0; top: 7px;
    width: 5px; height: 5px;
    background: var(--dg-gold, #8b6f47);
}
.dg-co-sum__empty {
    padding: 40px 24px;
    text-align: center;
    color: var(--dg-faint, #999);
    font-size: var(--dg-text-sm, 14px);
}

/* ── Responsive ── */
@media (max-width: 1023px) {
    .dg-co__layout { grid-template-columns: 1fr; gap: var(--dg-space-2xl, 48px); }
    .dg-co__aside { position: static; }
    .dg-co__title { font-size: var(--dg-text-xl, 28px); }
    #checkoutSteps .section .step { padding-left: 24px; }
}
@media (max-width: 600px) {
    .dg-co { padding: var(--dg-space-xl, 32px) var(--dg-gutter-mobile, 16px) var(--dg-space-3xl, 64px); }
    .dg-co-sum__total-v { font-size: 30px; }
    .dg-rev-li__size-main{flex:0!important;}
    .dg-rev-li__name {padding-bottom: 7px;
    border-bottom: 1px solid;
    border-color:var(--dg-gold, #8b6f47);
    }
    .dg-rev-li td {
        padding: 30px 0!important;
    }
    .dg-rev-li__meta {
        margin: 0 0 20px!important;
    }
}
/* ═══ DG-8C-THEMEFIX v1.0 — newdgrie checkout form styling ═══ */
#checkoutSteps .opc,#checkoutSteps ul.form-list,#checkoutSteps .step ul,#checkoutSteps .step ol,#checkoutSteps .step li,#checkoutSteps .sp-methods,#checkoutSteps .sp-methods li,.dg-co .opc li,.dg-co ul.form-list,.dg-co ul.form-list li{list-style:none !important;margin:0;padding:0;}
#checkoutSteps .step ul.form-list{display:block;margin:0 0 4px;}
#checkoutSteps .step ul.form-list>li{margin-bottom:18px;}
#checkoutSteps .step ul.form-list>li.control{margin-bottom:12px;}
#checkoutSteps .step li.fields{display:flex;gap:20px;flex-wrap:wrap;    margin-top: 10px; }
#checkoutSteps .step li.fields>.field,#checkoutSteps .step li.fields>.customer-name{flex:1 1 calc(50% - 10px);min-width:200px;}
#checkoutSteps .step li.fields>.customer-name{display:flex;gap:20px;flex:1 1 100%;}
#checkoutSteps .step li.fields>.customer-name>.field{flex:1 1 calc(50% - 10px);min-width:180px;}
#checkoutSteps .step li.wide{width:100%; margin-top:15px;}
#checkoutSteps .step .field{margin-bottom:0;}
#checkoutSteps .step .input-box{margin-top:5px;}
#checkoutSteps .step .input-box input.input-text,#checkoutSteps .step .input-box select,#checkoutSteps .step .input-box textarea{width:100%;box-sizing:border-box;}
#checkoutSteps .step label.required,#checkoutSteps .step .field label{display:block;margin-bottom:2px;}
#checkoutSteps .step label.required em,#checkoutSteps .step label .required,#checkoutSteps .step em{color:var(--dg-error,#a04545);font-style:normal;margin-right:3px;}
#checkoutSteps .step p.required{font-size:var(--dg-text-xxs,11px);color:var(--dg-faint,#999);letter-spacing:0.06em;margin:14px 0 0;}
#checkoutSteps .step li.control{display:flex;align-items:center;gap:8px;margin-top:15px;}
#checkoutSteps .step li.control label{text-transform:none;letter-spacing:0.02em;font-size:var(--dg-text-sm,13px);color:var(--dg-ink-soft,#4a4a4a);margin:0;cursor:pointer;}
#checkoutSteps .step input.radio,#checkoutSteps .step input.checkbox,#checkoutSteps .step input[type="radio"],#checkoutSteps .step input[type="checkbox"]{width:16px;height:16px;accent-color:var(--dg-ink,#1a1a1a);margin:0;flex-shrink:0;}
/* sp-methods editorial — no stray border under group label */
#checkoutSteps .sp-methods{margin:0;}
#checkoutSteps .sp-methods dt{
    font-size:var(--dg-text-xxs,11px);
    letter-spacing:0.16em;
    text-transform:uppercase;
    color:var(--dg-faint,#999);
    padding:0 0 8px;
    margin:18px 0 0;
    border:none;
}
#checkoutSteps .sp-methods dt:first-child{margin-top:0;}
/* payment dt (radio + label) — override eyebrow for dt_method rows */
#checkoutSteps .sp-methods dt[id^="dt_method"],
#checkoutSteps dt[id^="dt_method"]{
    display:flex;align-items:center;gap:11px;
    font-size:var(--dg-text-sm,14px) !important;
    letter-spacing:0.02em !important;
    text-transform:none !important;
    color:var(--dg-ink,#1a1a1a) !important;
    padding:13px 2px !important;
    margin:0 !important;
    border:none;
}
#checkoutSteps dt[id^="dt_method"] .no-display{
    position:static !important;display:inline-flex !important;
    width:auto !important;height:auto !important;overflow:visible !important;
    clip:auto !important;
}
#checkoutSteps dt[id^="dt_method"] input.radio,
#checkoutSteps dt[id^="dt_method"] input[type="radio"]{
    width:16px;height:16px;accent-color:var(--dg-ink,#1a1a1a);
    margin:0;flex-shrink:0;
}
#checkoutSteps dt[id^="dt_method"] label{
    margin:0;cursor:pointer;flex:1;
    text-transform:none !important;letter-spacing:0.02em !important;
    font-size:var(--dg-text-sm,14px) !important;
    color:var(--dg-ink,#1a1a1a) !important;
}
#checkoutSteps dd[id^="dd_method"]{padding:0;margin:0;}
#checkoutSteps dd[id^="dd_method"] ul.form-list{padding:0;margin:0;list-style:none;}
#checkoutSteps dd[id^="dd_method"] ul.form-list li{list-style:none;margin:0;padding:0;}
#checkoutSteps .sp-methods dd{padding:0;margin:0 0 4px;}
#checkoutSteps .sp-methods dd ul,#checkoutSteps .sp-methods dd li{list-style:none !important;margin:0;padding:0;}
#checkoutSteps .sp-methods dd li{
    display:flex;
    align-items:center;
    gap:11px;
    padding:13px 2px;
    border-bottom:0.5px solid var(--dg-line,#e8e6e0);
}
#checkoutSteps .sp-methods dd li:last-child{border-bottom:none;}
#checkoutSteps .sp-methods dd li input.radio,
#checkoutSteps .sp-methods dd li input[type="radio"]{
    width:16px;height:16px;
    accent-color:var(--dg-ink,#1a1a1a);
    margin:0;flex-shrink:0;
}
#checkoutSteps .section .step .sp-methods dd li label,
#checkoutSteps .sp-methods dd li label{
    flex:1;
    display:flex;
    align-items:baseline;
    gap:10px;
    margin:0;
    cursor:pointer;
    text-transform:none !important;
    letter-spacing:0.02em !important;
    font-size:var(--dg-text-sm,14px) !important;
    color:var(--dg-ink,#1a1a1a) !important;
}
#checkoutSteps .sp-methods dd li label .price{
    margin-left:auto;
    font-family:var(--dg-font-serif);
    font-size:var(--dg-text-md,16px);
    color:var(--dg-ink,#1a1a1a);
}
#checkoutSteps .sp-methods .form-list{padding:14px 0 4px;}
#checkoutSteps fieldset,#checkoutSteps .step fieldset{border:none;padding:0;margin:0;}
#checkoutSteps .banktransfer-instructions-content,#checkoutSteps .sp-methods .agreement-content{font-size:var(--dg-text-sm,13px);color:var(--dg-ink-soft,#4a4a4a);line-height:1.65;padding:18px 20px;background:var(--dg-cream,#fafaf7);border:none;}
#checkoutSteps .sp-methods dd li:last-child{border-bottom:none;}
#checkoutSteps .sp-methods .agreement-content a{color:var(--dg-gold,#8b6f47);}
#checkoutSteps .please-wait,.dg-co .please-wait{display:inline-flex;align-items:center;gap:10px;font-size:var(--dg-text-xs,12px);color:var(--dg-muted,#6b6b6b);letter-spacing:0.04em;}
#checkoutSteps .please-wait img,.dg-co .please-wait img{display:none;}
#checkoutSteps .please-wait::before,.dg-co .please-wait::before{content:"";width:16px;height:16px;border:2px solid var(--dg-line,#e8e6e0);border-top-color:var(--dg-ink,#1a1a1a);border-radius:50%;display:inline-block;animation:dg-co-spin 0.7s linear infinite;flex-shrink:0;}
@keyframes dg-co-spin{to{transform:rotate(360deg);}}
@media (prefers-reduced-motion:reduce){#checkoutSteps .please-wait::before,.dg-co .please-wait::before{animation-duration:2s;}}
#checkoutSteps .step select.address-select{width:100%;margin-top:5px;}
#checkoutSteps .step .buttons-set{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
#checkoutSteps .step .buttons-set p.back-link{margin:14px 0 0;}
#checkoutSteps .step .buttons-set p.required{flex:1 1 100%;order:-1;}
#checkoutSteps .tool-tip,.remember-me-popup{background:var(--dg-paper,#fff);border:0.5px solid var(--dg-line,#e8e6e0);padding:16px;font-size:var(--dg-text-sm,13px);}
/* ── DG-8C summary subnote / muted ── */
.dg-co-sum__subnote {
    text-align: right;
    font-size: var(--dg-text-xxs, 11px);
    color: var(--dg-faint, #999);
    letter-spacing: 0.04em;
    margin-top: 4px;
    font-style: italic;
}
.dg-co-sum__muted { color: var(--dg-faint, #999); }

/* ── DG-8C #C+#D Order Review editorial ── */
.dg-rev{margin:0 0 24px;}
.dg-rev__table{width:100%;border-collapse:collapse;}
.dg-rev__table thead th{font-size:var(--dg-text-xxs,11px);letter-spacing:0.14em;text-transform:uppercase;color:var(--dg-faint,#999);font-weight:400;text-align:left;padding:0 0 12px;border-bottom:0.5px solid var(--dg-line,#e8e6e0);}

.dg-rev-li td{padding:18px 0;border-bottom:0.5px solid var(--dg-line,#e8e6e0);vertical-align:top;}
.dg-rev-li__name{font-family:var(--dg-font-serif);font-size:var(--dg-text-md,18px);color:var(--dg-ink,#1a1a1a);margin:0 0 6px;line-height:1.3;}
.dg-rev-li__meta{font-size:var(--dg-text-xxs,11px);color:var(--dg-faint,#999);letter-spacing:0.06em;margin:0 0 10px;}
.dg-rev-li__meta strong{color:var(--dg-ink-soft,#4a4a4a);font-weight:600;}
.dg-rev-li__sep{margin:0 8px;}
.dg-rev-spec{margin:8px 0 0;}
.dg-rev-spec__h{font-size:var(--dg-text-xxs,11px);letter-spacing:0.12em;text-transform:uppercase;color:var(--dg-faint,#999);margin:0 0 8px;}
.dg-rev-spec__grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px;margin:0;}
.dg-rev-spec__row{display:flex;flex-direction:column;gap:1px;}
.dg-rev-spec__k{font-size:var(--dg-text-xxs,11px);color:var(--dg-muted,#6b6b6b);letter-spacing:0.04em;margin:0;}
.dg-rev-spec__v{font-size:var(--dg-text-sm,13px);color:var(--dg-ink,#1a1a1a);margin:0;}
.dg-rev-li__attr{font-size:var(--dg-text-sm,13px);color:var(--dg-ink-soft,#4a4a4a);margin:6px 0 0;}
.dg-rev-li__attr-k{color:var(--dg-muted,#6b6b6b);}

.dg-rev-li__total{font-family:var(--dg-font-serif);}
.dg-rev__totals td{padding:10px 0;font-size:var(--dg-text-sm,14px);color:var(--dg-ink-soft,#4a4a4a);}
.dg-rev__totals tr:last-child td,.dg-rev__totals .grand_total td{font-family:var(--dg-font-serif);font-size:var(--dg-text-md,18px);color:var(--dg-ink,#1a1a1a);border-top:0.5px solid var(--dg-line,#e8e6e0);}
.dg-rev__vat td{font-size:var(--dg-text-xxs,11px);color:var(--dg-faint,#999);letter-spacing:0.04em;border:none;padding:6px 0 0;}
.dg-rev__submit{margin-top:24px;}
.dg-rev__buttons{display:flex;align-items:center;gap:18px;border:none;padding:0;margin-top:18px;}
.dg-rev__buttons button.btn-checkout{background:var(--dg-ink,#1a1a1a);color:var(--dg-paper,#fff);border:none;font-size:var(--dg-text-xs,12px);letter-spacing:0.18em;text-transform:uppercase;padding:15px 38px;cursor:pointer;}
.dg-rev__buttons button.btn-checkout:hover{background:var(--dg-gold,#8b6f47);}

/* DG-8C #D size card v2 — row layout (mockup), responsive */
.dg-rev-li__size{background:var(--dg-cream,#fafaf7);padding:16px 20px;margin:0 0 20px;display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px 40px;}
.dg-rev-li__size-main{display:flex;flex-direction:column;gap:5px;flex:1 1 220px;min-width:0;}
.dg-rev-li__size-row{display:flex;gap:12px;align-items:baseline;}
.dg-rev-li__size-meas{display:flex;gap:12px;align-items:baseline;flex:0 1 auto;}
.dg-rev-li__size-k{font-size:var(--dg-text-xxs,11px);letter-spacing:0.12em;text-transform:uppercase;color:var(--dg-gold,#8b6f47);flex-shrink:0;}
.dg-rev-li__size-v{font-family:var(--dg-font-serif);font-size:var(--dg-text-sm,14px);color:var(--dg-ink,#1a1a1a);}
.dg-rev-li__size-desc{font-size:var(--dg-text-xs,12px);color:var(--dg-muted,#6b6b6b);line-height:1.5;margin:0;}
.dg-rev__table{table-layout:fixed;}
.dg-rev-li__main{word-wrap:break-word;overflow-wrap:break-word;}
@media(max-width:600px){
  .dg-rev-li__size{flex-direction:column;gap:12px;padding:14px 16px;}
  .dg-rev-li__size-meas{padding-top:12px;border-top:0.5px solid var(--dg-line,#e8e6e0);width:100%;}
  .dg-rev-spec__grid{grid-template-columns:1fr !important;gap:12px 0 !important;}
  .dg-rev-li td{padding:14px 0;}
  .dg-rev-li__qty,.dg-rev-li__total{font-size:var(--dg-text-xs,12px);}
}

/* DG-8C #D column fix v3 — colgroup widths, qty/sub no collide (mockup) */
.dg-rev__table{table-layout:fixed;width:100%;}
.dg-rev__col-prod{width:auto;}
.dg-rev__col-qty{width:44px;}
.dg-rev__col-sub{width:118px;}
.dg-rev__th-prod{text-align:left;}
.dg-rev__th-qty{text-align:right;padding-left:8px !important;white-space:nowrap;}
.dg-rev__th-sub{text-align:right;padding-left:16px !important;white-space:nowrap;}
.dg-rev-li__qty{text-align:right;vertical-align:top;padding-left:8px !important;white-space:nowrap;font-size:var(--dg-text-sm,14px);color:var(--dg-ink,#1a1a1a);}
.dg-rev-li__total{text-align:right;vertical-align:top;padding-left:16px !important;white-space:nowrap;font-family:var(--dg-font-serif);font-size:var(--dg-text-sm,15px);color:var(--dg-ink,#1a1a1a);}

@media(max-width:600px){
  .dg-rev__col-qty{width:36px;}
  .dg-rev__col-sub{width:96px;}
  .dg-rev-li__qty,.dg-rev-li__total{font-size:var(--dg-text-xs,12px);}
}

/* DG-8C #D trust icon (cart+checkout) + price nowrap */
.dg-cart__trust li,.dg-co-sum__trust li{display:flex;align-items:center;gap:10px;padding-left:0 !important;}
.dg-cart__trust li::before,.dg-co-sum__trust li::before{display:none !important;content:none !important;}
.dg-cart__trust li svg,.dg-co-sum__trust li svg{flex-shrink:0;color:var(--dg-gold,#8b6f47);}
.dg-cart__trust li span,.dg-co-sum__trust li span{flex:1;min-width:0;}
.dg-cart__trust li+li{margin-top:4px;}
.dg-cart-totals td:last-child,.dg-cart-totals .grand_total td{white-space:nowrap;}

/* DG-8C #D grand total — single divider (no double line) + label/price gap */
.dg-cart-totals tfoot{border-top:0.5px solid var(--dg-line,#e8e6e0);}
.dg-cart-totals tfoot td{border-top:none !important;}
.dg-cart-totals tr.grand_total td:first-child,
.dg-cart-totals tfoot td:first-child{padding-right:32px;}

/* DG-8C #D coupon v4 — advice absolute (child of field, insertAdvice after input) */
.dg-coupon__row{display:flex;gap:var(--dg-space-xs,8px);align-items:stretch;}
.dg-coupon__field{flex:1 1 auto;min-width:0;position:relative;}
.dg-coupon__field .dg-coupon__input{width:100%;box-sizing:border-box;}
.dg-coupon__apply{flex:0 0 auto;align-self:stretch;}
#discount-coupon-form .validation-advice{
  position:absolute;top:100%;left:0;right:0;
  font-size:var(--dg-text-xxs,11px);color:var(--dg-error,#a04545);
  letter-spacing:0.02em;margin:6px 0 0;padding:0;list-style:none;
  white-space:normal;
}
.dg-cart__coupon{padding-bottom:22px;}






/* ═══ DG-P9 Order Success / Thank You (newdgrie editorial) ═══ */
.dg-success{max-width:var(--dg-container-prose,720px);margin:var(--dg-space-4xl,96px) auto;padding:var(--dg-space-4xl,96px) var(--dg-gutter,24px);text-align:center;}
.dg-success__eyebrow{font-family:var(--dg-font-sans);font-size:var(--dg-text-xxs,11px);letter-spacing:0.26em;text-transform:uppercase;color:var(--dg-gold,#8b6f47);margin:0 0 var(--dg-space-lg,24px);}
.dg-success__title{font-family:var(--dg-font-serif);font-size:var(--dg-text-3xl,54px);font-weight:400;color:var(--dg-ink,#1a1a1a);margin:0 0 var(--dg-space-md,20px);line-height:1.1;}
.dg-success__lede{font-family:var(--dg-font-sans);font-size:var(--dg-text-base,16px);color:var(--dg-muted,#6b6b6b);line-height:1.6;margin:0 auto;max-width:460px;}
.dg-success__rule{display:block;width:40px;height:1px;background:var(--dg-gold,#8b6f47);margin:var(--dg-space-2xl,40px) auto;}
.dg-success__order{margin:0 auto var(--dg-space-2xl,40px);}
.dg-success__order-l{display:block;font-family:var(--dg-font-sans);font-size:var(--dg-text-xxs,11px);letter-spacing:0.14em;text-transform:uppercase;color:var(--dg-faint,#999);margin:0 0 var(--dg-space-xs,8px);}
.dg-success__order-no{display:inline-block;font-family:var(--dg-font-serif);font-size:var(--dg-text-xl,28px);color:var(--dg-ink,#1a1a1a);text-decoration:none;letter-spacing:.02em;}
a.dg-success__order-no:hover{color:var(--dg-gold,#8b6f47);}
.dg-success__pay{text-align:left;max-width:520px;margin:0 auto var(--dg-space-2xl,40px);padding:var(--dg-space-xl,32px);background:var(--dg-cream,#fafaf7);border:0.5px solid var(--dg-line,#e8e6e0);}
.dg-success__pay-l{font-family:var(--dg-font-sans);font-size:var(--dg-text-xxs,11px);letter-spacing:0.14em;text-transform:uppercase;color:var(--dg-gold,#8b6f47);margin:0 0 var(--dg-space-md,16px);}
.dg-success__pay-body{font-family:var(--dg-font-sans);font-size:var(--dg-text-sm,14px);line-height:1.9;color:var(--dg-ink-soft,#4a4a4a);}
.dg-success__pay-body b{color:var(--dg-ink,#1a1a1a);font-weight:600;}
.dg-success__pay-body a{color:var(--dg-gold,#8b6f47);text-decoration:underline;text-underline-offset:2px;}
.dg-success__steps{text-align:left;max-width:520px;margin:0 auto var(--dg-space-2xl,40px);}
.dg-success__steps-l{font-family:var(--dg-font-sans);font-size:var(--dg-text-xxs,11px);letter-spacing:0.14em;text-transform:uppercase;color:var(--dg-faint,#999);margin:0 0 var(--dg-space-md,16px);text-align:center;}
.dg-success__steps-list{list-style:none;margin:0;padding:0;}
.dg-success__steps-list li{display:flex;align-items:flex-start;gap:14px;padding:var(--dg-space-md,16px) 0;border-bottom:0.5px solid var(--dg-line,#e8e6e0);}
.dg-success__steps-list li:last-child{border-bottom:0;}
.dg-success__step-n{flex:0 0 auto;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:0.5px solid var(--dg-gold,#8b6f47);color:var(--dg-gold,#8b6f47);font-family:var(--dg-font-sans);font-size:var(--dg-text-xs,12px);border-radius:50%;}
.dg-success__step-t{font-family:var(--dg-font-sans);font-size:var(--dg-text-sm,14px);color:var(--dg-ink-soft,#4a4a4a);line-height:1.5;padding-top:3px;}
.dg-success__actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:var(--dg-space-xl,32px);}
.dg-success__btn{display:inline-block;font-family:var(--dg-font-sans);font-size:var(--dg-text-xs,12px);letter-spacing:0.1em;text-transform:uppercase;padding:16px 40px;text-decoration:none;transition:background 200ms,color 200ms;}
.dg-success__btn--dark{background:var(--dg-ink,#1a1a1a);color:var(--dg-paper,#fff);}
.dg-success__btn--dark:hover{background:var(--dg-gold,#8b6f47);color:var(--dg-paper,#fff);}
.dg-success__btn--ghost{color:var(--dg-ink,#1a1a1a);border:0.5px solid var(--dg-ink,#1a1a1a);}
.dg-success__btn--ghost:hover{background:var(--dg-ink,#1a1a1a);color:var(--dg-paper,#fff);}
.dg-success__note{font-family:var(--dg-font-sans);font-size:var(--dg-text-xs,12px);color:var(--dg-muted,#6b6b6b);margin:0;}
.dg-success__note a{color:var(--dg-gold,#8b6f47);text-decoration:underline;text-underline-offset:2px;}
@media(max-width:600px){.dg-success{margin:var(--dg-space-2xl,48px) auto;padding:var(--dg-space-3xl,64px) var(--dg-gutter-mobile,16px);}.dg-success__title{font-size:var(--dg-text-2xl,38px);}.dg-success__btn{padding:14px 28px;}}
/* ═══ /DG-P9 success ═══ */
/* ═══ DG-P9 email-into-junk notice ═══ */
.dg-success__email-notice{display:flex;align-items:flex-start;gap:14px;text-align:left;max-width:520px;margin:0 auto var(--dg-space-xl,32px);padding:20px 24px;background:var(--dg-cream,#fafaf7);border:0.5px solid var(--dg-line,#e8e6e0);}
.dg-success__email-notice-icon{flex-shrink:0;margin-top:2px;color:var(--dg-gold,#8b6f47);width:20px;height:20px;}
.dg-success__email-notice-body{flex:1;min-width:0;}
.dg-success__email-notice-l{font-family:var(--dg-font-sans);font-size:var(--dg-text-xxs,11px);letter-spacing:0.14em;text-transform:uppercase;color:var(--dg-gold,#8b6f47);margin:0 0 var(--dg-space-xs,8px);}
.dg-success__email-notice-t{font-family:var(--dg-font-sans);font-size:var(--dg-text-sm,14px);line-height:1.65;color:var(--dg-ink-soft,#4a4a4a);margin:0;}
.dg-success__email-notice-t strong{font-weight:500;color:var(--dg-ink,#1a1a1a);}
@media(max-width:600px){.dg-success__email-notice{padding:16px 18px;gap:12px;}}
/* ═══ /DG-P9 email-into-junk notice ═══ */


@media (max-width: 1023px) {

        .dg-cart-size__avatar {
        flex: 0 0 24px !important;
        width: 24px !important;
        height: 24px !important;
        font-size: 12px!important;
    }
        .dg-cart-size__desc {
        font-size: 9px;
    }
    .dg-cart-item__qty-label {
        margin-top: 20px !important;
        font-weight: bold;
    }
    .dg-cart-item__price {
        margin-left: 105px;
        padding-top: var(--dg-space-lg, 24px);
    }


}

@media (min-width: 1024px) and (max-width: 1250px) {
        .dg-cart-size__avatar {
        flex: 0 0 32px !important;
        width: 32px !important;
        height: 32px !important;
        font-size: 15px!important;
    }
    .dg-cart-size {
        flex-wrap: wrap !important;
    }
}

.dg-co-sum__line--discount .dg-co-sum__discount {
    color: var(--dg-success, #5a7a3f);  /* green = savings */
    font-variant-numeric: tabular-nums;
}


@media (max-width: 600px) {
    /* flex items ใน checkout ห้าม overflow viewport */
    #checkoutSteps .step li.fields {
        flex-direction: column;
        gap: 14px;
    }
    #checkoutSteps .step li.fields > .field,
    #checkoutSteps .step li.fields > .customer-name {
        flex: 1 1 100%;
        min-width: 0;       /* ← สำคัญสุด: ปล่อยให้ shrink ได้ */
        width: 100%;
        max-width: 100%;
    }
    #checkoutSteps .step li.fields > .customer-name {
        display: flex;
        flex-direction: column;
        gap: 14px;
    }
    #checkoutSteps .step li.fields > .customer-name > .field {
        flex: 1 1 100%;
        min-width: 0;
        width: 100%;
    }

    /* select ต้องไม่บานตาม option ที่ยาวที่สุด */
    #checkoutSteps .step select,
    #checkoutSteps .step .input-box select {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    /* input-box wrapper */
    #checkoutSteps .step .input-box {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }
}
/* dg-success__notify v4 — match .dg-success__pay box (520px), balanced spacing */
.dg-success__notify{max-width:520px;margin:0 auto var(--dg-space-2xl,40px);}
.dg-success__notify .dg-success__btn{display:block;width:100%;box-sizing:border-box;text-align:center;}
