/**
 * Medihab Commerce Frontend
 *
 * Version: 0.6.0
 */

.mhc-product {
    --mhc-blue: #0e2759;
    --mhc-header-blue: #005a9c;
    --mhc-gold: #ffc303;
    --mhc-border: #d9dee5;
    --mhc-muted: #667085;
    --mhc-background: #f7f9fc;
    --mhc-danger: #b42318;
    --mhc-radius: 14px;

    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    color: #182230;
}

.mhc-product *,
.mhc-product *::before,
.mhc-product *::after {
    box-sizing: border-box;
}

.mhc-product-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 0.95fr);
    gap: 42px;
    align-items: start;
}

.mhc-product-media {
    position: sticky;
    top: 30px;
}

.mhc-product-main-image,
.mhc-product-image-placeholder {
    width: 100%;
    min-height: 460px;
    display: block;
    border: 1px solid var(--mhc-border);
    border-radius: var(--mhc-radius);
    background: #ffffff;
    object-fit: contain;
}

.mhc-product-image-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--mhc-muted);
}

.mhc-product-header {
    margin-bottom: 24px;
}

.mhc-product-header h1 {
    margin: 0 0 8px;
    color: var(--mhc-blue);
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.1;
}

.mhc-product-price {
    margin-bottom: 16px;
    color: var(--mhc-header-blue);
    font-size: 30px;
    font-weight: 700;
}

.mhc-product-summary {
    color: var(--mhc-muted);
    font-size: 16px;
    line-height: 1.65;
}

.mhc-product-summary p:last-child {
    margin-bottom: 0;
}

.mhc-configurator-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.mhc-option-group {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.mhc-option-group legend {
    width: 100%;
    margin-bottom: 9px;
    padding: 0;
    color: var(--mhc-blue);
    font-size: 17px;
    font-weight: 700;
}

.mhc-required {
    color: var(--mhc-danger);
}

.mhc-option-description {
    margin: -3px 0 10px;
    color: var(--mhc-muted);
    font-size: 13px;
    line-height: 1.5;
}

.mhc-option-group select,
.mhc-quantity-field input {
    width: 100%;
    min-height: 52px;
    border: 1px solid #bfc7d1;
    border-radius: 9px;
    background: #ffffff;
    color: #182230;
    padding: 10px 14px;
    font-size: 16px;
    box-shadow: none;
}

.mhc-option-group select:focus,
.mhc-quantity-field input:focus {
    border-color: var(--mhc-header-blue);
    outline: 0;
    box-shadow: 0 0 0 3px rgba(0, 90, 156, 0.13);
}

.mhc-option-choices {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.mhc-option-choice {
    display: block;
    cursor: pointer;
}

.mhc-option-choice input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.mhc-option-choice-card {
    min-height: 74px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 13px;
    border: 2px solid var(--mhc-border);
    border-radius: 10px;
    background: #ffffff;
    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease,
        background-color 0.15s ease;
}

.mhc-option-choice:hover .mhc-option-choice-card {
    border-color: #96a5b5;
}

.mhc-option-choice input:checked + .mhc-option-choice-card {
    border-color: var(--mhc-header-blue);
    background: #f4f9fd;
    box-shadow: 0 0 0 2px rgba(0, 90, 156, 0.12);
}

.mhc-option-choice-image {
    width: 100px;
    height: 74px;
    flex: 0 0 100px;
    border-radius: 7px;
    object-fit: contain;
    background: #ffffff;
}

.mhc-option-swatch {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 50%;
}

.mhc-option-choice-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.mhc-option-choice-copy strong {
    color: var(--mhc-blue);
    font-size: 15px;
}

.mhc-option-choice-copy small {
    color: var(--mhc-header-blue);
    font-size: 13px;
    font-weight: 700;
}

.mhc-option-item-description {
    color: var(--mhc-muted);
    font-size: 12px;
    line-height: 1.4;
}

.mhc-option-style-images .mhc-option-choices,
.mhc-option-style-cards .mhc-option-choices,
.mhc-option-style-swatches .mhc-option-choices {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mhc-option-style-images .mhc-option-choice-card,
.mhc-option-style-cards .mhc-option-choice-card {
    min-height: 170px;
    align-items: stretch;
    flex-direction: column;
    text-align: center;
}

.mhc-option-style-images .mhc-option-choice-image,
.mhc-option-style-cards .mhc-option-choice-image {
    width: 100%;
    height: 110px;
    flex: 0 0 110px;
}

.mhc-option-style-swatches .mhc-option-choice-card {
    justify-content: center;
}

.mhc-price-summary {
    margin-top: 4px;
    border: 1px solid var(--mhc-border);
    border-radius: 12px;
    background: var(--mhc-background);
    overflow: hidden;
}

.mhc-price-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 14px 17px;
    border-bottom: 1px solid var(--mhc-border);
}

.mhc-price-row:last-child {
    border-bottom: 0;
}

.mhc-price-row span {
    color: var(--mhc-muted);
}

.mhc-price-row strong {
    color: var(--mhc-blue);
}

.mhc-price-row-final {
    background: #ffffff;
    font-size: 20px;
}

.mhc-purchase-row {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 13px;
    align-items: end;
}

.mhc-quantity-field label {
    display: block;
    margin-bottom: 8px;
    color: var(--mhc-blue);
    font-weight: 700;
}

.mhc-add-to-basket {
    min-height: 52px;
    border: 0;
    border-radius: 9px;
    background: var(--mhc-header-blue);
    color: #ffffff;
    padding: 0 22px;
    font-size: 17px;
    font-weight: 700;
    cursor: pointer;
}

.mhc-add-to-basket:hover:not(:disabled) {
    background: var(--mhc-blue);
}

.mhc-add-to-basket:disabled {
    cursor: not-allowed;
    opacity: 0.48;
}

.mhc-validation-message {
    min-height: 22px;
    color: var(--mhc-danger);
    font-size: 14px;
    font-weight: 600;
}

.mhc-product-description {
    margin-top: 42px;
    padding-top: 30px;
    border-top: 1px solid var(--mhc-border);
    font-size: 16px;
    line-height: 1.7;
}

.mhc-product-message {
    padding: 15px 17px;
    border-radius: 8px;
}

.mhc-product-message-error {
    border: 1px solid #f1b4af;
    background: #fff1f0;
    color: #8f1f17;
}

.mhc-product-message-notice {
    border: 1px solid #cfd8e3;
    background: #f6f8fb;
    color: #475467;
}

@media (max-width: 980px) {
    .mhc-product-grid {
        grid-template-columns: 1fr;
    }

    .mhc-product-media {
        position: static;
    }

    .mhc-product-main-image,
    .mhc-product-image-placeholder {
        min-height: 360px;
    }
}

@media (max-width: 700px) {
    .mhc-option-choices,
    .mhc-option-style-images .mhc-option-choices,
    .mhc-option-style-cards .mhc-option-choices,
    .mhc-option-style-swatches .mhc-option-choices {
        grid-template-columns: 1fr;
    }

    .mhc-purchase-row {
        grid-template-columns: 1fr;
    }

    .mhc-product-main-image,
    .mhc-product-image-placeholder {
        min-height: 280px;
    }
}


/* =========================================================
   PRODUCT GALLERY
========================================================= */

.mhc-product-gallery {
    padding: 16px;
    border: 1px solid var(--mhc-border);
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 8px 26px rgba(14, 39, 89, 0.06);
}

.mhc-product-main-frame {
    position: relative;
    overflow: hidden;
    border: 1px solid #e3e7ec;
    border-radius: 10px;
    background: #ffffff;
}

.mhc-product-main-image,
.mhc-product-image-placeholder {
    min-height: 0;
    aspect-ratio: 4 / 3;
}

.mhc-product-thumbnails {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
    margin-top: 14px;
}

.mhc-product-thumbnail {
    flex: 0 1 calc((100% - 42px) / 4);
    min-width: 0;
    padding: 0;
    overflow: hidden;
    border: 2px solid transparent;
    border-radius: 8px;
    background: #ffffff;
    cursor: pointer;
}

.mhc-product-thumbnail:hover,
.mhc-product-thumbnail.is-active {
    border-color: var(--mhc-header-blue);
}

.mhc-product-thumbnail img {
    width: 100%;
    aspect-ratio: 1 / 1;
    display: block;
    object-fit: cover;
}

@media (max-width: 700px) {
    .mhc-product-gallery {
        padding: 10px;
    }

    .mhc-product-thumbnails {
        gap: 8px;
    }
}


/* =========================================================
   PRODUCT IMAGE LIGHTBOX
========================================================= */

.mhc-product-main-image[data-mhc-lightbox-trigger] {
    cursor: zoom-in;
}

body.mhc-lightbox-open {
    overflow: hidden;
}

.mhc-lightbox {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 28px;
    background: rgba(8, 18, 34, 0.92);
}

.mhc-lightbox.is-open {
    display: flex;
}

.mhc-lightbox img {
    max-width: min(1200px, 94vw);
    max-height: 90vh;
    border-radius: 10px;
    background: #ffffff;
    object-fit: contain;
    box-shadow: 0 18px 60px rgba(0, 0, 0, 0.38);
}

.mhc-lightbox-close {
    width: 48px;
    height: 48px;
    position: fixed;
    top: 22px;
    right: 22px;
    border: 0;
    border-radius: 50%;
    background: #ffffff;
    color: #0e2759;
    font-size: 34px;
    line-height: 1;
    cursor: pointer;
}

.mhc-lightbox-close:hover,
.mhc-lightbox-close:focus {
    background: #ffc303;
}

@media (max-width: 700px) {
    .mhc-lightbox {
        padding: 14px;
    }

    .mhc-lightbox-close {
        width: 42px;
        height: 42px;
        top: 12px;
        right: 12px;
        font-size: 30px;
    }
}

/* =========================================================
   V0.3.6 ROUTED PRODUCT PAGE LAYOUT
========================================================= */

/*
 * Break the virtual product page out of narrow theme containers while
 * keeping a safe margin from the browser edges.
 */
body.mhc-product-page .mhc-routed-product-page {
    width: 100%;
    padding: 42px 24px 72px;
}

body.mhc-product-page .mhc-routed-product-inner {
    width: min(1480px, calc(100vw - 48px));
    max-width: none;
    position: relative;
    left: 50%;
    margin: 0;
    transform: translateX(-50%);
}

body.mhc-product-page .mhc-product {
    width: 100%;
    max-width: none;
    margin: 0;
}

/*
 * Balanced two-column desktop layout.
 */
body.mhc-product-page .mhc-product-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(440px, 0.9fr);
    gap: 52px;
    align-items: start;
}

body.mhc-product-page .mhc-product-media {
    width: 100%;
    min-width: 0;
    position: sticky;
    top: 24px;
}

body.mhc-product-page .mhc-product-configurator {
    width: 100%;
    min-width: 0;
}

/*
 * Large gallery using the image's natural proportions.
 */
body.mhc-product-page .mhc-product-gallery {
    width: 100%;
    padding: 18px;
    border: 1px solid var(--mhc-border);
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 8px 26px rgba(14, 39, 89, 0.06);
}

body.mhc-product-page .mhc-product-main-frame {
    width: 100%;
    overflow: hidden;
    border: 1px solid #e3e7ec;
    border-radius: 12px;
    background: #ffffff;
}

body.mhc-product-page .mhc-product-main-image {
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    display: block;
    border: 0;
    border-radius: 0;
    object-fit: contain;
}

body.mhc-product-page .mhc-product-image-placeholder {
    width: 100%;
    min-height: 420px;
    aspect-ratio: auto;
}

body.mhc-product-page .mhc-product-thumbnails {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
    margin-top: 14px;
}

body.mhc-product-page .mhc-product-thumbnail {
    flex: 0 1 calc((100% - 42px) / 4);
    width: auto;
    min-width: 0;
    padding: 0;
    overflow: hidden;
    border-radius: 9px;
}

body.mhc-product-page .mhc-product-thumbnail img {
    width: 100%;
    aspect-ratio: 4 / 3;
    display: block;
    object-fit: cover;
}

@media (max-width: 1120px) {
    body.mhc-product-page .mhc-routed-product-inner {
        width: min(1040px, calc(100vw - 36px));
    }

    body.mhc-product-page .mhc-product-grid {
        grid-template-columns: minmax(0, 1fr) minmax(380px, 0.9fr);
        gap: 34px;
    }
}

@media (max-width: 920px) {
    body.mhc-product-page .mhc-routed-product-page {
        padding: 28px 18px 52px;
    }

    body.mhc-product-page .mhc-routed-product-inner {
        width: calc(100vw - 36px);
    }

    body.mhc-product-page .mhc-product-grid {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    body.mhc-product-page .mhc-product-media {
        position: static;
    }
}

@media (max-width: 700px) {
    body.mhc-product-page .mhc-routed-product-page {
        padding: 18px 12px 38px;
    }

    body.mhc-product-page .mhc-routed-product-inner {
        width: calc(100vw - 24px);
    }

    body.mhc-product-page .mhc-product-gallery {
        padding: 10px;
    }

    body.mhc-product-page .mhc-product-thumbnails {
        gap: 8px;
    }

    body.mhc-product-page .mhc-product-thumbnail {
        flex-basis: calc((100% - 24px) / 4);
    }
}

/* =========================================================
   MEDIHAB COMMERCE V0.4.1 PREMIUM STOREFRONT
========================================================= */

body.mhc-catalog-page .mhc-routed-catalog-page {
    width: 100%;
    padding: 36px 24px 72px;
}

body.mhc-catalog-page .mhc-routed-product-inner {
    width: min(1480px, calc(100vw - 48px));
    max-width: none;
    position: relative;
    left: 50%;
    margin: 0;
    transform: translateX(-50%);
}

.mhc-storefront {
    --mhc-soft-blue: #eef5fa;
    --mhc-soft-cream: #f6f1e8;
    --mhc-soft-sage: #eef2ec;
    --mhc-soft-rose: #f5eeee;
    width: 100%;
    color: #182230;
}

.mhc-storefront-kicker {
    display: inline-block;
    margin-bottom: 12px;
    color: #005a9c;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}


.mhc-storefront-section {
    padding: 76px 0 0;
}

.mhc-storefront-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 28px;
}

.mhc-storefront-heading h2 {
    margin: 0;
    color: #0e2759;
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.08;
    letter-spacing: -0.025em;
}

.mhc-storefront-heading > p {
    max-width: 560px;
    margin: 0;
    color: #667085;
    line-height: 1.65;
}

.mhc-storefront-text-link {
    color: #005a9c;
    font-weight: 750;
    text-decoration: none;
}

.mhc-category-tile-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.mhc-category-tile {
    overflow: hidden;
    border-radius: 15px;
    background: #ffffff;
    color: #182230;
    text-decoration: none;
    box-shadow: 0 8px 28px rgba(14, 39, 89, 0.08);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.mhc-category-tile:hover {
    color: #182230;
    transform: translateY(-4px);
    box-shadow: 0 16px 36px rgba(14, 39, 89, 0.13);
}

.mhc-category-tile-media {
    width: 100%;
    aspect-ratio: 4 / 3;
    display: block;
    overflow: hidden;
    background: var(--mhc-soft-cream);
}

.mhc-category-tile:nth-child(2) .mhc-category-tile-media {
    background: var(--mhc-soft-sage);
}

.mhc-category-tile:nth-child(3) .mhc-category-tile-media {
    background: var(--mhc-soft-blue);
}

.mhc-category-tile:nth-child(4) .mhc-category-tile-media {
    background: var(--mhc-soft-rose);
}

.mhc-category-tile-media img,
.mhc-category-placeholder {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.mhc-category-tile-copy {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 18px 18px 20px;
}

.mhc-category-tile-copy strong {
    color: #0e2759;
    font-size: 18px;
}

.mhc-category-tile-copy span {
    color: #667085;
    font-size: 13px;
}

.mhc-featured-product-grid,
.mhc-product-grid-list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.mhc-product-card {
    min-width: 0;
    overflow: hidden;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 8px 28px rgba(14, 39, 89, 0.08);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.mhc-product-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 38px rgba(14, 39, 89, 0.14);
}

.mhc-product-card-image {
    width: 100%;
    aspect-ratio: 4 / 3;
    display: block;
    overflow: hidden;
    background: #f4f6f8;
}

.mhc-product-card-image img,
.mhc-product-card-placeholder {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.mhc-product-card-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #667085;
}

.mhc-product-card-body {
    padding: 18px 18px 20px;
}

.mhc-product-card-type {
    display: block;
    margin-bottom: 8px;
    color: #005a9c;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.mhc-product-card h3 {
    margin: 0 0 9px;
    font-size: 20px;
    line-height: 1.25;
}

.mhc-product-card h3 a {
    color: #0e2759;
    text-decoration: none;
}

.mhc-product-card p {
    margin: 0 0 16px;
    color: #667085;
    font-size: 14px;
    line-height: 1.55;
}

.mhc-product-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.mhc-product-card-price {
    color: #0e2759;
    font-size: 17px;
}

.mhc-product-card-link {
    color: #005a9c;
    font-size: 13px;
    font-weight: 750;
}

.mhc-catalog-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 240px auto;
    gap: 14px;
    align-items: end;
    margin-bottom: 28px;
    padding: 18px;
    border-radius: 13px;
    background: #f6f8fb;
}

.mhc-catalog-toolbar label {
    display: block;
    margin-bottom: 7px;
    color: #0e2759;
    font-size: 13px;
    font-weight: 750;
}

.mhc-catalog-toolbar input,
.mhc-catalog-toolbar select {
    width: 100%;
    min-height: 46px;
    border: 1px solid #cbd3dc;
    border-radius: 8px;
    background: #ffffff;
    padding: 8px 12px;
}

.mhc-catalog-filter-button {
    min-height: 46px;
    border: 0;
    border-radius: 8px;
    background: #0e2759;
    color: #ffffff;
    padding: 0 20px;
    font-weight: 750;
    cursor: pointer;
}

.mhc-catalog-filter-button:hover {
    background: #005a9c;
}

.mhc-catalog-count {
    color: #667085;
    font-weight: 650;
    white-space: nowrap;
}

.mhc-catalog-empty {
    padding: 54px 24px;
    border-radius: 14px;
    background: #f6f8fb;
    text-align: center;
}

.mhc-catalog-empty h3,
.mhc-catalog-empty h1 {
    margin-top: 0;
    color: #0e2759;
}

.mhc-catalog-pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin-top: 34px;
}

.mhc-catalog-pagination .page-numbers {
    min-width: 40px;
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    background: #f3f6f9;
    color: #0e2759;
    text-decoration: none;
}

.mhc-catalog-pagination .page-numbers.current,
.mhc-catalog-pagination .page-numbers:hover {
    background: #0e2759;
    color: #ffffff;
}

.mhc-category-hero {
    padding: clamp(44px, 7vw, 92px);
    border-radius: 22px;
    background: #eef5fa;
}

.mhc-category-hero h1 {
    margin: 0 0 15px;
    color: #0e2759;
    font-size: clamp(40px, 6vw, 72px);
    line-height: 1.04;
}

.mhc-category-hero p,
.mhc-category-description {
    max-width: 700px;
    margin-bottom: 0;
    color: #5e6b79;
    font-size: 17px;
    line-height: 1.7;
}

@media (max-width: 1100px) {
    .mhc-category-tile-grid,
    .mhc-featured-product-grid,
    .mhc-product-grid-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    body.mhc-catalog-page .mhc-routed-catalog-page {
        padding: 24px 16px 52px;
    }

    body.mhc-catalog-page .mhc-routed-product-inner {
        width: calc(100vw - 32px);
    }

    .mhc-storefront-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .mhc-catalog-toolbar {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .mhc-category-tile-grid,
    .mhc-featured-product-grid,
    .mhc-product-grid-list {
        grid-template-columns: 1fr;
    }

    .mhc-storefront-section {
        padding-top: 54px;
    }
}

/* Medihab Commerce V0.4.4 — Full-width shop inside current theme */

/*
 * The current theme wraps page content in a narrow article container.
 * Break only Medihab Commerce catalogue pages out to a safe viewport width.
 */
body.mhc-catalog-page .mhc-theme-commerce-page {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 36px 24px 72px;
    overflow: visible;
}

body.mhc-catalog-page .mhc-theme-commerce-inner {
    width: min(1480px, calc(100vw - 48px));
    max-width: none;
    position: relative;
    left: 50%;
    margin: 0;
    transform: translateX(-50%);
}

body.mhc-catalog-page .mhc-storefront,
body.mhc-catalog-page .mhc-category-storefront {
    width: 100%;
    max-width: none;
}

/*
 * Hero: restore a proper wide two-column layout.
 */
body.mhc-catalog-page .mhc-shop-hero {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    min-height: 520px;
    overflow: hidden;
    border-radius: 22px;
}

body.mhc-catalog-page .mhc-shop-hero-copy {
    min-width: 0;
    padding: clamp(44px, 6vw, 88px);
}

body.mhc-catalog-page .mhc-shop-hero h1 {
    max-width: 700px;
    font-size: clamp(42px, 5.2vw, 72px);
    overflow-wrap: normal;
    word-break: normal;
}

body.mhc-catalog-page .mhc-shop-hero p {
    max-width: 620px;
}

body.mhc-catalog-page .mhc-shop-hero-media,
body.mhc-catalog-page .mhc-shop-hero-media img,
body.mhc-catalog-page .mhc-shop-hero-placeholder {
    width: 100%;
    min-height: 520px;
}

/*
 * Collections and product grids.
 */
body.mhc-catalog-page .mhc-category-tile-grid,
body.mhc-catalog-page .mhc-featured-product-grid,
body.mhc-catalog-page .mhc-product-grid-list {
    width: 100%;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.mhc-catalog-page .mhc-storefront-heading {
    width: 100%;
}

body.mhc-catalog-page .mhc-catalog-toolbar {
    width: 100%;
}

/*
 * Prevent theme article styles from shrinking commerce headings and cards.
 */
body.mhc-catalog-page .mhc-theme-commerce-page h1,
body.mhc-catalog-page .mhc-theme-commerce-page h2,
body.mhc-catalog-page .mhc-theme-commerce-page h3,
body.mhc-catalog-page .mhc-theme-commerce-page p,
body.mhc-catalog-page .mhc-theme-commerce-page a,
body.mhc-catalog-page .mhc-theme-commerce-page span {
    max-width: none;
}

@media (max-width: 1120px) {
    body.mhc-catalog-page .mhc-theme-commerce-inner {
        width: min(1040px, calc(100vw - 36px));
    }

    body.mhc-catalog-page .mhc-shop-hero {
        grid-template-columns: 1fr 1fr;
    }

    body.mhc-catalog-page .mhc-category-tile-grid,
    body.mhc-catalog-page .mhc-featured-product-grid,
    body.mhc-catalog-page .mhc-product-grid-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    body.mhc-catalog-page .mhc-theme-commerce-page {
        padding: 24px 16px 52px;
    }

    body.mhc-catalog-page .mhc-theme-commerce-inner {
        width: calc(100vw - 32px);
    }

    body.mhc-catalog-page .mhc-shop-hero {
        grid-template-columns: 1fr;
    }

    body.mhc-catalog-page .mhc-shop-hero-media,
    body.mhc-catalog-page .mhc-shop-hero-media img,
    body.mhc-catalog-page .mhc-shop-hero-placeholder {
        min-height: 320px;
    }
}

@media (max-width: 560px) {
    body.mhc-catalog-page .mhc-theme-commerce-page {
        padding: 18px 12px 38px;
    }

    body.mhc-catalog-page .mhc-theme-commerce-inner {
        width: calc(100vw - 24px);
    }

    body.mhc-catalog-page .mhc-category-tile-grid,
    body.mhc-catalog-page .mhc-featured-product-grid,
    body.mhc-catalog-page .mhc-product-grid-list {
        grid-template-columns: 1fr;
    }

    body.mhc-catalog-page .mhc-shop-hero-copy {
        padding: 34px 24px;
    }
}

/* =========================================================
   MEDIHAB COMMERCE V0.4.13 — EDITORIAL SHOP INDEX
========================================================= */

/*
 * The lifestyle hero remains available for the main website homepage.
 * It is intentionally hidden on the dedicated /shop/ route.
 */
body.mhc-shop-page .mhc-albany-hero,
body.mhc-shop-page .mhc-shop-image-hero,
body.mhc-shop-page .mhc-shop-hero-compact {
    display: none !important;
}

body.mhc-shop-page .mhc-shop-collection-view {
    padding-top: 28px;
    background: #ffffff;
}

body.mhc-shop-page .mhc-shop-index-header {
    padding: 12px 0 54px;
    text-align: center;
}

body.mhc-shop-page .mhc-shop-index-header h1 {
    margin: 0 0 24px;
    color: #0e2759;
    font-size: clamp(42px, 5vw, 68px);
    line-height: 1;
    letter-spacing: -0.035em;
}

body.mhc-shop-page .mhc-shop-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: clamp(24px, 4vw, 52px);
}

body.mhc-shop-page .mhc-shop-tabs a {
    position: relative;
    padding: 0 0 9px;
    color: #222a34;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-decoration: none;
    text-transform: uppercase;
}

body.mhc-shop-page .mhc-shop-tabs a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 2px;
    background: transparent;
}

body.mhc-shop-page .mhc-shop-tabs a:hover::after,
body.mhc-shop-page .mhc-shop-tabs a.is-active::after {
    background: #0e2759;
}

body.mhc-shop-page .mhc-shop-collection-section {
    padding: 0 0 86px;
}

body.mhc-shop-page .mhc-category-tile-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(18px, 2vw, 30px);
    width: min(1120px, 100%);
    margin: 0 auto;
}

body.mhc-shop-page .mhc-category-tile {
    overflow: visible;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #222a34;
    text-align: center;
    transform: none;
}

body.mhc-shop-page .mhc-category-tile:hover {
    box-shadow: none;
    transform: none;
}

body.mhc-shop-page .mhc-category-tile-media {
    aspect-ratio: 0.72;
    overflow: hidden;
    border-radius: 0;
    background: #f1f0ec;
}

body.mhc-shop-page .mhc-category-tile-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

body.mhc-shop-page .mhc-category-tile:hover img {
    transform: scale(1.025);
}

body.mhc-shop-page .mhc-category-placeholder {
    width: 100%;
    height: 100%;
    display: block;
    background:
        linear-gradient(
            145deg,
            #f3efe7 0%,
            #e4edf2 100%
        );
}

body.mhc-shop-page .mhc-category-tile-copy {
    display: block;
    padding: 20px 6px 0;
}

body.mhc-shop-page .mhc-category-tile-copy strong {
    display: block;
    color: #222a34;
    font-size: clamp(18px, 1.6vw, 24px);
    font-weight: 800;
    letter-spacing: 0.035em;
    line-height: 1.2;
    text-transform: uppercase;
}

body.mhc-shop-page .mhc-category-tile-copy > span {
    display: none;
}

body.mhc-shop-page .mhc-all-products-section {
    padding-top: 70px;
    border-top: 1px solid #e7e4de;
}

@media (max-width: 1024px) {
    body.mhc-shop-page .mhc-category-tile-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: min(760px, 100%);
    }
}

@media (max-width: 620px) {
    body.mhc-shop-page .mhc-shop-index-header {
        padding-bottom: 38px;
    }

    body.mhc-shop-page .mhc-shop-tabs {
        gap: 18px;
    }

    body.mhc-shop-page .mhc-shop-tabs a {
        font-size: 13px;
    }

    body.mhc-shop-page .mhc-category-tile-grid {
        grid-template-columns: 1fr;
        width: min(420px, 100%);
    }

    body.mhc-shop-page .mhc-category-tile-media {
        aspect-ratio: 4 / 5;
    }
}

/* =========================================================
   V0.4.13 FINAL SHOP CLEANUP
========================================================= */

body.mhc-shop-page .mhc-shop-index-header {
    display: none !important;
}

body.mhc-shop-page .mhc-shop-collection-view {
    padding-top: 0;
}

/* =========================================================
   MEDIHAB COMMERCE V0.5.5.3 — COMPACT IN-HOME DEMO PANEL
========================================================= */

.mhc-enquiry-purchase {
    width: 100%;
    margin-top: 2px;
}

.mhc-demo-panel {
    width: 100%;
    padding: 18px;
    border: 1px solid #cbd8d3;
    border-radius: 14px;
    background: #f4f7f6;
    box-shadow: 0 6px 18px rgba(51, 81, 68, 0.07);
}

.mhc-demo-message {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    margin-bottom: 16px;
}

.mhc-demo-main-icon {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #dce5e4;
    color: #335144;
}

.mhc-demo-main-icon svg {
    width: 39px;
    height: 39px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mhc-demo-copy h2 {
    margin: 0 0 5px;
    color: #26342e;
    font-size: clamp(20px, 1.8vw, 25px);
    line-height: 1.15;
    letter-spacing: -0.01em;
}

.mhc-demo-copy p {
    margin: 0;
    color: #47564f;
    font-size: 15px;
    line-height: 1.5;
}

.mhc-demo-button {
    width: 100%;
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    padding: 12px 18px;
    border: 0;
    border-radius: 11px;
    background: #335144;
    color: #ffffff !important;
    font-size: clamp(18px, 1.8vw, 22px);
    font-weight: 800;
    line-height: 1.15;
    text-align: center;
    text-decoration: none !important;
    box-shadow: 0 6px 15px rgba(51, 81, 68, 0.20);
    transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.mhc-demo-button-icon {
    width: 25px;
    height: 25px;
    flex: 0 0 25px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mhc-demo-button:hover,
.mhc-demo-button:focus {
    background: #263f35;
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 9px 19px rgba(51, 81, 68, 0.25);
}

.mhc-demo-button:focus-visible {
    outline: 3px solid #f9bf29;
    outline-offset: 3px;
}

.mhc-demo-benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 14px;
    border-top: 1px solid #dce5e4;
    border-bottom: 1px solid #dce5e4;
}

.mhc-demo-benefit {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 11px 8px;
    text-align: left;
}

.mhc-demo-benefit + .mhc-demo-benefit {
    border-left: 1px solid #dce5e4;
}

.mhc-demo-benefit-icon {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #eef3f1;
    color: #335144;
}

.mhc-demo-benefit-icon svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mhc-demo-benefit-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.mhc-demo-benefit-copy strong {
    color: #26342e;
    font-size: 13px;
    line-height: 1.2;
}

.mhc-demo-benefit-copy small {
    color: #66756e;
    font-size: 11.5px;
    line-height: 1.25;
}

.mhc-call-order-panel {
    padding: 18px;
    border: 1px solid #cbd8d3;
    border-radius: 13px;
    background: #f4f7f6;
}

.mhc-call-order-panel p {
    margin: 0 0 14px;
    color: #47564f;
    font-size: 15px;
    line-height: 1.5;
}

@media (max-width: 760px) {
    .mhc-demo-panel {
        padding: 16px;
    }

    .mhc-demo-message {
        grid-template-columns: 54px minmax(0, 1fr);
        gap: 12px;
    }

    .mhc-demo-main-icon {
        width: 54px;
        height: 54px;
    }

    .mhc-demo-main-icon svg {
        width: 33px;
        height: 33px;
    }

    .mhc-demo-copy h2 {
        font-size: 19px;
    }

    .mhc-demo-copy p {
        font-size: 14px;
    }

    .mhc-demo-button {
        min-height: 54px;
        font-size: 18px;
    }

    .mhc-demo-benefits {
        grid-template-columns: 1fr;
    }

    .mhc-demo-benefit {
        justify-content: flex-start;
        padding: 10px 12px;
    }

    .mhc-demo-benefit + .mhc-demo-benefit {
        border-top: 1px solid #dce5e4;
        border-left: 0;
    }
}

@media (max-width: 480px) {
    .mhc-demo-message {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .mhc-demo-main-icon {
        margin: 0 auto;
    }

    .mhc-demo-button {
        gap: 8px;
        font-size: 17px;
    }
}



/* V0.5.5.4 non-online purchase refinement */
.mhc-call-order-panel h2 {
    margin: 0 0 8px;
    color: #26342e;
    font-size: 24px;
    line-height: 1.2;
}


/* =========================================================
   MEDIHAB COMMERCE V0.5.6.2 — STACKED OVERVIEW / FEATURES
========================================================= */

.mhc-product-overview-panel,
.mhc-product-features-panel {
    margin: 0 0 20px;
    padding: 20px;
    border: 1px solid #d5dfdb;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 6px 18px rgba(51, 81, 68, 0.06);
}

.mhc-product-info-kicker {
    display: block;
    margin-bottom: 8px;
    color: #335144;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.mhc-product-overview-copy p {
    margin: 0;
    color: #47564f;
    font-size: 15.5px;
    line-height: 1.6;
}

.mhc-product-feature-list {
    padding: 0;
    border: 0;
}

.mhc-product-feature-list ul {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.mhc-product-feature-list li {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    gap: 8px;
    align-items: start;
    color: #33443c;
    font-size: 14px;
    line-height: 1.4;
}

.mhc-product-feature-list li > span:first-child {
    color: #335144;
    font-weight: 900;
}

@media (max-width: 760px) {
    .mhc-product-overview-panel,
    .mhc-product-features-panel {
        padding: 17px;
    }
}


/* =========================================================
   MEDIHAB COMMERCE V0.5.5.6 — DESCRIPTION BELOW GALLERY
========================================================= */

.mhc-gallery-description-panel {
    margin-top: 20px;
    padding: 22px;
    border: 1px solid #d5dfdb;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 6px 18px rgba(51, 81, 68, 0.06);
}

.mhc-gallery-description-copy {
    color: #47564f;
    font-size: 15.5px;
    line-height: 1.68;
}

.mhc-gallery-description-copy p {
    margin: 0 0 14px;
}

.mhc-gallery-description-copy p:last-child {
    margin-bottom: 0;
}

.mhc-gallery-description-copy ul,
.mhc-gallery-description-copy ol {
    margin: 12px 0;
    padding-left: 22px;
}

.mhc-gallery-description-copy h2,
.mhc-gallery-description-copy h3,
.mhc-gallery-description-copy h4 {
    margin: 20px 0 8px;
    color: #26342e;
    line-height: 1.25;
}

.mhc-gallery-description-copy h2:first-child,
.mhc-gallery-description-copy h3:first-child,
.mhc-gallery-description-copy h4:first-child {
    margin-top: 0;
}

@media (max-width: 920px) {
    .mhc-gallery-description-panel {
        margin-top: 16px;
    }
}

@media (max-width: 560px) {
    .mhc-gallery-description-panel {
        padding: 17px;
    }

    .mhc-gallery-description-copy {
        font-size: 15px;
    }
}

/* =========================================================
   V0.5.6.2 — OVERVIEW / KEY FEATURES FINAL LAYOUT FIX
   Force both sections to be independent, full-width panels.
========================================================= */
body.mhc-product-page .mhc-product-configurator > .mhc-product-overview-panel,
body.mhc-product-page .mhc-product-configurator > .mhc-product-features-panel {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    margin: 0 0 28px !important;
    padding: 26px 30px !important;
    border: 1px solid #d5dfdb !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    box-shadow: 0 8px 24px rgba(51, 81, 68, 0.07) !important;
}

body.mhc-product-page .mhc-product-overview-copy,
body.mhc-product-page .mhc-product-feature-list {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body.mhc-product-page .mhc-product-overview-copy p {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

body.mhc-product-page .mhc-product-feature-list ul {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.mhc-product-page .mhc-product-configurator > .mhc-product-features-panel + .mhc-configurator-form,
body.mhc-product-page .mhc-product-configurator > .mhc-product-overview-panel + .mhc-configurator-form {
    margin-top: 4px !important;
}

@media (max-width: 760px) {
    body.mhc-product-page .mhc-product-configurator > .mhc-product-overview-panel,
    body.mhc-product-page .mhc-product-configurator > .mhc-product-features-panel {
        margin-bottom: 22px !important;
        padding: 21px !important;
    }
}

/* =========================================================
   V0.5.7 Dynamic Collection Storefront
========================================================= */
body.mhc-collection-page .mhc-collection-storefront {
    width: min(100%, 1440px);
    margin: 0 auto;
}

.mhc-collection-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    overflow: hidden;
    margin: 0 0 42px;
    border: 1px solid #dce5e4;
    border-radius: 28px;
    background: #f7f9f8;
}

.mhc-collection-hero.has-image {
    grid-template-columns: minmax(320px, 44%) minmax(0, 1fr);
}

.mhc-collection-hero-media {
    min-height: 380px;
    background: #dce5e4;
}

.mhc-collection-hero-media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 380px;
    object-fit: cover;
}

.mhc-collection-hero-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(34px, 5vw, 76px);
}

.mhc-collection-hero-copy h1 {
    margin: 8px 0 18px;
    color: #335144;
    font-size: clamp(42px, 6vw, 78px);
    line-height: 1;
}

.mhc-collection-hero-copy .mhc-category-description,
.mhc-collection-hero-copy .mhc-category-description p {
    max-width: 720px;
    margin-top: 0;
    color: #52615b;
    font-size: clamp(18px, 2vw, 23px);
    line-height: 1.6;
}

.mhc-collection-tile-grid .mhc-category-tile-copy > span {
    text-transform: none;
}

@media (max-width: 800px) {
    .mhc-collection-hero.has-image {
        grid-template-columns: 1fr;
    }

    .mhc-collection-hero-media,
    .mhc-collection-hero-media img {
        min-height: 280px;
        max-height: 420px;
    }

    .mhc-collection-hero-copy {
        padding: 30px 24px 36px;
    }
}

/* =========================================================
   V0.5.7.1 Collection Product Cards and Page Polish
========================================================= */
body.mhc-collection-page .mhc-routed-catalog-page {
    padding-top: 26px;
}

.mhc-collection-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
    margin: 0 0 20px;
    color: #69756f;
    font-size: 14px;
}

.mhc-collection-breadcrumb a {
    color: #335144;
    font-weight: 700;
    text-decoration: none;
}

.mhc-collection-breadcrumb a:hover,
.mhc-collection-breadcrumb a:focus {
    text-decoration: underline;
}

.mhc-collection-products-section {
    padding-top: 18px;
}

.mhc-collection-products-section .mhc-storefront-heading {
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid #dce5e4;
}

.mhc-collection-products-section .mhc-storefront-heading h2 {
    color: #335144;
}

.mhc-collection-products-section .mhc-catalog-toolbar {
    margin-bottom: 30px;
    border: 1px solid #dce5e4;
    background: #f5f8f7;
}

.mhc-collection-storefront .mhc-product-grid-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
}

.mhc-collection-storefront .mhc-product-card {
    display: flex;
    min-height: 100%;
    flex-direction: column;
    border: 1px solid #dce5e4;
    border-radius: 18px;
    box-shadow: 0 10px 28px rgba(51, 81, 68, 0.08);
}

.mhc-collection-storefront .mhc-product-card-image {
    aspect-ratio: 4 / 3;
    background: #f5f7f6;
}

.mhc-collection-storefront .mhc-product-card-image img {
    object-fit: cover;
    transition: transform 0.28s ease;
}

.mhc-collection-storefront .mhc-product-card:hover .mhc-product-card-image img {
    transform: scale(1.025);
}

.mhc-collection-storefront .mhc-product-card-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 22px;
}

.mhc-collection-storefront .mhc-product-card-type {
    color: #6b776f;
}

.mhc-collection-storefront .mhc-product-card h3 {
    margin-bottom: 10px;
    font-size: clamp(21px, 2vw, 25px);
}

.mhc-collection-storefront .mhc-product-card h3 a {
    color: #335144;
}

.mhc-collection-storefront .mhc-product-card p {
    margin-bottom: 22px;
}

.mhc-collection-storefront .mhc-product-card-footer {
    align-items: stretch;
    flex-direction: column;
    margin-top: auto;
}

.mhc-collection-storefront .mhc-product-card-price {
    min-height: 28px;
    color: #335144;
    font-size: 19px;
}

.mhc-product-card-button {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: #335144;
    color: #ffffff !important;
    padding: 10px 18px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    transition: background-color 0.18s ease, transform 0.18s ease;
}

.mhc-product-card-button:hover,
.mhc-product-card-button:focus {
    background: #253e34;
    transform: translateY(-1px);
}

.mhc-collection-storefront .mhc-catalog-empty {
    border: 1px solid #dce5e4;
    background: #f5f8f7;
}

@media (max-width: 1080px) {
    .mhc-collection-storefront .mhc-product-grid-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .mhc-collection-storefront .mhc-product-grid-list {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .mhc-collection-products-section .mhc-storefront-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .mhc-collection-storefront .mhc-product-card-body {
        padding: 19px;
    }
}

/* =========================================================
   V0.5.8.3 Parent Collection Landing Page
========================================================= */
body.mhc-collection-page .mhc-parent-collection-storefront {
    width: min(100%, 1280px);
    margin: 0 auto;
    padding-top: 26px;
}

.mhc-parent-collection-header {
    max-width: 820px;
    margin: 42px auto 50px;
    text-align: center;
}

.mhc-parent-collection-header h1 {
    margin: 8px 0 0;
    color: #335144;
    font-size: clamp(42px, 6vw, 72px);
    line-height: 1;
    letter-spacing: -0.035em;
}

.mhc-parent-collection-description,
.mhc-parent-collection-description p {
    margin: 20px auto 0;
    color: #52615b;
    font-size: clamp(17px, 2vw, 21px);
    line-height: 1.65;
}

.mhc-parent-collection-cards {
    padding: 0 0 90px;
}

.mhc-parent-collection-cards .mhc-category-tile-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(22px, 3vw, 38px);
    width: min(760px, 100%);
    margin: 0 auto;
}

.mhc-parent-collection-cards .mhc-category-tile {
    overflow: visible;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #222a34;
    text-align: center;
    transform: none;
}

.mhc-parent-collection-cards .mhc-category-tile:hover {
    box-shadow: none;
    transform: none;
}

.mhc-parent-collection-cards .mhc-category-tile-media {
    aspect-ratio: 0.82;
    overflow: hidden;
    border-radius: 0;
    background: #f1f0ec;
}

.mhc-parent-collection-cards .mhc-category-tile:nth-child(2) .mhc-category-tile-media {
    background: #edf2ed;
}

.mhc-parent-collection-cards .mhc-category-tile-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

.mhc-parent-collection-cards .mhc-category-tile:hover img {
    transform: scale(1.025);
}

.mhc-parent-collection-cards .mhc-category-placeholder {
    width: 100%;
    height: 100%;
    display: block;
    background: linear-gradient(145deg, #f3efe7 0%, #e4edf2 100%);
}

.mhc-parent-collection-cards .mhc-category-tile-copy {
    display: block;
    padding: 20px 6px 0;
}

.mhc-parent-collection-cards .mhc-category-tile-copy strong {
    display: block;
    color: #222a34;
    font-size: clamp(18px, 2vw, 24px);
    font-weight: 800;
    letter-spacing: 0.035em;
    line-height: 1.2;
    text-transform: uppercase;
}

.mhc-parent-collection-cards .mhc-category-tile-copy > span {
    display: none;
}

@media (max-width: 620px) {
    .mhc-parent-collection-header {
        margin: 30px auto 36px;
    }

    .mhc-parent-collection-cards .mhc-category-tile-grid {
        grid-template-columns: 1fr;
        width: min(420px, 100%);
    }

    .mhc-parent-collection-cards .mhc-category-tile-media {
        aspect-ratio: 4 / 5;
    }
}


/* =========================================================
   MEDIHAB COMMERCE V0.6.0 — PREMIUM PRODUCT CARDS
========================================================= */

.mhc-storefront {
    --mhc-green: #335144;
    --mhc-gold-brand: #f9bf29;
    --mhc-sage-brand: #dce5e4;
}

.mhc-product-grid-list {
    align-items: stretch;
}

.mhc-premium-product-card {
    position: relative;
    display: flex;
    min-height: 100%;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(51, 81, 68, 0.16);
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 10px 32px rgba(36, 58, 48, 0.09);
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.mhc-premium-product-card:hover {
    border-color: rgba(51, 81, 68, 0.30);
    transform: translateY(-7px);
    box-shadow: 0 22px 52px rgba(36, 58, 48, 0.16);
}

.mhc-premium-product-card .mhc-product-card-image {
    position: relative;
    aspect-ratio: 1.12 / 1;
    overflow: hidden;
    background: linear-gradient(145deg, #f7f8f7 0%, #edf2ef 100%);
}

.mhc-premium-product-card .mhc-product-card-image::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 32%;
    pointer-events: none;
    background: linear-gradient(to top, rgba(25, 40, 33, 0.18), transparent);
    opacity: 0;
    transition: opacity 0.28s ease;
}

.mhc-premium-product-card:hover .mhc-product-card-image::after {
    opacity: 1;
}

.mhc-premium-product-card .mhc-product-card-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.48s cubic-bezier(.2,.7,.2,1);
}

.mhc-premium-product-card:hover .mhc-product-card-image img {
    transform: scale(1.045);
}

.mhc-product-card-badges {
    position: absolute;
    z-index: 2;
    top: 16px;
    left: 16px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    max-width: calc(100% - 32px);
}

.mhc-product-card-badge {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 11px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.055em;
    line-height: 1;
    text-transform: uppercase;
    box-shadow: 0 4px 14px rgba(22, 37, 30, 0.12);
}

.mhc-product-card-collection-badge {
    background: rgba(255, 255, 255, 0.95);
    color: #335144;
    backdrop-filter: blur(7px);
}

.mhc-product-card-sale-badge {
    background: #f9bf29;
    color: #26342e;
}

.mhc-product-card-image-link {
    position: absolute;
    z-index: 3;
    right: 16px;
    bottom: 14px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.mhc-premium-product-card:hover .mhc-product-card-image-link {
    opacity: 1;
    transform: translateY(0);
}

.mhc-premium-product-card .mhc-product-card-placeholder {
    padding: 30px;
    color: #65756d;
    font-weight: 700;
    text-align: center;
}

.mhc-premium-product-card .mhc-product-card-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 24px 24px 25px;
}

.mhc-product-card-meta {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 13px;
}

.mhc-product-card-taxonomy {
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    color: #6b776f;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.055em;
    line-height: 1.35;
    text-transform: uppercase;
}

.mhc-product-card-availability {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #52615b;
    font-size: 11px;
    font-weight: 750;
    white-space: nowrap;
}

.mhc-product-card-availability > span {
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    border-radius: 50%;
    background: #3f8b64;
    box-shadow: 0 0 0 3px rgba(63, 139, 100, 0.12);
}

.mhc-product-card-availability.is-demo > span {
    background: #d59b12;
    box-shadow: 0 0 0 3px rgba(213, 155, 18, 0.13);
}

.mhc-product-card-availability.is-call > span {
    background: #6b776f;
    box-shadow: 0 0 0 3px rgba(107, 119, 111, 0.13);
}

.mhc-premium-product-card h3 {
    margin: 0 0 11px;
    color: #26342e;
    font-size: clamp(22px, 1.8vw, 27px);
    line-height: 1.16;
    letter-spacing: -0.025em;
}

.mhc-premium-product-card h3 a {
    color: inherit;
    text-decoration: none;
}

.mhc-premium-product-card h3 a:hover,
.mhc-premium-product-card h3 a:focus {
    color: #335144;
}

.mhc-premium-product-card p {
    margin: 0 0 22px;
    color: #637169;
    font-size: 14.5px;
    line-height: 1.62;
}

.mhc-premium-product-card .mhc-product-card-footer {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 16px;
    align-items: end;
    margin-top: auto;
    padding-top: 18px;
    border-top: 1px solid #e3e9e6;
}

.mhc-product-card-pricing {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.mhc-product-card-old-price {
    color: #8a958f;
    font-size: 13px;
    text-decoration: line-through;
}

.mhc-premium-product-card .mhc-product-card-price {
    color: #335144;
    font-size: 20px;
    font-weight: 850;
    line-height: 1.25;
}

.mhc-premium-product-card .mhc-product-card-button {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 11px 17px;
    border: 1px solid #335144;
    border-radius: 11px;
    background: #335144;
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 850;
    white-space: nowrap;
    text-decoration: none !important;
    transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.mhc-premium-product-card .mhc-product-card-button span {
    font-size: 17px;
    line-height: 1;
    transition: transform 0.2s ease;
}

.mhc-premium-product-card .mhc-product-card-button:hover,
.mhc-premium-product-card .mhc-product-card-button:focus {
    background: #f9bf29;
    border-color: #f9bf29;
    color: #26342e !important;
    transform: translateY(-1px);
}

.mhc-premium-product-card .mhc-product-card-button:hover span,
.mhc-premium-product-card .mhc-product-card-button:focus span {
    transform: translateX(3px);
}

body.mhc-shop-page .mhc-product-grid-list,
.mhc-collection-storefront .mhc-product-grid-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(22px, 2.4vw, 32px);
}

@media (max-width: 1100px) {
    body.mhc-shop-page .mhc-product-grid-list,
    .mhc-collection-storefront .mhc-product-grid-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    body.mhc-shop-page .mhc-product-grid-list,
    .mhc-collection-storefront .mhc-product-grid-list {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .mhc-premium-product-card .mhc-product-card-image {
        aspect-ratio: 4 / 3;
    }

    .mhc-premium-product-card .mhc-product-card-body {
        padding: 21px;
    }

    .mhc-product-card-meta {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .mhc-premium-product-card .mhc-product-card-footer {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .mhc-premium-product-card .mhc-product-card-button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .mhc-premium-product-card,
    .mhc-premium-product-card .mhc-product-card-image img,
    .mhc-product-card-image-link,
    .mhc-premium-product-card .mhc-product-card-button,
    .mhc-premium-product-card .mhc-product-card-button span {
        transition: none;
    }
}

/* Medihab Commerce V0.6.2 — Product Search and Smart Filters */
.mhc-catalog-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) minmax(190px,240px) auto auto;gap:14px;align-items:end;margin:0 0 28px;padding:18px;border:1px solid #dce5e4;border-radius:16px;background:#fff;box-shadow:0 8px 26px rgba(51,81,68,.07)}
.mhc-catalog-toolbar label{display:grid;gap:7px;color:#335144;font-size:12px;font-weight:800;letter-spacing:.03em}
.mhc-catalog-toolbar input,.mhc-catalog-toolbar select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #cbd8d4;border-radius:10px;background:#fff;color:#26342e;font:inherit}
.mhc-catalog-filter-button,.mhc-clear-filters{min-height:46px;padding:10px 17px;border:0;border-radius:10px;background:#335144;color:#fff;font-weight:800;cursor:pointer}
.mhc-smart-filters{position:relative}.mhc-smart-filters summary{min-height:46px;display:flex;align-items:center;justify-content:center;padding:10px 16px;border:1px solid #335144;border-radius:10px;color:#335144;font-weight:800;cursor:pointer;list-style:none}.mhc-smart-filters summary::-webkit-details-marker{display:none}
.mhc-smart-filter-panel{position:absolute;z-index:20;right:0;top:56px;width:min(720px,92vw);display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:14px;padding:18px;border:1px solid #dce5e4;border-radius:14px;background:#fff;box-shadow:0 18px 50px rgba(35,55,47,.18)}
.mhc-filter-checkbox{display:flex!important;align-items:center;gap:9px;align-self:end;min-height:46px}.mhc-filter-checkbox input{width:18px!important;min-height:18px!important}.mhc-clear-filters{background:#dce5e4;color:#335144}.mhc-catalog-status{grid-column:1/-1;min-height:18px;color:#66766f;font-size:13px}.mhc-catalog-toolbar.is-loading{opacity:.72;pointer-events:none}
@media(max-width:900px){.mhc-catalog-toolbar{grid-template-columns:1fr 1fr}.mhc-smart-filter-panel{left:0;right:auto;grid-template-columns:1fr 1fr}.mhc-catalog-status{grid-column:1/-1}}
@media(max-width:620px){.mhc-catalog-toolbar{grid-template-columns:1fr}.mhc-smart-filter-panel{position:static;width:100%;grid-template-columns:1fr;margin-top:10px;box-shadow:none}.mhc-catalog-filter-button{display:none}.mhc-catalog-status{grid-column:auto}}

/* Medihab Commerce V0.6.2 — Catalogue toolbar alignment patch */
.mhc-catalog-toolbar {
    grid-template-columns: minmax(320px, 1fr) minmax(220px, 300px) 210px 118px;
    gap: 16px;
    align-items: end;
    padding: 22px 28px;
}

.mhc-catalog-search,
.mhc-catalog-sort,
.mhc-smart-filters,
.mhc-catalog-filter-button {
    min-width: 0;
}

.mhc-catalog-toolbar label {
    margin: 0;
    gap: 9px;
    font-size: 15px;
    line-height: 1.25;
    letter-spacing: 0;
}

.mhc-catalog-toolbar input[type="search"],
.mhc-catalog-toolbar input[type="number"],
.mhc-catalog-toolbar select,
.mhc-smart-filters summary,
.mhc-catalog-filter-button {
    box-sizing: border-box !important;
    width: 100%;
    height: 52px !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    border: 1px solid #cbd8d4 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: none !important;
    font: inherit;
    line-height: 50px;
}

.mhc-catalog-toolbar input[type="search"] {
    border-top: 1px solid #cbd8d4 !important;
    border-right: 1px solid #cbd8d4 !important;
    border-bottom: 1px solid #cbd8d4 !important;
    border-left: 1px solid #cbd8d4 !important;
    outline: 0;
}

.mhc-smart-filters {
    align-self: end;
    height: 52px;
}

.mhc-smart-filters summary {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #335144;
    border-color: #335144 !important;
    font-weight: 800;
    line-height: 1.2;
    white-space: nowrap;
}

.mhc-catalog-filter-button {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #335144 !important;
    background: #f9bf29 !important;
    border-color: #f9bf29 !important;
    font-weight: 800;
    line-height: 1.2;
    text-transform: none;
}

.mhc-catalog-toolbar input:focus,
.mhc-catalog-toolbar select:focus,
.mhc-smart-filters summary:focus {
    border-color: #335144 !important;
    outline: 2px solid rgba(51,81,68,.15);
    outline-offset: 1px;
}

@media (max-width: 1050px) {
    .mhc-catalog-toolbar {
        grid-template-columns: minmax(280px, 1fr) minmax(200px, 260px) 190px 110px;
        padding: 20px;
    }
}

@media (max-width: 900px) {
    .mhc-catalog-toolbar {
        grid-template-columns: 1fr 1fr;
    }

    .mhc-smart-filters,
    .mhc-catalog-filter-button {
        width: 100%;
    }
}

@media (max-width: 620px) {
    .mhc-catalog-toolbar {
        grid-template-columns: 1fr;
        padding: 16px;
    }

    .mhc-smart-filters {
        height: auto;
    }
}

/* V0.6.3 — option-linked gallery transition */
.mhc-product-main-image{transition:opacity .18s ease}
.mhc-product-main-image.is-changing{opacity:.45}

/* Medihab Commerce V0.8.0.1 — Native Basket Foundation */
.mhc-basket-page{max-width:1180px;margin:0 auto;padding:48px 20px 72px}.mhc-basket-header{margin-bottom:28px}.mhc-basket-header h1{margin:4px 0 0;font-size:clamp(34px,4vw,52px);color:#335144}.mhc-basket-items{display:grid;gap:14px}.mhc-basket-item{display:grid;grid-template-columns:100px minmax(0,1fr) 120px 110px 120px;gap:20px;align-items:center;padding:18px;background:#fff;border:1px solid #dce5e4;border-radius:16px}.mhc-basket-item-image{width:100px;height:88px;border-radius:12px;background:#f4f7f6;overflow:hidden}.mhc-basket-item-image img{width:100%;height:100%;object-fit:contain}.mhc-basket-item-details h2{font-size:18px;margin:0 0 5px}.mhc-basket-item-details h2 a{color:#335144;text-decoration:none}.mhc-basket-sku,.mhc-basket-options{margin:4px 0;color:#65736d;font-size:13px}.mhc-basket-options{padding:0;list-style:none}.mhc-basket-remove{padding:0;border:0;background:none;color:#9b351f;text-decoration:underline;cursor:pointer}.mhc-basket-item-price,.mhc-basket-line-total{font-weight:700;color:#335144}.mhc-basket-quantity label{font-size:12px;color:#65736d}.mhc-basket-quantity input{display:block;width:76px;margin-top:5px;padding:9px;border:1px solid #bdcbc6;border-radius:8px}.mhc-basket-summary{max-width:430px;margin:24px 0 0 auto;padding:24px;background:#f4f7f6;border-radius:16px}.mhc-basket-summary>div{display:flex;justify-content:space-between;font-size:20px;color:#335144}.mhc-basket-summary p{font-size:13px;color:#65736d}.mhc-basket-checkout,.mhc-basket-continue,.mhc-basket-empty a{display:block;padding:13px 18px;border-radius:10px;text-align:center;text-decoration:none;font-weight:700}.mhc-basket-checkout{background:#335144;color:#fff;opacity:1;cursor:pointer}.mhc-basket-continue{margin-top:10px;border:1px solid #335144;color:#335144}.mhc-basket-empty{padding:54px 24px;text-align:center;background:#f4f7f6;border-radius:18px}.mhc-basket-empty h2{color:#335144}.mhc-basket-empty a{display:inline-block;background:#335144;color:#fff}.mhc-basket-status{margin-top:12px;text-align:right;color:#335144}.mhc-add-to-basket.is-loading{opacity:.65;pointer-events:none}.mhc-add-to-basket.is-added{background:#335144!important}.mhc-native-basket-link{position:fixed;right:22px;bottom:22px;z-index:9998;padding:12px 16px;border-radius:999px;background:#335144;color:#fff!important;text-decoration:none!important;box-shadow:0 8px 24px rgba(0,0,0,.18);font-weight:700}
@media(max-width:760px){.mhc-basket-page{padding:28px 14px 55px}.mhc-basket-item{grid-template-columns:78px 1fr;gap:12px}.mhc-basket-item-image{width:78px;height:72px}.mhc-basket-item-price,.mhc-basket-quantity,.mhc-basket-line-total{grid-column:2}.mhc-basket-line-total{font-size:18px}.mhc-native-basket-link{right:14px;bottom:14px}}


/* V0.8.0.3 Native Checkout */
.mhc-checkout-page{max-width:1180px;margin:0 auto;padding:48px 20px 72px}.mhc-checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:28px;align-items:start}.mhc-checkout-fields,.mhc-checkout-order{background:#fff;border:1px solid #dce5e4;border-radius:18px;padding:26px}.mhc-checkout-fields h2,.mhc-checkout-order h2{margin:0 0 18px;color:#335144;font-size:22px}.mhc-checkout-fields h2:not(:first-child){margin-top:30px}.mhc-checkout-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.mhc-checkout-field{display:block;margin-bottom:16px}.mhc-checkout-field span{display:block;margin-bottom:7px;font-weight:700;color:#335144}.mhc-checkout-field input,.mhc-checkout-field textarea{width:100%;box-sizing:border-box;border:1px solid #bdcbc6;border-radius:10px;padding:12px 13px;background:#fff}.mhc-checkout-order{position:sticky;top:24px;background:#f4f7f6}.mhc-checkout-line{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid #dce5e4}.mhc-checkout-line small{display:block;color:#65736d;margin-top:4px}.mhc-checkout-total{display:flex;justify-content:space-between;padding:20px 0;font-size:21px;color:#335144}.mhc-checkout-payment-note{font-size:13px;color:#65736d}.mhc-checkout-consent{display:flex;gap:9px;align-items:flex-start;font-size:13px;margin:18px 0}.mhc-place-order{width:100%;border:0;border-radius:10px;background:#335144;color:#fff;padding:14px 18px;font-size:16px;font-weight:800;cursor:pointer}.mhc-checkout-error{margin-bottom:20px;padding:14px 16px;border-left:4px solid #9b351f;background:#fff2ee;color:#742813;border-radius:8px}.mhc-order-confirmation{max-width:720px;margin:20px auto;padding:48px;text-align:center;background:#f4f7f6;border-radius:20px}.mhc-order-confirmation h1{color:#335144}.mhc-order-confirmation a{display:inline-block;margin-top:14px;padding:13px 20px;background:#335144;color:#fff;text-decoration:none;border-radius:10px;font-weight:700}@media(max-width:820px){.mhc-checkout-layout{grid-template-columns:1fr}.mhc-checkout-order{position:static}.mhc-checkout-grid{grid-template-columns:1fr}}@media(max-width:560px){.mhc-checkout-page{padding:30px 14px 50px}.mhc-checkout-fields,.mhc-checkout-order{padding:19px}.mhc-order-confirmation{padding:30px 20px}}

/* Medihab Commerce V0.8.1.7 — native basket quantity controls */
.mhc-basket-line-form{margin:0}.mhc-basket-quantity{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.mhc-basket-quantity-label{font-size:12px;color:#65736d}.mhc-basket-stepper{display:grid;grid-template-columns:36px 54px 36px;align-items:stretch;border:1px solid #bdcbc6;border-radius:9px;overflow:hidden;background:#fff}.mhc-basket-stepper input{width:54px!important;min-width:0;margin:0!important;padding:8px 3px!important;border:0!important;border-left:1px solid #dce5e4!important;border-right:1px solid #dce5e4!important;border-radius:0!important;text-align:center;-moz-appearance:textfield}.mhc-basket-stepper input::-webkit-outer-spin-button,.mhc-basket-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.mhc-basket-step{border:0;background:#f4f7f6;color:#335144;font-size:21px;font-weight:700;cursor:pointer}.mhc-basket-step:hover{background:#dce5e4}.mhc-basket-line-actions{display:flex;gap:10px;align-items:center}.mhc-basket-update,.mhc-basket-remove{padding:0;border:0;background:none;text-decoration:underline;cursor:pointer;font-size:13px}.mhc-basket-update{color:#335144}.mhc-basket-remove{color:#9b351f}.mhc-basket-line-form button:disabled{opacity:.55;cursor:wait}
@media(max-width:760px){.mhc-basket-line-form{grid-column:2}.mhc-basket-quantity{align-items:flex-start}.mhc-basket-item{grid-template-columns:78px minmax(0,1fr)}.mhc-basket-item-price,.mhc-basket-line-total{grid-column:2}}

/* =========================================================
   V0.8.1.8 PREMIUM NATIVE BASKET
========================================================= */
body.mhc-basket-route .entry-header,
body.mhc-basket-route .page-header,
body.mhc-basket-route .entry-title,
body.mhc-basket-route main > header:first-child {
    display: none !important;
}

body.mhc-basket-route .site-main,
body.mhc-basket-route #primary,
body.mhc-basket-route .content-area,
body.mhc-basket-route .entry-content,
body.mhc-basket-route article.page,
body.mhc-basket-route .elementor-location-single,
body.mhc-basket-route .container,
body.mhc-basket-route .ast-container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.mhc-basket-route .mhc-basket-page {
    --mhc-green: #335144;
    --mhc-gold: #f9bf29;
    --mhc-sage: #dce5e4;
    --mhc-ink: #24312d;
    --mhc-muted: #66736e;
    --mhc-line: #dce5e4;
    --mhc-soft: #f6f8f7;
    width: min(1280px, calc(100vw - 48px));
    max-width: none;
    margin: 0 auto;
    padding: 58px 0 88px;
    color: var(--mhc-ink);
    font-family: inherit;
}

body.mhc-basket-route .mhc-basket-page *,
body.mhc-basket-route .mhc-basket-page *::before,
body.mhc-basket-route .mhc-basket-page *::after {
    box-sizing: border-box;
}

body.mhc-basket-route .mhc-basket-header {
    margin: 0 0 34px;
}

body.mhc-basket-route .mhc-product-info-kicker {
    display: block;
    margin-bottom: 8px;
    color: var(--mhc-green);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

body.mhc-basket-route .mhc-basket-header h1 {
    margin: 0;
    color: var(--mhc-green);
    font-size: clamp(38px, 5vw, 62px);
    line-height: 1.02;
    letter-spacing: -.035em;
}

body.mhc-basket-route [data-mhc-basket-content] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 390px);
    gap: 30px;
    align-items: start;
}

body.mhc-basket-route .mhc-basket-items {
    display: grid;
    gap: 16px;
}

body.mhc-basket-route .mhc-basket-item {
    display: grid;
    grid-template-columns: 126px minmax(190px, 1fr) 90px 170px 96px;
    gap: 22px;
    align-items: center;
    padding: 20px;
    border: 1px solid var(--mhc-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(51,81,68,.065);
}

body.mhc-basket-route .mhc-basket-item-image {
    width: 126px;
    height: 106px;
    overflow: hidden;
    border: 1px solid #e7ecea;
    border-radius: 13px;
    background: var(--mhc-soft);
}

body.mhc-basket-route .mhc-basket-item-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

body.mhc-basket-route .mhc-basket-item-details h2 {
    margin: 0 0 7px;
    font-size: 19px;
    line-height: 1.25;
}

body.mhc-basket-route .mhc-basket-item-details h2 a {
    color: var(--mhc-green);
    text-decoration: none;
}

body.mhc-basket-route .mhc-basket-item-details h2 a:hover {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

body.mhc-basket-route .mhc-basket-sku,
body.mhc-basket-route .mhc-basket-options {
    margin: 4px 0;
    padding: 0;
    color: var(--mhc-muted);
    font-size: 13px;
    line-height: 1.5;
    list-style: none;
}

body.mhc-basket-route .mhc-basket-item-price,
body.mhc-basket-route .mhc-basket-line-total {
    color: var(--mhc-green);
    font-size: 16px;
    font-weight: 800;
    white-space: nowrap;
}

body.mhc-basket-route .mhc-basket-line-total {
    text-align: right;
    font-size: 18px;
}

body.mhc-basket-route .mhc-basket-line-form {
    margin: 0;
}

body.mhc-basket-route .mhc-basket-quantity {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

body.mhc-basket-route .mhc-basket-quantity-label {
    color: var(--mhc-muted);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
}

body.mhc-basket-route .mhc-basket-stepper {
    display: grid;
    grid-template-columns: 40px 54px 40px;
    height: 42px;
    overflow: hidden;
    border: 1px solid #bfcac6;
    border-radius: 10px;
    background: #fff;
}

body.mhc-basket-route .mhc-basket-stepper input {
    width: 54px !important;
    min-width: 0 !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 4px !important;
    border: 0 !important;
    border-right: 1px solid var(--mhc-line) !important;
    border-left: 1px solid var(--mhc-line) !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: var(--mhc-ink) !important;
    font-size: 15px !important;
    font-weight: 700;
    text-align: center;
    box-shadow: none !important;
    -moz-appearance: textfield;
}

body.mhc-basket-route .mhc-basket-stepper input::-webkit-inner-spin-button,
body.mhc-basket-route .mhc-basket-stepper input::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

body.mhc-basket-route .mhc-basket-step {
    width: 40px;
    height: 40px;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: var(--mhc-soft);
    color: var(--mhc-green);
    font-size: 21px;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
    box-shadow: none;
}

body.mhc-basket-route .mhc-basket-step:hover,
body.mhc-basket-route .mhc-basket-step:focus {
    background: var(--mhc-sage);
    color: var(--mhc-green);
}

body.mhc-basket-route .mhc-basket-line-actions {
    display: flex;
    gap: 13px;
    align-items: center;
}

body.mhc-basket-route .mhc-basket-update,
body.mhc-basket-route .mhc-basket-remove {
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.3;
    text-decoration: none;
    cursor: pointer;
    box-shadow: none;
}

body.mhc-basket-route .mhc-basket-update {
    color: var(--mhc-green);
}

body.mhc-basket-route .mhc-basket-remove {
    color: #9b351f;
}

body.mhc-basket-route .mhc-basket-update:hover,
body.mhc-basket-route .mhc-basket-remove:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.mhc-basket-route .mhc-basket-summary {
    position: sticky;
    top: 28px;
    max-width: none;
    margin: 0;
    padding: 28px;
    border: 1px solid var(--mhc-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 38px rgba(51,81,68,.09);
}

body.mhc-basket-route .mhc-basket-summary > div {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 19px;
    border-bottom: 1px solid var(--mhc-line);
    color: var(--mhc-green);
    font-size: 21px;
}

body.mhc-basket-route .mhc-basket-summary > div strong {
    font-weight: 850;
}

body.mhc-basket-route .mhc-basket-summary p {
    margin: 17px 0 22px;
    color: var(--mhc-muted);
    font-size: 14px;
    line-height: 1.55;
}

body.mhc-basket-route .mhc-basket-checkout,
body.mhc-basket-route .mhc-basket-continue {
    width: 100%;
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 13px 18px;
    border-radius: 11px;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    transition: transform .15s ease, background-color .15s ease, border-color .15s ease;
}

body.mhc-basket-route .mhc-basket-checkout {
    border: 1px solid var(--mhc-green);
    background: var(--mhc-green);
    color: #fff;
}

body.mhc-basket-route .mhc-basket-checkout:hover {
    background: #263f35;
    color: #fff;
    transform: translateY(-1px);
}

body.mhc-basket-route .mhc-basket-continue {
    margin-top: 10px;
    border: 1px solid var(--mhc-green);
    background: #fff;
    color: var(--mhc-green);
}

body.mhc-basket-route .mhc-basket-continue:hover {
    background: var(--mhc-soft);
    color: var(--mhc-green);
}

body.mhc-basket-route .mhc-basket-status {
    grid-column: 1 / -1;
    margin-top: 16px;
    color: var(--mhc-green);
    text-align: right;
}

body.mhc-basket-route .mhc-basket-empty {
    grid-column: 1 / -1;
    padding: 70px 28px;
    border: 1px solid var(--mhc-line);
    border-radius: 20px;
    background: var(--mhc-soft);
    text-align: center;
}

body.mhc-basket-route .mhc-basket-empty h2 {
    margin: 0 0 8px;
    color: var(--mhc-green);
}

body.mhc-basket-route .mhc-basket-empty p {
    color: var(--mhc-muted);
}

body.mhc-basket-route .mhc-basket-empty a {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    margin-top: 12px;
    padding: 12px 22px;
    border-radius: 10px;
    background: var(--mhc-green);
    color: #fff;
    font-weight: 800;
    text-decoration: none;
}

@media (max-width: 1050px) {
    body.mhc-basket-route [data-mhc-basket-content] {
        grid-template-columns: 1fr;
    }

    body.mhc-basket-route .mhc-basket-summary {
        position: static;
        width: min(100%, 520px);
        margin-left: auto;
    }

    body.mhc-basket-route .mhc-basket-item {
        grid-template-columns: 108px minmax(180px, 1fr) 80px 160px 90px;
        gap: 16px;
    }

    body.mhc-basket-route .mhc-basket-item-image {
        width: 108px;
        height: 92px;
    }
}

@media (max-width: 760px) {
    body.mhc-basket-route .mhc-basket-page {
        width: calc(100vw - 28px);
        padding: 34px 0 58px;
    }

    body.mhc-basket-route .mhc-basket-header {
        margin-bottom: 24px;
    }

    body.mhc-basket-route .mhc-basket-item {
        grid-template-columns: 92px minmax(0, 1fr);
        gap: 14px 16px;
        padding: 15px;
        border-radius: 15px;
    }

    body.mhc-basket-route .mhc-basket-item-image {
        width: 92px;
        height: 82px;
        grid-row: 1 / 3;
    }

    body.mhc-basket-route .mhc-basket-item-details {
        min-width: 0;
    }

    body.mhc-basket-route .mhc-basket-item-details h2 {
        font-size: 17px;
    }

    body.mhc-basket-route .mhc-basket-item-price {
        grid-column: 2;
        grid-row: 2;
    }

    body.mhc-basket-route .mhc-basket-line-form {
        grid-column: 1 / -1;
        grid-row: auto;
    }

    body.mhc-basket-route .mhc-basket-quantity {
        padding-top: 12px;
        border-top: 1px solid var(--mhc-line);
    }

    body.mhc-basket-route .mhc-basket-line-total {
        grid-column: 1 / -1;
        text-align: right;
    }

    body.mhc-basket-route .mhc-basket-summary {
        width: 100%;
        padding: 22px;
    }
}

/* Medihab Commerce V0.8.1.10 - Premium checkout */
body.mhc-checkout-route .entry-header,
body.mhc-checkout-route .page-header,
body.mhc-checkout-route .entry-title,
body.mhc-checkout-route main > header:first-child {
    display: none !important;
}

body.mhc-checkout-route .site-main,
body.mhc-checkout-route #primary,
body.mhc-checkout-route .content-area,
body.mhc-checkout-route .entry-content,
body.mhc-checkout-route article.page,
body.mhc-checkout-route .elementor-location-single,
body.mhc-checkout-route .container,
body.mhc-checkout-route .ast-container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.mhc-checkout-route .mhc-checkout-page {
    --mhc-green: #335144;
    --mhc-gold: #f9bf29;
    --mhc-sage: #dce5e4;
    --mhc-soft: #f5f8f7;
    --mhc-line: #d9e3df;
    --mhc-muted: #68756f;
    width: min(1180px, calc(100vw - 40px));
    max-width: none;
    margin: 0 auto;
    padding: 52px 0 80px;
    color: #24332e;
}

body.mhc-checkout-route .mhc-checkout-page *,
body.mhc-checkout-route .mhc-checkout-page *::before,
body.mhc-checkout-route .mhc-checkout-page *::after { box-sizing: border-box; }

body.mhc-checkout-route .mhc-checkout-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 30px;
}

body.mhc-checkout-route .mhc-checkout-header h1 {
    margin: 5px 0 8px;
    color: var(--mhc-green);
    font-size: clamp(34px, 4vw, 52px);
    line-height: 1.05;
    letter-spacing: -.025em;
}

body.mhc-checkout-route .mhc-checkout-header p {
    max-width: 650px;
    margin: 0;
    color: var(--mhc-muted);
    font-size: 16px;
}

body.mhc-checkout-route .mhc-checkout-security {
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 205px;
    padding: 13px 16px;
    border: 1px solid var(--mhc-line);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 28px rgba(51,81,68,.06);
}

body.mhc-checkout-route .mhc-checkout-lock { font-size: 22px; }
body.mhc-checkout-route .mhc-checkout-security strong,
body.mhc-checkout-route .mhc-checkout-security small { display: block; }
body.mhc-checkout-route .mhc-checkout-security strong { color: var(--mhc-green); font-size: 14px; }
body.mhc-checkout-route .mhc-checkout-security small { margin-top: 2px; color: var(--mhc-muted); font-size: 12px; }

body.mhc-checkout-route .mhc-checkout-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 410px;
    gap: 30px;
    align-items: start;
}

body.mhc-checkout-route .mhc-checkout-fields {
    display: grid;
    gap: 18px;
    padding: 0;
    border: 0;
    background: transparent;
}

body.mhc-checkout-route .mhc-checkout-section {
    padding: 28px;
    border: 1px solid var(--mhc-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 38px rgba(51,81,68,.055);
}

body.mhc-checkout-route .mhc-checkout-section-heading {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 23px;
}

body.mhc-checkout-route .mhc-checkout-section-heading > span {
    display: inline-flex;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--mhc-green);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
}

body.mhc-checkout-route .mhc-checkout-section-heading h2 {
    margin: 0 0 4px;
    color: var(--mhc-green);
    font-size: 21px;
}
body.mhc-checkout-route .mhc-checkout-section-heading p { margin: 0; color: var(--mhc-muted); font-size: 13px; line-height: 1.5; }

body.mhc-checkout-route .mhc-checkout-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 17px; }
body.mhc-checkout-route .mhc-checkout-grid-address { grid-template-columns: 1fr 1fr 150px; }
body.mhc-checkout-route .mhc-checkout-field { display: block; margin: 0 0 17px; }
body.mhc-checkout-route .mhc-checkout-grid .mhc-checkout-field { margin-bottom: 0; }
body.mhc-checkout-route .mhc-checkout-field > span { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 8px; color: var(--mhc-green); font-size: 13px; font-weight: 800; }
body.mhc-checkout-route .mhc-checkout-field em { color: var(--mhc-muted); font-size: 11px; font-style: normal; font-weight: 500; }
body.mhc-checkout-route .mhc-checkout-field input,
body.mhc-checkout-route .mhc-checkout-field textarea {
    width: 100%;
    min-height: 50px;
    padding: 13px 14px;
    border: 1px solid #bfcfc8;
    border-radius: 10px;
    outline: none;
    background: #fff;
    color: #24332e;
    font: inherit;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
body.mhc-checkout-route .mhc-checkout-field textarea { min-height: 112px; resize: vertical; }
body.mhc-checkout-route .mhc-checkout-field input:focus,
body.mhc-checkout-route .mhc-checkout-field textarea:focus { border-color: var(--mhc-green); box-shadow: 0 0 0 3px rgba(51,81,68,.12); background: #fcfefd; }

body.mhc-checkout-route .mhc-checkout-order {
    position: sticky;
    top: 24px;
    padding: 26px;
    border: 1px solid var(--mhc-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(51,81,68,.10);
}

body.mhc-checkout-route .mhc-checkout-order-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; padding-bottom: 18px; border-bottom: 1px solid var(--mhc-line); }
body.mhc-checkout-route .mhc-checkout-order-heading h2 { margin: 3px 0 0; color: var(--mhc-green); font-size: 24px; }
body.mhc-checkout-route .mhc-checkout-order-heading a { color: var(--mhc-green); font-size: 13px; font-weight: 800; }
body.mhc-checkout-route .mhc-checkout-lines { padding: 5px 0; }
body.mhc-checkout-route .mhc-checkout-line { display: grid; grid-template-columns: 58px minmax(0,1fr) auto; gap: 13px; align-items: center; padding: 15px 0; border-bottom: 1px solid var(--mhc-line); }
body.mhc-checkout-route .mhc-checkout-line-image { position: relative; width: 58px; height: 54px; overflow: visible; border-radius: 10px; background: var(--mhc-soft); }
body.mhc-checkout-route .mhc-checkout-line-image img { width: 100%; height: 100%; object-fit: contain; border-radius: inherit; }
body.mhc-checkout-route .mhc-checkout-line-image > span { position: absolute; top: -7px; right: -7px; display: inline-flex; min-width: 22px; height: 22px; align-items: center; justify-content: center; padding: 0 6px; border-radius: 999px; background: var(--mhc-green); color: #fff; font-size: 11px; font-weight: 800; }
body.mhc-checkout-route .mhc-checkout-line-info { min-width: 0; }
body.mhc-checkout-route .mhc-checkout-line-info strong { display: block; overflow: hidden; color: #26372f; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
body.mhc-checkout-route .mhc-checkout-line-info small { display: block; margin-top: 3px; color: var(--mhc-muted); font-size: 11px; }
body.mhc-checkout-route .mhc-checkout-line-price { color: var(--mhc-green); font-size: 14px; white-space: nowrap; }

body.mhc-checkout-route .mhc-checkout-totals { display: grid; gap: 10px; padding: 17px 0; border-bottom: 1px solid var(--mhc-line); }
body.mhc-checkout-route .mhc-checkout-totals > div,
body.mhc-checkout-route .mhc-checkout-total { display: flex; justify-content: space-between; gap: 20px; }
body.mhc-checkout-route .mhc-checkout-totals span { color: var(--mhc-muted); font-size: 14px; }
body.mhc-checkout-route .mhc-checkout-totals strong { color: var(--mhc-green); font-size: 14px; }
body.mhc-checkout-route .mhc-checkout-total { align-items: center; padding: 19px 0; color: var(--mhc-green); font-size: 18px; }
body.mhc-checkout-route .mhc-checkout-total strong { font-size: 25px; }

body.mhc-checkout-route .mhc-checkout-payment-panel { display: flex; gap: 12px; padding: 14px; border: 1px solid #cbd9d4; border-radius: 12px; background: var(--mhc-soft); }
body.mhc-checkout-route .mhc-checkout-payment-icon { font-size: 22px; }
body.mhc-checkout-route .mhc-checkout-payment-panel strong { display: block; color: var(--mhc-green); font-size: 14px; }
body.mhc-checkout-route .mhc-checkout-payment-panel p { margin: 3px 0 0; color: var(--mhc-muted); font-size: 12px; line-height: 1.45; }

body.mhc-checkout-route .mhc-checkout-consent { display: flex; align-items: flex-start; gap: 10px; margin: 18px 0; color: #495951; font-size: 12px; line-height: 1.45; }
body.mhc-checkout-route .mhc-checkout-consent input { width: 17px; height: 17px; flex: 0 0 17px; margin-top: 1px; accent-color: var(--mhc-green); }
body.mhc-checkout-route .mhc-place-order { display: flex; width: 100%; min-height: 53px; align-items: center; justify-content: center; border: 0; border-radius: 11px; background: var(--mhc-green); color: #fff; font-size: 15px; font-weight: 800; cursor: pointer; box-shadow: 0 10px 22px rgba(51,81,68,.18); transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
body.mhc-checkout-route .mhc-place-order:hover { background: #294338; transform: translateY(-1px); box-shadow: 0 13px 26px rgba(51,81,68,.22); }
body.mhc-checkout-route .mhc-checkout-trust { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px 14px; margin-top: 13px; color: var(--mhc-muted); font-size: 11px; }
body.mhc-checkout-route .mhc-checkout-return { display: block; margin-top: 16px; color: var(--mhc-green); text-align: center; font-size: 13px; font-weight: 800; }
body.mhc-checkout-route .mhc-checkout-error { margin-bottom: 20px; padding: 15px 17px; border: 1px solid #e6b9ad; border-left: 4px solid #a63f25; border-radius: 11px; background: #fff5f2; color: #762b18; }

@media (max-width: 980px) {
    body.mhc-checkout-route .mhc-checkout-layout { grid-template-columns: 1fr; }
    body.mhc-checkout-route .mhc-checkout-order { position: static; width: min(100%, 620px); margin-left: auto; }
}
@media (max-width: 700px) {
    body.mhc-checkout-route .mhc-checkout-page { width: calc(100vw - 28px); padding: 34px 0 58px; }
    body.mhc-checkout-route .mhc-checkout-header { align-items: flex-start; flex-direction: column; gap: 16px; }
    body.mhc-checkout-route .mhc-checkout-security { min-width: 0; }
    body.mhc-checkout-route .mhc-checkout-section,
    body.mhc-checkout-route .mhc-checkout-order { padding: 20px; border-radius: 16px; }
    body.mhc-checkout-route .mhc-checkout-grid,
    body.mhc-checkout-route .mhc-checkout-grid-address { grid-template-columns: 1fr; gap: 0; }
    body.mhc-checkout-route .mhc-checkout-grid .mhc-checkout-field { margin-bottom: 17px; }
}


/* V0.13.0 Apple Pay and Google Pay wallet readiness */
.mhc-wallet-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.mhc-wallet-badges span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid rgba(51,81,68,.18);border-radius:8px;background:#fff;color:#243c32;font-size:12px;font-weight:700;letter-spacing:-.01em}


/* V0.13.3 Klarna Pay in 3 checkout information */
body.mhc-checkout-route .mhc-checkout-payment-content {
    min-width: 0;
    flex: 1;
}

body.mhc-checkout-route .mhc-klarna-pay3 {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    margin-top: 13px;
    padding: 13px;
    border: 1px solid #e7c8d2;
    border-radius: 12px;
    background: linear-gradient(135deg, #fff3f7 0%, #fde9f0 100%);
}

body.mhc-checkout-route .mhc-klarna-logo {
    display: flex;
    min-height: 66px;
    align-items: center;
    justify-content: center;
    padding: 8px;
    border-radius: 10px;
    background: #ffb3c7;
    color: #111;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: -.04em;
}

body.mhc-checkout-route .mhc-klarna-copy strong {
    color: #111;
    font-size: 14px;
}

body.mhc-checkout-route .mhc-klarna-copy p {
    margin-top: 4px;
    color: #343434;
    font-size: 11px;
    line-height: 1.45;
}

@media (max-width: 520px) {
    body.mhc-checkout-route .mhc-klarna-pay3 {
        grid-template-columns: 1fr;
    }

    body.mhc-checkout-route .mhc-klarna-logo {
        min-height: 48px;
        justify-content: flex-start;
        padding-left: 14px;
    }
}

/* V0.16.0 Saved address checkout selector */
.mhc-checkout-saved-address{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:16px;margin-bottom:18px;border:1px solid #dce5e4;border-radius:12px;background:#f5f8f6}.mhc-checkout-saved-address label{display:grid;gap:7px;flex:1;color:#335144;font-size:12px;font-weight:800}.mhc-checkout-saved-address select{width:100%;height:46px;border:1px solid #cfdad4;border-radius:9px;background:#fff;padding:0 12px;font:inherit;color:#21352d}.mhc-checkout-saved-address a{color:#335144;font-size:12px;font-weight:800;text-decoration:none;white-space:nowrap;padding-bottom:13px}@media(max-width:650px){.mhc-checkout-saved-address{align-items:stretch;flex-direction:column}.mhc-checkout-saved-address a{padding-bottom:0}}
/* Centre product quantity number */
.mhc-quantity-field input[type="number"] {
    text-align: center;
}