/* ===========================================
   HISTORICUM COMMERCE PAGES
   Cart · Checkout · My Account
   =========================================== */

/* -----------------------------------------
   0. BODY RESETS – Cart & Checkout
----------------------------------------- */
body.historicum-cart-page,
body.historicum-checkout-page {
    margin: 0 !important;
    padding: 0 !important;
    background: #000000 !important;
    color: #ffffff;
    font-family: var(--h-font-cormorant);
}

body.historicum-cart-page *,
body.historicum-checkout-page * {
    box-sizing: border-box;
}

/* Hide Botiga default header/footer (custom ones loaded via template-parts) */
body.historicum-cart-page .site-header,
body.historicum-cart-page #masthead,
body.historicum-cart-page .site-footer,
body.historicum-cart-page #colophon,
body.historicum-checkout-page .site-header,
body.historicum-checkout-page #masthead,
body.historicum-checkout-page .site-footer,
body.historicum-checkout-page #colophon {
    display: none !important;
}

body.historicum-cart-page .entry-header,
body.historicum-cart-page .page-header,
body.historicum-checkout-page .entry-header,
body.historicum-checkout-page .page-header {
    display: none !important;
}


/* -----------------------------------------
   1. PAGE WRAPPER & STAGE
----------------------------------------- */
.h-page-wrapper.h-commerce-page {
    min-height: 100vh;
    overflow: visible;
    background: transparent;
}

.h-page-stage {
    background:
        radial-gradient(circle at 14% 0%, rgba(70, 54, 0, 0.34), transparent 32%),
        radial-gradient(circle at 18% 0%, rgba(20, 44, 30, 0.18), transparent 38%),
        linear-gradient(180deg, #050805 0%, #020302 58%, #050604 100%);
}


/* -----------------------------------------
   2. HERO – Shared Cart & Checkout
----------------------------------------- */
.h-page-hero.h-commerce-hero {
    position: relative;
    min-height: 340px;
    padding: 132px 40px 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background:
        radial-gradient(90% 88% at 16% 0%, rgba(150, 112, 0, 0.28) 0%, rgba(42, 31, 0, 0.16) 34%, rgba(0, 0, 0, 0) 64%),
        linear-gradient(135deg, #151000 0%, #070704 35%, #000000 100%);
    text-align: center;
}

.h-page-bg-overlay {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse at 16% 0%, rgba(235, 188, 0, 0.12), transparent 58%),
        linear-gradient(180deg, rgba(0,0,0,0.16) 0%, rgba(0,0,0,0.78) 100%);
    pointer-events: none;
    z-index: 1;
}

.h-page-hero-content {
    position: relative;
    z-index: 2;
    width: min(1040px, 100%);
}

.h-page-title {
    margin: 0 0 20px;
    color: #ffffff;
    font-family: var(--h-font-cinzel);
    font-size: clamp(42px, 8vw, 72px);
    font-weight: 700;
    letter-spacing: 4px;
    line-height: 1.03;
    text-transform: uppercase;
}

.h-page-subtitle {
    margin: 0;
    color: #f5f0e6;
    font-family: var(--h-font-cormorant);
    font-size: clamp(20px, 3vw, 28px);
    font-style: italic;
    line-height: 1.35;
}


/* -----------------------------------------
   3. PAPER SECTION – Torn Edges
----------------------------------------- */
.h-paper-section.h-commerce-paper-section {
    position: relative;
    margin: 0;
    padding: 0;
    overflow: visible;
    isolation: isolate;
    background: #0a0a0a;
}

.h-paper-content.h-commerce-paper {
    position: relative;
    z-index: 2;
    background: var(--h-paper);
    color: #0a0a0a;
    padding: clamp(34px, 6vw, 80px);
    max-width: 100%;
    overflow: visible;
}

/* Paper grain texture */
.h-paper-content.h-commerce-paper::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image: url('https://historicum.pl/wp-content/uploads/2026/04/noise.png');
    background-repeat: repeat;
    background-size: 256px 256px;
    opacity: 0.026;
}

/* Cream fill is one flat colour on every screen size (the old radial vignette
   read as a gradient on narrow phones). */
.h-paper-content.h-commerce-paper::after {
    content: none;
}

.h-paper-content.h-commerce-paper > * {
    position: relative;
    z-index: 1;
}

/* --- Torn edges (commerce pages) --- */
.h-commerce-paper-section > .h-torn-top,
.h-commerce-paper-section > .h-torn-bottom,
.h-paper-content.h-commerce-paper > .h-torn-top,
.h-paper-content.h-commerce-paper > .h-torn-bottom {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 4 !important;
    display: block !important;
    width: 100% !important;
    height: 62px !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    transform: none !important;
    pointer-events: none;
}

.h-commerce-paper-section > .h-torn-top,
.h-paper-content.h-commerce-paper > .h-torn-top {
    top: -61px !important;
}

.h-commerce-paper-section > .h-torn-bottom,
.h-paper-content.h-commerce-paper > .h-torn-bottom {
    bottom: -61px !important;
}

.h-commerce-paper-section > .h-torn-top::before,
.h-commerce-paper-section > .h-torn-bottom::before,
.h-commerce-paper-section > .h-torn-top::after,
.h-commerce-paper-section > .h-torn-bottom::after,
.h-paper-content.h-commerce-paper > .h-torn-top::before,
.h-paper-content.h-commerce-paper > .h-torn-bottom::before,
.h-paper-content.h-commerce-paper > .h-torn-top::after,
.h-paper-content.h-commerce-paper > .h-torn-bottom::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--h-paper);
}

/* Clip-path fallback */
.h-commerce-paper-section > .h-torn-top::before,
.h-paper-content.h-commerce-paper > .h-torn-top::before {
    clip-path: polygon(0 70%, 5% 64%, 10% 72%, 16% 63%, 22% 71%, 29% 65%, 35% 73%, 42% 67%, 48% 75%, 55% 69%, 61% 76%, 68% 70%, 75% 77%, 82% 68%, 89% 74%, 95% 66%, 100% 72%, 100% 100%, 0 100%);
}

.h-commerce-paper-section > .h-torn-bottom::before,
.h-paper-content.h-commerce-paper > .h-torn-bottom::before {
    clip-path: polygon(0 70%, 5% 64%, 10% 72%, 16% 63%, 22% 71%, 29% 65%, 35% 73%, 42% 67%, 48% 75%, 55% 69%, 61% 76%, 68% 70%, 75% 77%, 82% 68%, 89% 74%, 95% 66%, 100% 72%, 100% 100%, 0 100%);
    transform: scaleY(-1);
    transform-origin: center;
}

.h-commerce-paper-section > .h-torn-top::after,
.h-commerce-paper-section > .h-torn-bottom::after,
.h-paper-content.h-commerce-paper > .h-torn-top::after,
.h-paper-content.h-commerce-paper > .h-torn-bottom::after {
    opacity: 0;
}

/* SVG mask upgrade */
@supports ((-webkit-mask-image: url("")) or (mask-image: url(""))) {
    .h-commerce-paper-section > .h-torn-top::before,
    .h-commerce-paper-section > .h-torn-bottom::before,
    .h-paper-content.h-commerce-paper > .h-torn-top::before,
    .h-paper-content.h-commerce-paper > .h-torn-bottom::before {
        opacity: 0;
    }

    .h-commerce-paper-section > .h-torn-top::after,
    .h-commerce-paper-section > .h-torn-bottom::after,
    .h-paper-content.h-commerce-paper > .h-torn-top::after,
    .h-paper-content.h-commerce-paper > .h-torn-bottom::after {
        opacity: 1;
        -webkit-mask-image: url("https://historicum.pl/wp-content/uploads/2026/04/torn-edge.svg");
        -webkit-mask-size: 126% 100%;
        -webkit-mask-repeat: no-repeat;
        mask-image: url("https://historicum.pl/wp-content/uploads/2026/04/torn-edge.svg");
        mask-size: 126% 100%;
        mask-repeat: no-repeat;
    }

    .h-commerce-paper-section > .h-torn-top::after,
    .h-paper-content.h-commerce-paper > .h-torn-top::after {
        -webkit-mask-position: 42% bottom;
        mask-position: 42% bottom;
    }

    .h-commerce-paper-section > .h-torn-bottom::after,
    .h-paper-content.h-commerce-paper > .h-torn-bottom::after {
        -webkit-mask-position: 58% top;
        mask-position: 58% top;
        transform: scaleY(-1);
        transform-origin: center;
    }
}


/* -----------------------------------------
   4. CART PAGE
----------------------------------------- */

/* --- Empty cart --- */
.h-cart-empty-panel {
    text-align: center;
    padding: clamp(60px, 10vw, 120px) clamp(24px, 4vw, 60px);
}

.h-cart-empty-icon {
    font-family: var(--h-font-cinzel);
    font-size: 72px;
    font-weight: 700;
    color: var(--h-accent);
    line-height: 1;
    margin-bottom: 24px;
}

.h-cart-empty-panel h2 {
    font-family: var(--h-font-cinzel);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #0a0a0a;
    margin: 0 0 16px;
}

.h-cart-empty-panel p {
    font-family: var(--h-font-cormorant);
    font-size: clamp(18px, 2.4vw, 22px);
    color: #0a0a0a;
    max-width: 560px;
    margin: 0 auto 32px;
    line-height: 1.5;
}

@media (max-width: 1399px), (hover: none) and (pointer: coarse) {
    body.historicum-cart-page .h-page-hero.h-commerce-hero {
        min-height: 260px;
        padding: 112px 18px 58px;
    }

    body.historicum-cart-page .h-commerce-paper-section {
        width: 100%;
        margin-right: calc(50% - 50vw);
        margin-left: calc(50% - 50vw);
    }

    body.historicum-cart-page .h-paper-content.h-commerce-paper {
        width: 100%;
        padding-right: 18px;
        padding-left: 18px;
    }

    body.historicum-cart-page .h-cart-empty-panel {
        padding-top: 56px;
        padding-bottom: 68px;
    }
}

.h-btn-gold {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 15px 35px;
    border: 2px solid var(--h-accent);
    background: var(--h-accent);
    color: #0a0a0a !important;
    font-family: var(--h-font-cinzel);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    text-decoration: none;
    transition: transform 0.25s ease, background-color 0.25s ease;
    cursor: pointer;
}

.h-btn-gold:hover {
    transform: translateY(-2px);
    background: var(--h-accent-hover);
    border-color: var(--h-accent-hover);
}

.h-btn-dark-text {
    color: #0a0a0a !important;
}


/* --- Cart layout (two-column) --- */


/* --- Cart items column --- */




/* DESKTOP: normal row grid (product | wait | price | qty | total | remove) */



















/* Add-on / customisation breakdown */





/* Wait badge */
.h-wait-badge {
    display: inline-block;
    padding: 4px 12px;
    border: 1px solid rgba(10, 10, 10, 0.15);
    font-family: var(--h-font-cormorant);
    font-size: 13px;
    font-weight: 600;
    color: #555;
    white-space: nowrap;
}
.h-wait-badge--in_stock { border-color: #2a7d3f; color: #1e6b30; background: rgba(42, 125, 63, 0.08); }
.h-wait-badge--made_to_order { border-color: var(--h-accent); color: #8a6d00; background: rgba(235, 188, 0, 0.08); }













/* ============================================================
   MOBILE (<=768px): cart item FULLY centred - picture, name,
   and every detail stacked and centred in the middle.
   ============================================================ */


/* --- Cart actions row --- */








/* --- Order summary sidebar (Cart) --- */
.h-med-order-summary {
    position: sticky;
    top: 100px;
    padding: 32px;
    border: 1px solid rgba(10, 10, 10, 0.12);
    background: rgba(255, 255, 255, 0.5);
    /* hold height so a totals refresh never collapses/pushes the panel */
    min-height: 360px;
}

.h-med-order-summary h2 {
    font-family: var(--h-font-cinzel);
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #0a0a0a;
    margin: 0 0 20px;
    padding-bottom: 14px;
    border-bottom: 2px solid rgba(10, 10, 10, 0.1);
}

.h-summary-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 18px;
    padding: 10px 0;
    font-family: var(--h-font-cormorant);
    font-size: 16px;
    color: #0a0a0a;
    border-bottom: 1px solid rgba(10, 10, 10, 0.06);
}

.h-summary-row span {
    flex: 0 0 auto;
    color: #555;
}

.h-summary-row strong {
    flex: 1 1 auto;
    font-family: var(--h-font-cinzel);
    font-size: 15px;
    text-align: right;
}

.h-summary-row-stack {
    flex-direction: column;
    gap: 6px;
}

.h-summary-total {
    padding: 16px 0;
    margin-top: 8px;
    border-top: 2px solid rgba(10, 10, 10, 0.15);
    border-bottom: none;
}

.h-summary-total span {
    font-family: var(--h-font-cinzel);
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #0a0a0a;
}

.h-summary-total strong {
    font-size: 22px;
    color: var(--h-accent-hover);
}

/* --- Coupon form --- */
.h-coupon-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    margin-top: 20px;
}

.h-coupon-form input[type="text"] {
    min-height: 44px;
    padding: 0 14px;
    border: 1px solid rgba(10, 10, 10, 0.2);
    background: #fffaf0;
    font-family: var(--h-font-cormorant);
    font-size: 15px;
    color: #0a0a0a;
}

.h-coupon-form input::placeholder {
    color: #999;
}

.h-coupon-form button {
    min-height: 44px;
    padding: 0 20px;
    border: 2px solid #0a0a0a;
    background: transparent;
    color: #0a0a0a;
    font-family: var(--h-font-cinzel);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.25s ease;
}

.h-coupon-form button:hover {
    background: #0a0a0a;
    color: var(--h-paper);
}

/* --- Workshop info box --- */
.h-workshop-info {
    margin-top: 20px;
    padding: 16px;
    border: 1px solid rgba(10, 10, 10, 0.1);
    background: rgba(235, 188, 0, 0.05);
}

.h-workshop-info strong {
    display: block;
    font-family: var(--h-font-cinzel);
    font-size: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #0a0a0a;
    margin-bottom: 6px;
}

.h-workshop-info p {
    margin: 0;
    font-family: var(--h-font-cormorant);
    font-size: 14px;
    color: #666;
    line-height: 1.5;
}

/* --- Proceed to checkout button --- */
.h-checkout-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 54px;
    margin-top: 24px;
    border: 2px solid var(--h-accent);
    background: var(--h-accent);
    color: #0a0a0a !important;
    font-family: var(--h-font-cinzel);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    text-decoration: none;
    transition: transform 0.25s ease, background-color 0.25s ease;
    cursor: pointer;
}

.h-checkout-btn:hover {
    transform: translateY(-2px);
    background: var(--h-accent-hover);
    border-color: var(--h-accent-hover);
}

/* --- Shipping row: WooCommerce shipping options --- */
.h-summary-row .woocommerce-shipping-methods {
    list-style: none;
    margin: 0;
    padding: 0;
}

.h-summary-row .woocommerce-shipping-methods li {
    margin-bottom: 6px;
    font-family: var(--h-font-cormorant);
    font-size: 15px;
}

.h-summary-row .woocommerce-shipping-methods label {
    cursor: pointer;
}


/* -----------------------------------------
   5. RECOMMENDATIONS SECTION (Cart)
----------------------------------------- */
.h-commerce-recommendations {
    position: relative;
    overflow: visible;
}

.h-commerce-recommendations .h-paper-content {
    padding: clamp(40px, 6vw, 80px);
}

.h-paper-title {
    font-family: var(--h-font-cinzel);
    font-size: clamp(24px, 4vw, 36px);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-align: center;
    color: #0a0a0a;
    margin: 0 0 40px;
}

.h-commerce-rec-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 24px;
    max-width: 1400px;
    margin: 0 auto;
    min-width: 0;
}

.h-commerce-recommendations .h-bs-slide {
    min-width: 0;
    max-width: 100%;
}

.h-commerce-recommendations .h-bs-card,
.h-commerce-recommendations .h-bs-card:hover {
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
}

.h-commerce-recommendations .h-shop-card-watermark {
    filter: none !important;
}

/* "You might also like" cards == dark shop product card (matches the rest) */
.h-commerce-rec-card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: #fff;
    border: 1px solid rgba(17, 17, 17, 0.78);
    border-radius: 10px;
    overflow: hidden;
    background: #0b0b0b;
    box-shadow: 0 18px 34px rgba(0, 0, 0, 0.26);
    transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.h-commerce-rec-card:hover {
    transform: translateY(-6px);
    border-color: rgba(0, 0, 0, 0.92);
    box-shadow: 0 22px 42px rgba(0, 0, 0, 0.32);
}

.h-commerce-rec-image {
    position: relative;
    display: block;
    aspect-ratio: 1;
    overflow: hidden;
    background: #111;
}

.h-commerce-rec-image img:not(.h-watermark) {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.h-commerce-rec-image .h-watermark {
    position: absolute;
    bottom: 8px;
    left: 8px;
    right: auto;
    width: 38px;
    max-height: 30px;
    object-fit: contain;
    opacity: 0.95;
    pointer-events: none;
    filter: drop-shadow(0 1px 2px rgba(0,0,0,0.55));
}

.h-commerce-rec-copy {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 12px 14px 14px;
    background: #000;
}

.h-commerce-rec-copy strong {
    font-family: var(--h-font-instrument, "Instrument Sans", Arial, sans-serif);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.25;
    text-transform: uppercase;
    color: #fff;
}

.h-commerce-rec-copy em,
.h-commerce-rec-copy .amount,
.h-commerce-rec-copy .woocommerce-Price-amount {
    font-family: var(--h-font-instrument, "Instrument Sans", Arial, sans-serif);
    font-size: 17px;
    font-style: normal;
    color: var(--h-accent, #ebbc00);
}

/* -----------------------------------------
   6. CHECKOUT PAGE
----------------------------------------- */

/* --- Checkout heading & breadcrumb --- */
.h-checkout-heading-row {
    text-align: center;
    margin-bottom: 8px;
}

.h-checkout-main-title {
    font-family: var(--h-font-cinzel);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #0a0a0a;
    margin: 0;
}

.h-checkout-topline {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    gap: clamp(8px, 2.2vw, 24px);
    margin: 0 auto 24px;
    padding: 0 0 16px;
    border-bottom: 1px solid rgba(17, 17, 17, 0.16);
    overflow-x: auto;
    scrollbar-width: none;
}

.h-checkout-topline::-webkit-scrollbar {
    display: none;
}

.h-checkout-topline a,
.h-checkout-topline span {
    font-family: var(--h-font-cinzel);
    font-size: clamp(9px, 2.7vw, 12px);
    font-weight: 700;
    font-synthesis: none;
    letter-spacing: clamp(0.4px, 0.3vw, 1px);
    text-transform: uppercase;
    color: #4b453b;
    text-decoration: none;
    white-space: nowrap;
    transition: color 0.2s;
}

.h-checkout-topline a:hover {
    color: var(--h-accent-hover);
}

/* Active step */
.h-checkout-topline .h-progress-step.is-active {
    color: #0a0a0a;
    border-bottom: 0;
    padding-bottom: 0;
    text-decoration: none;
}

/* --- Checkout two-column layout --- */
.h-med-checkout-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 400px;
    gap: 48px;
    align-items: start;
    max-width: 1400px;
    margin: 0 auto;
}

/* --- Checkout form panels --- */
.h-med-checkout-forms {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.h-checkout-panel {
    padding: 28px;
    border: 1px solid rgba(10, 10, 10, 0.1);
    background: rgba(255, 255, 255, 0.4);
}

.h-checkout-panel-head {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(10, 10, 10, 0.08);
}

.h-checkout-panel-head span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 2px solid var(--h-accent);
    background: var(--h-accent);
    color: #0a0a0a;
    font-family: var(--h-font-cinzel);
    font-size: 14px;
    font-weight: 700;
    flex-shrink: 0;
}

.h-checkout-panel-head h2 {
    font-family: var(--h-font-cinzel);
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #0a0a0a;
    margin: 0;
}

/* --- WooCommerce form fields inside checkout --- */
.h-med-checkout-form .woocommerce-billing-fields,
.h-med-checkout-form .woocommerce-shipping-fields,
.h-med-checkout-form .woocommerce-additional-fields {
    margin: 0;
}

.h-med-checkout-form .woocommerce-billing-fields h3,
.h-med-checkout-form .woocommerce-shipping-fields h3 {
    display: none;
}

.h-med-checkout-form .form-row {
    margin-bottom: 14px;
}

.h-med-checkout-form label {
    display: block;
    margin-bottom: 6px;
    font-family: var(--h-font-cinzel);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #555;
}

.h-med-checkout-form .form-row .required {
    color: var(--h-accent-hover);
}

.h-med-checkout-form input.input-text,
.h-med-checkout-form textarea,
.h-med-checkout-form select,
.h-med-checkout-form .select2-container .select2-selection {
    width: 100%;
    min-height: 48px;
    padding: 10px 14px;
    border: 1px solid rgba(10, 10, 10, 0.2);
    background: #fffaf0;
    color: #0a0a0a;
    font-family: var(--h-font-cormorant);
    font-size: 16px;
    transition: border-color 0.2s;
}

.h-med-checkout-form input.input-text:focus,
.h-med-checkout-form textarea:focus,
.h-med-checkout-form select:focus {
    outline: none;
    border-color: var(--h-accent);
}

.h-med-checkout-form .woocommerce-input-wrapper {
    width: 100%;
}

/* Select2 overrides */
.h-med-checkout-form .select2-container--default .select2-selection--single {
    height: 48px;
    display: flex;
    align-items: center;
    border: 1px solid rgba(10, 10, 10, 0.2);
    background: #fffaf0;
}

.h-med-checkout-form .select2-container--default .select2-selection--single .select2-selection__rendered {
    font-family: var(--h-font-cormorant);
    font-size: 16px;
    color: #0a0a0a;
}

/* Ship to different address checkbox */
.h-med-checkout-form #ship-to-different-address {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    cursor: pointer;
}

.h-med-checkout-form #ship-to-different-address label {
    margin: 0;
    cursor: pointer;
}

/* --- Checkout order summary sidebar --- */
.h-checkout-summary-panel {
    position: sticky;
    top: 100px;
    padding: 32px;
    border: 1px solid rgba(10, 10, 10, 0.12);
    background: rgba(255, 255, 255, 0.5);
}

.h-checkout-summary-panel h2 {
    font-family: var(--h-font-cinzel);
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #0a0a0a;
    margin: 0 0 8px;
}

.h-checkout-summary-panel > p {
    font-family: var(--h-font-cormorant);
    font-size: 15px;
    font-style: italic;
    color: #777;
    margin: 0 0 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(10, 10, 10, 0.08);
}

/* Order review table */
.h-checkout-review-order .shop_table {
    width: 100%;
    border-collapse: collapse;
}

.h-checkout-review-order .shop_table thead th {
    font-family: var(--h-font-cinzel);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #888;
    padding: 0 0 10px;
    border-bottom: 1px solid rgba(10, 10, 10, 0.1);
    text-align: left;
}

.h-checkout-review-order .shop_table thead th:last-child {
    text-align: right;
}

.h-checkout-review-order .shop_table td {
    padding: 12px 0;
    border-bottom: 1px solid rgba(10, 10, 10, 0.06);
    font-family: var(--h-font-cormorant);
    font-size: 15px;
    color: #0a0a0a;
    vertical-align: top;
}

.h-checkout-review-order .shop_table td:last-child {
    text-align: right;
    font-family: var(--h-font-cinzel);
    font-size: 14px;
}

.h-checkout-review-order .shop_table .product-name .product-quantity {
    color: #888;
}

/* Checkout order review items: cart-style receipt rows inside Woo totals table. */
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table thead {
    display: none;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-item-cell {
    padding: 0 0 16px;
    border-bottom: 1px solid rgba(10, 10, 10, 0.1);
    text-align: left;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument));
}

body.historicum-checkout-page .h-checkout-review-item {
    display: grid;
    gap: 14px;
    padding: 14px 0 16px;
}

body.historicum-checkout-page .h-checkout-review-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

body.historicum-checkout-page .h-checkout-review-item-title {
    min-width: 0;
    color: #0a0a0a;
    font-family: var(--h-font-cormorant);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
}

body.historicum-checkout-page .h-checkout-review-qty {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 4px 9px;
    border: 1px solid rgba(17, 17, 17, 0.18);
    border-radius: 999px;
    color: #5f574a;
    font-family: var(--h-font-cinzel);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.7px;
    text-transform: uppercase;
    white-space: nowrap;
}

body.historicum-checkout-page .h-checkout-review-addons {
    margin-top: 8px;
    padding-top: 10px;
    border-top: 1px solid rgba(17, 17, 17, 0.09);
}

body.historicum-checkout-page .h-checkout-review-item-meta {
    margin-top: 8px;
    color: #5f574a;
    font-family: var(--h-font-cormorant);
    font-size: 14px;
    line-height: 1.45;
}

body.historicum-checkout-page .h-checkout-review-price-grid {
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(17, 17, 17, 0.12);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.18);
    overflow: hidden;
}

body.historicum-checkout-page .h-checkout-review-price-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 38px;
    padding: 9px 12px;
    border-top: 1px solid rgba(17, 17, 17, 0.08);
}

body.historicum-checkout-page .h-checkout-review-price-row:first-child {
    border-top: 0;
}

body.historicum-checkout-page .h-checkout-review-price-row dt,
body.historicum-checkout-page .h-checkout-review-price-row dd {
    margin: 0;
}

body.historicum-checkout-page .h-checkout-review-price-row dt {
    color: #6f6658;
    font-family: var(--h-font-cinzel);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

body.historicum-checkout-page .h-checkout-review-price-row dd {
    color: #0a0a0a;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument));
    font-size: 14px;
    font-weight: 500;
    font-variant-numeric: tabular-nums lining-nums;
    text-align: right;
    white-space: nowrap;
}

body.historicum-checkout-page .h-checkout-review-price-row dd.is-zero {
    color: #6f6f6f;
    font-weight: 600;
}

body.historicum-checkout-page .h-checkout-review-price-row.is-total {
    background: transparent;
}

body.historicum-checkout-page .h-checkout-review-price-row.is-total dd {
    font-size: 14px;
    font-weight: 500;
}

.h-checkout-review-order .shop_table .cart-subtotal td,
.h-checkout-review-order .shop_table .shipping td,
.h-checkout-review-order .shop_table .tax-rate td,
.h-checkout-review-order .shop_table .tax-total td,
.h-checkout-review-order .shop_table .fee td {
    font-family: var(--h-font-cinzel);
    font-size: 14px;
}

.h-checkout-review-order .shop_table .order-total th,
.h-checkout-review-order .shop_table .order-total td {
    padding-top: 16px;
    border-top: 2px solid rgba(10, 10, 10, 0.15);
    font-family: var(--h-font-cinzel);
    font-weight: 700;
}

.h-checkout-review-order .shop_table .order-total td {
    font-size: 20px;
    color: var(--h-accent-hover);
}

/* Payment methods */
.h-checkout-review-order .wc_payment_methods {
    list-style: none;
    margin: 24px 0 0;
    padding: 0;
}

.h-checkout-review-order .wc_payment_method {
    padding: 14px;
    margin-bottom: 8px;
    border: 1px solid rgba(10, 10, 10, 0.1);
    background: rgba(255, 255, 255, 0.3);
}

.h-checkout-review-order .wc_payment_method label {
    font-family: var(--h-font-cinzel);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.5px;
    color: #0a0a0a;
    cursor: pointer;
}

.h-checkout-review-order .wc_payment_method .payment_box {
    display: none;
}

/* Place order button */
.h-checkout-review-order #place_order {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 54px;
    margin-top: 24px;
    border: 2px solid var(--h-accent);
    background: var(--h-accent);
    color: #0a0a0a;
    font-family: var(--h-font-cinzel);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform 0.25s ease, background-color 0.25s ease;
}

.h-checkout-review-order #place_order:hover {
    transform: translateY(-2px);
    background: var(--h-accent-hover);
    border-color: var(--h-accent-hover);
}

/* Privacy & terms */
.h-checkout-review-order .woocommerce-terms-and-conditions-wrapper {
    margin-top: 16px;
    font-family: var(--h-font-cormorant);
    font-size: 14px;
    color: #666;
}

.h-checkout-review-order .woocommerce-terms-and-conditions-wrapper a {
    color: var(--h-accent-hover);
}

/* Coupon form on checkout (WooCommerce login/coupon toggles) */
.h-checkout-paper .woocommerce-form-coupon-toggle,
.h-checkout-paper .woocommerce-form-login-toggle {
    margin-bottom: 20px;
}

.h-checkout-paper .woocommerce-info {
    padding: 14px 20px;
    border: 1px solid rgba(10, 10, 10, 0.1);
    background: rgba(235, 188, 0, 0.06);
    font-family: var(--h-font-cormorant);
    font-size: 15px;
    color: #555;
}

.h-checkout-paper .woocommerce-info a {
    color: var(--h-accent-hover);
    font-weight: 700;
}

.h-checkout-paper .checkout_coupon,
.h-checkout-paper .woocommerce-form-login {
    padding: 20px;
    border: 1px solid rgba(10, 10, 10, 0.1);
    background: rgba(255, 255, 255, 0.3);
    margin-bottom: 24px;
}

.h-checkout-paper .checkout_coupon input,
.h-checkout-paper .woocommerce-form-login input[type="text"],
.h-checkout-paper .woocommerce-form-login input[type="password"],
.h-checkout-paper .woocommerce-form-login input[type="email"] {
    min-height: 44px;
    padding: 10px 14px;
    border: 1px solid rgba(10, 10, 10, 0.2);
    background: #fffaf0;
    font-family: var(--h-font-cormorant);
    font-size: 15px;
    color: #0a0a0a;
}

.h-checkout-paper .checkout_coupon button,
.h-checkout-paper .woocommerce-form-login button {
    min-height: 44px;
    padding: 10px 24px;
    border: 2px solid var(--h-accent);
    background: var(--h-accent);
    color: #0a0a0a;
    font-family: var(--h-font-cinzel);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
}


/* -----------------------------------------
   8. MY ACCOUNT – Enhanced Styles
   Builds on reference-pages.css defaults
----------------------------------------- */

/* Orders table */
body.woocommerce-account .woocommerce-orders-table {
    width: 100%;
    border-collapse: collapse;
}

body.woocommerce-account .woocommerce-orders-table th {
    font-family: var(--h-font-cinzel);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #888;
    padding: 12px 10px;
    border-bottom: 2px solid rgba(10, 10, 10, 0.12);
    text-align: left;
}

body.woocommerce-account .woocommerce-orders-table td {
    padding: 14px 10px;
    border-bottom: 1px solid rgba(10, 10, 10, 0.06);
    font-family: var(--h-font-cormorant);
    font-size: 15px;
    color: #0a0a0a;
    vertical-align: middle;
}

body.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a {
    display: inline-block;
    padding: 8px 16px;
    border: 2px solid #0a0a0a;
    font-family: var(--h-font-cinzel);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #0a0a0a;
    text-decoration: none;
    transition: all 0.2s;
}

body.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a:hover {
    background: var(--h-accent);
    border-color: var(--h-accent);
}

/* No orders message */
body.woocommerce-account .woocommerce-message--info,
body.woocommerce-account .woocommerce-Message--info {
    padding: 32px;
    text-align: center;
    font-family: var(--h-font-cormorant);
    font-size: 18px;
    color: #555;
}

body.woocommerce-account .woocommerce-Message .woocommerce-Button,
body.woocommerce-account .woocommerce-info .woocommerce-Button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    margin-top: 16px;
    padding: 12px 28px;
    border: 2px solid var(--h-accent) !important;
    background: var(--h-accent) !important;
    color: #0a0a0a !important;
    font-family: var(--h-font-cinzel);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

/* Addresses on account */
body.woocommerce-account .woocommerce-Addresses {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

body.woocommerce-account .woocommerce-Address {
    padding: 24px;
    border: 1px solid rgba(10, 10, 10, 0.12);
    background: rgba(255, 255, 255, 0.4);
}

body.woocommerce-account .woocommerce-Address-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(10, 10, 10, 0.08);
}

body.woocommerce-account .woocommerce-Address-title h3 {
    margin: 0;
    font-size: 14px;
}

body.woocommerce-account .woocommerce-Address-title a {
    font-family: var(--h-font-cinzel);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--h-accent-hover) !important;
    text-decoration: none;
}

body.woocommerce-account .woocommerce-Address address {
    font-family: var(--h-font-cormorant);
    font-size: 15px;
    font-style: normal;
    color: #444;
    line-height: 1.6;
}

/* Order detail page */
body.woocommerce-account .woocommerce-order-details .shop_table {
    width: 100%;
    border-collapse: collapse;
}

body.woocommerce-account .woocommerce-order-details .shop_table th {
    font-family: var(--h-font-cinzel);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #888;
    padding: 10px;
    border-bottom: 2px solid rgba(10, 10, 10, 0.12);
    text-align: left;
}

body.woocommerce-account .woocommerce-order-details .shop_table td {
    padding: 12px 10px;
    border-bottom: 1px solid rgba(10, 10, 10, 0.06);
    font-family: var(--h-font-cormorant);
    font-size: 15px;
    color: #0a0a0a;
}

body.woocommerce-account .woocommerce-order-details .shop_table tfoot th,
body.woocommerce-account .woocommerce-order-details .shop_table tfoot td {
    padding: 10px;
    border-bottom: 1px solid rgba(10, 10, 10, 0.06);
}

/* Login / Register forms on account page */
body.woocommerce-account .woocommerce form.login h2,
body.woocommerce-account .woocommerce form.register h2 {
    font-size: 18px;
    margin-bottom: 20px;
}

body.woocommerce-account .woocommerce form.login label,
body.woocommerce-account .woocommerce form.register label {
    font-family: var(--h-font-cinzel);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #555;
}

body.woocommerce-account .u-columns {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 32px !important;
}

/* Dashboard greeting */
body.woocommerce-account .woocommerce-MyAccount-content p {
    font-family: var(--h-font-cormorant);
    font-size: 17px;
    line-height: 1.6;
    color: #333;
}

body.woocommerce-account .woocommerce-MyAccount-content p a {
    color: var(--h-accent-hover);
    font-weight: 700;
    text-decoration: none;
}

body.woocommerce-account .woocommerce-MyAccount-content p a:hover {
    text-decoration: underline;
}

/* Downloads table */
body.woocommerce-account .woocommerce-table--order-downloads {
    width: 100%;
    border-collapse: collapse;
}

body.woocommerce-account .woocommerce-table--order-downloads th {
    font-family: var(--h-font-cinzel);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #888;
    padding: 12px 10px;
    border-bottom: 2px solid rgba(10, 10, 10, 0.12);
}

body.woocommerce-account .woocommerce-table--order-downloads td {
    padding: 14px 10px;
    border-bottom: 1px solid rgba(10, 10, 10, 0.06);
    font-family: var(--h-font-cormorant);
    font-size: 15px;
}

/* Edit account form */
body.woocommerce-account .woocommerce-EditAccountForm fieldset {
    border: 1px solid rgba(10, 10, 10, 0.1);
    padding: 20px;
    margin-top: 20px;
}

body.woocommerce-account .woocommerce-EditAccountForm fieldset legend {
    font-family: var(--h-font-cinzel);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #0a0a0a;
    padding: 0 8px;
}


/* -----------------------------------------
   9. RESPONSIVE – COMMERCE PAGES
----------------------------------------- */

/* Tablet */
@media (max-width: 1399px), (hover: none) and (pointer: coarse) {
    

    .h-med-checkout-layout {
        grid-template-columns: 1fr;
    }

    .h-med-order-summary,
    .h-checkout-summary-panel {
        position: static;
    }
}

/* Cart item grid collapses to stacked on tablet */


/* Mobile */
@media (max-width: 1399px), (hover: none) and (pointer: coarse) {
    .h-page-hero.h-commerce-hero {
        min-height: 260px;
        padding: 104px 20px 60px;
    }

    .h-paper-content.h-commerce-paper {
        padding: 28px 16px;
    }

    

    .h-med-order-summary,
    .h-checkout-summary-panel {
        padding: 24px 16px;
    }

    .h-checkout-topline {
        gap: 18px;
    }

    .h-checkout-panel {
        padding: 20px 16px;
    }

    .h-commerce-rec-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    /* Account addresses */
    body.woocommerce-account .woocommerce-Addresses {
        grid-template-columns: 1fr;
    }

    body.woocommerce-account .u-columns {
        grid-template-columns: 1fr !important;
    }
}

/* Empty cart mobile contract: the hero stays dark, the paper stays readable,
   and the section never uses 100vw offsets that create a right-side stroke. */
@media (max-width: 1399px), (hover: none) and (pointer: coarse) {
    body.historicum-cart-page,
    body.historicum-cart-page .h-cart-page-shell,
    body.historicum-cart-page .h-commerce-page {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        background: #000000 !important;
    }

    body.historicum-cart-page .h-page-hero.h-commerce-hero {
        min-height: 264px !important;
        padding: 112px 18px 60px !important;
        background:
            radial-gradient(92% 92% at 15% 0%, rgba(235, 188, 0, 0.24) 0%, rgba(60, 44, 0, 0.15) 36%, rgba(0, 0, 0, 0) 66%),
            linear-gradient(135deg, #151000 0%, #070704 38%, #000000 100%) !important;
    }

    body.historicum-cart-page .h-page-hero-content {
        color: #ffffff !important;
    }

    body.historicum-cart-page .h-page-title {
        color: #ffffff !important;
    }

    body.historicum-cart-page .h-page-subtitle {
        color: rgba(255, 255, 255, 0.84) !important;
    }

    body.historicum-cart-page .h-commerce-paper-section {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        overflow: visible !important;
        background: #000000 !important;
    }

    body.historicum-cart-page .h-paper-content.h-commerce-paper,
    body.historicum-cart-page .h-cart-empty-panel {
        width: 100% !important;
        max-width: 100% !important;
        padding-right: 18px !important;
        padding-left: 18px !important;
        color: #0a0a0a !important;
        background: var(--h-paper) !important;
    }

    body.historicum-cart-page .h-cart-empty-panel h2,
    body.historicum-cart-page .h-cart-empty-panel p {
        color: #0a0a0a !important;
    }
}

@media (max-width: 1399px), (hover: none) and (pointer: coarse) {
    body.historicum-cart-page .h-cart-empty-panel h2,
    body.historicum-cart-page .h-cart-empty-panel .h-cart-empty-title {
        font-size: clamp(17px, 4.6vw, 22px) !important;
        line-height: 1.15 !important;
        letter-spacing: 0.04em !important;
    }
}

/* -----------------------------------------
   10. PURCHASE FLOW AUDIT IMPLEMENTATION
----------------------------------------- */
body.historicum-checkout-page .h-checkout-paper-section {
    margin-top: clamp(118px, 10vw, 150px);
    margin-bottom: 0;
}

body.historicum-checkout-page .h-checkout-flow-paper {
    padding: clamp(34px, 4.8vw, 72px) clamp(20px, 4vw, 58px) !important;
}

body.historicum-checkout-page .h-checkout-heading-row,
body.historicum-checkout-page .h-checkout-topline,
body.historicum-checkout-page .h-checkout-coupon-details,
body.historicum-checkout-page .h-med-checkout-form,
body.historicum-checkout-page .h-checkout-endpoint-content {
    width: 100% !important;
    max-width: 1540px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    box-sizing: border-box !important;
}

/* Cart / checkout notices: one source for "Cart updated", errors, and info. */
body.historicum-cart-page .h-commerce-notices:empty,
body.historicum-checkout-page .h-commerce-notices:empty,
body.historicum-cart-page .h-commerce-notices .woocommerce-notices-wrapper:empty,
body.historicum-checkout-page .h-commerce-notices .woocommerce-notices-wrapper:empty {
    display: none;
}

body.historicum-cart-page .h-commerce-notices,
body.historicum-checkout-page .h-commerce-notices {
    position: relative;
    z-index: 3;
    display: grid;
    gap: 10px;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto clamp(14px, 2vw, 22px);
}

body.historicum-cart-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info),
body.historicum-checkout-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding: 14px 16px;
    border: 1px solid rgba(17, 17, 17, 0.18);
    border-left: 3px solid #6f6658;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.22);
    box-shadow: none;
    color: #111111;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument));
    font-size: clamp(14px, 0.95vw, 16px);
    font-weight: 400;
    line-height: 1.45;
    letter-spacing: 0;
    text-transform: none;
    list-style: none;
}

body.historicum-cart-page .h-commerce-paper .woocommerce-error,
body.historicum-checkout-page .h-commerce-paper .woocommerce-error {
    border-left-color: #b8322a;
    background: rgba(184, 50, 42, 0.07);
}

body.historicum-cart-page .h-commerce-paper .woocommerce-message,
body.historicum-checkout-page .h-commerce-paper .woocommerce-message {
    border-left-color: #2f7d3d;
    background: rgba(47, 125, 61, 0.07);
}

body.historicum-cart-page .h-commerce-paper .woocommerce-info,
body.historicum-checkout-page .h-commerce-paper .woocommerce-info {
    border-left-color: #8a6d1d;
    background: rgba(235, 188, 0, 0.08);
}

body.historicum-cart-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) li,
body.historicum-checkout-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) li {
    margin: 0;
    list-style: none;
}

body.historicum-cart-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info)::before,
body.historicum-checkout-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info)::before {
    display: none;
    content: none;
}

body.historicum-cart-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) a,
body.historicum-checkout-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) a,
body.historicum-cart-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) .button,
body.historicum-checkout-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) .button {
    float: none;
    display: inline;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: #111111;
    font: inherit;
    font-weight: 400;
    text-decoration: underline;
    text-underline-offset: 3px;
    text-transform: none;
}

body.historicum-cart-page .h-cart-status[hidden] {
    display: none;
}

body.historicum-cart-page .h-cart-status {
    box-sizing: border-box;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto clamp(14px, 2vw, 22px);
    padding: 14px 16px;
    border: 1px solid rgba(17, 17, 17, 0.18);
    border-left: 3px solid #2f7d3d;
    border-radius: 8px;
    background: rgba(47, 125, 61, 0.07);
    box-shadow: none;
    color: #111111;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument));
    font-size: clamp(14px, 0.95vw, 16px);
    font-weight: 400;
    line-height: 1.45;
    letter-spacing: 0;
    text-transform: none;
}

@media (max-width: 768px) {
    body.historicum-cart-page .h-commerce-notices,
    body.historicum-checkout-page .h-commerce-notices {
        max-width: 100%;
        margin: 0 0 14px;
    }

    body.historicum-cart-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info),
    body.historicum-checkout-page .h-commerce-paper :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) {
        padding: 12px 12px;
        border-radius: 7px;
        font-size: 14px;
        line-height: 1.4;
    }

    body.historicum-cart-page .h-cart-status {
        max-width: 100%;
        margin: 0 0 14px;
        padding: 12px 12px;
        border-radius: 7px;
        font-size: 14px;
        line-height: 1.4;
    }
}

body.historicum-cart-page .h-commerce-progress .h-progress-step-received::before,
body.historicum-checkout-page .h-commerce-progress .h-progress-step-received::before {
    content: "4" !important;
}

body.historicum-cart-page .h-commerce-progress .h-progress-step.is-complete,
body.historicum-checkout-page .h-commerce-progress .h-progress-step.is-complete {
    opacity: 0.62 !important;
}

body.historicum-cart-page .h-commerce-progress .h-progress-step.is-complete::before,
body.historicum-checkout-page .h-commerce-progress .h-progress-step.is-complete::before {
    border-color: rgba(17, 17, 17, 0.34) !important;
    background: transparent !important;
    color: currentColor !important;
}

body.historicum-cart-page .h-commerce-paper > .h-cart-progress {
    margin-top: 0 !important;
}

body.historicum-cart-page .h-med-order-summary,body.historicum-checkout-page .h-checkout-panel,body.historicum-checkout-page .h-checkout-summary-panel,body.historicum-checkout-page .h-order-received-card,body.historicum-checkout-page .h-order-received-overview li,body.historicum-checkout-page .h-order-bank-account {
    border: 0.3px solid #111111 !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.18) !important;
    box-shadow: 4px 4px 8px -1px rgba(0, 0, 0, 0.18) !important;
}

body.historicum-cart-page .h-med-order-summary {
    background: rgba(255, 255, 255, 0.22) !important;
}

body.historicum-cart-page .h-cart-coupon-details {
    margin-top: 20px;
}

body.historicum-cart-page .h-cart-coupon-details summary {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    border: 0.3px solid #111111;
    border-radius: 8px;
    background: var(--h-paper);
    color: #111111;
    font-family: var(--h-font-cinzel);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1.2;
    text-transform: uppercase;
    cursor: pointer;
}

body.historicum-cart-page .h-cart-coupon-details summary::-webkit-details-marker {
    display: none;
}

body.historicum-cart-page .h-cart-coupon-details summary::after {
    content: "+";
    font-size: 18px;
    line-height: 1;
}

body.historicum-cart-page .h-cart-coupon-details[open] summary::after {
    content: "-";
}

body.historicum-cart-page .h-cart-coupon-details .h-coupon-form {
    display: flex;
    align-items: stretch;
    gap: 10px;
    width: 100%;
    margin-top: 12px;
}

body.historicum-cart-page .h-cart-coupon-details .h-coupon-form input[type="text"] {
    flex: 1 1 auto;
    min-width: 0;
    height: 46px;
    border: 0.3px solid #111111;
    border-radius: 999px;
    background: var(--h-paper);
}

body.historicum-cart-page .h-cart-coupon-details .h-coupon-form button {
    flex: 0 0 auto;
    min-height: 46px;
    margin-left: 0;
    border: 0.3px solid #111111;
    border-radius: 999px;
    background: var(--h-accent);
    color: #111111;
}

body.historicum-cart-page .h-shipping-info,
body.historicum-cart-page .h-workshop-info {
    margin-top: 18px;
    padding: 16px;
    border: 0.3px solid #111111;
    border-radius: 8px;
    background: rgba(235, 188, 0, 0.09);
}

body.historicum-cart-page .h-shipping-info strong,
body.historicum-cart-page .h-workshop-info strong {
    display: block;
    margin-bottom: 6px;
    color: #111111;
    font-family: var(--h-font-cinzel);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.historicum-cart-page .h-shipping-info p,
body.historicum-cart-page .h-workshop-info p {
    margin: 0;
    color: #111111;
    font-family: var(--h-font-readable, var(--h-font-instrument, sans-serif));
    font-size: clamp(16px, 1.05vw, 18px);
    font-weight: 500;
    line-height: 1.55;
}

body.historicum-cart-page .is-cart-dirty button[name="update_cart"] {
    border-color: var(--h-accent) !important;
    background: rgba(235, 188, 0, 0.14) !important;
}

body.historicum-cart-page .is-cart-updating {
    cursor: progress;
}

body.historicum-cart-page .is-cart-updating .h-med-order-summary {
    position: relative;
}

/* Quantity changes update totals in place: no overlay, summary holds its place. */
body.historicum-cart-page .is-cart-updating .h-med-order-summary::after {
    content: none;
}

body.historicum-checkout-page .h-checkout-review-order .blockUI.blockOverlay,
body.historicum-checkout-page .h-checkout-summary-panel .blockUI.blockOverlay,
body.historicum-checkout-page .h-checkout-summary-panel .blockOverlay,
body.woocommerce-checkout #order_review .blockUI.blockOverlay,
body.woocommerce-checkout #order_review .blockOverlay,
body.woocommerce-checkout .woocommerce-checkout-review-order .blockUI.blockOverlay,
body.woocommerce-checkout .woocommerce-checkout-review-order .blockOverlay {
    background: transparent !important;
    opacity: 1 !important;
}

body.historicum-checkout-page.h-checkout-is-processing .h-checkout-review-order {
    position: relative;
}

body.historicum-checkout-page.h-checkout-is-processing .h-checkout-review-order::after {
    content: "Processing order...";
    position: absolute;
    inset: 0;
    z-index: 8;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: rgba(245, 240, 230, 0.84);
    color: #111111;
    font-family: var(--h-font-cinzel);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    pointer-events: none;
}

body.historicum-checkout-page .h-checkout-review-order #place_order,
body.historicum-cart-page .h-checkout-btn,
body.historicum-checkout-page .h-order-received-actions .h-order-primary-action {
    width: 100% !important;
    min-height: 54px !important;
    border: 1px solid var(--h-accent) !important;
    border-radius: 8px !important;
    background: var(--h-accent) !important;
    color: #111111 !important;
    box-shadow: none !important;
}

body.historicum-checkout-page .h-order-received-actions .h-order-secondary-action {
    border-radius: 8px !important;
}

body.historicum-cart-page .h-checkout-btn:hover,
body.historicum-cart-page .h-checkout-btn:focus-visible,
body.historicum-checkout-page .h-checkout-review-order #place_order:hover,
body.historicum-checkout-page .h-checkout-review-order #place_order:focus-visible,
body.historicum-checkout-page .h-order-received-actions .h-order-primary-action:hover,
body.historicum-checkout-page .h-order-received-actions .h-order-primary-action:focus-visible {
    background: #f0c62d !important;
    border-color: #f0c62d !important;
    transform: translateY(-1px);
}

body.historicum-checkout-page .h-checkout-review-order .woocommerce-terms-and-conditions-wrapper,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-terms-and-conditions-wrapper .form-row,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-terms-and-conditions-wrapper label,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-privacy-policy-text,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-privacy-policy-text p {
    width: 100% !important;
    max-width: 100% !important;
    color: #3d3528 !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    text-align: left !important;
}

body.historicum-checkout-page .h-order-bank-account dd {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
}

body.historicum-checkout-page .h-order-bank-account dd span {
    min-width: 0;
    overflow-wrap: anywhere;
}

body.historicum-checkout-page .h-copy-bank-detail {
    flex: 0 0 auto;
    min-height: 32px;
    padding: 7px 10px;
    border: 0.3px solid #111111;
    border-radius: 999px;
    background: transparent;
    color: #111111;
    font-family: var(--h-font-cinzel);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
    cursor: pointer;
}

body.historicum-checkout-page .h-copy-bank-detail.is-copied {
    background: rgba(47, 125, 61, 0.14);
}

body.historicum-checkout-page .h-copy-bank-detail.is-copy-failed {
    background: rgba(235, 188, 0, 0.14);
}

body.historicum-cart-page .h-commerce-rec-empty {
    max-width: 620px;
    margin: 0 auto;
    color: #3d3528;
    font-family: var(--h-font-cormorant);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.45;
    text-align: center;
}

body.historicum-cart-page a:focus-visible,
body.historicum-cart-page button:focus-visible,
body.historicum-cart-page input:focus-visible,
body.historicum-checkout-page a:focus-visible,
body.historicum-checkout-page button:focus-visible,
body.historicum-checkout-page input:focus-visible,
body.historicum-checkout-page select:focus-visible,
body.historicum-checkout-page textarea:focus-visible {
    outline: 3px solid rgba(235, 188, 0, 0.42) !important;
    outline-offset: 3px !important;
}

@media (max-width: 1399px), (hover: none) and (pointer: coarse) {
    body.historicum-checkout-page .h-checkout-heading-row,
    body.historicum-checkout-page .h-checkout-topline,
    body.historicum-checkout-page .h-checkout-coupon-details,
    body.historicum-checkout-page .h-med-checkout-form,
    body.historicum-checkout-page .h-checkout-endpoint-content {
        max-width: 760px !important;
    }
}



@media (max-width: 1399px), (hover: none) and (pointer: coarse) {
    body.historicum-checkout-page .h-checkout-paper-section {
        margin-top: 104px;
    }

    body.historicum-checkout-page .h-order-received-hero h2 {
        font-size: clamp(28px, 8.2vw, 40px) !important;
    }

    /* Steps stay on one line on phones too (shared clamp() sizing fits them). */
    body.historicum-checkout-page .h-commerce-progress,
    body.historicum-cart-page .h-commerce-progress {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
    }

    body.historicum-cart-page .h-cart-coupon-details .h-coupon-form {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    body.historicum-cart-page .h-cart-coupon-details .h-coupon-form input[type="text"],
    body.historicum-cart-page .h-cart-coupon-details .h-coupon-form button {
        border: 0.3px solid #111111;
        border-radius: 999px;
    }

body.historicum-checkout-page .h-order-bank-account dd {
    align-items: flex-start !important;
    flex-direction: column !important;
    }
}

/* -----------------------------------------
   11. PURCHASE FLOW VISUAL CORRECTIONS
----------------------------------------- */
body.historicum-cart-page,
body.historicum-checkout-page,
body.woocommerce-checkout {
    background-color: #000000 !important;
    background-image:
        radial-gradient(82% 74% at 0% 0%, rgba(235, 188, 0, 0.24) 0%, rgba(126, 92, 0, 0.11) 34%, rgba(0, 0, 0, 0) 70%),
        linear-gradient(180deg, #090600 0%, #050301 48%, #000000 100%) !important;
    background-repeat: no-repeat !important;
    background-size: 100% 100% !important;
}

body.historicum-cart-page .h-page-stage,
body.historicum-checkout-page .h-page-stage,
body.woocommerce-checkout .h-page-stage {
    background:
        radial-gradient(82% 74% at 0% 0%, rgba(235, 188, 0, 0.24) 0%, rgba(126, 92, 0, 0.11) 34%, rgba(0, 0, 0, 0) 70%),
        linear-gradient(180deg, #090600 0%, #050301 48%, #000000 100%) !important;
}

body.historicum-checkout-page .h-checkout-paper-section {
    position: relative !important;
    margin-top: var(--h-purchase-flow-section-gap) !important;
    margin-bottom: 86px !important;
    overflow: visible !important;
    background: transparent !important;
}

body.historicum-checkout-page.woocommerce-order-received .h-checkout-paper-section,
body.woocommerce-order-received .h-checkout-paper-section {
    margin-top: var(--h-purchase-paper-top-offset) !important;
    padding-top: 0 !important;
}

body.historicum-checkout-page .h-checkout-flow-paper > .h-torn-top,
body.historicum-checkout-page.woocommerce-order-received .h-checkout-flow-paper > .h-torn-top,
body.woocommerce-order-received .h-checkout-flow-paper > .h-torn-top {
    top: -61px !important;
}

body.historicum-checkout-page .h-checkout-flow-paper > .h-torn-top,
body.historicum-checkout-page .h-checkout-flow-paper > .h-torn-bottom {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

body.historicum-checkout-page .h-checkout-flow-paper {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    overflow: visible !important;
    background: var(--h-paper) !important;
}

body.historicum-checkout-page .h-checkout-heading-row,
body.historicum-checkout-page .h-checkout-topline,
body.historicum-checkout-page .h-checkout-coupon-details,
body.historicum-checkout-page .h-checkout-before-customer-details,
body.historicum-checkout-page .h-med-checkout-form,
body.historicum-checkout-page .h-checkout-endpoint-content {
    width: min(1540px, 100%) !important;
    max-width: 1540px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.historicum-checkout-page .h-checkout-before-customer-details:empty {
    display: none !important;
}

body.historicum-checkout-page .h-checkout-before-customer-details {
    margin: 0 auto 18px !important;
}

body.historicum-checkout-page .h-med-checkout-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr) !important;
    gap: clamp(24px, 3vw, 40px) !important;
    align-items: start !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    overflow: visible !important;
}

body.historicum-checkout-page .h-med-checkout-layout > .h-med-checkout-forms,
body.historicum-checkout-page .h-med-checkout-layout > .h-checkout-summary-panel {
    align-self: start !important;
    margin-top: 0 !important;
}

body.historicum-checkout-page .h-med-checkout-forms > .h-checkout-billing {
    margin-top: 0 !important;
}

body.historicum-checkout-page .h-med-checkout-forms,
body.historicum-checkout-page .h-checkout-panel,
body.historicum-checkout-page .checkout-wrapper,
body.historicum-checkout-page .h-checkout-summary-panel,
body.historicum-checkout-page .h-checkout-review-order,
body.historicum-checkout-page .h-checkout-review-order > * {
    box-sizing: border-box !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    transform: none !important;
}

body.historicum-checkout-page .checkout-wrapper,
body.historicum-checkout-page .h-checkout-summary-panel,
body.historicum-checkout-page .checkout-wrapper *,
body.historicum-checkout-page .checkout-wrapper *::before,
body.historicum-checkout-page .checkout-wrapper *::after,
body.historicum-checkout-page .h-checkout-summary-panel *,
body.historicum-checkout-page .h-checkout-summary-panel *::before,
body.historicum-checkout-page .h-checkout-summary-panel *::after {
    box-sizing: border-box !important;
}

body.historicum-checkout-page .checkout-wrapper,
body.historicum-checkout-page .h-checkout-summary-panel {
    position: relative !important;
    top: auto !important;
    justify-self: stretch !important;
    align-self: start !important;
    padding: 26px 28px !important;
    overflow: visible !important;
}

body.historicum-checkout-page .h-checkout-order-heading,
body.historicum-checkout-page .h-checkout-summary-panel h2,
body.historicum-checkout-page .h-checkout-summary-panel .h-checkout-shipping-note {
    position: static !important;
    left: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
}

body.historicum-checkout-page .h-checkout-review-order table,
body.historicum-checkout-page .h-checkout-review-order .shop_table,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-checkout-review-order-table {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
}

body.historicum-checkout-page .h-checkout-review-order #payment,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-checkout-payment,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_methods,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method,
body.historicum-checkout-page .h-checkout-review-order .form-row.place-order,
body.historicum-checkout-page .h-checkout-review-order .ppc-button-wrapper,
body.historicum-checkout-page .h-checkout-review-order .ppcp-width-500,
body.historicum-checkout-page .h-checkout-review-order [class*="ppcp-width"],
body.historicum-checkout-page .h-checkout-review-order [id^="ppc-button"],
body.historicum-checkout-page .h-checkout-review-order #ppcp-hosted-fields,
body.historicum-checkout-page .h-checkout-review-order #payments-sdk__contingency-lightbox,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-terms-and-conditions-wrapper,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-terms-and-conditions-wrapper .form-row,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-terms-and-conditions-wrapper label,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-terms-and-conditions,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-privacy-policy-text,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-privacy-policy-text p,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-terms-and-conditions-checkbox-text {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body.historicum-checkout-page .checkout-wrapper > *,
body.historicum-checkout-page .checkout-wrapper .h-checkout-order-heading,
body.historicum-checkout-page .checkout-wrapper .h-checkout-shipping-note,
body.historicum-checkout-page .checkout-wrapper #order_review,
body.historicum-checkout-page .checkout-wrapper .woocommerce-checkout-review-order {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    transform: none !important;
}

body.historicum-checkout-page .h-checkout-review-order .ppc-button-wrapper,
body.historicum-checkout-page .h-checkout-review-order .ppcp-width-500,
body.historicum-checkout-page .h-checkout-review-order [class*="ppcp-width"] {
    display: block !important;
}

body.historicum-checkout-page .h-checkout-review-order .paypal-buttons,
body.historicum-checkout-page .h-checkout-review-order .paypal-buttons-context-iframe,
body.historicum-checkout-page .h-checkout-review-order iframe {
    max-width: 100% !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_methods {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    padding: 0 !important;
    overflow: hidden !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method label {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method label img {
    max-width: 100% !important;
    flex: 0 1 auto !important;
}

body.historicum-checkout-page .h-checkout-review-order #place_order {
    width: 100% !important;
    max-width: 100% !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) thead th,
body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot th,
body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot td,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-totals th,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-totals td {
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 12px 10px !important;
    color: #111111 !important;
    font-family: var(--h-font-cinzel, serif) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    line-height: 1.32 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-transform: none !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-name {
    width: 58% !important;
    padding-left: 0 !important;
    padding-right: 14px !important;
    text-align: left !important;
    overflow-wrap: anywhere !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-total,
body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot td {
    width: 42% !important;
    padding-right: 12px !important;
    padding-left: 14px !important;
    text-align: right !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th:first-child,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td:first-child,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th:first-child {
    padding-left: 0 !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th:last-child,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td:last-child,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td:last-child,
body.historicum-checkout-page .h-checkout-review-order tr.order-total td,
body.historicum-checkout-page .h-checkout-review-order tr.cart-subtotal td,
body.historicum-checkout-page .h-checkout-review-order tr.woocommerce-shipping-totals td {
    padding-right: 12px !important;
    text-align: right !important;
}

body.historicum-checkout-page .h-checkout-review-order .order-total th,
body.historicum-checkout-page .h-checkout-review-order .order-total td,
body.historicum-checkout-page .h-checkout-review-order .order-total strong,
body.historicum-checkout-page .h-checkout-review-order .order-total .amount {
    font-size: clamp(20px, 1.45vw, 24px) !important;
    font-weight: 900 !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method input.input-radio:checked + label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method.is-selected label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method.is-selected > label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method.selected label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method:has(input.input-radio:checked) label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method:has(> input.input-radio:checked) > label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method input.input-radio:checked + label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method.is-selected label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method.is-selected > label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method.selected label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method:has(input.input-radio:checked) label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method:has(> input.input-radio:checked) > label {
    background: #b6b0a7 !important;
    background-color: #b6b0a7 !important;
    background-image: none !important;
    border-color: #111111 !important;
    box-shadow: inset 0 0 0 999px rgba(17, 17, 17, 0.08) !important;
    color: #111111 !important;
}

body.historicum-checkout-page .h-checkout-summary-panel .h-checkout-shipping-note,
body.historicum-checkout-page .checkout-wrapper .h-checkout-shipping-note {
    padding: 24px 28px !important;
}

body.historicum-checkout-page .h-med-checkout-forms,
body.historicum-checkout-page .h-checkout-panel,
body.historicum-checkout-page .checkout-wrapper,
body.historicum-checkout-page .h-checkout-summary-panel {
    align-self: start !important;
    margin-top: 0 !important;
}

body.historicum-checkout-page.woocommerce-order-received .h-commerce-progress .h-progress-step.is-complete::before,
body.woocommerce-order-received .h-commerce-progress .h-progress-step.is-complete::before {
    border-color: rgba(17, 17, 17, 0.34) !important;
    background: transparent !important;
    color: #111111 !important;
}

body.historicum-checkout-page.woocommerce-order-received .h-commerce-progress .h-progress-step-received.is-active::before,
body.woocommerce-order-received .h-commerce-progress .h-progress-step-received.is-active::before {
    border-color: #e7b900 !important;
    background: #e7b900 !important;
    color: #0a0a0a !important;
}

body.historicum-checkout-page.woocommerce-order-received .h-order-received-grid--addresses,
body.woocommerce-order-received .h-order-received-grid--addresses {
    margin-top: clamp(26px, 3vw, 42px) !important;
}

/* "You might also like" now renders the real shop card (.h-bs-card); legacy
   light-copy override removed. Shop-card styles are ported below. */

body.historicum-checkout-page .h-commerce-progress .h-progress-step {
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
}

body.historicum-checkout-page .h-commerce-progress .h-progress-step.is-active {
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
    text-decoration: none !important;
}

@media (max-width: 1399px), (hover: none) and (pointer: coarse) {
    body.historicum-checkout-page .h-checkout-heading-row,
    body.historicum-checkout-page .h-checkout-topline,
    body.historicum-checkout-page .h-checkout-coupon-details,
    body.historicum-checkout-page .h-med-checkout-form,
    body.historicum-checkout-page .h-checkout-endpoint-content {
        width: min(760px, 100%) !important;
        max-width: 760px !important;
    }

    body.historicum-checkout-page .h-med-checkout-layout {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.historicum-checkout-page .h-checkout-summary-panel {
        position: static !important;
    }
}

@media (max-width: 1399px), (hover: none) and (pointer: coarse) {
    body.historicum-cart-page .h-cart-coupon-details .h-coupon-form {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
    }

    body.historicum-cart-page .h-cart-coupon-details .h-coupon-form input[type="text"],
    body.historicum-cart-page .h-cart-coupon-details .h-coupon-form button {
        margin-left: 0;
        border: 0.3px solid #111111;
        border-radius: 999px;
    }
}

/* Checkout order review alignment source of truth. */
body.historicum-checkout-page .h-checkout-review-order .shop_table,
body.woocommerce-checkout .h-checkout-review-order .shop_table {
    table-layout: fixed !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td {
    text-align: left !important;
    vertical-align: top !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) thead th.product-total,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) tbody td.product-total,
body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) thead th.product-total,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) tbody td.product-total,
body.woocommerce-checkout .h-checkout-review-order .shop_table tfoot td {
    text-align: right !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-name,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-name *,
body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-name,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-name *,
body.woocommerce-checkout .h-checkout-review-order .shop_table tfoot th {
    text-align: left !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-total,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-total *,
body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot td *,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-total,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-total *,
body.woocommerce-checkout .h-checkout-review-order .shop_table tfoot td * {
    text-align: right !important;
}

body.historicum-checkout-page .h-checkout-review-order dl.variation,
body.woocommerce-checkout .h-checkout-review-order dl.variation {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    gap: 4px 8px !important;
    margin: 8px 0 0 !important;
}

body.historicum-checkout-page .h-checkout-review-order dl.variation dt,
body.historicum-checkout-page .h-checkout-review-order dl.variation dd,
body.historicum-checkout-page .h-checkout-review-order dl.variation dd p,
body.historicum-checkout-page .h-checkout-review-order dl.variation dd div,
body.woocommerce-checkout .h-checkout-review-order dl.variation dt,
body.woocommerce-checkout .h-checkout-review-order dl.variation dd,
body.woocommerce-checkout .h-checkout-review-order dl.variation dd p,
body.woocommerce-checkout .h-checkout-review-order dl.variation dd div {
    min-width: 0 !important;
    margin: 0 !important;
    text-align: left !important;
}

body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-methods,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-methods li,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-methods label,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-shipping-methods,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-shipping-methods li,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-shipping-methods label {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: right !important;
}

/* Order-received endpoint title and details table. */
body.woocommerce-order-received .h-checkout-policy-paper .h-checkout-heading-row,
body.historicum-checkout-page.woocommerce-order-received .h-checkout-policy-paper .h-checkout-heading-row {
    width: min(1540px, 100%) !important;
    max-width: 1540px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-left: 0 !important;
    text-align: left !important;
}

body.woocommerce-order-received .h-checkout-policy-paper .h-checkout-main-title,
body.historicum-checkout-page.woocommerce-order-received .h-checkout-policy-paper .h-checkout-main-title {
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
}

body.historicum-checkout-page .h-checkout-flow-paper--received > .h-checkout-heading-row,
body.historicum-checkout-page .h-checkout-flow-paper--received > .h-checkout-topline,
body.historicum-checkout-page .h-checkout-flow-paper--received > .h-checkout-endpoint-content {
    width: 100% !important;
    max-width: 1540px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
}

body.historicum-checkout-page .h-checkout-flow-paper--received > .h-checkout-topline {
    justify-content: flex-start !important;
}

body.historicum-checkout-page .h-checkout-flow-paper--received > .h-checkout-heading-row .h-checkout-main-title {
    text-align: left !important;
}

body.woocommerce-order-received .h-checkout-policy-paper .h-checkout-topline,
body.historicum-checkout-page.woocommerce-order-received .h-checkout-policy-paper .h-checkout-topline,
body.woocommerce-order-received .h-checkout-policy-paper .h-commerce-progress,
body.historicum-checkout-page.woocommerce-order-received .h-checkout-policy-paper .h-commerce-progress {
    width: min(1540px, 100%) !important;
    max-width: 1540px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    justify-content: flex-start !important;
    text-align: left !important;
}

body.woocommerce-order-received .h-order-details-table,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table {
    table-layout: fixed !important;
}

body.woocommerce-order-received .h-order-details-table .product-name,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table .product-name {
    width: 64% !important;
    padding-right: 22px !important;
    text-align: left !important;
}

body.woocommerce-order-received .h-order-details-table .product-total,
body.woocommerce-order-received .h-order-details-table tfoot td,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table .product-total,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table tfoot td {
    width: 36% !important;
    padding-left: 22px !important;
    text-align: right !important;
}

body.woocommerce-order-received .h-order-details-table thead th,
body.woocommerce-order-received .h-order-details-table tfoot th,
body.woocommerce-order-received .h-order-details-table tfoot td,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table thead th,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table tfoot th,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table tfoot td {
    font-family: var(--h-font-readable, var(--h-font-instrument, sans-serif)) !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1.42 !important;
    text-transform: none !important;
}

body.woocommerce-order-received .h-order-details-table tbody td,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table tbody td {
    font-family: var(--h-font-readable, var(--h-font-instrument, sans-serif)) !important;
    font-size: clamp(15px, 0.96vw, 16px) !important;
    font-weight: 500 !important;
    line-height: 1.42 !important;
}

body.woocommerce-order-received .h-order-details-table tbody td.product-total,
body.woocommerce-order-received .h-order-details-table tbody td.product-total *,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table tbody td.product-total,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table tbody td.product-total * {
    font-family: var(--h-font-readable, var(--h-font-instrument, sans-serif)) !important;
    font-weight: 700 !important;
    text-align: right !important;
}

body.woocommerce-order-received .h-order-details-table .wc-item-meta,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table .wc-item-meta {
    display: grid !important;
    gap: 6px !important;
    margin: 10px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body.woocommerce-order-received .h-order-details-table .wc-item-meta li,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table .wc-item-meta li {
    display: grid !important;
    grid-template-columns: minmax(118px, max-content) minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: baseline !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

body.woocommerce-order-received .h-order-details-table .wc-item-meta-label,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table .wc-item-meta-label {
    margin: 0 !important;
    color: #111111 !important;
    font-family: var(--h-font-readable, var(--h-font-instrument, sans-serif)) !important;
    font-size: clamp(14px, 0.92vw, 15px) !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1.35 !important;
    text-transform: none !important;
}

body.woocommerce-order-received .h-order-details-table .wc-item-meta p,
body.historicum-checkout-page.woocommerce-order-received .h-order-details-table .wc-item-meta p {
    margin: 0 !important;
    color: #111111 !important;
    font-family: var(--h-font-readable, var(--h-font-instrument, sans-serif)) !important;
    font-size: clamp(14px, 0.92vw, 15px) !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    text-align: left !important;
}

/* Checkout vital information uses the readable contact-page font system. */
body.historicum-checkout-page,
body.woocommerce-checkout,
body.woocommerce-order-received {
    --h-checkout-readable-font: var(--h-font-readable, var(--h-font-instrument, "Instrument Sans", Arial, sans-serif));
}

body.historicum-checkout-page .h-checkout-shipping-note,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td *,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td *,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-methods,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-methods *,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td *,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td *,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-shipping-methods,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-shipping-methods *,
body.historicum-checkout-page .h-order-received-overview span,
body.historicum-checkout-page .h-order-received-overview strong,
body.historicum-checkout-page .h-order-received-card--pathway p,
body.historicum-checkout-page .h-order-payment-currency-note,
body.historicum-checkout-page .h-order-bank-account dt,
body.historicum-checkout-page .h-order-bank-account dd,
body.historicum-checkout-page .h-order-bank-account dd *,
body.historicum-checkout-page .h-order-details-table th,
body.historicum-checkout-page .h-order-details-table td,
body.historicum-checkout-page .h-order-details-table td *,
body.historicum-checkout-page .h-order-details-table .wc-item-meta-label,
body.historicum-checkout-page .h-order-details-table .wc-item-meta p,
body.historicum-checkout-page .h-order-address-card address,
body.historicum-checkout-page .h-order-address-card address * {
    font-family: var(--h-checkout-readable-font) !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.historicum-checkout-page .h-checkout-shipping-note,
body.historicum-checkout-page .h-order-received-card--pathway p,
body.historicum-checkout-page .h-order-address-card address {
    font-size: clamp(16px, 1.05vw, 18px) !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td,
body.historicum-checkout-page .h-order-details-table th,
body.historicum-checkout-page .h-order-details-table td {
    font-size: clamp(15px, 1vw, 17px) !important;
    line-height: 1.42 !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) thead th,
body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) thead th,
body.woocommerce-checkout .h-checkout-review-order .shop_table tfoot th,
body.historicum-checkout-page .h-order-details-table thead th,
body.historicum-checkout-page .h-order-details-table tfoot th {
    font-weight: 700 !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-name,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-name *,
body.historicum-checkout-page .h-order-details-table .product-name,
body.historicum-checkout-page .h-order-details-table .product-name * {
    font-weight: 500 !important;
}

body.historicum-checkout-page .h-checkout-review-order .product-quantity,
body.historicum-checkout-page .h-checkout-review-order .product-total,
body.historicum-checkout-page .h-checkout-review-order .product-total *,
body.historicum-checkout-page .h-checkout-review-order tfoot td,
body.historicum-checkout-page .h-checkout-review-order tfoot td *,
body.historicum-checkout-page .h-checkout-review-order .order-total th,
body.historicum-checkout-page .h-checkout-review-order .order-total td,
body.historicum-checkout-page .h-checkout-review-order .order-total *,
body.woocommerce-checkout .h-checkout-review-order .product-quantity,
body.woocommerce-checkout .h-checkout-review-order .product-total,
body.woocommerce-checkout .h-checkout-review-order .product-total *,
body.woocommerce-checkout .h-checkout-review-order tfoot td,
body.woocommerce-checkout .h-checkout-review-order tfoot td *,
body.woocommerce-checkout .h-checkout-review-order .order-total th,
body.woocommerce-checkout .h-checkout-review-order .order-total td,
body.woocommerce-checkout .h-checkout-review-order .order-total *,
body.historicum-checkout-page .h-order-received-overview strong,
body.historicum-checkout-page .h-order-bank-account dd,
body.historicum-checkout-page .h-order-bank-account dd *,
body.historicum-checkout-page .h-order-details-table .product-quantity,
body.historicum-checkout-page .h-order-details-table .product-total,
body.historicum-checkout-page .h-order-details-table .product-total *,
body.historicum-checkout-page .h-order-details-table tfoot td,
body.historicum-checkout-page .h-order-details-table tfoot td *,
body.historicum-checkout-page .h-order-details-table tfoot tr:last-child th,
body.historicum-checkout-page .h-order-details-table tfoot tr:last-child td,
body.historicum-checkout-page .h-order-address-card address {
    font-variant-numeric: tabular-nums lining-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
}

body.historicum-checkout-page .h-checkout-review-order .order-total th,
body.historicum-checkout-page .h-checkout-review-order .order-total td,
body.historicum-checkout-page .h-checkout-review-order .order-total *,
body.woocommerce-checkout .h-checkout-review-order .order-total th,
body.woocommerce-checkout .h-checkout-review-order .order-total td,
body.woocommerce-checkout .h-checkout-review-order .order-total *,
body.historicum-checkout-page .h-order-details-table tfoot tr:last-child th,
body.historicum-checkout-page .h-order-details-table tfoot tr:last-child td,
body.historicum-checkout-page .h-order-details-table tfoot tr:last-child td * {
    font-weight: 800 !important;
}

/* Exact WooCommerce purchase-data classes: readable font, black text, tabular numbers. */
body.historicum-checkout-page .h-checkout-summary-panel p.h-checkout-shipping-note[role="note"],body.woocommerce-checkout .h-checkout-summary-panel p.h-checkout-shipping-note[role="note"],body.historicum-cart-page .h-shipping-info p,body.historicum-cart-page .h-workshop-info p,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table th,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table td,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table th *,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table td *,body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table th,body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table td,body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table th *,body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table td *,body.woocommerce-order-received .woocommerce-table__product-name,body.woocommerce-order-received .woocommerce-table__product-name *,body.woocommerce-order-received .woocommerce-table__product-table,body.woocommerce-order-received .woocommerce-table__product-table *,body.woocommerce-order-received .woocommerce-table__product-total,body.woocommerce-order-received .woocommerce-table__product-total *,body.woocommerce-order-received .woocommerce-Price-amount,body.woocommerce-order-received .woocommerce-Price-currencySymbol,body.woocommerce-order-received .woocs_price_code,body.woocommerce-order-received .woocs_special_price_code {
    color: #111111 !important;
    font-family: var(--h-checkout-readable-font, var(--h-font-readable, var(--h-font-instrument, "Instrument Sans", Arial, sans-serif))) !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table thead th,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot th,body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table thead th,body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot th {
    font-weight: 800 !important;
}

body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-quantity,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-total,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-total *,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot td,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot td *,body.woocommerce-order-received .woocommerce-Price-amount,body.woocommerce-order-received .woocommerce-Price-currencySymbol,body.woocommerce-order-received .woocs_price_code,body.woocommerce-order-received .woocs_special_price_code {
    font-variant-numeric: tabular-nums lining-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
}

body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-name,
body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-name {
    text-align: left !important;
}

body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-total,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-total *,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot td,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot td *,
body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-total,
body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-total *,
body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot td,
body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot td * {
    text-align: right !important;
}

/* Order-received hierarchy polish. */
body.historicum-checkout-page .h-order-received-card--pathway .h-order-card-body h3,
body.woocommerce-order-received .h-order-received-card--pathway .h-order-card-body h3 {
    margin-bottom: clamp(20px, 1.8vw, 28px) !important;
}

body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table thead th,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table thead th {
    font-size: clamp(17px, 1.08vw, 19px) !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tbody td,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tbody td {
    font-size: clamp(15px, 0.96vw, 16px) !important;
    font-weight: 500 !important;
    line-height: 1.42 !important;
}

body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tbody td.product-name,
body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tbody td.product-name > *,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tbody td.product-name,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tbody td.product-name > * {
    font-size: clamp(15px, 0.96vw, 16px) !important;
    font-weight: 500 !important;
    line-height: 1.42 !important;
}

body.historicum-checkout-page.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tbody td.product-name > .product-quantity,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tbody td.product-name > .product-quantity {
    display: inline !important;
    font-size: inherit !important;
    font-weight: 800 !important;
    line-height: inherit !important;
    vertical-align: baseline !important;
}

/* Commerce vital typography contract: readable data, tabular numbers, decorative fonts only for titles/buttons. */
body.historicum-checkout-page,
body.woocommerce-checkout,
body.woocommerce-order-received,
body.historicum-cart-page {
    --h-commerce-data-font: var(--h-font-readable, var(--h-font-instrument, "Instrument Sans", Arial, sans-serif));
}

body.historicum-checkout-page .h-checkout-summary-panel p.h-checkout-shipping-note[role="note"],body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th,body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td,body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td *,body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th,body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td *,body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-methods,body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-methods *,body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th,body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td,body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td *,body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot th,body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td,body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td *,body.woocommerce-checkout .h-checkout-review-order .woocommerce-shipping-methods,body.woocommerce-checkout .h-checkout-review-order .woocommerce-shipping-methods *,body.historicum-checkout-page .h-order-received-card--pathway p,body.historicum-checkout-page .h-order-payment-currency-note,body.historicum-checkout-page .h-order-bank-account dt,body.historicum-checkout-page .h-order-bank-account dd,body.historicum-checkout-page .h-order-bank-account dd *,body.historicum-checkout-page .h-order-details-table th,body.historicum-checkout-page .h-order-details-table td,body.historicum-checkout-page .h-order-details-table th *,body.historicum-checkout-page .h-order-details-table td *,body.historicum-checkout-page .h-order-details-table .wc-item-meta-label,body.historicum-checkout-page .h-order-details-table .wc-item-meta p,body.historicum-checkout-page .h-order-address-card address,body.historicum-checkout-page .h-order-address-card address *,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table th,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table td,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table th *,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table td *,body.historicum-cart-page .h-shipping-info p,body.historicum-cart-page .h-workshop-info p {
    color: #111111 !important;
    font-family: var(--h-commerce-data-font) !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.historicum-checkout-page .h-checkout-summary-panel p.h-checkout-shipping-note[role="note"],
body.historicum-checkout-page .h-order-received-card--pathway p,
body.historicum-checkout-page .h-order-address-card address {
    font-size: clamp(16px, 1.05vw, 18px) !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) th,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td,
body.historicum-checkout-page .h-order-details-table th,
body.historicum-checkout-page .h-order-details-table td,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table th,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table td {
    font-size: clamp(15px, 1vw, 17px) !important;
    line-height: 1.42 !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) thead th,
body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .shop_table:not(.h-checkout-review-table) thead th,
body.woocommerce-checkout .h-checkout-review-order .shop_table tfoot th,
body.historicum-checkout-page .h-order-details-table thead th,
body.historicum-checkout-page .h-order-details-table tfoot th,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table thead th,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot th {
    font-size: clamp(16px, 1.05vw, 18px) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-name,
body.historicum-checkout-page .h-checkout-review-order .shop_table:not(.h-checkout-review-table) .product-name *,
body.historicum-checkout-page .h-order-details-table .product-name,
body.historicum-checkout-page .h-order-details-table .product-name *,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-name,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-name * {
    font-size: clamp(15px, 0.96vw, 16px) !important;
    font-weight: 500 !important;
    line-height: 1.42 !important;
}

body.historicum-checkout-page .h-checkout-review-order .product-quantity,
body.historicum-checkout-page .h-order-details-table .product-quantity,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-quantity {
    display: inline !important;
    font-size: inherit !important;
    font-weight: 800 !important;
    line-height: inherit !important;
    vertical-align: baseline !important;
}

body.historicum-checkout-page .h-checkout-review-order .product-total,body.historicum-checkout-page .h-checkout-review-order .product-total *,body.historicum-checkout-page .h-checkout-review-order tfoot td,body.historicum-checkout-page .h-checkout-review-order tfoot td *,body.woocommerce-checkout .h-checkout-review-order .product-total,body.woocommerce-checkout .h-checkout-review-order .product-total *,body.woocommerce-checkout .h-checkout-review-order tfoot td,body.woocommerce-checkout .h-checkout-review-order tfoot td *,body.historicum-checkout-page .h-order-bank-account dd,body.historicum-checkout-page .h-order-bank-account dd *,body.historicum-checkout-page .h-order-details-table .product-total,body.historicum-checkout-page .h-order-details-table .product-total *,body.historicum-checkout-page .h-order-details-table tfoot td,body.historicum-checkout-page .h-order-details-table tfoot td *,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-total,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table .product-total *,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot td,body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot td * {
    font-variant-numeric: tabular-nums lining-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
}

body.historicum-checkout-page .h-checkout-review-order .order-total th,
body.historicum-checkout-page .h-checkout-review-order .order-total td,
body.historicum-checkout-page .h-checkout-review-order .order-total *,
body.woocommerce-checkout .h-checkout-review-order .order-total th,
body.woocommerce-checkout .h-checkout-review-order .order-total td,
body.woocommerce-checkout .h-checkout-review-order .order-total *,
body.historicum-checkout-page .h-order-details-table tfoot tr:last-child th,
body.historicum-checkout-page .h-order-details-table tfoot tr:last-child td,
body.historicum-checkout-page .h-order-details-table tfoot tr:last-child td *,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot tr:last-child th,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot tr:last-child td,
body.woocommerce-order-received table.woocommerce-table.woocommerce-table--order-details.h-order-details-table tfoot tr:last-child td * {
    font-size: clamp(20px, 1.45vw, 24px) !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

body.historicum-cart-page .h-summary-row {
    gap: 18px !important;
    align-items: baseline !important;
    font-family: var(--h-commerce-data-font) !important;
}

body.historicum-cart-page .h-summary-row span {
    flex: 0 0 auto !important;
}

body.historicum-cart-page .h-summary-row strong {
    flex: 1 1 auto !important;
    font-family: var(--h-commerce-data-font) !important;
    font-weight: 700 !important;
    text-align: right !important;
}

/* ============================================================
   Cart: itemised add-on price breakdown per line item.
   Base price + each selected add-on with its own price in the
   active currency. Free options show "Included"; flat fees are
   marked "(once)".
   ============================================================ */
























/* ============================================================
   Price typography system (audit T1-T3) - cart/checkout.
   All money set in the data font (Instrument) with tabular
   figures; Cinzel/Cormorant stay on the LABELS only. Currency
   unit is subordinate everywhere.
   ============================================================ */
body.historicum-checkout-page {
    --h-commerce-data-font: var(--h-font-readable, var(--h-font-instrument, "Instrument Sans", Arial, sans-serif));
}



body.historicum-cart-page .h-summary-row strong,
body.historicum-cart-page .h-summary-row strong .amount,
body.historicum-cart-page .h-summary-row strong bdi {
    font-family: var(--h-commerce-data-font) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums lining-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
}

body.historicum-cart-page .h-summary-total strong,
body.historicum-cart-page .h-summary-total strong .amount,
body.historicum-cart-page .h-summary-total strong bdi {
    font-family: var(--h-commerce-data-font) !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    font-variant-numeric: tabular-nums lining-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
}

body.historicum-checkout-page .h-checkout-review-order .amount,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-Price-amount,
body.historicum-checkout-page .woocommerce-checkout-review-order-table .amount,
body.historicum-checkout-page .woocommerce-checkout-review-order-table .woocommerce-Price-amount {
    font-family: var(--h-commerce-data-font) !important;
    font-variant-numeric: tabular-nums lining-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
}

/* Itemised add-on box: numbers in the data font, labels stay Cormorant. */


body.historicum-cart-page .woocommerce-Price-currencySymbol,
body.historicum-checkout-page .woocommerce-Price-currencySymbol,
body.woocommerce-order-received .woocommerce-Price-currencySymbol {
    font-size: 0.7em !important;
    font-weight: 700 !important;
    opacity: 0.9 !important;
    letter-spacing: 0.03em !important;
}

/* ============================================================
   Polish bundle (audit issues 4 + 6) - cart/checkout.
   ============================================================ */

/* Button tokens: shared geometry/typography for all main actions. */
body.historicum-cart-page .h-btn,
body.historicum-cart-page .h-btn-gold,
body.historicum-cart-page .h-checkout-btn,
body.historicum-checkout-page .h-btn,
body.historicum-checkout-page .h-btn-gold,
body.historicum-checkout-page .h-checkout-btn,
body.woocommerce-order-received .h-btn,
body.woocommerce-order-received .h-btn-gold {
    min-height: 48px !important;
    border-radius: 8px !important;
    font-family: var(--h-font-instrument, "Instrument Sans", Arial, sans-serif) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
}

body.historicum-cart-page .h-checkout-btn,
body.historicum-checkout-page .h-checkout-btn {
    min-height: 54px !important;
}

/* ============================================================
   Cart item system: final source for cart row rails, customisation
   readability, quantity controls, and mobile receipt stacking.
   ============================================================ */




/* The +/- buttons now auto-update the cart, so the manual "Update Cart"
   button is redundant. Hidden (kept in the DOM as a no-JS fallback). */
body.historicum-cart-page [name="update_cart"] {
    display: none !important;
}

/* Mobile: the "Remove" link was overflowing the small round button because the
   winning rule shrank the button but kept the text visible. Turn it into a clean
   round "x" icon tap target (44px-ish), text hidden. */


/* ============================================================
   CART ITEM — single authoritative design.
   Desktop (>768px): row grid with fixed receipt rails.
   Mobile (<=768px): item receipt with label-left/value-right rows.
   ============================================================ */
.h-med-cart-layout { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:clamp(24px,4vw,48px); align-items:start; max-width:1540px; margin:0 auto; }
.h-med-cart-header { display:grid; grid-template-columns:minmax(240px,2fr) repeat(5,minmax(104px,130px)) 44px; gap:16px; align-items:center; padding:0 0 14px; border-bottom:2px solid rgba(10,10,10,.12); margin-bottom:4px; }
.h-med-cart-header span { font-family:var(--h-font-cinzel); font-size:11px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:#111111; }
.h-med-cart-header span:not(:first-child) { text-align:center; }
.h-med-cart-item { display:grid; grid-template-columns:minmax(240px,2fr) repeat(5,minmax(104px,130px)) 44px; gap:16px; align-items:start; padding:24px 0; border-bottom:1px solid rgba(10,10,10,.08); }
.h-med-cart-product { display:flex; gap:18px; align-items:flex-start; min-width:0; }
.h-med-cart-image { position:relative; display:block; width:90px; min-width:90px; aspect-ratio:1; overflow:hidden; border:1px solid rgba(10,10,10,.12); }
.h-med-cart-image img:not(.h-watermark){ width:100%; height:100%; object-fit:cover; }
.h-med-cart-image .h-watermark{ position:absolute; bottom:4px; right:4px; width:24px; height:auto; opacity:.25; pointer-events:none; }
.h-med-cart-copy { display:flex; flex-direction:column; gap:4px; min-width:0; }
.h-med-cart-name { font-family:var(--h-font-cormorant); font-size:18px; font-weight:700; color:#0a0a0a; margin:0; line-height:1.3; }
.h-med-cart-name a { color:inherit; text-decoration:none; }
.h-med-cart-name a:hover { color:var(--h-accent-hover); }
.h-med-cart-meta { font-family:var(--h-font-cormorant); font-size:14px; color:#5f574a; display:flex; flex-direction:column; gap:2px; }
.h-med-cart-addons { display:flex; flex-direction:column; gap:4px; }
.h-med-cart-addons-title { font-family:var(--h-font-cinzel); font-size:12px; letter-spacing:1px; text-transform:uppercase; color:#564c3f; }
.h-med-cart-addons-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:2px; }
.h-med-cart-addon-row { display:flex; gap:10px; justify-content:space-between; font-family:var(--h-font-cormorant); font-size:14px; line-height:1.5; }
.h-med-cart-addon-label, .h-med-cart-addon-price { color:#2e271d; }
.h-med-cart-addon-price { white-space:nowrap; }
.h-med-cart-addon-included { color:#5f574a; font-weight:600; }
.h-med-cart-addon-once { color:#5f574a; font-size:.92em; }
.h-med-cart-price, .h-med-cart-addon-total, .h-med-cart-total { min-height:44px; font-family:var(--h-font-cinzel); font-size:15px; font-weight:700; color:#0a0a0a; white-space:nowrap; display:flex; align-items:center; justify-content:center; text-align:center; }
.h-med-cart-addon-total.is-zero { color:#6f6f6f; }
.h-med-cart-wait-row { min-height:44px; display:flex; align-items:center; justify-content:center; }
.h-med-cart-qty { min-height:44px; display:flex; align-items:center; justify-content:center; }
body.historicum-cart-page .h-cart-quantity-control { display:inline-grid; grid-template-columns:42px 44px 42px; align-items:stretch; border:1px solid rgba(17,17,17,.34); border-radius:8px; background:transparent; overflow:hidden; }
body.historicum-cart-page .h-cart-qty-step { display:inline-flex; align-items:center; justify-content:center; min-width:42px; min-height:44px; box-sizing:border-box; margin:0; padding:0 11px; border:0; background:transparent; box-shadow:none; color:#111111; font-family:var(--h-font-instrument); font-size:18px; font-weight:400; line-height:1; letter-spacing:0; text-align:center; cursor:pointer; appearance:none; }
body.historicum-cart-page .h-cart-qty-step:hover { background:rgba(17,17,17,.06); }
body.historicum-cart-page .h-cart-qty-sign { display:block; width:100%; text-align:center; line-height:1; transform:translateY(-.5px); }
body.historicum-cart-page .h-cart-qty-minus .h-cart-qty-sign { transform:translate(1px,-1px); }
body.historicum-cart-page .h-cart-quantity-control input.qty { width:44px; min-height:44px; margin:0; padding:0 4px; border:0; border-right:1px solid rgba(17,17,17,.16); border-left:1px solid rgba(17,17,17,.16); background:transparent; color:#111111; font-family:var(--h-commerce-data-font, var(--h-font-instrument)); font-size:15px; font-weight:700; text-align:center; font-variant-numeric:tabular-nums lining-nums; appearance:textfield; -moz-appearance:textfield; }
body.historicum-cart-page .h-cart-quantity-control input.qty::-webkit-outer-spin-button,
body.historicum-cart-page .h-cart-quantity-control input.qty::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
.h-med-cart-remove { display:flex; justify-content:center; align-items:flex-start; }
.h-cart-remove { display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border:1px solid rgba(10,10,10,.35); border-radius:50%; font-size:0; line-height:1; color:#6b6b6b; text-decoration:none; transition:color .2s,border-color .2s,background .2s; }
.h-cart-remove::before { content:"\00d7"; font-family:var(--h-font-cinzel); font-size:20px; line-height:1; }
.h-cart-remove:hover { color:#fff; background:#c0392b; border-color:#c0392b; }
.h-med-cart-actions { display:flex; gap:14px; padding-top:24px; flex-wrap:wrap; }

@media (max-width:1100px){
  .h-med-cart-layout { grid-template-columns:1fr; }
  .h-med-order-summary { position:static; }
}

@media (max-width:768px){
  .h-med-cart-header { display:none; }
  .h-med-cart-item { display:flex; flex-direction:column; align-items:stretch; text-align:left; gap:0; padding:16px; margin:0 0 14px; border:1px solid rgba(17,17,17,.14); border-radius:8px; background:rgba(255,255,255,.18); }
  .h-med-cart-product { align-items:flex-start; gap:12px; width:100%; }
  .h-med-cart-image { width:84px; min-width:84px; }
  .h-med-cart-copy { flex:1 1 auto; align-items:flex-start; width:auto; min-width:0; }
  .h-med-cart-name { font-size:19px; line-height:1.2; }
  .h-med-cart-meta { align-items:flex-start; width:100%; }
  .h-med-cart-addons { align-items:stretch; width:100%; margin-top:10px; padding-top:10px; border-top:1px solid rgba(17,17,17,.1); }
  .h-med-cart-addons-list { align-items:stretch; width:100%; }
  .h-med-cart-addon-row { justify-content:space-between; gap:12px; }
  .h-med-cart-addon-label { text-align:left; }
  .h-med-cart-addon-price { text-align:right; }
  .h-med-cart-wait-row, .h-med-cart-price, .h-med-cart-addon-total, .h-med-cart-qty, .h-med-cart-total { justify-content:space-between; align-items:center; width:100%; min-height:46px; padding:10px 0; border-top:1px solid rgba(17,17,17,.1); text-align:right; }
  .h-med-cart-wait-row::before, .h-med-cart-price::before, .h-med-cart-addon-total::before, .h-med-cart-qty::before, .h-med-cart-total::before { content:attr(data-label); flex:0 0 auto; margin-right:16px; font-family:var(--h-font-cinzel); font-size:11px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:#111111; text-align:left; }
  .h-med-cart-qty .h-cart-quantity-control { margin-left:auto; }
  .h-med-cart-total { font-size:17px; }
  .h-med-cart-remove { display:flex; justify-content:flex-end; align-items:center; width:100%; padding-top:10px; }
  .h-cart-remove { width:44px; height:44px; }
}

/* ============================================================
   QUANTITY UPDATE — no jump, just a soft loading state.
   The +/- buttons refresh the cart via AJAX. Reserve the order
   summary height and dim it briefly so it never collapses or
   jumps down / off-page while the totals refresh.
   ============================================================ */
.h-med-order-summary { min-height: 360px; }
/* NOTE: do NOT add pointer-events:none on .is-cart-updating — if that class is
   left on the cart, it makes the whole cart unclickable. The min-height above
   is enough to stop the summary collapsing during a totals refresh. */
/* ============================================================
   PROGRESS STEPS + ACTIONS + READABILITY (cart)
   ============================================================ */
/* Desktop: align the Cart/Details/Payment/Received line with the items column
   (left), not floating; keep it readable. */
.h-checkout-topline { justify-content: flex-start; }
.h-checkout-topline a,
.h-checkout-topline span { font-size: clamp(9px, 2.7vw, 12px); letter-spacing: clamp(0.4px, 0.3vw, 1px); }

/* Mobile: centred + normalised. */
@media (max-width: 768px) {
    .h-checkout-topline,
    body.historicum-cart-page .h-commerce-progress {
        justify-content: flex-start !important;
        text-align: left;
        flex-wrap: nowrap;
    }
}

/* Continue Shopping: no fill until hover. */
.h-med-cart-actions .h-btn,
.h-med-cart-actions .h-btn-outline {
    background: transparent;
    border: 2px solid #0a0a0a;
    color: #0a0a0a;
    transition: background .2s ease, color .2s ease;
}
.h-med-cart-actions .h-btn:hover,
.h-med-cart-actions .h-btn-outline:hover {
    background: var(--h-accent, #ebbc00);
    border-color: var(--h-accent, #ebbc00);
    color: #0a0a0a;
}

/* Cart progress steps: centred (fixes "too far left" on desktop and the
   off-centre line on mobile). Uses the cart-specific .h-cart-progress class so
   it cleanly wins over the theme's scattered flex-start rules without touching
   the checkout page. */
/* Cart progress steps: left-aligned on desktop (in line with the items),
   centred on MOBILE ONLY. */
body.historicum-cart-page .h-cart-progress { justify-content: flex-start !important; }
@media (max-width: 768px) {
    body.historicum-cart-page .h-cart-progress { justify-content: flex-start !important; }
}

/* ============================================================
   DESKTOP: Cart/Details/Payment progress line shorter + aligned
   with the items column (not spanning the full paper over the
   order summary). Left-aligned above the products.
   ============================================================ */
@media (min-width: 769px) {
    body.historicum-cart-page .h-cart-progress {
        justify-content: flex-start;
        max-width: 1540px;
        margin-right: auto;
    }
}

/* ============================================================
   Final cart + checkout purchase-flow contract.
   This is intentionally last: commerce.css loads after account-checkout.css.
   ============================================================ */

body.historicum-cart-page,
body.historicum-checkout-page,
body.woocommerce-checkout,
body.woocommerce-order-received {
    --h-commerce-money-font: Arial, Helvetica, sans-serif;
    --h-purchase-rail: minmax(104px, 130px);
    --h-purchase-side: 380px;
    --h-purchase-flow-section-gap: 24px;
    --h-purchase-paper-top-offset: clamp(120px, 14vh, 180px);
    --h-purchase-flow-top-padding: clamp(34px, 4.8vw, 72px);
}

body.historicum-cart-page [name="update_cart"] {
    display: none !important;
}

body.historicum-cart-page .h-cart-progress,
body.historicum-checkout-page .h-commerce-progress {
    justify-content: flex-start !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: clamp(10px, 1.9vw, 24px) !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
}

body.historicum-cart-page .h-cart-progress::-webkit-scrollbar,
body.historicum-checkout-page .h-commerce-progress::-webkit-scrollbar {
    display: none !important;
}

body.historicum-cart-page .h-commerce-progress .h-progress-step,
body.historicum-checkout-page .h-commerce-progress .h-progress-step {
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
    color: #4b453b !important;
    text-decoration: none !important;
    opacity: 0.62 !important;
}

body.historicum-cart-page .h-commerce-progress .h-progress-step.is-active,
body.historicum-checkout-page .h-commerce-progress .h-progress-step.is-active {
    color: #0a0a0a !important;
    opacity: 1 !important;
}

body.historicum-cart-page .h-commerce-progress .h-progress-step.is-active::before,
body.historicum-checkout-page .h-commerce-progress .h-progress-step.is-active::before {
    border-color: var(--h-accent) !important;
    background: var(--h-accent) !important;
    color: #0a0a0a !important;
}

body.historicum-cart-page .h-med-cart-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) var(--h-purchase-side) !important;
    gap: clamp(24px, 4vw, 48px) !important;
    align-items: start !important;
    max-width: 1540px !important;
    margin: 0 auto !important;
}

body.historicum-cart-page .h-paper-content.h-commerce-paper,
body.historicum-checkout-page .h-checkout-policy-paper,
body.woocommerce-checkout .h-checkout-policy-paper,
body.woocommerce-order-received .h-checkout-policy-paper {
    padding-top: var(--h-purchase-flow-top-padding) !important;
}

body.historicum-cart-page .h-commerce-paper-section,
body.historicum-checkout-page .h-checkout-paper-section,
body.woocommerce-checkout .h-checkout-paper-section,
body.woocommerce-order-received .h-checkout-paper-section {
    margin-top: var(--h-purchase-flow-section-gap) !important;
}

body.historicum-cart-page .h-med-order-summary .h-summary-row strong,
body.historicum-cart-page .h-med-order-summary .h-summary-row strong *,
body.historicum-cart-page .h-cart-mobile-checkout-total strong,
body.historicum-cart-page .h-cart-mobile-checkout-total strong * {
    font-family: var(--h-commerce-money-font) !important;
    font-variant-numeric: tabular-nums lining-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
    letter-spacing: 0 !important;
}

body.historicum-cart-page .h-med-order-summary .h-summary-row strong {
    font-weight: 400 !important;
}

body.historicum-cart-page .h-med-order-summary .h-summary-total strong,
body.historicum-cart-page .h-med-order-summary .h-summary-total strong *,
body.historicum-cart-page .h-cart-mobile-checkout-total strong,
body.historicum-cart-page .h-cart-mobile-checkout-total strong * {
    font-weight: 800 !important;
}

body.historicum-cart-page .h-cart-progress {
    max-width: 1540px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.historicum-cart-page .h-med-cart-header,
body.historicum-cart-page .h-med-cart-item {
    display: grid !important;
    grid-template-columns: minmax(240px, 2fr) repeat(5, var(--h-purchase-rail)) 44px !important;
    gap: 16px !important;
}

body.historicum-checkout-page .h-checkout-summary-panel,
body.woocommerce-checkout .h-checkout-summary-panel {
    min-height: 420px !important;
}

body.historicum-checkout-page .h-checkout-review-order,
body.historicum-checkout-page .h-checkout-review-order.processing,
body.historicum-checkout-page .h-checkout-review-order.woocommerce-checkout-review-order,
body.historicum-checkout-page .h-checkout-review-order.woocommerce-checkout-review-order.processing,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout #order_review.processing,
body.woocommerce-checkout .woocommerce-checkout-review-order,
body.woocommerce-checkout .woocommerce-checkout-review-order.processing {
    min-height: 260px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: none !important;
}

body.historicum-cart-page .h-med-cart-header {
    align-items: center !important;
    margin-bottom: 4px !important;
    padding: 0 0 14px !important;
    border-bottom: 2px solid rgba(10, 10, 10, 0.12) !important;
}

body.historicum-cart-page .h-med-cart-header span {
    color: #111111 !important;
    font-family: var(--h-font-cinzel) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 1.2px !important;
    text-transform: uppercase !important;
}

body.historicum-cart-page .h-med-cart-header span:not(:first-child) {
    text-align: center !important;
}

body.historicum-cart-page .h-med-cart-item {
    align-items: start !important;
    padding: 24px 0 !important;
    border-bottom: 1px solid rgba(10, 10, 10, 0.08) !important;
}

body.historicum-cart-page .h-med-cart-product {
    display: flex !important;
    gap: 18px !important;
    align-items: flex-start !important;
    min-width: 0 !important;
}

body.historicum-cart-page .h-med-cart-image {
    position: relative !important;
    display: block !important;
    width: 90px !important;
    min-width: 90px !important;
    aspect-ratio: 1 !important;
    overflow: hidden !important;
    border: 1px solid rgba(10, 10, 10, 0.12) !important;
    border-radius: 4px !important;
}

body.historicum-cart-page .h-med-cart-image img:not(.h-watermark) {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

body.historicum-cart-page .h-med-cart-image .h-watermark {
    position: absolute !important;
    right: 4px !important;
    bottom: 4px !important;
    width: 24px !important;
    height: auto !important;
    opacity: 0.28 !important;
    pointer-events: none !important;
}

body.historicum-cart-page .h-med-cart-copy {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    min-width: 0 !important;
}

body.historicum-cart-page .h-med-cart-name {
    margin: 0 !important;
    color: #0a0a0a !important;
    font-family: var(--h-font-cormorant) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

body.historicum-cart-page .h-med-cart-name a {
    color: inherit !important;
    text-decoration: none !important;
}

body.historicum-cart-page .h-med-cart-name a:hover {
    color: var(--h-accent-hover) !important;
}

body.historicum-cart-page .h-med-cart-meta {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    color: #5f574a !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

body.historicum-cart-page .h-med-cart-addons {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}

body.historicum-cart-page .h-med-cart-addons-title {
    color: #4b4235 !important;
    font-family: var(--h-font-cinzel) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

body.historicum-cart-page .h-med-cart-addons-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body.historicum-cart-page .h-med-cart-addon-row {
    display: flex !important;
    justify-content: space-between !important;
    gap: 12px !important;
    color: #1f1a14 !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
}

body.historicum-cart-page .h-med-cart-addon-label,
body.historicum-cart-page .h-med-cart-addon-price {
    color: #1f1a14 !important;
}

body.historicum-cart-page .h-med-cart-addon-price {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

body.historicum-cart-page .h-med-cart-addon-included {
    color: #5f574a !important;
    font-weight: 600 !important;
}

body.historicum-cart-page .h-med-cart-addon-once {
    color: #5f574a !important;
    font-size: 0.92em !important;
}

body.historicum-cart-page .h-med-cart-wait-row,
body.historicum-cart-page .h-med-cart-price,
body.historicum-cart-page .h-med-cart-addon-total,
body.historicum-cart-page .h-med-cart-qty,
body.historicum-cart-page .h-med-cart-total {
    display: flex !important;
    min-height: 44px !important;
    align-items: center !important;
    justify-content: center !important;
    color: #0a0a0a !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums lining-nums !important;
    text-align: center !important;
    white-space: nowrap !important;
}

body.historicum-cart-page .h-med-cart-addon-total.is-zero {
    color: #6f6f6f !important;
}

body.historicum-cart-page .h-cart-quantity-control {
    display: inline-grid !important;
    grid-template-columns: 42px 44px 42px !important;
    align-items: stretch !important;
    overflow: hidden !important;
    border: 1px solid rgba(17, 17, 17, 0.34) !important;
    border-radius: 8px !important;
    background: transparent !important;
}

body.historicum-cart-page .h-cart-qty-step {
    display: inline-flex !important;
    min-width: 42px !important;
    min-height: 44px !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 11px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #111111 !important;
    font-family: var(--h-font-instrument) !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    appearance: none !important;
    cursor: pointer !important;
}

body.historicum-cart-page .h-cart-qty-step:hover {
    background: rgba(17, 17, 17, 0.06) !important;
}

body.historicum-cart-page .h-cart-qty-sign {
    display: block !important;
    width: 100% !important;
    line-height: 1 !important;
    text-align: center !important;
    transform: translateY(-0.5px) !important;
}

body.historicum-cart-page .h-cart-qty-minus .h-cart-qty-sign {
    transform: translate(1px, -1px) !important;
}

body.historicum-cart-page .h-cart-quantity-control input.qty {
    width: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 4px !important;
    border: 0 !important;
    border-right: 1px solid rgba(17, 17, 17, 0.16) !important;
    border-left: 1px solid rgba(17, 17, 17, 0.16) !important;
    background: transparent !important;
    color: #111111 !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    font-variant-numeric: tabular-nums lining-nums !important;
    text-align: center !important;
    appearance: textfield !important;
    -moz-appearance: textfield !important;
}

body.historicum-cart-page .h-cart-quantity-control input.qty::-webkit-outer-spin-button,
body.historicum-cart-page .h-cart-quantity-control input.qty::-webkit-inner-spin-button {
    margin: 0 !important;
    -webkit-appearance: none !important;
}

body.historicum-cart-page .h-med-cart-remove {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
}

body.historicum-cart-page .h-cart-remove {
    display: inline-flex !important;
    width: 30px !important;
    height: 30px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(10, 10, 10, 0.35) !important;
    border-radius: 50% !important;
    color: #6b6b6b !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    transition: color 0.2s, border-color 0.2s, background 0.2s !important;
}

body.historicum-cart-page .h-cart-remove::before {
    content: "\00d7" !important;
    font-family: var(--h-font-cinzel) !important;
    font-size: 20px !important;
    line-height: 1 !important;
}

body.historicum-cart-page .h-cart-remove:hover {
    border-color: #c0392b !important;
    background: #c0392b !important;
    color: #ffffff !important;
}

body.historicum-cart-page .h-med-cart-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
    padding-top: 24px !important;
}

body.historicum-cart-page .h-med-cart-actions .h-btn,
body.historicum-cart-page .h-med-cart-actions .h-btn-outline,
body.historicum-cart-page .h-cart-after-recs-actions .h-btn {
    border: 2px solid #0a0a0a !important;
    background: transparent !important;
    color: #0a0a0a !important;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease !important;
}

body.historicum-cart-page .h-med-cart-actions .h-btn:hover,
body.historicum-cart-page .h-med-cart-actions .h-btn-outline:hover,
body.historicum-cart-page .h-cart-after-recs-actions .h-btn:hover {
    border-color: var(--h-accent) !important;
    background: var(--h-accent) !important;
    color: #0a0a0a !important;
}

body.historicum-cart-page .h-med-order-summary {
    min-height: 360px !important;
}

body.historicum-cart-page .h-cart-after-recs-actions,
body.historicum-cart-page .h-cart-mobile-checkout-bar {
    display: none;
}

body.historicum-cart-page .h-commerce-rec-grid {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: clamp(14px, 1.6vw, 22px) !important;
    max-width: 1540px !important;
    margin: 0 auto !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-slide {
    min-width: 0 !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-card {
    height: 100% !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-card:hover {
    box-shadow: none !important;
    transform: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-card.is-sale::before {
    content: attr(data-sale-label) !important;
    position: absolute !important;
    top: 8px !important;
    left: 8px !important;
    z-index: 5 !important;
    padding: 4px 7px !important;
    border-radius: 999px !important;
    background: var(--h-accent) !important;
    color: #0a0a0a !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-info {
    display: flex !important;
    min-height: 104px !important;
    flex-direction: column !important;
    justify-content: space-between !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-title {
    min-height: 32px !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-stars-new {
    color: rgba(235, 188, 0, 0.72) !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-price {
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 74px !important;
    gap: 3px !important;
    padding: 6px 10px !important;
    border-radius: 8px !important;
    font-family: var(--h-commerce-data-font) !important;
    line-height: 1 !important;
    text-align: center !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-price del {
    order: 1 !important;
    color: rgba(255, 255, 255, 0.74) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    text-decoration-thickness: 1px !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-price ins,
body.historicum-cart-page .h-commerce-rec-grid .h-bs-price > .woocommerce-Price-amount {
    order: 2 !important;
    color: var(--h-accent) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-decoration: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-price .h-lowest-price-note {
    order: 3 !important;
    display: block !important;
    color: rgba(255, 255, 255, 0.68) !important;
    font-size: 9px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

body.historicum-checkout-page .h-med-checkout-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 440px) !important;
    gap: clamp(28px, 3.2vw, 48px) !important;
    align-items: start !important;
    max-width: 1540px !important;
    margin: 0 auto !important;
}

body.historicum-checkout-page .h-med-checkout-forms {
    display: grid !important;
    gap: 24px !important;
}

body.historicum-checkout-page .h-checkout-panel,
body.historicum-checkout-page .h-checkout-summary-panel {
    border: 0.3px solid #111111 !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.18) !important;
    box-shadow: 4px 4px 8px -1px rgba(0, 0, 0, 0.18) !important;
}

body.historicum-checkout-page .h-checkout-panel {
    padding: 24px !important;
}

body.historicum-checkout-page .h-checkout-summary-panel {
    position: sticky !important;
    top: 100px !important;
    padding: 26px !important;
}

body.historicum-checkout-page .h-checkout-panel-head {
    margin-bottom: 20px !important;
}

body.historicum-checkout-page .h-med-checkout-form label {
    color: #111111 !important;
}

body.historicum-checkout-page .h-med-checkout-form input.input-text,
body.historicum-checkout-page .h-med-checkout-form textarea,
body.historicum-checkout-page .h-med-checkout-form select,
body.historicum-checkout-page .h-med-checkout-form .select2-container .select2-selection {
    min-height: 48px !important;
    border: 1px solid rgba(17, 17, 17, 0.28) !important;
    border-radius: 8px !important;
    background: #fffaf0 !important;
    color: #111111 !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 16px !important;
}

body.historicum-checkout-page .h-med-checkout-form input.input-text:focus,
body.historicum-checkout-page .h-med-checkout-form textarea:focus,
body.historicum-checkout-page .h-med-checkout-form select:focus {
    border-color: var(--h-accent) !important;
    outline: 3px solid rgba(235, 188, 0, 0.24) !important;
    outline-offset: 1px !important;
}

body.historicum-checkout-page .h-checkout-summary-panel h2 {
    margin: 0 0 12px !important;
    padding: 0 0 14px !important;
    border-bottom: 2px solid var(--h-accent) !important;
    color: #111111 !important;
}

body.historicum-checkout-page .h-checkout-summary-panel .h-checkout-shipping-note {
    margin: 0 0 20px !important;
    padding: 0 0 16px !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.1) !important;
    color: #111111 !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 15px !important;
    font-style: normal !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
}

body.historicum-checkout-page .h-checkout-review-title-row {
    align-items: flex-start !important;
}

body.historicum-checkout-page .h-checkout-review-item-title {
    color: #111111 !important;
    font-family: var(--h-font-cormorant) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
}

body.historicum-checkout-page .h-checkout-review-qty {
    min-height: 28px !important;
    border-radius: 999px !important;
    font-family: var(--h-commerce-data-font) !important;
}

body.historicum-checkout-page .h-checkout-review-price-grid {
    border-radius: 8px !important;
}

body.historicum-checkout-page .h-checkout-review-price-row dt {
    color: #111111 !important;
}

body.historicum-checkout-page .h-checkout-review-price-row dd,
body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot td,
body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot td * {
    color: #111111 !important;
    font-family: var(--h-commerce-data-font) !important;
    font-variant-numeric: tabular-nums lining-nums !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot th,
body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot td {
    padding: 12px 0 !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.08) !important;
    text-align: left !important;
}

body.historicum-checkout-page .h-checkout-review-order .shop_table tfoot td {
    text-align: right !important;
}

body.historicum-checkout-page .h-checkout-review-order .order-total th,
body.historicum-checkout-page .h-checkout-review-order .order-total td,
body.historicum-checkout-page .h-checkout-review-order .order-total * {
    color: #111111 !important;
    font-size: clamp(20px, 1.45vw, 24px) !important;
    font-weight: 800 !important;
}

body.historicum-checkout-page .h-checkout-review-order #payment,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-checkout-payment {
    width: 100% !important;
    margin-top: 18px !important;
    border: 0 !important;
    background: transparent !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_methods {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 20px 0 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    list-style: none !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method {
    position: relative !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    list-style: none !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method input.input-radio {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method label {
    display: flex !important;
    min-height: 52px !important;
    width: 100% !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 12px 16px !important;
    border: 1px solid rgba(17, 17, 17, 0.38) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.2) !important;
    color: #111111 !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    line-height: 1.15 !important;
    overflow-wrap: anywhere !important;
    text-align: center !important;
    text-transform: uppercase !important;
    white-space: normal !important;
    cursor: pointer !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method input.input-radio:checked + label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method.is-selected label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method.is-selected > label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method.selected label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method:has(input.input-radio:checked) label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method:has(> input.input-radio:checked) > label {
    border-color: var(--h-accent) !important;
    background: #f5f0e6 !important;
    background-image: none !important;
    box-shadow: inset 0 0 0 1px var(--h-accent) !important;
    color: #111111 !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method input.input-radio:focus-visible + label {
    outline: 3px solid rgba(235, 188, 0, 0.32) !important;
    outline-offset: 3px !important;
}

body.historicum-checkout-page .h-checkout-review-order .payment_box {
    display: none !important;
}

body.historicum-checkout-page .h-checkout-review-order .form-row.place-order {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

body.historicum-checkout-page .h-checkout-review-order #place_order,
body.historicum-cart-page .h-checkout-btn {
    width: 100% !important;
    min-height: 54px !important;
    border: 1px solid var(--h-accent) !important;
    border-radius: 8px !important;
    background: var(--h-accent) !important;
    color: #111111 !important;
    box-shadow: none !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
}

body.historicum-checkout-page .h-checkout-review-order #place_order:hover,
body.historicum-checkout-page .h-checkout-review-order #place_order:focus-visible,
body.historicum-cart-page .h-checkout-btn:hover,
body.historicum-cart-page .h-checkout-btn:focus-visible {
    border-color: #f0c62d !important;
    background: #f0c62d !important;
    transform: translateY(-1px) !important;
}

body.historicum-checkout-page .h-checkout-review-order .woocommerce-terms-and-conditions-wrapper,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-privacy-policy-text,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-privacy-policy-text p {
    color: #3d3528 !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    text-align: left !important;
}

@media (max-width: 1100px) {
    body.historicum-cart-page .h-med-cart-layout,
    body.historicum-checkout-page .h-med-checkout-layout {
        grid-template-columns: 1fr !important;
    }

    body.historicum-cart-page .h-med-order-summary,
    body.historicum-checkout-page .h-checkout-summary-panel {
        position: static !important;
    }

    body.historicum-cart-page .h-commerce-rec-grid {
        grid-auto-flow: row !important;
        grid-auto-columns: auto !important;
        grid-template-columns: repeat(auto-fit, minmax(min(190px, 100%), 1fr)) !important;
        overflow: visible !important;
        padding: 0 !important;
        scroll-snap-type: none !important;
    }

    body.historicum-cart-page .h-commerce-rec-grid .h-bs-slide {
        scroll-snap-align: none !important;
    }
}

@media (max-width: 768px) {
    body.historicum-cart-page.historicum-cart-filled-page {
        padding-bottom: 86px !important;
    }

    body.historicum-cart-page .h-paper-content.h-commerce-paper {
        padding-right: 18px !important;
        padding-left: 18px !important;
    }

    body.historicum-cart-page .h-cart-progress,
    body.historicum-checkout-page .h-commerce-progress {
        justify-content: flex-start !important;
        gap: 14px !important;
        padding-bottom: 22px !important;
    }

    body.historicum-cart-page .h-med-cart-header {
        display: none !important;
    }

    body.historicum-cart-page .h-med-cart-item {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        margin: 0 0 14px !important;
        padding: 16px !important;
        border: 1px solid rgba(17, 17, 17, 0.14) !important;
        border-radius: 8px !important;
        background: rgba(255, 255, 255, 0.18) !important;
        text-align: left !important;
    }

    body.historicum-cart-page .h-med-cart-product {
        width: 100% !important;
        gap: 12px !important;
    }

    body.historicum-cart-page .h-med-cart-image {
        width: 84px !important;
        min-width: 84px !important;
    }

    body.historicum-cart-page .h-med-cart-copy {
        flex: 1 1 auto !important;
        width: auto !important;
    }

    body.historicum-cart-page .h-med-cart-name {
        font-size: 19px !important;
        line-height: 1.2 !important;
    }

    body.historicum-cart-page .h-med-cart-addons {
        width: 100% !important;
        margin-top: 10px !important;
        padding-top: 10px !important;
        border-top: 1px solid rgba(17, 17, 17, 0.1) !important;
    }

    body.historicum-cart-page .h-med-cart-addon-row {
        gap: 12px !important;
    }

    body.historicum-cart-page .h-med-cart-addon-label {
        text-align: left !important;
    }

    body.historicum-cart-page .h-med-cart-addon-price {
        text-align: right !important;
    }

    body.historicum-cart-page .h-med-cart-wait-row,
    body.historicum-cart-page .h-med-cart-price,
    body.historicum-cart-page .h-med-cart-addon-total,
    body.historicum-cart-page .h-med-cart-qty,
    body.historicum-cart-page .h-med-cart-total {
        justify-content: space-between !important;
        width: 100% !important;
        min-height: 46px !important;
        padding: 10px 0 !important;
        border-top: 1px solid rgba(17, 17, 17, 0.1) !important;
        text-align: right !important;
    }

    body.historicum-cart-page .h-med-cart-wait-row::before,
    body.historicum-cart-page .h-med-cart-price::before,
    body.historicum-cart-page .h-med-cart-addon-total::before,
    body.historicum-cart-page .h-med-cart-qty::before,
    body.historicum-cart-page .h-med-cart-total::before {
        content: attr(data-label) !important;
        flex: 0 0 auto !important;
        margin-right: 16px !important;
        color: #111111 !important;
        font-family: var(--h-font-cinzel) !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        letter-spacing: 1px !important;
        text-align: left !important;
        text-transform: uppercase !important;
    }

    body.historicum-cart-page .h-med-cart-qty .h-cart-quantity-control {
        margin-left: auto !important;
    }

    body.historicum-cart-page .h-med-cart-total {
        font-size: 17px !important;
    }

    body.historicum-cart-page .h-med-cart-remove {
        width: 100% !important;
        align-items: center !important;
        justify-content: flex-end !important;
        padding-top: 10px !important;
    }

    body.historicum-cart-page .h-cart-remove {
        width: 44px !important;
        height: 44px !important;
    }

    body.historicum-cart-page .h-med-cart-actions {
        display: none !important;
    }

    body.historicum-cart-page .h-cart-after-recs-actions {
        display: flex !important;
        justify-content: center !important;
        margin-top: 22px !important;
    }

    body.historicum-cart-page .h-cart-after-recs-actions .h-btn {
        width: min(100%, 320px) !important;
    }

    body.historicum-cart-page .h-commerce-recommendations .h-paper-content {
        padding-right: 18px !important;
        padding-left: 18px !important;
    }

    body.historicum-cart-page .h-commerce-rec-grid {
        grid-auto-flow: row !important;
        grid-auto-columns: auto !important;
        grid-template-columns: repeat(auto-fit, minmax(min(176px, 100%), 1fr)) !important;
        gap: 14px !important;
        margin-right: 0 !important;
        padding-right: 0 !important;
        overflow: visible !important;
        scroll-snap-type: none !important;
    }

    body.historicum-cart-page .h-cart-mobile-checkout-bar {
        position: fixed !important;
        right: 12px !important;
        bottom: 12px !important;
        left: 12px !important;
        z-index: 80 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 12px !important;
        align-items: center !important;
        padding: 10px 10px 10px 14px !important;
        border: 1px solid rgba(17, 17, 17, 0.72) !important;
        border-radius: 8px !important;
        background: #f5f0e6 !important;
        box-shadow: 0 10px 28px rgba(0, 0, 0, 0.26) !important;
        color: #111111 !important;
    }

    body.historicum-cart-page .h-cart-mobile-checkout-total {
        display: grid !important;
        gap: 2px !important;
        min-width: 0 !important;
    }

    body.historicum-cart-page .h-cart-mobile-checkout-total > span {
        color: #4b4235 !important;
        font-family: var(--h-font-cinzel) !important;
        font-size: 10px !important;
        font-weight: 800 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
    }

    body.historicum-cart-page .h-cart-mobile-checkout-total strong,
    body.historicum-cart-page .h-cart-mobile-checkout-total strong * {
        color: #111111 !important;
        font-family: var(--h-commerce-data-font) !important;
        font-size: 17px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
    }

    body.historicum-cart-page .h-cart-mobile-checkout-link {
        display: inline-flex !important;
        min-height: 44px !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 18px !important;
        border-radius: 8px !important;
        background: var(--h-accent) !important;
        color: #111111 !important;
        font-family: var(--h-commerce-data-font) !important;
        font-size: 12px !important;
        font-weight: 800 !important;
        letter-spacing: 0.06em !important;
        text-decoration: none !important;
        text-transform: uppercase !important;
    }

    body.historicum-checkout-page .h-checkout-flow-paper {
        padding-right: 18px !important;
        padding-left: 18px !important;
    }

    body.historicum-checkout-page .h-med-checkout-layout {
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
    }

    body.historicum-checkout-page .h-checkout-summary-panel {
        order: -1 !important;
        width: 100% !important;
        padding: 20px 16px !important;
    }

    body.historicum-checkout-page .h-med-checkout-forms {
        order: 1 !important;
        width: 100% !important;
    }

    body.historicum-checkout-page .h-checkout-panel {
        padding: 20px 16px !important;
    }

    body.historicum-checkout-page .h-checkout-review-title-row {
        flex-direction: column !important;
        gap: 8px !important;
    }

    body.historicum-checkout-page .h-checkout-review-price-row {
        align-items: flex-start !important;
        gap: 12px !important;
    }

    body.historicum-checkout-page .h-checkout-review-price-row dd {
        white-space: normal !important;
    }

    body.historicum-checkout-page .h-checkout-review-order .wc_payment_method label {
        min-height: 54px !important;
        padding: 13px 14px !important;
    }
}

/* ============================================================
   Cart/checkout final alignment pass: filled-cart receipt state.
   Kept last so it wins over page/account checkout legacy rules.
   ============================================================ */

body.historicum-cart-page,
body.historicum-checkout-page,
body.woocommerce-checkout {
    --h-purchase-rail: minmax(92px, 118px);
    --h-purchase-side: 380px;
}

body.historicum-cart-page .h-med-cart-header,
body.historicum-cart-page .h-med-cart-item {
    grid-template-columns: minmax(360px, 2.7fr) repeat(5, var(--h-purchase-rail)) 40px !important;
    column-gap: 14px !important;
}

body.historicum-cart-page .h-med-cart-product {
    gap: 18px !important;
}

body.historicum-cart-page .h-med-cart-copy {
    max-width: 100% !important;
}

body.historicum-cart-page .h-med-cart-addons {
    max-width: 100% !important;
}

body.historicum-cart-page .h-med-cart-addon-row,
body.historicum-checkout-page .h-checkout-review-addons .h-med-cart-addon-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: start !important;
    gap: 14px !important;
    width: 100% !important;
}

body.historicum-cart-page .h-med-cart-addon-label,
body.historicum-checkout-page .h-checkout-review-addons .h-med-cart-addon-label {
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    color: #1b1712 !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    text-align: left !important;
}

body.historicum-cart-page .h-med-cart-addon-price,
body.historicum-checkout-page .h-checkout-review-addons .h-med-cart-addon-price {
    color: #1b1712 !important;
    font-family: var(--h-commerce-data-font) !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    line-height: 1.45 !important;
    text-align: right !important;
    white-space: nowrap !important;
}

body.historicum-cart-page .h-med-cart-addon-included,
body.historicum-checkout-page .h-checkout-review-addons .h-med-cart-addon-included {
    color: #4f4638 !important;
    font-weight: 650 !important;
}

body.historicum-cart-page .h-med-cart-price,
body.historicum-cart-page .h-med-cart-addon-total,
body.historicum-cart-page .h-med-cart-total,
body.historicum-cart-page .h-med-cart-qty,
body.historicum-cart-page .h-med-cart-wait-row {
    min-width: 0 !important;
}

body.historicum-cart-page .h-med-cart-remove {
    width: 40px !important;
}

body.historicum-cart-page .h-commerce-progress .h-progress-step,
body.historicum-checkout-page .h-commerce-progress .h-progress-step,
body.woocommerce-checkout .h-commerce-progress .h-progress-step {
    position: relative !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 8px !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background-image: none !important;
    color: #4b453b !important;
    font-family: var(--h-font-cinzel, serif) !important;
    font-size: clamp(9px, 2.7vw, 12px) !important;
    font-weight: 700 !important;
    font-synthesis: none !important;
    letter-spacing: clamp(0.4px, 0.3vw, 1px) !important;
    line-height: 1.2 !important;
    opacity: 0.62 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

body.historicum-cart-page .h-commerce-progress .h-progress-step::after,
body.historicum-checkout-page .h-commerce-progress .h-progress-step::after,
body.woocommerce-checkout .h-commerce-progress .h-progress-step::after {
    display: none !important;
    content: none !important;
}

body.historicum-cart-page .h-commerce-progress .h-progress-step.is-active,
body.historicum-checkout-page .h-commerce-progress .h-progress-step.is-active,
body.woocommerce-checkout .h-commerce-progress .h-progress-step.is-active {
    border-bottom: 0 !important;
    box-shadow: none !important;
    color: #0a0a0a !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

body.historicum-cart-page .h-commerce-progress .h-progress-step:not(.is-active),
body.historicum-checkout-page .h-commerce-progress .h-progress-step:not(.is-active),
body.woocommerce-checkout .h-commerce-progress .h-progress-step:not(.is-active) {
    color: #4b453b !important;
    opacity: 0.62 !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table thead,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table thead {
    display: none !important;
}

body.historicum-checkout-page .h-checkout-review-addons,
body.woocommerce-checkout .h-checkout-review-addons {
    display: grid !important;
    gap: 6px !important;
    margin-top: 10px !important;
    padding-top: 10px !important;
    border-top: 1px solid rgba(17, 17, 17, 0.1) !important;
}

body.historicum-checkout-page .h-checkout-review-addons .h-med-cart-addons-title,
body.woocommerce-checkout .h-checkout-review-addons .h-med-cart-addons-title {
    color: #4b4235 !important;
    font-family: var(--h-font-cinzel) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

body.historicum-checkout-page .h-checkout-review-price-grid,
body.woocommerce-checkout .h-checkout-review-price-grid {
    border-color: rgba(17, 17, 17, 0.16) !important;
    background: rgba(255, 255, 255, 0.16) !important;
}

body.historicum-checkout-page .h-checkout-review-price-row dt,
body.woocommerce-checkout .h-checkout-review-price-row dt {
    color: #111111 !important;
    font-weight: 800 !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method:not(.is-selected) label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method:not(.is-selected) label {
    border-color: rgba(17, 17, 17, 0.34) !important;
    background: #f5f0e6 !important;
    background-color: #f5f0e6 !important;
    background-image: none !important;
    color: #111111 !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method.is-selected label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method.is-selected label {
    border-color: var(--h-accent) !important;
    background: #f5f0e6 !important;
    background-color: #f5f0e6 !important;
    background-image: none !important;
    box-shadow: inset 0 0 0 1px var(--h-accent) !important;
}

body.historicum-cart-page .woocommerce-notices-wrapper > :is(.woocommerce-error, .woocommerce-message, .woocommerce-info),
body.historicum-cart-page .h-commerce-page :is(.woocommerce-error, .woocommerce-message, .woocommerce-info),
body.historicum-checkout-page .woocommerce-notices-wrapper > :is(.woocommerce-error, .woocommerce-message, .woocommerce-info),
body.historicum-checkout-page .h-commerce-page :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) {
    font-family: var(--h-commerce-data-font) !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.historicum-cart-page .h-cart-status {
    font-weight: 400 !important;
}

@media (min-width: 769px) and (max-width: 1320px) {
    body.historicum-cart-page .h-med-cart-header,
    body.historicum-cart-page .h-med-cart-item {
        grid-template-columns: minmax(330px, 2.35fr) repeat(5, minmax(86px, 108px)) 38px !important;
        column-gap: 12px !important;
    }
}

@media (max-width: 768px) {
    body.historicum-cart-page .h-med-cart-header,
    body.historicum-cart-page .h-med-cart-item {
        grid-template-columns: none !important;
    }

    body.historicum-cart-page .h-med-cart-addon-row,
    body.historicum-checkout-page .h-checkout-review-addons .h-med-cart-addon-row {
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 12px !important;
    }

    body.historicum-cart-page .h-med-cart-addon-label,
    body.historicum-checkout-page .h-checkout-review-addons .h-med-cart-addon-label {
        font-size: 14px !important;
    }

    body.historicum-cart-page .h-commerce-progress,
    body.historicum-checkout-page .h-commerce-progress {
        min-width: 0 !important;
        width: 100% !important;
    }
}

/* ============================================================
   Cart final corrections: filled-cart order, no layout-shift toast.
   This is the last cart word so older cart/account rules cannot leak in.
   ============================================================ */

body.historicum-cart-page .h-cart-progress {
    box-sizing: border-box !important;
    width: min(1540px, 100%) !important;
    max-width: 1540px !important;
    margin: 0 auto 24px !important;
    padding: 0 0 16px !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.16) !important;
    justify-content: flex-start !important;
}

body.historicum-checkout-page .h-checkout-policy-paper > .h-commerce-progress,
body.woocommerce-checkout .h-checkout-policy-paper > .h-commerce-progress {
    box-sizing: border-box !important;
    width: min(1540px, 100%) !important;
    max-width: 1540px !important;
    margin: 0 auto 24px !important;
    padding: 0 0 16px !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.16) !important;
    justify-content: flex-start !important;
}

body.historicum-cart-page .h-commerce-progress .h-progress-step,
body.historicum-checkout-page .h-commerce-progress .h-progress-step,
body.woocommerce-checkout .h-commerce-progress .h-progress-step {
    border-bottom: 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

body.historicum-cart-page .h-commerce-progress .h-progress-step::after,
body.historicum-checkout-page .h-commerce-progress .h-progress-step::after,
body.woocommerce-checkout .h-commerce-progress .h-progress-step::after,
body.historicum-cart-page .h-commerce-progress .h-progress-step.is-active::after,
body.historicum-checkout-page .h-commerce-progress .h-progress-step.is-active::after,
body.woocommerce-checkout .h-commerce-progress .h-progress-step.is-active::after {
    display: none !important;
    content: none !important;
}

body.historicum-cart-page .h-med-cart-header,
body.historicum-cart-page .h-med-cart-item {
    grid-template-columns: minmax(360px, 2.7fr) minmax(92px, 118px) minmax(92px, 118px) minmax(92px, 118px) 132px minmax(92px, 118px) 40px !important;
    column-gap: 14px !important;
}

body.historicum-cart-page .h-commerce-notices {
    position: fixed !important;
    top: 112px !important;
    right: 24px !important;
    z-index: 10000 !important;
    width: min(320px, calc(100vw - 32px)) !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
}

body.historicum-cart-page .h-commerce-notices:empty {
    display: none !important;
}

body.historicum-cart-page .h-commerce-notices > :is(.woocommerce-error, .woocommerce-message, .woocommerce-info),
body.historicum-cart-page .h-cart-status {
    box-sizing: border-box !important;
    width: min(320px, calc(100vw - 32px)) !important;
    max-width: 320px !important;
    margin: 0 !important;
    padding: 10px 13px !important;
    border: 1px solid rgba(17, 17, 17, 0.24) !important;
    border-radius: 7px !important;
    background: rgba(245, 240, 230, 0.96) !important;
    color: #201b14 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18) !important;
    pointer-events: auto !important;
}

body.historicum-cart-page .h-cart-status {
    position: fixed !important;
    top: 112px !important;
    right: 24px !important;
    z-index: 10001 !important;
    pointer-events: none !important;
}

body.historicum-cart-page .h-summary-row span,
body.historicum-cart-page .h-summary-total span {
    color: #111111 !important;
    font-family: var(--h-font-cinzel) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
}

body.historicum-cart-page .h-summary-row:not(.h-summary-total) strong,
body.historicum-cart-page .h-summary-row:not(.h-summary-total) strong .amount,
body.historicum-cart-page .h-summary-row:not(.h-summary-total) strong bdi,
body.historicum-cart-page .h-summary-row:not(.h-summary-total) strong .woocommerce-Price-currencySymbol {
    font-weight: 500 !important;
}

body.historicum-cart-page .h-shipping-info,
body.historicum-cart-page .h-workshop-info {
    gap: 6px !important;
    padding: 14px 16px !important;
}

body.historicum-cart-page .h-shipping-info strong,
body.historicum-cart-page .h-workshop-info strong {
    font-size: 11px !important;
    letter-spacing: 0.09em !important;
}

body.historicum-cart-page .h-shipping-info p,
body.historicum-cart-page .h-workshop-info p {
    font-size: 14px !important;
    line-height: 1.43 !important;
}

body.historicum-cart-page .h-cart-quantity-control {
    display: inline-grid !important;
    grid-template-columns: 44px 44px 44px !important;
    width: 132px !important;
    min-width: 132px !important;
    height: 46px !important;
    min-height: 46px !important;
    align-items: stretch !important;
}

body.historicum-cart-page .h-cart-qty-step {
    display: grid !important;
    place-items: center !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    line-height: 1 !important;
}

body.historicum-cart-page .h-cart-qty-sign,
body.historicum-cart-page .h-cart-qty-minus .h-cart-qty-sign,
body.historicum-cart-page .h-cart-qty-plus .h-cart-qty-sign {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    height: 100% !important;
    line-height: 1 !important;
    transform: none !important;
}

body.historicum-cart-page .h-cart-quantity-control input.qty {
    width: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 4px !important;
}

body.historicum-cart-page .h-med-cart-remove {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
}

body.historicum-cart-page .h-cart-remove {
    display: inline-grid !important;
    place-items: center !important;
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    min-height: 34px !important;
    aspect-ratio: 1 / 1 !important;
    padding: 0 !important;
    border-radius: 50% !important;
    line-height: 1 !important;
    align-self: center !important;
}

body.historicum-cart-page .h-cart-remove::before {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    height: 100% !important;
    font-size: 18px !important;
    line-height: 1 !important;
    transform: none !important;
}

body.historicum-cart-page .h-med-cart-actions .h-btn,
body.historicum-cart-page .h-med-cart-actions .h-btn-outline,
body.historicum-cart-page .h-cart-after-recs-actions .h-btn {
    border-color: rgba(17, 17, 17, 0.36) !important;
    background: transparent !important;
    color: #5b5245 !important;
    font-weight: 700 !important;
}

body.historicum-cart-page .h-med-cart-actions .h-btn:hover,
body.historicum-cart-page .h-med-cart-actions .h-btn-outline:hover,
body.historicum-cart-page .h-cart-after-recs-actions .h-btn:hover {
    border-color: rgba(17, 17, 17, 0.58) !important;
    background: rgba(235, 188, 0, 0.18) !important;
    color: #111111 !important;
}

body.historicum-cart-page .h-cart-continue-shopping,
body.historicum-cart-page .h-cart-summary-continue,
body.historicum-cart-page .h-cart-after-recs-actions .h-btn[href*="shop"] {
    width: auto !important;
    min-width: 0 !important;
    min-height: 38px !important;
    padding: 8px 14px !important;
    font-size: 12px !important;
    letter-spacing: 0.035em !important;
    line-height: 1.1 !important;
}

@media (min-width: 769px) and (max-width: 1320px) {
    body.historicum-cart-page .h-med-cart-header,
    body.historicum-cart-page .h-med-cart-item {
        grid-template-columns: minmax(330px, 2.35fr) minmax(86px, 108px) minmax(86px, 108px) minmax(86px, 108px) 126px minmax(86px, 108px) 38px !important;
        column-gap: 12px !important;
    }

    body.historicum-cart-page .h-cart-quantity-control {
        grid-template-columns: 42px 42px 42px !important;
        width: 126px !important;
        min-width: 126px !important;
    }

    body.historicum-cart-page .h-cart-qty-step,
    body.historicum-cart-page .h-cart-quantity-control input.qty {
        width: 42px !important;
        min-width: 42px !important;
    }
}

@media (max-width: 768px) {
    body.historicum-cart-page .h-cart-progress,
    body.historicum-checkout-page .h-checkout-policy-paper > .h-commerce-progress,
    body.woocommerce-checkout .h-checkout-policy-paper > .h-commerce-progress {
        width: 100% !important;
        margin: 0 auto 20px !important;
        padding-bottom: 14px !important;
        overflow-x: auto !important;
    }

    body.historicum-cart-page .h-commerce-notices,
    body.historicum-cart-page .h-cart-status {
        top: auto !important;
        right: 12px !important;
        bottom: 88px !important;
        left: 12px !important;
        width: auto !important;
        max-width: none !important;
    }

    body.historicum-cart-page .h-commerce-notices > :is(.woocommerce-error, .woocommerce-message, .woocommerce-info),
    body.historicum-cart-page .h-cart-status {
        width: auto !important;
        max-width: none !important;
        font-size: 13px !important;
    }

    body.historicum-cart-page .h-cart-remove {
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        aspect-ratio: 1 / 1 !important;
    }

    body.historicum-cart-page .h-shipping-info p,
    body.historicum-cart-page .h-workshop-info p {
        font-size: 13.5px !important;
    }
}

/* ============================================================
   Cart final corrections v2: one ledger width, normalized rails.
   ============================================================ */

body.historicum-cart-page .h-commerce-paper > .h-cart-ledger {
    box-sizing: border-box !important;
    width: min(1540px, 100%) !important;
    max-width: 1540px !important;
    margin: 0 auto !important;
}

body.historicum-cart-page .h-commerce-paper > .h-cart-ledger > .h-cart-progress {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 24px !important;
    padding: 0 0 16px !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.16) !important;
    justify-content: flex-start !important;
}

body.historicum-cart-page .h-commerce-paper > .h-cart-ledger > .h-med-cart-layout {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

body.historicum-cart-page .h-med-cart-price,
body.historicum-cart-page .h-med-cart-addon-total,
body.historicum-cart-page .h-med-cart-total,
body.historicum-cart-page .h-med-cart-qty {
    min-height: 46px !important;
    color: #0a0a0a !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    font-variant-numeric: tabular-nums lining-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
}

body.historicum-cart-page .h-med-cart-price :is(.amount, bdi),
body.historicum-cart-page .h-med-cart-addon-total :is(.amount, bdi),
body.historicum-cart-page .h-med-cart-total :is(.amount, bdi) {
    display: inline-flex !important;
    align-items: baseline !important;
    font-family: inherit !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    font-variant-numeric: tabular-nums lining-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
}

body.historicum-cart-page .h-med-cart-price .woocommerce-Price-currencySymbol,
body.historicum-cart-page .h-med-cart-addon-total .woocommerce-Price-currencySymbol,
body.historicum-cart-page .h-med-cart-total .woocommerce-Price-currencySymbol {
    font-size: 0.82em !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    vertical-align: baseline !important;
}

body.historicum-cart-page .h-med-cart-addon-total.is-zero {
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

body.historicum-cart-page .h-cart-quantity-control input.qty {
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

body.historicum-cart-page .h-cart-remove {
    position: relative !important;
    overflow: hidden !important;
    font-size: 0 !important;
}

body.historicum-cart-page .h-cart-remove::before,
body.historicum-cart-page .h-cart-remove::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    display: block !important;
    width: 10px !important;
    height: 1px !important;
    border-radius: 999px !important;
    background: currentColor !important;
    transform-origin: center !important;
}

body.historicum-cart-page .h-cart-remove::before {
    transform: translate(-50%, -50%) rotate(45deg) !important;
}

body.historicum-cart-page .h-cart-remove::after {
    transform: translate(-50%, -50%) rotate(-45deg) !important;
}

body.historicum-cart-page .h-med-order-summary .h-checkout-btn {
    display: flex !important;
    width: 100% !important;
    margin: 18px 0 0 !important;
}

body.historicum-cart-page .h-cart-summary-continue {
    display: none !important;
}

@media (max-width: 768px) {
    body.historicum-cart-page .h-commerce-paper > .h-cart-ledger {
        width: 100% !important;
        max-width: none !important;
    }

    body.historicum-cart-page .h-commerce-paper > .h-cart-ledger > .h-cart-progress {
        width: 100% !important;
        margin-bottom: 22px !important;
        padding-bottom: 14px !important;
        overflow-x: auto !important;
    }

    body.historicum-cart-page .h-cart-after-recs-actions {
        display: none !important;
    }

    body.historicum-cart-page .h-cart-summary-continue {
        display: flex !important;
        width: auto !important;
        min-width: 0 !important;
        min-height: 38px !important;
        margin-top: 14px !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding: 8px 14px !important;
        justify-content: center !important;
        font-size: 12px !important;
    }
}

/* ============================================================
   Checkout finalisation: aligned ledger, calm receipt hierarchy.
   Kept after cart corrections so checkout has one source of truth.
   ============================================================ */

body.historicum-checkout-page .h-checkout-heading-row,
body.historicum-checkout-page .h-checkout-policy-paper > .h-commerce-progress,
body.historicum-checkout-page .h-checkout-coupon-details,
body.historicum-checkout-page .h-med-checkout-form,
body.historicum-checkout-page .h-checkout-before-customer-details,
body.historicum-checkout-page .h-med-checkout-layout {
    box-sizing: border-box !important;
    width: min(1540px, 100%) !important;
    max-width: 1540px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.historicum-checkout-page .h-checkout-heading-row {
    margin-bottom: 18px !important;
}

body.historicum-checkout-page .h-checkout-main-title {
    margin: 0 !important;
    color: #111111 !important;
    text-align: left !important;
}

body.historicum-checkout-page .h-checkout-policy-paper > .h-commerce-progress,
body.woocommerce-checkout .h-checkout-policy-paper > .h-commerce-progress {
    margin-top: 0 !important;
    margin-bottom: 24px !important;
    padding: 0 0 16px !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.16) !important;
    justify-content: flex-start !important;
}

body.historicum-checkout-page .h-checkout-coupon-details {
    margin-bottom: 22px !important;
}

body.historicum-checkout-page .h-med-checkout-layout {
    display: grid !important;
    grid-template-columns: minmax(460px, 0.72fr) minmax(720px, 1.28fr) !important;
    gap: clamp(28px, 3vw, 46px) !important;
    align-items: start !important;
}

body.historicum-checkout-page .h-med-checkout-forms {
    display: grid !important;
    gap: 22px !important;
    min-width: 0 !important;
}

body.historicum-checkout-page .h-checkout-panel,
body.historicum-checkout-page .h-checkout-summary-panel {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

body.historicum-checkout-page .h-checkout-panel {
    padding: 0 !important;
}

body.historicum-checkout-page .h-checkout-summary-panel {
    position: sticky !important;
    top: 104px !important;
    padding: 30px !important;
    border: 1px solid rgba(17, 17, 17, 0.32) !important;
    border-radius: 8px !important;
    background: #f5f0e6 !important;
    background-color: #f5f0e6 !important;
    background-image: none !important;
    box-shadow: 3px 4px 8px -3px rgba(0, 0, 0, 0.16) !important;
}

body.historicum-checkout-page .h-checkout-panel-head {
    align-items: center !important;
    gap: 12px !important;
    margin-bottom: 20px !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

body.historicum-checkout-page .h-checkout-panel-head span {
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    background: var(--h-accent) !important;
    color: #111111 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

body.historicum-checkout-page .h-checkout-panel-head h2,
body.historicum-checkout-page .h-checkout-summary-panel h2 {
    color: #111111 !important;
    font-family: var(--h-font-cinzel) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

body.historicum-checkout-page .h-checkout-summary-panel h2 {
    margin: 0 0 14px !important;
    padding: 0 0 14px !important;
    border-bottom: 2px solid var(--h-accent) !important;
}

body.historicum-checkout-page .h-med-checkout-form .form-row {
    margin-bottom: 15px !important;
}

body.historicum-checkout-page .h-med-checkout-form label {
    color: #111111 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.3 !important;
}

body.historicum-checkout-page .h-med-checkout-form input.input-text,
body.historicum-checkout-page .h-med-checkout-form textarea,
body.historicum-checkout-page .h-med-checkout-form select,
body.historicum-checkout-page .h-med-checkout-form .select2-container .select2-selection {
    min-height: 48px !important;
    border: 1px solid rgba(17, 17, 17, 0.28) !important;
    border-radius: 8px !important;
    background: #fffaf0 !important;
    background-color: #fffaf0 !important;
    background-image: none !important;
    color: #111111 !important;
    box-shadow: none !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
}

body.historicum-checkout-page .h-med-checkout-form textarea {
    min-height: 118px !important;
    padding-top: 12px !important;
}

body.historicum-checkout-page .h-med-checkout-form #billing_country_field .woocommerce-input-wrapper,
body.historicum-checkout-page .h-med-checkout-form #shipping_country_field .woocommerce-input-wrapper,
body.woocommerce-checkout .h-med-checkout-form #billing_country_field .woocommerce-input-wrapper,
body.woocommerce-checkout .h-med-checkout-form #shipping_country_field .woocommerce-input-wrapper {
    position: relative !important;
    display: block !important;
    min-height: 48px !important;
    overflow: visible !important;
    isolation: isolate !important;
    z-index: 1 !important;
}

body.historicum-checkout-page .h-med-checkout-form input.input-text:focus,
body.historicum-checkout-page .h-med-checkout-form textarea:focus,
body.historicum-checkout-page .h-med-checkout-form select:focus,
body.historicum-checkout-page .h-med-checkout-form .select2-container--open .select2-selection {
    border-color: rgba(17, 17, 17, 0.58) !important;
    outline: 3px solid rgba(235, 188, 0, 0.22) !important;
    outline-offset: 1px !important;
}

body.historicum-checkout-page .h-med-checkout-form .woocommerce-input-wrapper.h-checkout-select2-parent,
body.woocommerce-checkout .h-med-checkout-form .woocommerce-input-wrapper.h-checkout-select2-parent {
    position: relative !important;
    display: block !important;
    overflow: visible !important;
    isolation: isolate !important;
    z-index: 1 !important;
}

body.historicum-checkout-page .h-med-checkout-form .woocommerce-input-wrapper.h-checkout-select2-parent.h-checkout-select2-open,
body.woocommerce-checkout .h-med-checkout-form .woocommerce-input-wrapper.h-checkout-select2-parent.h-checkout-select2-open {
    z-index: 10030 !important;
}

body.historicum-checkout-page .h-med-checkout-form .h-checkout-select2-parent > .h-checkout-select2-dropdown-host,
body.woocommerce-checkout .h-med-checkout-form .h-checkout-select2-parent > .h-checkout-select2-dropdown-host {
    position: absolute !important;
    top: calc(100% + 4px) !important;
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
    min-width: 100% !important;
    z-index: 10040 !important;
}

body.historicum-checkout-page .h-med-checkout-form .h-checkout-select2-parent > .h-checkout-select2-dropdown-host.select2-container--above,
body.woocommerce-checkout .h-med-checkout-form .h-checkout-select2-parent > .h-checkout-select2-dropdown-host.select2-container--above {
    top: auto !important;
    bottom: calc(100% + 4px) !important;
}

body.historicum-checkout-page .h-med-checkout-form .h-checkout-select2-parent .select2-dropdown,
body.woocommerce-checkout .h-med-checkout-form .h-checkout-select2-parent .select2-dropdown {
    left: 0 !important;
    width: 100% !important;
    min-width: 100% !important;
    border: 1px solid rgba(17, 17, 17, 0.35) !important;
    border-radius: 8px !important;
    background: #fffaf0 !important;
    box-shadow: 0 18px 34px rgba(0, 0, 0, 0.18) !important;
    overflow: hidden !important;
}

body.historicum-checkout-page .h-med-checkout-form .select2-container--default .select2-selection--single .select2-selection__rendered,
body.woocommerce-checkout .h-med-checkout-form .select2-container--default .select2-selection--single .select2-selection__rendered,
body.historicum-checkout-page .h-med-checkout-form .select2-container--default .select2-selection--single .select2-selection__placeholder,
body.woocommerce-checkout .h-med-checkout-form .select2-container--default .select2-selection--single .select2-selection__placeholder,
body.historicum-checkout-page .h-med-checkout-form .select2-results__option,
body.woocommerce-checkout .h-med-checkout-form .select2-results__option,
body.historicum-checkout-page .h-med-checkout-form .select2-search--dropdown .select2-search__field,
body.woocommerce-checkout .h-med-checkout-form .select2-search--dropdown .select2-search__field,
body.historicum-checkout-page .select2-container--open .select2-results__option,
body.woocommerce-checkout .select2-container--open .select2-results__option,
body.historicum-checkout-page .select2-container--open .select2-search__field,
body.woocommerce-checkout .select2-container--open .select2-search__field {
    font-family: var(--h-commerce-data-font, var(--h-font-instrument, sans-serif)) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: 1.35 !important;
    text-transform: none !important;
}

body.historicum-checkout-page .h-med-checkout-form .select2-results__option,
body.woocommerce-checkout .h-med-checkout-form .select2-results__option,
body.historicum-checkout-page .select2-container--open .select2-results__option,
body.woocommerce-checkout .select2-container--open .select2-results__option {
    min-height: 38px !important;
    padding: 9px 12px !important;
    background: #fffaf0 !important;
    color: #111111 !important;
}

body.historicum-checkout-page .h-med-checkout-form .select2-results__option--highlighted[aria-selected],
body.woocommerce-checkout .h-med-checkout-form .select2-results__option--highlighted[aria-selected],
body.historicum-checkout-page .select2-container--open .select2-results__option--highlighted[aria-selected],
body.woocommerce-checkout .select2-container--open .select2-results__option--highlighted[aria-selected] {
    background: #111111 !important;
    color: #fffaf0 !important;
}

body.historicum-checkout-page .h-med-checkout-form .select2-search--dropdown,
body.woocommerce-checkout .h-med-checkout-form .select2-search--dropdown,
body.historicum-checkout-page .select2-container--open .select2-search--dropdown,
body.woocommerce-checkout .select2-container--open .select2-search--dropdown {
    padding: 8px !important;
    background: #fffaf0 !important;
}

body.historicum-checkout-page .h-med-checkout-form .select2-search--dropdown .select2-search__field,
body.woocommerce-checkout .h-med-checkout-form .select2-search--dropdown .select2-search__field,
body.historicum-checkout-page .select2-container--open .select2-search__field,
body.woocommerce-checkout .select2-container--open .select2-search__field {
    min-height: 42px !important;
    padding: 8px 12px !important;
    border: 1px solid rgba(17, 17, 17, 0.35) !important;
    border-radius: 8px !important;
    background: #fffaf0 !important;
    color: #111111 !important;
    outline: none !important;
}

body.historicum-checkout-page .h-checkout-summary-panel .h-checkout-shipping-note {
    margin: 0 0 18px !important;
    padding: 0 0 14px !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.12) !important;
    color: #3d3528 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
}

body.historicum-checkout-page .h-checkout-review-item {
    gap: 14px !important;
    padding: 16px 0 18px !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.08) !important;
}

body.historicum-checkout-page .h-checkout-review-item-row:last-child .h-checkout-review-item {
    border-bottom: 0 !important;
}

body.historicum-checkout-page .h-checkout-review-item-title {
    color: #111111 !important;
    font-family: var(--h-font-cormorant) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.22 !important;
}

body.historicum-checkout-page .h-checkout-review-qty {
    min-height: 28px !important;
    padding: 4px 9px !important;
    border: 1px solid rgba(17, 17, 17, 0.2) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.12) !important;
    color: #4b4235 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

body.historicum-checkout-page .h-checkout-review-price-grid {
    border: 1px solid rgba(17, 17, 17, 0.14) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.12) !important;
}

body.historicum-checkout-page .h-checkout-review-price-row {
    min-height: 38px !important;
    padding: 9px 12px !important;
}

body.historicum-checkout-page .h-checkout-review-price-row dt,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot th {
    color: #111111 !important;
    font-family: var(--h-font-cinzel) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

body.historicum-checkout-page .h-checkout-review-price-row dd,
body.historicum-checkout-page .h-checkout-review-price-row dd :is(.amount, bdi, .woocommerce-Price-currencySymbol, .woocs_price_code, .woocs_special_price_code),
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td *,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td * {
    color: #111111 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    font-variant-numeric: tabular-nums lining-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
}

body.historicum-checkout-page .h-checkout-review-order .order-total th,
body.historicum-checkout-page .h-checkout-review-order .order-total td,
body.historicum-checkout-page .h-checkout-review-order .order-total *,
body.woocommerce-checkout .h-checkout-review-order .order-total th,
body.woocommerce-checkout .h-checkout-review-order .order-total td,
body.woocommerce-checkout .h-checkout-review-order .order-total * {
    color: #111111 !important;
    font-size: clamp(19px, 1.35vw, 22px) !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td {
    padding: 11px 0 !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.08) !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td {
    text-align: right !important;
}

body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-methods,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-methods *,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-shipping-methods,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-shipping-methods * {
    font-weight: 500 !important;
}

body.historicum-checkout-page .h-checkout-review-order #payment,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-checkout-payment {
    margin-top: 18px !important;
    padding-top: 18px !important;
    border-top: 1px solid rgba(17, 17, 17, 0.14) !important;
    background: transparent !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_methods,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_methods {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method label {
    min-height: 52px !important;
    padding: 12px 14px !important;
    border: 1px solid rgba(17, 17, 17, 0.32) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.12) !important;
    color: #111111 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-transform: uppercase !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method.is-selected label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method input.input-radio:checked + label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method.is-selected label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method input.input-radio:checked + label {
    border-color: var(--h-accent) !important;
    background: #f5f0e6 !important;
    background-color: #f5f0e6 !important;
    background-image: none !important;
    box-shadow: inset 0 0 0 1px var(--h-accent) !important;
}

body.historicum-checkout-page .h-checkout-review-order .payment_box,
body.woocommerce-checkout .h-checkout-review-order .payment_box {
    display: none !important;
}

body.historicum-checkout-page .h-checkout-review-order .form-row.place-order,
body.woocommerce-checkout .h-checkout-review-order .form-row.place-order {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
}

body.historicum-checkout-page .h-checkout-review-order #place_order,
body.woocommerce-checkout .h-checkout-review-order #place_order {
    order: 1 !important;
    width: 100% !important;
    min-height: 54px !important;
    border: 1px solid var(--h-accent) !important;
    border-radius: 8px !important;
    background: var(--h-accent) !important;
    color: #111111 !important;
    box-shadow: none !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
}

body.historicum-checkout-page .h-checkout-review-order .woocommerce-terms-and-conditions-wrapper,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-privacy-policy-text,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-privacy-policy-text p,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-privacy-policy-text,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-privacy-policy-text p {
    color: #3d3528 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 12.5px !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
    text-align: left !important;
}

@media (max-width: 1100px) {
    body.historicum-checkout-page .h-med-checkout-layout {
        grid-template-columns: 1fr !important;
    }

    body.historicum-checkout-page .h-checkout-summary-panel {
        position: static !important;
    }
}

@media (max-width: 768px) {
    body.historicum-checkout-page .h-checkout-heading-row,
    body.historicum-checkout-page .h-checkout-policy-paper > .h-commerce-progress,
    body.historicum-checkout-page .h-checkout-coupon-details,
    body.historicum-checkout-page .h-med-checkout-form,
    body.historicum-checkout-page .h-checkout-before-customer-details,
    body.historicum-checkout-page .h-med-checkout-layout {
        width: 100% !important;
        max-width: none !important;
    }

    body.historicum-checkout-page .h-checkout-policy-paper > .h-commerce-progress {
        margin-bottom: 20px !important;
        padding-bottom: 14px !important;
        overflow-x: auto !important;
    }

    body.historicum-checkout-page .h-med-checkout-layout {
        display: flex !important;
        flex-direction: column !important;
        gap: 18px !important;
    }

    body.historicum-checkout-page .h-checkout-summary-panel {
        order: 1 !important;
        padding: 20px !important;
    }

    body.historicum-checkout-page .h-med-checkout-forms {
        order: 2 !important;
        gap: 18px !important;
    }

    body.historicum-checkout-page .h-checkout-panel {
        padding: 20px !important;
    }

    body.historicum-checkout-page .h-checkout-panel-head h2,
    body.historicum-checkout-page .h-checkout-summary-panel h2 {
        font-size: 16px !important;
    }

    body.historicum-checkout-page .h-checkout-review-title-row {
        gap: 10px !important;
    }

    body.historicum-checkout-page .h-checkout-review-price-row {
        gap: 12px !important;
    }

    body.historicum-checkout-page .h-checkout-review-price-row dd,
    body.historicum-checkout-page .h-checkout-review-price-row dd :is(.amount, bdi),
    body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
    body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td * {
        font-size: 14px !important;
    }

    body.historicum-checkout-page .h-checkout-review-order .wc_payment_method label,
    body.woocommerce-checkout .h-checkout-review-order .wc_payment_method label {
        min-height: 50px !important;
        padding: 12px !important;
        font-size: 12px !important;
    }
}

/* ============================================================
   Cart/checkout requested corrections: no SKU/title clutter,
   wider order review, no panel/grid lines, edge-only paper tone.
   ============================================================ */

body.historicum-cart-page .h-commerce-paper,
body.historicum-checkout-page .h-commerce-paper {
    background: var(--h-paper-edge-shade), var(--h-paper-flat, var(--h-paper, #f5f0e6)) !important;
    background-color: var(--h-paper-flat, var(--h-paper, #f5f0e6)) !important;
    background-repeat: no-repeat !important;
    background-size: 100% 100% !important;
    background-position: center center !important;
}

body.historicum-cart-page .h-commerce-paper::after,
body.historicum-checkout-page .h-commerce-paper::after {
    content: none !important;
    display: none !important;
    background: none !important;
}

body.historicum-checkout-page .h-checkout-heading-row {
    display: none !important;
}

body.historicum-checkout-page .h-med-checkout-layout {
    grid-template-columns: minmax(460px, 0.72fr) minmax(720px, 1.28fr) !important;
    gap: clamp(28px, 3vw, 46px) !important;
}

body.historicum-checkout-page .h-checkout-panel {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

body.historicum-checkout-page .h-checkout-panel-head {
    margin-bottom: 16px !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

body.historicum-checkout-page .h-checkout-summary-panel {
    padding: 28px !important;
    border: 1px solid rgba(17, 17, 17, 0.32) !important;
    background: #f5f0e6 !important;
    background-color: #f5f0e6 !important;
    background-image: none !important;
}

body.historicum-checkout-page .h-checkout-summary-panel h2 {
    margin-bottom: 16px !important;
}

body.historicum-checkout-page .h-med-checkout-form input.input-text,
body.historicum-checkout-page .h-med-checkout-form textarea,
body.historicum-checkout-page .h-med-checkout-form select,
body.historicum-checkout-page .h-med-checkout-form .select2-container .select2-selection,
body.historicum-checkout-page .h-checkout-coupon-form input.input-text {
    background: #fffaf0 !important;
    background-color: #fffaf0 !important;
    background-image: none !important;
}

body.historicum-checkout-page .h-med-checkout-form .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #111111 !important;
    background: transparent !important;
    background-image: none !important;
}

body.historicum-checkout-page .h-checkout-review-price-grid,
body.historicum-checkout-page .h-checkout-review-price-row,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tbody,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tbody,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot {
    border: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

body.historicum-checkout-page .h-checkout-review-price-row,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td {
    padding-right: 0 !important;
    padding-left: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
}

body.historicum-checkout-page .h-checkout-review-item {
    padding: 16px 0 18px !important;
    border-bottom: 0 !important;
}

body.historicum-checkout-page .h-checkout-review-price-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 18px !important;
    align-items: baseline !important;
    min-height: 34px !important;
}

body.historicum-checkout-page .h-checkout-review-price-row dd,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td {
    text-align: right !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot tr {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 18px !important;
    align-items: baseline !important;
    padding: 7px 0 !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td {
    display: block !important;
    width: auto !important;
}

body.historicum-checkout-page .h-checkout-review-order .order-total {
    margin-top: 10px !important;
    padding-top: 12px !important;
    border-top: 1px solid rgba(17, 17, 17, 0.16) !important;
}

@media (max-width: 1100px) {
    body.historicum-checkout-page .h-med-checkout-layout {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 768px) {
    body.historicum-checkout-page .h-checkout-panel {
        padding: 0 !important;
    }

    body.historicum-checkout-page .h-checkout-summary-panel {
        padding: 22px !important;
    }
}

/* ============================================================
   Checkout final source of truth: compact top, solid fields,
   wider receipt, no order-table grid clutter.
   ============================================================ */

body.historicum-cart-page .h-commerce-paper-section,
body.historicum-checkout-page .h-checkout-paper-section,
body.woocommerce-checkout .h-checkout-paper-section {
    margin-top: var(--h-purchase-flow-section-gap) !important;
}

body.historicum-checkout-page .h-checkout-policy-paper,
body.woocommerce-checkout .h-checkout-policy-paper,
body.woocommerce-order-received .h-checkout-policy-paper {
    padding-top: var(--h-purchase-flow-top-padding) !important;
    padding-right: clamp(18px, 2.4vw, 42px) !important;
    padding-bottom: clamp(44px, 5vw, 70px) !important;
    padding-left: clamp(18px, 2.4vw, 42px) !important;
}

body.historicum-checkout-page .h-checkout-policy-paper .h-checkout-heading-row,
body.historicum-checkout-page .h-checkout-policy-paper > .h-commerce-progress,
body.historicum-checkout-page .h-checkout-policy-paper .h-checkout-coupon-details,
body.historicum-checkout-page .h-checkout-policy-paper .h-checkout-before-customer-details,
body.historicum-checkout-page .h-checkout-policy-paper form.h-med-checkout-form.checkout,
body.historicum-checkout-page .h-checkout-policy-paper .h-med-checkout-form,
body.historicum-checkout-page .h-checkout-policy-paper .h-checkout-endpoint-content,
body.woocommerce-checkout .h-checkout-policy-paper > .h-commerce-progress {
    box-sizing: border-box !important;
    width: min(1540px, 100%) !important;
    max-width: 1540px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.historicum-checkout-page .h-checkout-policy-paper > .h-commerce-progress,
body.woocommerce-checkout .h-checkout-policy-paper > .h-commerce-progress {
    margin-top: 0 !important;
    margin-bottom: 24px !important;
    padding: 0 0 16px !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.16) !important;
}

body.historicum-checkout-page .h-checkout-coupon-details {
    margin-top: 0 !important;
    margin-bottom: 28px !important;
}

body.historicum-checkout-page .h-checkout-coupon-summary {
    display: flex !important;
    min-height: 44px !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 16px !important;
    border: 1px solid rgba(17, 17, 17, 0.18) !important;
    border-radius: 8px !important;
    background: #fffaf0 !important;
    background-color: #fffaf0 !important;
    background-image: none !important;
    color: #111111 !important;
    box-shadow: none !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

body.historicum-checkout-page .h-checkout-coupon-summary::before,
body.historicum-checkout-page .h-checkout-coupon-summary::after {
    content: none !important;
    display: none !important;
}

body.historicum-checkout-page .h-checkout-coupon-action {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 32px !important;
    margin-left: auto !important;
    padding: 6px 12px !important;
    border: 1px solid rgba(17, 17, 17, 0.24) !important;
    border-radius: 6px !important;
    color: #111111 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.1 !important;
    text-decoration: none !important;
    text-transform: none !important;
    white-space: nowrap !important;
}

body.historicum-checkout-page .h-checkout-coupon-form,
body.woocommerce-checkout .h-checkout-coupon-form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px !important;
    align-items: center !important;
    width: 100% !important;
    margin: 10px 0 0 !important;
    padding: 12px !important;
    border: 1px solid rgba(17, 17, 17, 0.18) !important;
    border-radius: 8px !important;
    background: #fffaf0 !important;
    background-color: #fffaf0 !important;
    background-image: none !important;
    box-shadow: none !important;
}

body.historicum-checkout-page .h-checkout-coupon-form .form-row,
body.woocommerce-checkout .h-checkout-coupon-form .form-row {
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.historicum-checkout-page .h-checkout-coupon-form input.input-text,
body.woocommerce-checkout .h-checkout-coupon-form input.input-text {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
}

body.historicum-checkout-page .h-checkout-coupon-form button,
body.woocommerce-checkout .h-checkout-coupon-form button {
    width: auto !important;
    min-width: 118px !important;
    min-height: 44px !important;
    padding: 0 16px !important;
    border-radius: 6px !important;
    white-space: nowrap !important;
}

body.historicum-checkout-page .h-checkout-coupon-form .clear,
body.woocommerce-checkout .h-checkout-coupon-form .clear {
    display: none !important;
}

body.historicum-checkout-page .h-checkout-policy-paper .h-med-checkout-layout {
    display: grid !important;
    grid-template-columns: minmax(500px, 0.74fr) minmax(820px, 1.26fr) !important;
    gap: clamp(28px, 3vw, 46px) !important;
    align-items: start !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

body.historicum-checkout-page .h-checkout-policy-paper .h-med-checkout-forms,
body.historicum-checkout-page .h-checkout-policy-paper .h-med-checkout-layout > .h-checkout-summary-panel,
body.historicum-checkout-page .h-checkout-policy-paper .h-checkout-billing,
body.historicum-checkout-page .h-checkout-policy-paper .h-checkout-shipping {
    min-width: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    justify-self: stretch !important;
}

body.historicum-checkout-page .h-checkout-panel {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

body.historicum-checkout-page .h-checkout-panel-head {
    margin-bottom: 16px !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

body.historicum-checkout-page .h-checkout-summary-panel {
    position: sticky !important;
    top: 96px !important;
    padding: 30px !important;
    border: 1px solid rgba(17, 17, 17, 0.32) !important;
    border-radius: 8px !important;
    background: #f5f0e6 !important;
    background-color: #f5f0e6 !important;
    background-image: none !important;
    box-shadow: 3px 4px 8px -3px rgba(0, 0, 0, 0.16) !important;
}

body.historicum-checkout-page .h-checkout-summary-panel h2 {
    margin: 0 0 14px !important;
    padding: 0 0 14px !important;
    border-bottom: 2px solid var(--h-accent) !important;
}

body.historicum-checkout-page .h-checkout-summary-panel .h-checkout-shipping-note,
body.woocommerce-checkout .h-checkout-summary-panel .h-checkout-shipping-note {
    margin: 0 0 16px !important;
    padding: 0 0 12px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.12) !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: #4b4235 !important;
    box-shadow: none !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 13px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
}

body.historicum-checkout-page .h-med-checkout-form input.input-text,
body.historicum-checkout-page .h-med-checkout-form textarea,
body.historicum-checkout-page .h-med-checkout-form select,
body.historicum-checkout-page .h-med-checkout-form .select2-container .select2-selection,
body.historicum-checkout-page .h-checkout-coupon-form input.input-text,
body.historicum-checkout-page .h-checkout-coupon-form button {
    background: #fffaf0 !important;
    background-color: #fffaf0 !important;
    background-image: none !important;
    box-shadow: none !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tbody,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tbody,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot {
    display: block !important;
    width: 100% !important;
    border: 0 !important;
    border-collapse: separate !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table thead,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table thead,
body.historicum-checkout-page .h-checkout-review-order table.h-checkout-review-table > thead,
body.woocommerce-checkout .h-checkout-review-order table.h-checkout-review-table > thead {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tbody tr,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tbody tr {
    display: block !important;
    width: 100% !important;
    border: 0 !important;
    background: transparent !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-item-cell,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-item-cell {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    text-align: left !important;
}

body.historicum-checkout-page .h-checkout-review-item,
body.woocommerce-checkout .h-checkout-review-item {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(156px, 190px) !important;
    gap: 18px !important;
    align-items: start !important;
    padding: 14px 0 18px !important;
    border-bottom: 0 !important;
    background: transparent !important;
}

body.historicum-checkout-page .h-checkout-review-item-row:last-child .h-checkout-review-item,
body.woocommerce-checkout .h-checkout-review-item-row:last-child .h-checkout-review-item {
    border-bottom: 0 !important;
}

body.historicum-checkout-page .h-checkout-review-price-grid,
body.woocommerce-checkout .h-checkout-review-price-grid {
    display: grid !important;
    gap: 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    overflow: visible !important;
}

body.historicum-checkout-page .h-checkout-review-price-row,
body.woocommerce-checkout .h-checkout-review-price-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 16px !important;
    align-items: baseline !important;
    min-height: 30px !important;
    padding: 4px 0 !important;
    border: 0 !important;
    background: transparent !important;
    background-image: none !important;
}

body.historicum-checkout-page .h-checkout-review-price-row.is-total,
body.woocommerce-checkout .h-checkout-review-price-row.is-total {
    margin-top: 6px !important;
    padding-top: 9px !important;
    border-top: 1px solid rgba(17, 17, 17, 0.16) !important;
}

body.historicum-checkout-page .h-checkout-review-price-row dt,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th,
body.woocommerce-checkout .h-checkout-review-price-row dt,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot th {
    color: #111111 !important;
    font-family: var(--h-font-cinzel) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 0.05em !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
}

body.historicum-checkout-page .h-checkout-review-price-row dd,
body.historicum-checkout-page .h-checkout-review-price-row dd :is(.amount, bdi, .woocommerce-Price-currencySymbol, .woocs_price_code, .woocs_special_price_code),
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td *,
body.woocommerce-checkout .h-checkout-review-price-row dd,
body.woocommerce-checkout .h-checkout-review-price-row dd :is(.amount, bdi, .woocommerce-Price-currencySymbol, .woocs_price_code, .woocs_special_price_code),
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td * {
    color: #111111 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    text-align: right !important;
    font-variant-numeric: tabular-nums lining-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
}

body.historicum-checkout-page .h-checkout-review-order :is(.woocommerce-Price-currencySymbol, .woocs_price_code, .woocs_special_price_code),
body.woocommerce-checkout .h-checkout-review-order :is(.woocommerce-Price-currencySymbol, .woocs_price_code, .woocs_special_price_code) {
    font-size: 0.9em !important;
    font-weight: inherit !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    opacity: 1 !important;
}

body.historicum-checkout-page .h-checkout-review-price-row.is-total dd,
body.historicum-checkout-page .h-checkout-review-price-row.is-total dd *,
body.woocommerce-checkout .h-checkout-review-price-row.is-total dd,
body.woocommerce-checkout .h-checkout-review-price-row.is-total dd * {
    color: #111111 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
}

body.historicum-checkout-page .h-checkout-review-addons .h-med-cart-addons-title,
body.woocommerce-checkout .h-checkout-review-addons .h-med-cart-addons-title,
body.historicum-checkout-page .h-checkout-review-item-meta,
body.woocommerce-checkout .h-checkout-review-item-meta,
body.historicum-checkout-page .h-checkout-review-order dl.variation,
body.woocommerce-checkout .h-checkout-review-order dl.variation {
    color: #5d5447 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 12.5px !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
}

body.historicum-checkout-page .h-checkout-review-addons .h-med-cart-addon-label,
body.historicum-checkout-page .h-checkout-review-order dl.variation dt,
body.historicum-checkout-page .h-checkout-review-order dl.variation dd,
body.historicum-checkout-page .h-checkout-review-order dl.variation dd *,
body.woocommerce-checkout .h-checkout-review-addons .h-med-cart-addon-label,
body.woocommerce-checkout .h-checkout-review-order dl.variation dt,
body.woocommerce-checkout .h-checkout-review-order dl.variation dd,
body.woocommerce-checkout .h-checkout-review-order dl.variation dd * {
    color: #5d5447 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument)) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
}

body.historicum-checkout-page .h-checkout-review-addons .h-med-cart-addon-price,
body.historicum-checkout-page .h-checkout-review-addons .h-med-cart-addon-price *,
body.woocommerce-checkout .h-checkout-review-addons .h-med-cart-addon-price,
body.woocommerce-checkout .h-checkout-review-addons .h-med-cart-addon-price * {
    color: #5d5447 !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot {
    margin-top: 12px !important;
    padding-top: 14px !important;
    border-top: 1px solid rgba(17, 17, 17, 0.16) !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot tr,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot tr {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 18px !important;
    align-items: baseline !important;
    padding: 7px 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot th,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot th,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot td {
    display: block !important;
    width: auto !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body.historicum-checkout-page .h-checkout-review-order .order-total,
body.woocommerce-checkout .h-checkout-review-order .order-total {
    margin-top: 8px !important;
    padding-top: 12px !important;
    border-top: 1px solid rgba(17, 17, 17, 0.18) !important;
}

body.historicum-checkout-page .h-checkout-review-order .order-total th,
body.historicum-checkout-page .h-checkout-review-order .order-total td,
body.historicum-checkout-page .h-checkout-review-order .order-total *,
body.woocommerce-checkout .h-checkout-review-order .order-total th,
body.woocommerce-checkout .h-checkout-review-order .order-total td,
body.woocommerce-checkout .h-checkout-review-order .order-total * {
    color: #111111 !important;
    font-size: clamp(20px, 1.35vw, 23px) !important;
    font-weight: 800 !important;
}

body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-methods,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-shipping-methods *,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-shipping-methods,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-shipping-methods * {
    font-weight: 400 !important;
    line-height: 1.25 !important;
    text-align: right !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method label {
    background: #f5f0e6 !important;
    background-color: #f5f0e6 !important;
    background-image: none !important;
}

body.historicum-checkout-page .h-checkout-review-order .wc_payment_method.is-selected label,
body.historicum-checkout-page .h-checkout-review-order .wc_payment_method input.input-radio:checked + label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method.is-selected label,
body.woocommerce-checkout .h-checkout-review-order .wc_payment_method input.input-radio:checked + label {
    border-color: var(--h-accent) !important;
    background: #f5f0e6 !important;
    background-color: #f5f0e6 !important;
    background-image: none !important;
    box-shadow: inset 0 0 0 1px var(--h-accent) !important;
}

body.historicum-checkout-page .h-checkout-review-order .payment_box,
body.woocommerce-checkout .h-checkout-review-order .payment_box {
    display: none !important;
}

@media (max-width: 1180px) {
    body.historicum-checkout-page .h-checkout-policy-paper .h-med-checkout-layout {
        grid-template-columns: 1fr !important;
    }

    body.historicum-checkout-page .h-checkout-policy-paper .h-checkout-summary-panel {
        position: static !important;
    }
}

@media (max-width: 768px) {
    body.historicum-cart-page,
    body.historicum-checkout-page,
    body.woocommerce-checkout {
        --h-purchase-flow-section-gap: 20px;
        --h-purchase-flow-top-padding: 22px;
    }

    body.historicum-cart-page .h-paper-content.h-commerce-paper {
        padding-top: var(--h-purchase-flow-top-padding) !important;
    }

    body.historicum-cart-page .h-commerce-paper-section,
    body.historicum-checkout-page .h-checkout-paper-section,
    body.woocommerce-checkout .h-checkout-paper-section {
        margin-top: var(--h-purchase-flow-section-gap) !important;
    }

    body.historicum-checkout-page .h-checkout-policy-paper,
    body.woocommerce-checkout .h-checkout-policy-paper {
        padding: var(--h-purchase-flow-top-padding) 18px 44px !important;
    }

    body.historicum-checkout-page .h-checkout-policy-paper > .h-commerce-progress,
    body.woocommerce-checkout .h-checkout-policy-paper > .h-commerce-progress {
        margin-bottom: 20px !important;
        padding-bottom: 14px !important;
    }

    body.historicum-checkout-page .h-checkout-coupon-details {
        margin-bottom: 22px !important;
    }

    body.historicum-checkout-page .h-checkout-coupon-summary {
        flex-wrap: nowrap !important;
        min-height: 42px !important;
        padding: 10px 12px !important;
        font-size: 13px !important;
    }

    body.historicum-checkout-page .h-checkout-coupon-summary > span:first-child {
        font-size: 15px !important;
        font-weight: 400 !important;
    }

    body.historicum-checkout-page .h-checkout-coupon-action {
        min-height: 30px !important;
        padding: 5px 10px !important;
        font-size: 11px !important;
    }

    body.historicum-checkout-page .h-checkout-coupon-form,
    body.woocommerce-checkout .h-checkout-coupon-form {
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 8px !important;
        padding: 10px !important;
    }

    body.historicum-checkout-page .h-checkout-coupon-form button,
    body.woocommerce-checkout .h-checkout-coupon-form button {
        min-width: 104px !important;
        padding: 0 12px !important;
        font-size: 12px !important;
    }

    body.historicum-checkout-page .h-checkout-policy-paper .h-med-checkout-layout {
        display: flex !important;
        flex-direction: column !important;
        gap: 18px !important;
    }

    body.historicum-checkout-page .h-checkout-policy-paper .h-checkout-summary-panel {
        order: 1 !important;
        padding: 22px !important;
    }

    body.historicum-checkout-page .h-checkout-policy-paper .h-med-checkout-forms {
        order: 2 !important;
    }

    body.historicum-checkout-page .h-checkout-review-item,
    body.woocommerce-checkout .h-checkout-review-item {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    body.historicum-checkout-page .h-checkout-review-title-row,
    body.woocommerce-checkout .h-checkout-review-title-row {
        gap: 10px !important;
    }
}

/* Mobile cart/checkout paper is flat cream: no side vignette overlays. */
@media (max-width: 768px), (hover: none) and (pointer: coarse) {
    body.historicum-cart-page .h-commerce-paper,
    body.historicum-checkout-page .h-commerce-paper,
    body.woocommerce-cart .h-commerce-paper,
    body.woocommerce-checkout .h-commerce-paper,
    body.historicum-cart-page .h-commerce-recommendations .h-paper-content,
    body.historicum-checkout-page .h-commerce-recommendations .h-paper-content {
        background: var(--h-paper-flat, var(--h-paper, #f5f0e6)) !important;
        background-color: var(--h-paper-flat, var(--h-paper, #f5f0e6)) !important;
        background-image: none !important;
        background-blend-mode: normal !important;
    }

    body.historicum-cart-page .h-commerce-paper::after,
    body.historicum-checkout-page .h-commerce-paper::after,
    body.woocommerce-cart .h-commerce-paper::after,
    body.woocommerce-checkout .h-commerce-paper::after,
    body.historicum-cart-page .h-commerce-recommendations .h-paper-content::after,
    body.historicum-checkout-page .h-commerce-recommendations .h-paper-content::after {
        content: none !important;
        display: none !important;
        background: none !important;
        background-image: none !important;
        opacity: 0 !important;
    }
}

/* Final purchase-flow section alignment and received-page message. */
body.historicum-cart-page .h-commerce-paper-section,
body.historicum-checkout-page .h-checkout-paper-section,
body.woocommerce-checkout .h-checkout-paper-section,
body.woocommerce-order-received .h-checkout-paper-section {
    margin-top: var(--h-purchase-flow-section-gap) !important;
}

body.historicum-cart-page .h-paper-content.h-commerce-paper,
body.historicum-checkout-page .h-checkout-policy-paper,
body.woocommerce-checkout .h-checkout-policy-paper,
body.woocommerce-order-received .h-checkout-policy-paper {
    padding-top: var(--h-purchase-flow-top-padding) !important;
}

body.historicum-checkout-page .h-checkout-flow-paper > .h-torn-top,
body.historicum-checkout-page .h-checkout-flow-paper > .h-torn-bottom,
body.woocommerce-checkout .h-checkout-flow-paper > .h-torn-top,
body.woocommerce-checkout .h-checkout-flow-paper > .h-torn-bottom,
body.woocommerce-order-received .h-checkout-flow-paper > .h-torn-top,
body.woocommerce-order-received .h-checkout-flow-paper > .h-torn-bottom {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

body.historicum-checkout-page .h-order-received-thanks,
body.woocommerce-order-received .h-order-received-thanks {
    box-sizing: border-box !important;
    width: min(860px, 100%) !important;
    margin: clamp(16px, 2vw, 24px) 0 0 !important;
    padding: clamp(15px, 1.7vw, 22px) clamp(16px, 2vw, 26px) !important;
    border: 1px solid rgba(17, 17, 17, 0.18) !important;
    border-left: 4px solid var(--h-accent, #f0c400) !important;
    border-radius: 8px !important;
    background: rgba(255, 250, 240, 0.58) !important;
    background-image: none !important;
    color: #111111 !important;
    box-shadow: none !important;
}

body.historicum-checkout-page .h-order-received-thanks p,
body.woocommerce-order-received .h-order-received-thanks p {
    max-width: 760px !important;
    margin: 0 !important;
    color: #17130d !important;
    font-family: var(--h-checkout-readable-font, var(--h-font-readable, var(--h-font-instrument, sans-serif))) !important;
    font-size: clamp(16px, 1.15vw, 19px) !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    line-height: 1.55 !important;
    text-transform: none !important;
}

body.historicum-checkout-page .h-order-received-thanks .h-order-received-thanks-kicker,
body.woocommerce-order-received .h-order-received-thanks .h-order-received-thanks-kicker {
    margin: 0 0 7px !important;
    color: #111111 !important;
    font-family: var(--h-font-cinzel, serif) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 0.09em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

body.historicum-checkout-page .h-order-received-thanks + .h-order-received-overview,
body.woocommerce-order-received .h-order-received-thanks + .h-order-received-overview {
    margin-top: clamp(16px, 2vw, 24px) !important;
}

body.historicum-checkout-page .h-order-received-card--next + .h-order-received-card--details,
body.woocommerce-order-received .h-order-received-card--next + .h-order-received-card--details {
    margin-top: clamp(18px, 2vw, 28px) !important;
}

body.historicum-cart-page.historicum-cart-filled-page .h-med-cart-form > .h-commerce-paper-section,
body.historicum-cart-page.historicum-cart-empty-page .h-cart-empty-section,
body.historicum-checkout-page .h-checkout-paper-section,
body.woocommerce-checkout .h-checkout-paper-section,
body.woocommerce-order-received .h-checkout-paper-section {
    margin-top: var(--h-purchase-paper-top-offset) !important;
    padding-top: 0 !important;
}

@media (max-width: 768px) {
    body.historicum-cart-page,
    body.historicum-checkout-page,
    body.woocommerce-checkout,
    body.woocommerce-order-received {
        --h-purchase-flow-section-gap: 20px;
        --h-purchase-paper-top-offset: clamp(120px, 14vh, 180px);
        --h-purchase-flow-top-padding: 22px;
    }

    body.historicum-checkout-page .h-order-received-thanks,
    body.woocommerce-order-received .h-order-received-thanks {
        width: 100% !important;
        margin-top: 14px !important;
        padding: 14px 15px !important;
        border-left-width: 3px !important;
    }

    body.historicum-checkout-page .h-order-received-thanks p,
    body.woocommerce-order-received .h-order-received-thanks p {
        font-size: 15px !important;
        line-height: 1.5 !important;
    }

    body.historicum-checkout-page .h-order-received-thanks .h-order-received-thanks-kicker,
    body.woocommerce-order-received .h-order-received-thanks .h-order-received-thanks-kicker {
        font-size: 11px !important;
    }

    body.historicum-checkout-page .h-order-received-card--next + .h-order-received-card--details,
    body.woocommerce-order-received .h-order-received-card--next + .h-order-received-card--details {
        margin-top: 16px !important;
    }
}

/* ============================================================
   Cart final source of truth: recommendation grid and summary width.
   Keep last so older page/account cart rules cannot reintroduce scroll rails.
   ============================================================ */

body.historicum-cart-page .h-med-cart-layout {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 1540px !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0, 1fr) minmax(300px, clamp(320px, 24vw, 380px)) !important;
    gap: clamp(20px, 2.3vw, 38px) !important;
    overflow: visible !important;
}

body.historicum-cart-page .h-med-cart-form,
body.historicum-cart-page .h-med-cart-items,
body.historicum-cart-page .h-med-cart-header,
body.historicum-cart-page .h-med-cart-item,
body.historicum-cart-page .h-med-order-summary {
    box-sizing: border-box !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

body.historicum-cart-page .h-med-cart-items {
    width: 100% !important;
    overflow: visible !important;
}

body.historicum-cart-page .h-med-order-summary {
    width: 100% !important;
    justify-self: stretch !important;
    align-self: start !important;
}

body.historicum-cart-page .h-commerce-rec-grid,
body.historicum-cart-page .h-commerce-rec-grid .h-bs-slide {
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

body.historicum-cart-page .h-commerce-recommendations .h-paper-title,
body.historicum-cart-page .h-commerce-recommendations .h-commerce-rec-grid {
    box-sizing: border-box !important;
    width: min(1540px, 100%) !important;
    max-width: 1540px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

body.historicum-cart-page .h-commerce-rec-grid {
    display: grid !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: clamp(12px, 1.2vw, 20px) !important;
    padding: 2px 0 12px !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-slide {
    position: relative !important;
    box-sizing: border-box !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
    isolation: auto !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
    scroll-snap-align: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-slide::before,
body.historicum-cart-page .h-commerce-rec-grid .h-bs-slide::after {
    content: none !important;
    display: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-card {
    position: relative !important;
    z-index: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    background: #050505 !important;
    background-color: #050505 !important;
    background-image: none !important;
    border: 1px solid rgba(17, 17, 17, 0.78) !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    color: #ffffff !important;
    filter: none !important;
    text-decoration: none !important;
    transform: none !important;
    transition: border-color 0.08s linear !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-card:hover {
    border-color: var(--h-accent, #ebbc00) !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-badge {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    z-index: 5 !important;
    display: flex !important;
    width: 30px !important;
    height: 30px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 0 0 0 8px !important;
    background: var(--h-accent, #ebbc00) !important;
    color: #111111 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument, Arial, sans-serif)) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-card::after,
body.historicum-cart-page .h-commerce-rec-grid .h-bs-info::after {
    content: none !important;
    display: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    flex: 0 0 auto !important;
    overflow: hidden !important;
    isolation: isolate !important;
    background: #111111 !important;
    background-color: #111111 !important;
    background-image: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-image img:not(.h-shop-card-watermark) {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: opacity 0.18s linear, transform 0.18s linear !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-card:hover .h-bs-image img:not(.h-shop-card-watermark) {
    transform: scale(1.025) !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-image img.h-shop-card-watermark {
    position: absolute !important;
    right: auto !important;
    bottom: 8px !important;
    left: 8px !important;
    z-index: 4 !important;
    display: block !important;
    width: 42px !important;
    height: auto !important;
    max-width: 42px !important;
    max-height: 34px !important;
    object-fit: contain !important;
    opacity: 0.98 !important;
    pointer-events: none !important;
    filter: none !important;
    transform: none !important;
    transition: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-info {
    position: relative !important;
    display: flex !important;
    min-height: 104px !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 10px 12px 12px !important;
    overflow: hidden !important;
    background: #000000 !important;
    background-color: #000000 !important;
    background-image: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-title {
    display: -webkit-box !important;
    min-height: 32px !important;
    margin: 0 0 6px !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    color: #ffffff !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument, Arial, sans-serif)) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    text-transform: uppercase !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-bottom-row {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 8px !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-reviews,
body.historicum-cart-page .h-commerce-rec-grid .h-bs-reviews .h-stars,
body.historicum-cart-page .h-commerce-rec-grid .h-bs-reviews .star-rating {
    color: var(--h-accent, #ebbc00) !important;
    font-size: 11px !important;
    letter-spacing: 1.5px !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-stars-new {
    color: rgba(235, 188, 0, 0.72) !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument, Arial, sans-serif)) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-price {
    display: inline-flex !important;
    min-width: 74px !important;
    min-height: 34px !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    padding: 6px 8px !important;
    border: 1px solid var(--h-accent, #ebbc00) !important;
    border-radius: 8px !important;
    background: rgba(0, 0, 0, 0.2) !important;
    color: var(--h-accent, #ebbc00) !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument, Arial, sans-serif)) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: center !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-price *,
body.historicum-cart-page .h-commerce-rec-grid .h-bs-price .woocommerce-Price-amount {
    color: inherit !important;
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-price ins,
body.historicum-cart-page .h-commerce-rec-grid .h-bs-price > .woocommerce-Price-amount {
    order: 2 !important;
    display: block !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--h-accent, #ebbc00) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-price del {
    order: 1 !important;
    display: block !important;
    color: rgba(255, 255, 255, 0.74) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    text-decoration: line-through !important;
}

body.historicum-cart-page .h-commerce-rec-grid .h-bs-price .h-lowest-price-note {
    order: 3 !important;
    display: block !important;
    margin-top: 3px !important;
    color: rgba(255, 255, 255, 0.68) !important;
    font-size: 9px !important;
    font-weight: 500 !important;
    line-height: 1.1 !important;
}

@media (max-width: 1719px) {
    body.historicum-cart-page .h-commerce-rec-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 1399px) {
    body.historicum-cart-page .h-commerce-rec-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 1500px) {
    body.historicum-cart-page .h-med-cart-layout {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.historicum-cart-page .h-med-order-summary {
        position: static !important;
        width: 100% !important;
        max-width: 760px !important;
        margin: 24px auto 0 !important;
    }
}

@media (max-width: 1180px) {
    body.historicum-cart-page .h-med-cart-items {
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    body.historicum-cart-page .h-med-cart-header {
        display: none !important;
    }

    body.historicum-cart-page .h-med-cart-item {
        display: flex !important;
        width: 100% !important;
        max-width: 100% !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        margin: 0 0 14px !important;
        padding: 16px !important;
        border: 1px solid rgba(17, 17, 17, 0.14) !important;
        border-radius: 8px !important;
        background: rgba(255, 255, 255, 0.18) !important;
        text-align: left !important;
    }

    body.historicum-cart-page .h-med-cart-product {
        width: 100% !important;
        max-width: 100% !important;
        gap: 12px !important;
    }

    body.historicum-cart-page .h-med-cart-copy {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
    }

    body.historicum-cart-page .h-med-cart-addons {
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 10px !important;
        padding-top: 10px !important;
        border-top: 1px solid rgba(17, 17, 17, 0.1) !important;
    }

    body.historicum-cart-page .h-med-cart-addon-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 12px !important;
    }

    body.historicum-cart-page .h-med-cart-addon-label {
        min-width: 0 !important;
        overflow-wrap: anywhere !important;
        text-align: left !important;
    }

    body.historicum-cart-page .h-med-cart-addon-price {
        text-align: right !important;
    }

    body.historicum-cart-page .h-med-cart-wait-row,
    body.historicum-cart-page .h-med-cart-price,
    body.historicum-cart-page .h-med-cart-addon-total,
    body.historicum-cart-page .h-med-cart-qty,
    body.historicum-cart-page .h-med-cart-total {
        display: flex !important;
        width: 100% !important;
        min-height: 46px !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 10px 0 !important;
        border-top: 1px solid rgba(17, 17, 17, 0.1) !important;
        text-align: right !important;
        white-space: normal !important;
    }

    body.historicum-cart-page .h-med-cart-wait-row::before,
    body.historicum-cart-page .h-med-cart-price::before,
    body.historicum-cart-page .h-med-cart-addon-total::before,
    body.historicum-cart-page .h-med-cart-qty::before,
    body.historicum-cart-page .h-med-cart-total::before {
        content: attr(data-label) !important;
        flex: 0 0 auto !important;
        margin-right: 16px !important;
        color: #111111 !important;
        font-family: var(--h-font-cinzel) !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        letter-spacing: 1px !important;
        text-align: left !important;
        text-transform: uppercase !important;
    }

    body.historicum-cart-page .h-med-cart-qty .h-cart-quantity-control {
        margin-left: auto !important;
    }

    body.historicum-cart-page .h-med-cart-remove {
        width: 100% !important;
        align-items: center !important;
        justify-content: flex-end !important;
        padding-top: 10px !important;
    }

    body.historicum-cart-page .h-cart-remove {
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        aspect-ratio: 1 / 1 !important;
    }
}

@media (max-width: 1100px) {
    body.historicum-cart-page .h-commerce-rec-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 768px) {
    body.historicum-cart-page .h-med-cart-layout {
        width: 100% !important;
        max-width: 100% !important;
        gap: 18px !important;
    }

    body.historicum-cart-page .h-med-order-summary {
        max-width: 100% !important;
        margin: 18px 0 0 !important;
    }

    body.historicum-cart-page .h-commerce-recommendations .h-paper-title,
    body.historicum-cart-page .h-commerce-recommendations .h-commerce-rec-grid {
        width: 100% !important;
        max-width: 100% !important;
    }

    body.historicum-cart-page .h-commerce-rec-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        padding: 2px 0 8px !important;
        overflow: visible !important;
    }
}

/* Item-level coupon savings visibility on cart and checkout. */
body.historicum-cart-page .h-med-cart-total .h-coupon-line-total,
body.historicum-checkout-page .h-checkout-review-price-row.is-total .h-coupon-line-total,
body.woocommerce-checkout .h-checkout-review-price-row.is-total .h-coupon-line-total {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 6px !important;
}

body.historicum-cart-page .h-coupon-line-total-original,
body.historicum-checkout-page .h-coupon-line-total-original,
body.woocommerce-checkout .h-coupon-line-total-original {
    order: 1 !important;
    color: rgba(17, 17, 17, 0.66) !important;
    font-size: 0.86rem !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
    text-decoration: line-through !important;
}

body.historicum-cart-page .h-coupon-line-total-original .amount,
body.historicum-cart-page .h-coupon-line-total-original .woocommerce-Price-currencySymbol,
body.historicum-checkout-page .h-coupon-line-total-original .amount,
body.historicum-checkout-page .h-coupon-line-total-original .woocommerce-Price-currencySymbol,
body.woocommerce-checkout .h-coupon-line-total-original .amount,
body.woocommerce-checkout .h-coupon-line-total-original .woocommerce-Price-currencySymbol {
    color: rgba(17, 17, 17, 0.66) !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

body.historicum-cart-page .h-coupon-line-total-current,
body.historicum-checkout-page .h-coupon-line-total-current,
body.woocommerce-checkout .h-coupon-line-total-current {
    order: 3 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    padding: 5px 9px !important;
    border: 1px solid #111111 !important;
    border-radius: 8px !important;
    background: #ebbc00 !important;
    color: #111111 !important;
    font-size: 1.24rem !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

body.historicum-cart-page .h-coupon-line-total-current .amount,
body.historicum-cart-page .h-coupon-line-total-current .woocommerce-Price-currencySymbol,
body.historicum-checkout-page .h-coupon-line-total-current .amount,
body.historicum-checkout-page .h-coupon-line-total-current .woocommerce-Price-currencySymbol,
body.woocommerce-checkout .h-coupon-line-total-current .amount,
body.woocommerce-checkout .h-coupon-line-total-current .woocommerce-Price-currencySymbol {
    color: #111111 !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

body.historicum-cart-page .h-coupon-line-saving,
body.historicum-checkout-page .h-coupon-line-saving,
body.woocommerce-checkout .h-coupon-line-saving {
    order: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 4px 7px !important;
    border: 1px solid rgba(235, 188, 0, 0.9) !important;
    border-radius: 8px !important;
    background: #111111 !important;
    color: #ffffff !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
}

body.historicum-cart-page .h-coupon-line-saving-label,
body.historicum-checkout-page .h-coupon-line-saving-label,
body.woocommerce-checkout .h-coupon-line-saving-label {
    color: #ebbc00 !important;
    font-weight: 900 !important;
}

body.historicum-cart-page .h-coupon-line-saving-value,
body.historicum-cart-page .h-coupon-line-saving-value .amount,
body.historicum-cart-page .h-coupon-line-saving-value .woocommerce-Price-currencySymbol,
body.historicum-checkout-page .h-coupon-line-saving-value,
body.historicum-checkout-page .h-coupon-line-saving-value .amount,
body.historicum-checkout-page .h-coupon-line-saving-value .woocommerce-Price-currencySymbol,
body.woocommerce-checkout .h-coupon-line-saving-value,
body.woocommerce-checkout .h-coupon-line-saving-value .amount,
body.woocommerce-checkout .h-coupon-line-saving-value .woocommerce-Price-currencySymbol {
    color: #ffffff !important;
    font-size: inherit !important;
    font-weight: 800 !important;
}

@media (max-width: 700px) {
    body.historicum-cart-page .h-med-cart-total .h-coupon-line-total,
    body.historicum-checkout-page .h-checkout-review-price-row.is-total .h-coupon-line-total,
    body.woocommerce-checkout .h-checkout-review-price-row.is-total .h-coupon-line-total {
        align-items: flex-start !important;
    }
}

/* Discount code row final polish: same compact treatment in cart and checkout. */
body.historicum-cart-page .h-cart-coupon-details summary.h-cart-coupon-button {
    min-height: 44px !important;
    padding: 10px 12px !important;
    border: 1px solid rgba(17, 17, 17, 0.22) !important;
    background: rgba(255, 250, 240, 0.72) !important;
    color: #111111 !important;
    font-family: var(--h-font-cinzel, serif) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}

body.historicum-cart-page .h-cart-coupon-details summary.h-cart-coupon-button span {
    color: #111111 !important;
}

body.historicum-cart-page .h-cart-coupon-details summary.h-cart-coupon-button::after {
    color: #c89f00 !important;
    font-size: 15px !important;
}

body.historicum-cart-page .h-cart-coupon-details .h-coupon-form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px !important;
    align-items: center !important;
    margin-top: 12px !important;
}

body.historicum-cart-page .h-cart-coupon-details .h-coupon-form input[type="text"] {
    min-height: 46px !important;
    border: 1px solid rgba(17, 17, 17, 0.28) !important;
    border-radius: 8px !important;
    background: rgba(255, 250, 240, 0.82) !important;
}

body.historicum-cart-page .h-cart-coupon-details .h-coupon-form button {
    min-width: 92px !important;
    min-height: 46px !important;
    border: 1px solid #111111 !important;
    border-radius: 8px !important;
    background: #ebbc00 !important;
    color: #111111 !important;
    font-family: var(--h-font-cinzel, serif) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
}

body.historicum-cart-page .h-summary-row-savings,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot tr.cart-discount,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot tr.cart-discount {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px !important;
    align-items: center !important;
    min-height: 46px !important;
    padding: 10px 12px !important;
    border: 1px solid rgba(235, 188, 0, 0.68) !important;
    border-left-width: 4px !important;
    border-radius: 8px !important;
    background: rgba(235, 188, 0, 0.1) !important;
}

body.historicum-cart-page .h-cart-coupon-details + .h-summary-row-savings {
    margin-top: 14px !important;
}

body.historicum-cart-page .h-summary-row-savings > span,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot tr.cart-discount th,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot tr.cart-discount th {
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #111111 !important;
    font-family: var(--h-font-cinzel, serif) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.045em !important;
    line-height: 1.2 !important;
    overflow-wrap: anywhere !important;
    text-transform: uppercase !important;
}

body.historicum-cart-page .h-summary-row-savings > strong,
body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot tr.cart-discount td,
body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot tr.cart-discount td {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    min-width: max-content !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #111111 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument, Arial, sans-serif)) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: right !important;
    white-space: nowrap !important;
}

body.historicum-cart-page .h-discount-code-amount,
body.historicum-checkout-page .h-checkout-review-order .h-discount-code-amount,
body.woocommerce-checkout .h-checkout-review-order .h-discount-code-amount {
    display: inline-flex !important;
    min-height: 28px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 4px 8px !important;
    border: 1px solid #111111 !important;
    border-radius: 8px !important;
    background: #ebbc00 !important;
    color: #111111 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument, Arial, sans-serif)) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

body.historicum-cart-page .h-summary-row-savings > strong .amount,
body.historicum-cart-page .h-summary-row-savings > strong bdi,
body.historicum-cart-page .h-summary-row-savings > strong .woocommerce-Price-currencySymbol,
body.historicum-checkout-page .h-checkout-review-order tr.cart-discount td .amount,
body.historicum-checkout-page .h-checkout-review-order tr.cart-discount td bdi,
body.historicum-checkout-page .h-checkout-review-order tr.cart-discount td .woocommerce-Price-currencySymbol,
body.woocommerce-checkout .h-checkout-review-order tr.cart-discount td .amount,
body.woocommerce-checkout .h-checkout-review-order tr.cart-discount td bdi,
body.woocommerce-checkout .h-checkout-review-order tr.cart-discount td .woocommerce-Price-currencySymbol {
    color: #111111 !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

body.historicum-cart-page .woocommerce-remove-coupon,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-remove-coupon,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-remove-coupon {
    display: inline-flex !important;
    width: 26px !important;
    min-width: 26px !important;
    height: 26px !important;
    min-height: 26px !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: 0 !important;
    border: 1px solid rgba(17, 17, 17, 0.55) !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: #111111 !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    overflow: hidden !important;
}

body.historicum-cart-page .woocommerce-remove-coupon::before,
body.historicum-checkout-page .h-checkout-review-order .woocommerce-remove-coupon::before,
body.woocommerce-checkout .h-checkout-review-order .woocommerce-remove-coupon::before {
    content: "\00d7" !important;
    color: #111111 !important;
    font-family: var(--h-commerce-data-font, var(--h-font-instrument, Arial, sans-serif)) !important;
    font-size: 19px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
}

@media (max-width: 520px) {
    body.historicum-cart-page .h-summary-row-savings,
    body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot tr.cart-discount,
    body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot tr.cart-discount,
    body.historicum-cart-page .h-cart-coupon-details .h-coupon-form {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.historicum-cart-page .h-summary-row-savings > strong,
    body.historicum-checkout-page .h-checkout-review-order .h-checkout-review-table tfoot tr.cart-discount td,
    body.woocommerce-checkout .h-checkout-review-order .h-checkout-review-table tfoot tr.cart-discount td {
        justify-content: flex-start !important;
    }
}