@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

/* Native add-to-cart confirmation: deliberately scoped to its own markup. */
body.rendsee-live #previewModal {
    position: fixed;
    top: 50% !important;
    left: 50%;
    width: min(1040px, calc(100% - 32px));
    max-width: 1040px;
    max-height: calc(100vh - 40px);
    padding: 0;
    margin: 0;
    overflow: auto;
    background: transparent;
    border: 0;
    transform: translate(-50%, -50%);
}
#previewModal > .modal-close { top: 16px; right: 16px; color: var(--rd-ink); }
#previewModal .modal-content {
    overflow: hidden;
    color: var(--rd-ink);
    background: var(--rd-surface);
    border: 1px solid var(--rd-line);
    border-radius: 8px;
    box-shadow: 0 20px 56px rgb(35 32 26 / 22%);
}
#previewModal .modal-header {
    display: flex;
    align-items: center;
    min-height: 64px;
    padding: 16px 58px 16px 25px;
    background: var(--rd-paper);
    border-bottom: 1px solid var(--rd-line);
}
#previewModal .modal-header-title {
    margin: 0;
    color: var(--rd-ink);
    font: 600 19px/1.35 var(--rd-font);
    text-align: left;
}
#previewModal .modal-body { padding: 25px; }
#previewModal .rd-cart-confirmation {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(230px, 290px);
    gap: clamp(24px, 4vw, 50px);
    align-items: start;
}
#previewModal .rd-cart-confirmation-item {
    display: grid;
    grid-template-columns: minmax(145px, 220px) minmax(0, 1fr);
    gap: 24px;
    align-items: start;
    min-width: 0;
}
#previewModal .rd-cart-confirmation-image {
    display: grid;
    place-items: center;
    min-height: 205px;
    padding: 12px;
    background: #f0eee8;
    border: 1px solid var(--rd-line);
    border-radius: 5px;
}
#previewModal .rd-cart-confirmation-image__asset {
    display: block;
    width: 100%;
    max-height: 220px;
    object-fit: contain;
}
#previewModal .rd-cart-confirmation-details { min-width: 0; padding-top: 4px; }
#previewModal .rd-cart-confirmation-title {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    margin: 0 0 7px;
    color: #111;
    font: 400 20px/1.35 Arial, Helvetica, sans-serif;
}
#previewModal .rd-cart-confirmation-brand {
    margin: 0 0 12px;
    color: var(--rd-muted);
    font: 400 14px/1.4 Arial, Helvetica, sans-serif;
}
#previewModal .rd-cart-confirmation-item-price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 6px;
    margin: 12px 0 0;
    color: #111;
    font: 400 18px/1.3 Arial, Helvetica, sans-serif;
}
#previewModal .rd-cart-confirmation-options {
    display: grid;
    gap: 7px;
    padding-top: 14px;
    margin: 14px 0 0;
    border-top: 1px solid var(--rd-line);
    font: 400 14px/1.4 Arial, Helvetica, sans-serif;
}
#previewModal .rd-cart-confirmation-option { display: flex; flex-wrap: wrap; gap: 5px 9px; }
#previewModal .rd-cart-confirmation-option dt { color: var(--rd-muted); font-weight: 400; }
#previewModal .rd-cart-confirmation-option dd { margin: 0; color: #111; }
#previewModal .rd-cart-confirmation-checkout {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 13px;
    min-width: 0;
    width: auto;
    float: none;
    padding: 19px;
    margin: 0;
    background: var(--rd-paper);
    border: 1px solid var(--rd-line);
    border-radius: 6px;
}
#previewModal .rd-cart-confirmation-primary,
#previewModal .rd-cart-confirmation-continue {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 11px 15px;
    border: 1px solid var(--rd-red);
    border-radius: 4px;
    font: 600 14px/1.3 var(--rd-font);
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}
#previewModal .rd-cart-confirmation-primary {
    color: #fffaf6;
    background: var(--rd-red);
}
#previewModal .rd-cart-confirmation-primary:hover {
    color: #fffaf6;
    background: var(--rd-red-deep);
    border-color: var(--rd-red-deep);
}
#previewModal .rd-cart-confirmation-subtotal {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    padding: 5px 0 13px;
    color: var(--rd-muted);
    border-bottom: 1px solid var(--rd-line);
    font: 400 14px/1.4 var(--rd-font);
}
#previewModal .rd-cart-confirmation-subtotal strong {
    color: #111;
    font: 400 22px/1.1 Arial, Helvetica, sans-serif;
    white-space: nowrap;
}
#previewModal .rd-cart-confirmation-count {
    margin: 0;
    color: var(--rd-muted);
    font: 400 13px/1.4 var(--rd-font);
}
#previewModal .rd-cart-confirmation-continue {
    color: var(--rd-red);
    background: var(--rd-surface);
}
#previewModal .rd-cart-confirmation-continue:hover {
    color: var(--rd-red-deep);
    background: #f3eee9;
    border-color: var(--rd-red-deep);
}
@media (max-width: 680px) {
    #previewModal .modal-header { min-height: 58px; padding: 14px 52px 14px 17px; }
    #previewModal .modal-header-title { font-size: 17px; }
    #previewModal .modal-body { padding: 17px; }
    #previewModal .rd-cart-confirmation { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    #previewModal .rd-cart-confirmation-item { grid-template-columns: minmax(96px, 34%) minmax(0, 1fr); gap: 15px; }
    #previewModal .rd-cart-confirmation-image { min-height: 130px; padding: 8px; }
    #previewModal .rd-cart-confirmation-image__asset { max-height: 160px; }
    #previewModal .rd-cart-confirmation-title { font-size: 17px; }
    #previewModal .rd-cart-confirmation-checkout { padding: 15px; }
}

/* Rendsee: confident department-store red, warm stone, precise catalog grids. */
:root {
    --rd-ink: #262722;
    --rd-muted: #65665f;
    --rd-paper: #f4f2ed;
    --rd-surface: #fbfaf7;
    --rd-soft: #eeece5;
    --rd-line: #dedbd2;
    --rd-red: #9b1c2b;
    --rd-red-deep: #781521;
    --rd-font: "DM Sans", sans-serif;
    --rd-display: "Manrope", sans-serif;
    --rd-shadow: 0 16px 40px rgb(35 32 26 / 13%);
}

html { scroll-behavior: smooth; }
body {
    color: var(--rd-ink);
    background: var(--rd-paper);
    font-family: var(--rd-font);
    font-size: 16px;
    line-height: 1.5;
}
a, button, input, select, textarea { font-family: inherit; }
a { color: var(--rd-red); }
a:hover { color: var(--rd-red-deep); }
a, button { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
    outline: 3px solid #bd7d45;
    outline-offset: 3px;
}
.button, .form-label, .form-input, .form-select, .pagination-link, .navBar-action { font-size: 16px; }
.page, .page-content { color: var(--rd-ink); }
.page-heading {
    color: var(--rd-ink);
    font: 500 clamp(22px, 2vw, 24px)/1.3 var(--rd-font) !important;
    letter-spacing: 0;
}
.breadcrumbs, .breadcrumbs .breadcrumb, .breadcrumbs .breadcrumb-label { font-size: 14px; }
/* Product names belong in the page heading, not in a second breadcrumb row. */
body.page-type-product .breadcrumbs {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    margin: 10px 0 16px;
    overflow-x: auto;
    white-space: nowrap;
    line-height: 1.4;
}
body.page-type-product .breadcrumbs::before,
body.page-type-product .breadcrumbs::after { display: none; }
body.page-type-product .breadcrumbs > .breadcrumb { flex: 0 0 auto; float: none; }
body.page-type-product .breadcrumbs > .breadcrumb:last-child { display: none; }
/* Replace the old fixed-width page shell, not just the components inside it. */
body.rendsee-live { padding-top: 0 !important; }
body.rendsee-live .body { margin-top: 0; padding-top: 0; }
body.rendsee-live .body > .container {
    width: min(calc(100% - 48px), 1440px);
    max-width: none;
    margin-inline: auto;
    padding-inline: 0;
}
body.rendsee-live .body > .container:has(> .rd-home) { width: 100%; }
.below_nav_clear { display: none; }

/* Native logo and financial/account/cart controls, rebuilt around isolated rd-* hooks. */
header.header {
    position: relative !important;
    inset: auto !important;
    height: auto !important;
    margin: 0 !important;
    transform: none !important;
    z-index: 50;
    display: grid;
    grid-template-columns: 205px max-content minmax(140px, 1fr) max-content;
    align-items: center;
    gap: clamp(12px, 1.8vw, 25px);
    min-height: 84px;
    padding: 8px clamp(20px, 4vw, 64px);
    color: var(--rd-ink);
    background: var(--rd-surface);
    border-bottom: 1px solid var(--rd-line);
}
header.header::before,
header.header::after,
header.header .navUser::before,
header.header .navUser::after { display: none !important; content: none !important; }
body.rd-menu-open { overflow: hidden; }
body.rd-menu-open header.header { z-index: 90; }
header.header > .mobileMenu-toggle { display: none !important; }
header.header .logo-user-section.container,
header.header #menu-wrapper,
header.header #menu,
header.header .navPages-container,
header.header #menu nav,
header.header .navPages-wider,
header.header .nav-minus-logo,
header.header .navUser,
header.header .navUser-section { display: contents !important; }
header.header .rd-brand {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    max-width: 205px;
    height: 68px;
    margin: 0;
    line-height: 0;
}
header.header .rd-brand > a,
header.header .rd-brand .header-logo-image-container {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
}
header.header .rd-brand .header-logo-image-container::after { display: none; }
header.header .rd-brand img {
    display: block;
    position: static;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    margin: 0;
    object-fit: contain;
    object-position: left center;
    transform: none;
}
header.header > .rd-department-trigger {
    grid-column: 2;
    grid-row: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 52px;
    padding: 10px 7px;
    color: var(--rd-ink);
    background: var(--rd-surface);
    border: 0;
    border-radius: 4px;
    font-size: 19px;
    font-weight: 700;
    cursor: pointer;
}
.rd-hamburger { display: grid; gap: 5px; width: 22px; }
.rd-hamburger i { display: block; height: 2px; width: 22px; background: currentColor; border-radius: 2px; }
header.header > .rd-department-trigger:hover { color: var(--rd-red); }
header.header .rd-header-search {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    width: min(100%, 430px);
    min-width: 0;
    padding-top: 0;
}
header.header.rd-has-balance .rd-header-search { padding-top: 0; }
.rd-header-search form { position: relative; display: flex; margin: 0; }
.rd-header-search .form-input {
    width: 100%;
    height: 44px;
    padding: 0 48px 0 14px;
    color: var(--rd-ink);
    background: var(--rd-paper);
    border: 1px solid var(--rd-line);
    border-radius: 5px;
    font-size: 16px;
}
.rd-header-search .form-input::placeholder { color: #70716b; opacity: 1; }
.rd-header-search-submit {
    position: absolute;
    inset: 4px 4px 4px auto;
    display: grid;
    place-items: center;
    width: 36px;
    padding: 0;
    color: #fffaf6;
    background: var(--rd-red);
    border: 0;
    border-radius: 4px;
    cursor: pointer;
}
.rd-header-search-submit:hover { background: var(--rd-red-deep); }
.rd-header-search-submit svg { width: 18px; height: 18px; fill: currentColor; }
header.header .navUser-section {
    grid-column: 4;
    grid-row: 1;
    display: flex !important;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 14px;
    width: max-content;
    margin: 0;
    padding: 0;
}
header.header .navUser-section::before, header.header .navUser-section::after { display: none; }
header.header .navUser-item--storecredit.desktop {
    display: block;
    float: none;
    flex: 0 0 auto;
    width: auto;
    min-width: 0;
    margin: 0;
    padding: 0;
    align-self: center;
    text-align: right;
    white-space: nowrap;
}
header.header .navUser-item--storecredit .navUser-action {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    min-height: 0;
    line-height: 1.35;
}
header.header .navUser-item--storecredit .navUser-action {
    padding: 7px 10px;
    color: var(--rd-muted);
    background: #fffefa;
    border: 1px solid var(--rd-line);
    border-radius: 6px;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
    text-decoration: none;
}
header.header .rd-balance-label { color: var(--rd-muted); font: 400 12px/1.3 var(--rd-font); }
header.header .rd-balance-value {
    color: var(--rd-ink);
    font: 500 14px/1.3 var(--rd-font);
    font-variant-numeric: tabular-nums lining-nums;
    letter-spacing: 0;
}
header.header .rd-balance-currency { color: var(--rd-muted); font-size: 10px; font-weight: 400; }
header.header .navUser-item--storecredit .navUser-action:hover { border-color: #b9b4aa; }
header.header .navUser-item--storecredit .dropdown-menu,
header.header #quickSearch,
header.header .navUser-item.quicksearch,
header.header .navUser-item--compare,
header.header .gift-certificates,
header.header .navUser-item--currency { display: none !important; }
header.header .navUser .user-icons {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    direction: ltr;
    gap: 15px;
    width: max-content;
    margin: 0;
    padding: 0;
    list-style: none;
}
header.header .rd-user-icons-item { display: block; float: none; width: auto; min-width: 0; margin: 0; padding: 0; }
header.header .user-icons > .navUser-item { float: none; width: auto; min-width: 0; margin: 0; }
header.header .navUser-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 40px;
    padding: 5px;
    color: var(--rd-ink);
    text-decoration: none;
}
header.header .navUser-action:hover { color: var(--rd-red); }
header.header .header-icon { width: 25px; height: 25px; fill: currentColor; }
header.header .navUser-item--account { position: relative; }
header.header .rd-account-trigger,
header.header .rd-cart-trigger { gap: 7px; font-size: 15px; font-weight: 600; white-space: nowrap; }
header.header .navUser-item--account .dropdown-menu {
    display: none;
    position: absolute;
    top: calc(100% + 2px);
    right: 0;
    left: auto;
    width: 255px;
    max-width: calc(100vw - 28px);
    height: auto;
    margin: 0;
    padding: 8px;
    color: var(--rd-ink);
    background: var(--rd-surface);
    border: 1px solid var(--rd-line);
    border-radius: 7px;
    box-shadow: var(--rd-shadow);
    z-index: 100;
}
header.header .navUser-item--account.is-open .dropdown-menu,
header.header .navUser-item--account.rd-account-hover .dropdown-menu { display: block; }
header.header .navUser-item--account .dropdown-menu::before {
    content: "";
    position: absolute;
    top: -10px;
    right: 0;
    left: 0;
    height: 10px;
}
header.header .navUser-item--account .dropdown-menu :is(.navBar, .navBar-section, .navBar-item) {
    display: block;
    float: none;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    list-style: none;
}
header.header .navUser-item--account .dropdown-menu .navBar-action {
    display: flex;
    justify-content: flex-start;
    min-height: 42px;
    padding: 9px 11px;
    border-radius: 4px;
    font-size: 15px;
    text-transform: none;
}
header.header .navUser-item--account .dropdown-menu .navBar-action:hover { background: var(--rd-soft); }
header.header .navUser-item--account .navBar-item.is-active { padding: 9px 11px; }
header.header .navUser-item--account .navUser-or { display: none; }
header.header .countPill { background: var(--rd-red); color: #fff; }
header.header .rd-cart-trigger .countPill {
    display: none;
    position: static;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-width: 22px;
    width: auto;
    height: 22px;
    padding: 0 5px;
    margin: 0;
    border-radius: 999px;
    color: #fff !important;
    font: 600 13px/1 Arial, Helvetica, sans-serif;
    text-align: center;
    text-indent: 0;
}
header.header .rd-cart-trigger .countPill--positive:not(:empty) { display: inline-flex; }
/* Vault's invisible "+" still consumed space and pushed single digits left. */
header.header .rd-cart-trigger .countPill::after { display: none; }
header.header .rd-cart-trigger .countPill.one-hundred-plus::after { display: inline; }

/* Single real category source, accessible as a wide desktop menu or mobile drawer. */
.rd-department-backdrop {
    position: fixed;
    inset: 0;
    z-index: 70;
    background: rgb(32 30 27 / 42%);
    opacity: 0;
    pointer-events: none;
    transition: opacity 180ms ease;
}
.rd-department-panel {
    direction: ltr;
    text-align: left;
    position: absolute;
    top: calc(100% - 2px);
    left: 50%;
    width: min(1100px, calc(100vw - 48px));
    max-height: min(75dvh, 690px);
    overflow: auto;
    padding: 23px 28px 28px;
    color: var(--rd-ink);
    background: var(--rd-surface);
    border: 1px solid var(--rd-line);
    border-radius: 8px;
    box-shadow: var(--rd-shadow);
    transform: translate(-50%, -7px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 160ms ease, transform 160ms ease, visibility 160ms;
    z-index: 80;
}
body.rd-menu-open .rd-department-panel {
    transform: translate(-50%, 0);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
body.rd-menu-open .rd-department-backdrop { opacity: 1; pointer-events: auto; }
.rd-department-heading {
    display: flex;
    align-items: end;
    gap: 14px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--rd-line);
}
.rd-department-heading h2 {
    margin: 0;
    font: 500 20px/1.3 var(--rd-font);
    letter-spacing: -.035em;
}
.rd-department-eyebrow {
    display: block;
    margin-bottom: 5px;
    color: var(--rd-red);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.rd-department-count { margin-left: auto; color: var(--rd-muted); font-size: 14px; }
.rd-department-close {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    padding: 0;
    color: var(--rd-ink);
    background: var(--rd-paper);
    border: 1px solid var(--rd-line);
    border-radius: 50%;
    cursor: pointer;
}
.rd-department-close svg { width: 16px; height: 16px; fill: currentColor; }
.rd-department-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
    gap: 4px 24px;
    padding-top: 9px;
}
.rd-department-group { min-width: 0; border-bottom: 1px solid var(--rd-line); }
.rd-department-row, .rd-subdepartment-row { display: flex; align-items: center; min-width: 0; }
.rd-department-link {
    display: flex;
    align-items: center;
    flex: 1;
    min-width: 0;
    min-height: 47px;
    padding: 6px 8px;
    color: var(--rd-ink);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.25;
    text-decoration: none !important;
}
.rd-category-disclosure {
    display: grid;
    flex: 0 0 34px;
    place-items: center;
    width: 34px;
    height: 34px;
    padding: 0;
    color: var(--rd-muted);
    background: transparent;
    border: 0;
    border-radius: 4px;
    cursor: pointer;
}
.rd-category-disclosure:hover, .rd-category-disclosure[aria-expanded="true"] { color: var(--rd-red); background: var(--rd-soft); }
.rd-category-disclosure svg { width: 14px; height: 14px; fill: currentColor; transition: transform 150ms ease; }
.rd-category-disclosure[aria-expanded="true"] svg { transform: rotate(180deg); }
.rd-department-children,
.rd-department-grandchildren { display: grid; gap: 1px; padding: 2px 0 8px 13px; margin: 0; list-style: none; }
.rd-department-children[hidden], .rd-department-grandchildren[hidden] { display: none !important; }
.rd-department-children li { min-width: 0; }
.rd-department-children a,
.rd-department-grandchildren a {
    display: block;
    flex: 1;
    min-width: 0;
    padding: 6px 8px;
    color: var(--rd-muted);
    border-radius: 3px;
    font-size: 16px;
    line-height: 1.4;
    text-decoration: none !important;
}
.rd-department-children a:hover, .rd-department-grandchildren a:hover { color: var(--rd-red); background: var(--rd-paper); }
.rd-department-link:hover { color: var(--rd-red); background: var(--rd-paper); }
.rd-department-row:has(> .rd-category-disclosure[aria-expanded="true"]) > a,
.rd-subdepartment-row:has(> .rd-category-disclosure[aria-expanded="true"]) > a { color: var(--rd-red); }
.rd-department-link:is(:hover, :focus, :active, :visited) { text-decoration: none !important; }

/* Homepage uses genuine native Stencil product cards in five focused sections. */
.rd-home { display: block; width: 100%; min-height: 60vh; margin: 0; padding: 0; background: var(--rd-paper); }
.rd-home-hero { width: 100%; margin: 0; padding: 0; }
.rd-home-hero img { display: block; width: 100%; max-width: none; height: auto; margin: 0; border: 0; border-radius: 0; }
.rd-home-catalog > .rd-home-section:first-child { margin-top: 0; }
.rd-home-catalog { width: min(calc(100% - 56px), 1320px); padding: 37px 0 70px; margin: 0 auto; }
.rd-home-heading { display: flex; align-items: end; justify-content: space-between; padding-bottom: 17px; border-bottom: 1px solid var(--rd-line); }
.rd-home-heading h1 {
    margin: 0;
    color: var(--rd-ink);
    font: 500 clamp(24px, 2.4vw, 28px)/1.3 var(--rd-font);
    letter-spacing: 0;
}
.rd-home-heading .rd-kicker { margin: 0 0 6px; color: var(--rd-red); font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.rd-home-section { margin-top: 29px; }
.rd-electronics-banner { display: block; margin-top: 24px; }
.rd-electronics-banner img { display: block; width: 100%; height: auto; }
.rd-tcl-banner { display: block; margin-top: 24px; }
.rd-tcl-banner img { display: block; width: 100%; height: auto; }
.rd-home-catalog > .rd-request-banner { margin-top: 60px; }
.rd-home-department + .rd-home-department { margin-top: 39px; }
.rd-home-section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; padding-bottom: 9px; border-bottom: 1px solid var(--rd-line); }
.rd-home-section-heading h2 { margin: 0; color: var(--rd-ink); font: 500 20px/1.3 var(--rd-font); letter-spacing: 0; }
.rd-home-section-heading > a { color: var(--rd-red); font-size: 15px; font-weight: 600; text-decoration: none; }
.rd-home-section-heading > a:hover { text-decoration: underline; }
.rd-department-products { min-height: 0; }
.rd-department-products[aria-busy="true"] { min-height: 280px; }
.rd-department-status { margin: 16px 0; color: var(--rd-muted); font-size: 15px; }
.rd-department-products[data-state="loading"] .rd-department-status { max-width: 160px; color: transparent; background: linear-gradient(90deg, #eae8e1, #f5f3ee, #eae8e1); background-size: 200% 100%; border-radius: 4px; animation: rd-skeleton 1.4s ease infinite; }
.rd-loading-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 15px; margin-top: 15px; }
.rd-loading-grid span { display: block; height: 232px; background: linear-gradient(110deg, #ebe9e2 8%, #f7f5f0 18%, #ebe9e2 33%); background-size: 200% 100%; border: 1px solid var(--rd-line); border-radius: 6px; animation: rd-skeleton 1.4s ease infinite; }
.rd-loading-grid span:nth-child(2) { animation-delay: 100ms; }
.rd-loading-grid span:nth-child(3) { animation-delay: 200ms; }
.rd-loading-grid span:nth-child(4) { animation-delay: 300ms; }
.rd-loading-grid span:nth-child(5) { animation-delay: 400ms; }
@keyframes rd-skeleton { to { background-position: -200% 0; } }
.rd-home .rd-product-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 15px;
    padding: 0;
    margin: 15px 0 0;
    list-style: none;
}
.rd-home .rd-product-grid::before, .rd-home .rd-product-grid::after { display: none; content: none; }
.rd-home .rd-product-grid > .product { float: none; width: auto; min-width: 0; margin: 0; }
.rd-home .card {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 9px 10px 13px;
    background: var(--rd-surface);
    border: 1px solid var(--rd-line);
    border-radius: 6px;
    transition: none;
}
.rd-home .card:hover { transform: none; }
.rd-home .card-figure { margin: 0; }
.rd-home .card-img-container {
    display: grid;
    place-items: center;
    aspect-ratio: 1 / .86;
    overflow: hidden;
    background: #f0eee8;
    border-radius: 4px;
}
.rd-home .card-image { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.rd-home .card-body { display: flex; flex: 1; flex-direction: column; padding: 12px 1px 0; }
.rd-home .card-text[data-test-info-type="brandName"] { margin-bottom: 3px; color: var(--rd-muted); font-size: 13px; }
.rd-home .card-title {
    display: -webkit-box;
    min-height: 45px;
    margin: 0 0 8px;
    overflow: hidden;
    color: var(--rd-ink);
    font: 600 15px/1.45 var(--rd-font);
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.rd-home .card-title a { color: inherit; text-decoration: none; }
.rd-home .card-title a:hover { color: var(--rd-red); }
.rd-home .card-text[data-test-info-type="price"] { margin-top: auto; color: var(--rd-red); font-size: 16px; font-weight: 700; }
.rd-home .card-figcaption { background: rgb(244 242 237 / 94%); }
.rd-home .card-figcaption-button { color: white; background: var(--rd-red); border-color: var(--rd-red); }
.rd-home .card-figcaption-button:hover { background: var(--rd-red-deep); }

/* Native category/search/product views retain their original functional markup. */
.rd-search { padding-top: 12px; }
.rd-search .breadcrumbs { margin: 0 0 8px; }
.rd-search-heading .page-heading { margin: 0 0 14px; font-size: 32px; text-align: left; }
.rd-search-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 24px; padding: 12px 0; border-block: 1px solid var(--rd-line); font-size: 15px; line-height: 1.5; }
.rd-search-toolbar nav { margin: 0; padding: 0; }
.rd-search-toolbar a { color: var(--rd-red); text-decoration: none; }
.rd-search-toolbar a:hover { text-decoration: underline; }
.rd-search-toolbar [data-product-results-toggle] { font-weight: 700; }
.rd-search-links { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; }
.rd-search-links strong { color: var(--rd-ink); font-weight: 600; }
.rd-search-advanced { margin-left: auto; }
.rd-search-results { margin: 16px 0 0; }
.rd-search-results > .page-content { width: 100%; padding: 0; }
.rd-search-results:has(> .page-sidebar) { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 24px; }
.rd-search-results > .page-sidebar { display: block !important; width: 100%; margin: 0; padding: 0; }
.rd-search #product-listing-container { display: block !important; }
.rd-search .actionBar { margin: 0 0 16px; }
.rd-search .actionBar-section { margin-bottom: 0; }
.rd-search-suggestion { margin: 12px 0 0; }
@media (max-width: 767px) {
    .rd-search-heading .page-heading { font-size: 26px; }
    .rd-search-toolbar { gap: 8px 16px; }
    .rd-search-advanced { margin-left: 0; }
    .rd-search-results:has(> .page-sidebar) { grid-template-columns: minmax(0, 1fr); }
}
.productGrid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    padding: 0;
    list-style: none;
}
.productGrid::before, .productGrid::after { display: none; content: none; }
.productGrid > .product { float: none; width: auto; min-width: 0; margin: 0; }
body.rendsee-live .productGrid > li.product {
    float: none !important;
    width: 100% !important;
    max-width: none;
    min-width: 0;
    padding: 0;
}
.productGrid .card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 9px;
    background: var(--rd-surface);
    border: 1px solid var(--rd-line);
    border-radius: 6px;
}
.productGrid .card-img-container { display: grid; place-items: center; aspect-ratio: 1 / .88; background: var(--rd-soft); border-radius: 4px; }
.productGrid .card-image { object-fit: contain; mix-blend-mode: multiply; }
/* Vault's intrinsic-image spacer and absolute sizing must not define a second
   image height underneath the new consistent catalog frames. */
.productGrid .card-figure { margin: 0; }
.productGrid .card-img-container {
    position: relative;
    width: 100%;
    max-width: none;
    overflow: hidden;
    background: #fff;
}
.productGrid .card-img-container::after { display: none; content: none; }
.productGrid .card-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    object-fit: contain;
    mix-blend-mode: normal;
}
.productGrid .card-body { display: flex; flex: 1; flex-direction: column; height: auto; min-height: 0; text-align: left; }
.productGrid .card-title { height: auto; }
.productGrid:not(.rd-product-grid) .card-title { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; min-height: 4.35em; overflow: hidden; }
.productGrid .card-text[data-test-info-type="price"] { margin-top: auto; font-size: 16px; }
.productGrid .card-text[data-test-info-type="price"] > p { margin: 0; }
.rd-category-page { padding-top: 24px; }
.rd-category-page:has(> .page-sidebar) { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 32px; }
.rd-category-page::before, .rd-category-page::after { display: none; }
.rd-category-page > .page-sidebar, .rd-category-page > .page-content { width: 100%; min-width: 0; padding: 0; margin: 0; float: none; }
.rd-category-page .page-heading { margin: 0 0 20px; font-size: 34px; text-align: left; }
.rd-category-page .page-sidebar .navList-action { font-size: 16px; padding-block: 5px; }
.rd-subcategories { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 24px; }
.rd-subcategories a { display: inline-flex; align-items: center; min-height: 38px; padding: 7px 13px; color: var(--rd-ink); background: var(--rd-surface); border: 1px solid var(--rd-line); border-radius: 24px; font-size: 15px; text-decoration: none; }
.rd-subcategories a:hover { border-color: var(--rd-red); color: var(--rd-red); }
.productGrid .card-title { font-size: 15px; line-height: 1.45; }
.productGrid .card-title a { color: var(--rd-ink); text-decoration: none; }
.productGrid .card-title a:hover { color: var(--rd-red); }
.productGrid .card-text[data-test-info-type="price"] { color: var(--rd-red); font-weight: 700; }
.productView {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    grid-template-rows: min-content 1fr;
    column-gap: clamp(30px, 5vw, 72px);
    align-items: start;
    width: min(calc(100% - 48px), 1210px);
    margin: 0 auto 54px;
}
.productView::before, .productView::after { display: none; content: none; }
.productView > .productView-images { grid-column: 1; grid-row: 1 / span 2; }
.productView > .productView-details:nth-of-type(1) { grid-column: 2; grid-row: 1; padding-top: 8px; }
.productView > .productView-details:nth-of-type(3) { grid-column: 2; grid-row: 2; }
.productView > .productView-details, .productView > .productView-images { float: none; width: 100%; min-width: 0; padding-inline: 0; }
.productView-images .productView-image { min-height: 390px; overflow: hidden; background: var(--rd-surface); border: 1px solid var(--rd-line); border-radius: 7px; }
.productView .productView-image--default { object-fit: contain; }
.productView-title { color: var(--rd-ink); font: 400 clamp(20px, 1.7vw, 24px)/1.3 Arial, Helvetica, sans-serif; letter-spacing: 0; }
.productView-price, .productView-price .price, .productView-price .login-for-pricing { color: var(--rd-red); }
.productView-price .price {
    color: #111;
    font: 400 32px/1.15 Arial, Helvetica, sans-serif;
}
.productView-price .rd-listing-money { font-size: 32px; line-height: 1.15; }
.productView-price { margin: 0 0 16px; }
.productView-price :is(.price--rrp, .price--non-sale, .price-section--minor) .rd-listing-money { font-size: 16px; }
.productView .rd-product-identifiers { margin: 8px 0 12px; padding: 0; border: 0; }
.productView .rd-product-identifiers:not(:has(dt)) { display: none; }
.productView .rd-product-identifiers .line-item-details { display: flex; align-items: baseline; gap: 8px; margin: 0 0 4px; }
.productView .rd-product-identifiers :is(dt, dd) {
    float: none;
    width: auto;
    margin: 0;
    padding: 0;
    color: var(--rd-muted);
    font: 400 13px/1.5 var(--rd-font);
    letter-spacing: 0;
    text-transform: none;
    overflow-wrap: anywhere;
}
.productView .rd-product-identifiers dt { min-width: 42px; max-width: 45%; font-weight: 500; }
.productView .rd-product-identifiers dd { flex: 1; min-width: 0; }
.productView-price :is(.price--rrp, .price--non-sale, .price-section--minor .price) { font-size: 16px; }
.productView-brand a, .productView-reviewLink a { color: var(--rd-red); }
.rd-product-overview {
    padding-top: 18px;
    margin-top: 22px;
    border-top: 1px solid var(--rd-line);
    color: var(--rd-ink);
    font: 400 15px/1.6 var(--rd-font);
    overflow-wrap: anywhere;
}
.rd-product-overview :is(h1, h2, h3, h4) {
    margin: 0 0 10px;
    font: 500 17px/1.4 var(--rd-font);
    letter-spacing: 0;
}
.rd-product-overview p { margin: 0 0 12px; font: inherit; }
.rd-product-overview :last-child { margin-bottom: 0; }
.rd-product-overview img { max-width: 100%; height: auto; }
.rd-product-overview table { max-width: 100%; display: block; overflow-x: auto; }
.productView-options #form-action-addToCart {
    appearance: none;
    -webkit-appearance: none;
    min-width: 180px;
    max-width: 100%;
    min-height: 46px;
    padding: 12px 24px;
    color: #fff !important;
    background: var(--rd-red) !important;
    border: 1px solid var(--rd-red) !important;
    border-radius: 4px !important;
    font: 500 14px/1.4 var(--rd-font) !important;
    text-transform: none !important;
    letter-spacing: 0;
    box-shadow: none;
}
.productView-options #form-action-addToCart:is(:hover, :focus, :active) {
    background: var(--rd-red-deep) !important;
    border-color: var(--rd-red-deep) !important;
}
.productView-options #form-action-addToCart[disabled] {
    opacity: .55;
    cursor: not-allowed;
}
.productView-info { border-color: var(--rd-line); }
.productView-info-name { color: var(--rd-muted); }
.productView-options .form-input, .productView-options select, .productView-options textarea,
.cart .form-input, .cart select {
    color: var(--rd-ink);
    background: var(--rd-surface);
    border-color: var(--rd-line);
    border-radius: 4px;
}
/* Vault hard-codes blue with !important; override it for native action buttons. */
body.rendsee-live .button:not(.button--icon) {
    color: var(--rd-red) !important;
    background: transparent !important;
    border-color: var(--rd-red) !important;
    border-radius: 4px;
    font: 500 14px/1.4 var(--rd-font);
}
body.rendsee-live .button.button--primary {
    color: #fff !important;
    background: var(--rd-red) !important;
    border-color: var(--rd-red) !important;
}
body.rendsee-live .button.button--primary:is(:hover, :focus, :active) {
    color: #fff !important;
    background: var(--rd-red-deep) !important;
    border-color: var(--rd-red-deep) !important;
}
body.rendsee-live .button[disabled] { opacity: .55; cursor: not-allowed; }

/* Cart, account and native forms use a shared warm retailer surface. */
[data-cart], .form, .account { color: var(--rd-ink); }
.cart { color: var(--rd-ink); background: var(--rd-surface); border-color: var(--rd-line); }
.cart-header, .cart-header th { color: #4f504a; background: var(--rd-soft); }
.cart-item { border-color: var(--rd-line); }
.cart-item-image, .cart-item-fixed-image { padding: 5px; background: var(--rd-surface); border: 1px solid var(--rd-line); border-radius: 4px; }
.cart-item-name__label { color: var(--rd-ink); font-weight: 650; }
.cart-item-name__label:hover, .cart-remove:hover { color: var(--rd-red); }
.cart-total, .cart-total-grandTotal { border-color: var(--rd-line); }
.cart-total-grandTotal { color: var(--rd-red); font-weight: 700; }
.page-content[data-cart] { width: min(calc(100% - 48px), 1190px); margin: 0 auto; }
table.cart { border-collapse: separate; border-spacing: 0 9px; }
.page-content[data-cart] > .breadcrumbs { margin-bottom: 26px; }
.page-content[data-cart] > [data-cart-page-title] {
    margin: 0 0 14px;
    padding: 0;
    text-align: left;
}
.page-content[data-cart] > [data-cart-status] { margin: 0; padding: 0; }
.page-content[data-cart] table.cart {
    margin: 0 0 24px;
    background: transparent;
    border-spacing: 0;
    border: 1px solid var(--rd-line);
    border-radius: 8px;
}
.page-content[data-cart] .cart-header th {
    padding: 14px 18px;
    color: var(--rd-muted);
    background: var(--rd-soft);
    border-bottom: 1px solid var(--rd-line);
    font: 500 13px/1.4 var(--rd-font);
    letter-spacing: 0;
    text-transform: none;
}
.page-content[data-cart] .cart-header th:first-child { border-radius: 8px 0 0 0; }
.page-content[data-cart] .cart-header th:last-child { border-radius: 0 8px 0 0; }
@media (min-width: 801px) {
    .page-content[data-cart] .cart-item > td {
        padding: 18px;
        border: 0;
        border-bottom: 1px solid var(--rd-line);
        border-radius: 0;
        vertical-align: middle;
    }
    .page-content[data-cart] .cart-item:last-child > td { border-bottom: 0; }
    .page-content[data-cart] .cart-item:last-child > td:first-child { border-radius: 0 0 0 8px; }
    .page-content[data-cart] .cart-item:last-child > td:last-child { border-radius: 0 0 8px 0; }
}
@media (max-width: 800px) {
    .page-content[data-cart] table.cart { border: 0; border-radius: 0; }
}
.cart-header th { border: 0; font-size: 14px; letter-spacing: .04em; text-transform: uppercase; }
.cart-item { background: var(--rd-surface); }
.cart-item > td { border-top: 1px solid var(--rd-line); border-bottom: 1px solid var(--rd-line); }
.cart-item > td:first-child { border-left: 1px solid var(--rd-line); border-radius: 6px 0 0 6px; }
.cart-item > td:last-child { border-right: 1px solid var(--rd-line); border-radius: 0 6px 6px 0; }
.cart-totals { width: min(100%, 470px); padding: 14px 18px; margin: 8px 0 0 auto; background: var(--rd-surface); border: 1px solid var(--rd-line); border-radius: 6px; }
.cart-actions { justify-content: flex-end; margin-top: 18px; }
.rendsee-account { min-height: 70vh; padding: 36px 24px 72px; color: var(--rd-ink); background: var(--rd-paper); }
.rendsee-account .rd-account-heading, .rendsee-account .rd-account-layout { width: min(100%, 1190px); margin-inline: auto; }
.rendsee-account .rd-account-heading { display: flex; align-items: end; justify-content: space-between; gap: 22px; padding-bottom: 22px; border-bottom: 1px solid var(--rd-line); }
.rendsee-account .rd-account-kicker { margin: 0 0 7px; color: var(--rd-red); font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.rendsee-account .rd-account-heading h1 { margin: 0; color: var(--rd-ink); font: 500 clamp(22px, 2vw, 24px)/1.3 var(--rd-font); letter-spacing: 0; }
.rendsee-account .rd-account-layout { display: grid; grid-template-columns: minmax(190px, .62fr) minmax(0, 1.8fr); gap: 22px; align-items: start; padding-top: 23px; }
.rendsee-account .rd-account-nav, .rendsee-account .rd-account-panel, .rendsee-account .rd-account-orders, .rendsee-account .rd-account-profile { background: var(--rd-surface); border: 1px solid var(--rd-line); border-radius: 7px; }
.rendsee-account .rd-account-nav { padding: 14px; }
.rendsee-account .rd-account-nav :is(ul, ol) { display: flex; flex-direction: column; gap: 3px; padding: 0; margin: 0; list-style: none; }
.rendsee-account .rd-account-nav :is(a, button) { display: flex; align-items: center; width: 100%; min-height: 42px; padding: 8px 10px; color: #41423d; background: transparent; border: 0; border-radius: 4px; font-size: 16px; text-align: left; text-decoration: none; }
.rendsee-account .rd-account-nav :is(a, button):hover, .rendsee-account .rd-account-nav :is(a, button)[aria-current="page"], .rendsee-account .rd-account-nav :is(a, button).is-active { color: var(--rd-red); background: var(--rd-soft); }
.rendsee-account .rd-account-content { display: grid; gap: 14px; min-width: 0; }
.rendsee-account .rd-account-panel, .rendsee-account .rd-account-profile, .rendsee-account .rd-account-orders { padding: 21px; }
.rendsee-account .rd-account-credit { background: #ede6dd; }
.rendsee-account .rd-account-panel h2, .rendsee-account .rd-account-orders h2 { margin: 0; color: var(--rd-ink); font: 500 20px/1.3 var(--rd-font); }
.rendsee-account .rd-account-balance-row { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; padding-top: 16px; margin-top: 14px; border-top: 1px solid rgb(75 78 68 / 15%); color: var(--rd-muted); }
.rendsee-account .rd-account-amount { color: var(--rd-ink); font: 500 22px/1.25 var(--rd-font); }
.rendsee-account .rd-account-unit { color: var(--rd-red); font-size: .5em; font-weight: 700; }
.rendsee-account .rd-account-profile dl { display: grid; grid-template-columns: minmax(100px, .55fr) minmax(0, 1.45fr); margin: 15px 0 0; }
.rendsee-account .rd-account-profile dt, .rendsee-account .rd-account-profile dd { min-width: 0; padding: 11px 0; margin: 0; border-top: 1px solid var(--rd-line); overflow-wrap: anywhere; }
.rendsee-account .rd-account-profile dt { color: var(--rd-muted); }
.rendsee-account .rd-account-profile dd { font-weight: 600; }
.rendsee-account a { color: var(--rd-red); }
.form-field .form-input, .form-field select, .form-field textarea { border-color: var(--rd-line); border-radius: 4px; background: var(--rd-surface); }

/* Preserve the native footer links/forms/scripts in the same retail system. */
.newsletter-subscription-section:not(:has(form)) { display: none; }
.newsletter-subscription-section:has(form) { background: var(--rd-soft); padding: 28px 24px; }
.newsletter-subscription-section .newsletter { max-width: 1320px; margin: 0 auto; }
footer.footer { margin-top: 40px; padding: 42px 0 24px; background: #292925; color: #f3f0e9; border-top: 0; }
footer.footer > .container { width: min(calc(100% - 48px), 1320px); max-width: none; }
footer.footer .footer-info {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 28px;
    margin: 0;
}
footer.footer .footer-info::before, footer.footer .footer-info::after { display: none; }
footer.footer .footer-info-col { float: none; width: auto; margin: 0; padding: 0; }
footer.footer .footer-info-heading { margin: 0 0 16px; color: #fff; font-size: 17px; font-weight: 700; }
footer.footer .footer-info-list { margin: 0; padding: 0; list-style: none; }
footer.footer .footer-info-list li { margin-bottom: 8px; }
footer.footer a, footer.footer .footer-copyright, footer.footer p, footer.footer address { color: #dfddd5; font-size: 15px; line-height: 1.6; }
footer.footer a { text-decoration: none; }
footer.footer a:hover { color: #fff; text-decoration: underline; }
footer.footer .footer-copyright { margin-top: 24px; }

@media (min-width: 1180px) {
    header.header { grid-template-columns: 225px max-content minmax(120px, 1fr) max-content; }
    header.header .rd-brand { max-width: 225px; height: 68px; }
}
@media (max-width: 1010px) {
    header.header { grid-template-columns: 158px max-content minmax(120px, 1fr) max-content; gap: 11px; padding-inline: 18px; }
    header.header .rd-brand { height: 66px; }
    header.header > .rd-department-trigger { font-size: 16px; gap: 8px; }
    .rd-department-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .rd-home .rd-product-grid, .rd-loading-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .rd-loading-grid span:nth-child(n+4) { display: none; }
    .productGrid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 761px) and (max-width: 850px) {
    header.header .rd-account-label, header.header .rd-cart-label { display: none; }
    header.header .navUser-section { gap: 8px; }
}
@media (max-width: 760px) {
    body.rendsee-live { padding-top: 0 !important; }
    header.header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 0 12px;
        min-height: 0;
        padding: 9px 15px 11px;
    }
    header.header .rd-brand {
        grid-column: 1;
        grid-row: 1;
        width: 150px;
        max-width: 150px;
        height: 52px;
        margin-left: 44px;
    }
    header.header .rd-header-search { grid-column: 1; grid-row: 2; justify-self: stretch; width: 100%; padding-top: 8px; }
    header.header .navUser-section { display: contents !important; }
    header.header .rd-user-icons-item { grid-column: 2; grid-row: 1; justify-self: end; }
    header.header .rd-balance-item { grid-column: 2; grid-row: 2; justify-self: end; align-self: center; margin-top: 8px; }
    header.header:not(.rd-has-balance) .rd-header-search { grid-column: 1 / -1; }
    header.header .navUser-item--storecredit.desktop .navUser-action { font-size: 11px; }
    header.header .navUser .user-icons { gap: 8px; }
    header.header .user-icons > .navUser-item { display: block !important; }
    header.header .navUser-item--account > .rd-account-trigger { min-width: 38px; }
    header.header .rd-account-trigger .rd-account-label,
    header.header .rd-cart-trigger .rd-cart-label { display: none; }
    header.header .rd-header-search .form-input { height: 42px; }
    header.header > .rd-department-trigger {
        position: absolute;
        grid-area: auto;
        top: 15px;
        left: 13px;
        right: auto;
        bottom: auto;
        z-index: 2;
        width: 44px;
        min-width: 44px;
        min-height: 44px;
        padding: 7px;
        background: transparent;
    }
    header.header > .rd-department-trigger .rd-department-label { display: none; }
    header.header > .rd-department-trigger .rd-hamburger { width: 21px; }
    .rd-department-panel {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: auto;
        width: min(430px, calc(100vw - 42px));
        max-height: 100dvh;
        padding: 22px 18px;
        border-radius: 0;
        transform: translateX(100%);
        opacity: 1;
        visibility: hidden;
        transition: transform 180ms ease, visibility 180ms;
    }
    body.rd-menu-open .rd-department-panel { transform: translateX(0); visibility: visible; }
    .rd-department-grid { grid-template-columns: 1fr; }
    .rd-department-heading { align-items: center; }
    .rd-department-heading h2 { font-size: 20px; }
    .rd-department-count { display: none; }
    .rd-home-catalog { width: min(calc(100% - 32px), 680px); padding-top: 28px; }
    .rd-home .rd-product-grid, .rd-loading-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
    .rd-loading-grid span { height: 200px; }
    .rd-loading-grid span:nth-child(n+3) { display: none; }
    .rd-home .card { padding: 7px 7px 10px; }
    .rd-home .card-title { min-height: 44px; font-size: 15px; }
    .rd-category-page:has(> .page-sidebar) { display: block; }
    .rd-category-page > .page-sidebar { margin-bottom: 20px; }
    .rd-category-page .page-heading { font-size: 28px; }
    .rd-home-section { margin-top: 25px; }
    .rd-home-department + .rd-home-department { margin-top: 31px; }
    .productGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
    .productView { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; row-gap: 18px; width: min(calc(100% - 32px), 660px); }
    .productView > .productView-images { grid-column: 1; grid-row: 1; }
    .productView > .productView-details:nth-of-type(1) { grid-column: 1; grid-row: 2; padding-top: 0; }
    .productView > .productView-details:nth-of-type(3) { grid-column: 1; grid-row: 3; }
    .productView-images .productView-image { min-height: min(88vw, 410px); }
    .rendsee-account { padding: 26px 17px 52px; }
    .rendsee-account .rd-account-layout { grid-template-columns: 1fr; }
    .page-content[data-cart] { width: calc(100% - 32px); }
}
@media (max-width: 800px) {
    /* Native mobile captions must participate in card flow, never overlay it. */
    body.rendsee-live .productGrid .card-figure { flex-shrink: 0; }
    body.rendsee-live .productGrid .card-body { min-height: min-content; }
    body.rendsee-live .productGrid .card-figcaption.desktop { display: none !important; }
    body.rendsee-live .productGrid .card-figcaption.mobile {
        display: block !important;
        position: static !important;
        inset: auto !important;
        transform: none !important;
        flex: 0 0 auto;
        width: 100%;
        height: auto;
        min-height: 0;
        margin: 0;
        padding: 12px 0 0;
        opacity: 1;
        pointer-events: auto;
    }
    body.rendsee-live .productGrid .card-figcaption.mobile .card-figcaption-body {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 7px;
        position: static !important;
        inset: auto !important;
        transform: none !important;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
    }
    body.rendsee-live .productGrid .card-figcaption.mobile .button {
        display: flex;
        align-items: center;
        justify-content: center;
        position: static !important;
        width: 100%;
        min-height: 38px;
        margin: 0;
        padding: 7px;
        color: var(--rd-ink);
        background: var(--rd-surface);
        border: 1px solid var(--rd-line);
        border-radius: 4px;
        font-size: 14px;
        font-style: normal;
        text-decoration: none;
    }
}
@media (max-width: 520px) {
    .rd-home-catalog { width: calc(100% - 26px); padding-top: 23px; }
    .rd-home-heading h1 { font-size: 24px; }
    .rd-home-section-heading h2 { font-size: 20px; }
    .rd-home .card-title { font-size: 15px; min-height: 44px; }
    .rd-home .card-text[data-test-info-type="price"] { font-size: 15px; }
    .productView { width: calc(100% - 26px); margin-bottom: 35px; }
    .cart-totals { width: 100%; }
    table.cart { border-spacing: 0; }
    .cart-item > td:first-child, .cart-item > td:last-child { border-radius: 0; }
    .cart-item > td:first-child { border-left: 0; }
    .cart-item > td:last-child { border-right: 0; }
    .cart-item { border-top: 1px solid var(--rd-line); border-bottom: 1px solid var(--rd-line); }
    .rendsee-account { padding-inline: 13px; }
    .rendsee-account .rd-account-heading { align-items: start; flex-direction: column; }
    .rendsee-account .rd-account-panel, .rendsee-account .rd-account-profile, .rendsee-account .rd-account-orders { padding: 16px; }
}
/* Product cards remain static; purchasing and options stay on the product page. */
body.rendsee-live .card .card-figcaption { display: none !important; }
body.rendsee-live .card,
body.rendsee-live .card:hover,
body.rendsee-live .card .card-image {
    transform: none !important;
    transition: none !important;
}
body.rendsee-live .card .card-title a:hover { color: var(--rd-ink); }
/* Typography-only update from the user's title/price sample. Keep the existing
   card frames, imagery, title limits and native purchasing behavior intact. */
body.rendsee-live :is(.card .card-title, .listItem-title, .cart-item-name__label) {
    color: #111 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    letter-spacing: 0;
}
body.rendsee-live :is(.card .card-title a, .listItem-title a) {
    color: #111 !important;
    font: inherit;
    text-decoration: none;
}
/* Reserve exactly two lines, then clamp the link itself. Legacy minimum
   heights otherwise expose the top of a third line below the ellipsis. */
body.rendsee-live :is(.card .card-title, .listItem-title) {
    display: block !important;
    flex: 0 0 auto;
    height: 2.6em !important;
    min-height: 2.6em !important;
    max-height: 2.6em !important;
    padding: 0 !important;
    overflow: hidden !important;
}
body.rendsee-live :is(.card .card-title a, .listItem-title a) {
    display: -webkit-box !important;
    max-height: 2.6em;
    padding: 0;
    overflow: hidden !important;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2 !important;
}
body.rendsee-live .card [data-test-info-type="brandName"] {
    min-height: 18px;
    margin: 0 0 4px;
    line-height: 18px;
}
body.rendsee-live .card .card-body:not(:has([data-test-info-type="brandName"]))::before {
    display: block;
    flex: 0 0 18px;
    height: 18px;
    margin-bottom: 4px;
    content: "";
}
body.rendsee-live :is(.card [data-test-info-type="price"], .listItem-price, .cart-item-value) {
    color: #111 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 22px !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
    letter-spacing: 0;
}
body.rendsee-live :is(.card [data-test-info-type="price"], .listItem-price) .price {
    color: inherit;
    font: inherit;
}
.rd-listing-money { display: inline-flex; align-items: flex-start; white-space: nowrap; font: inherit; color: inherit; }
.rd-listing-money__whole { font: inherit; line-height: 1; }
.rd-listing-money :is(.rd-listing-money__symbol, .rd-listing-money__cents) {
    position: static;
    top: auto;
    align-self: flex-start;
    margin-top: .08em;
    font-size: 55%;
    font-weight: 400;
    line-height: 1;
}
.rd-listing-money__symbol { margin-right: 1px; }
.rd-listing-money__cents { margin-left: 1px; }
/* Login notices are not prices and should not become oversized. */
body.rendsee-live .card [data-test-info-type="price"] :is(a, p[translate]) {
    color: #111;
    font: 400 15px/1.3 Arial, Helvetica, sans-serif;
}

/* Product-page recommendations use native catalog cards, not the legacy
   centered Slick carousel. Their headings follow the detail content edge. */
body.rendsee-live .related-product-section { clear: both; margin-top: 0; }
body.rendsee-live .rd-product-recommendations {
    width: min(calc(100% - 48px), 1210px);
    margin: 36px auto 0;
}
body.rendsee-live .rd-product-recommendations--similar { margin-top: 34px; }
body.rendsee-live .rd-product-recommendations-heading {
    padding: 0 0 12px;
    margin: 0 0 17px;
    color: var(--rd-ink);
    border-bottom: 1px solid var(--rd-line);
    font: 500 20px/1.3 var(--rd-font);
    letter-spacing: -.025em;
    text-align: left;
}
body.rendsee-live .rd-product-recommendations .productGrid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 15px;
    margin: 0;
}
body.rendsee-live .rd-product-recommendations .productGrid > li.product { margin: 0 !important; }
@media (max-width: 1010px) {
    body.rendsee-live .rd-product-recommendations .productGrid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    body.rendsee-live .rd-product-recommendations { width: min(calc(100% - 32px), 660px); margin-top: 29px; }
    body.rendsee-live .rd-product-recommendations .productGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
    body.rendsee-live .rd-product-recommendations-heading { font-size: 20px; }
}
@media (max-width: 520px) {
    body.rendsee-live .rd-product-recommendations { width: calc(100% - 26px); }
}

@media (max-width: 600px) {
    body.rendsee-live :is(.card .card-title, .listItem-title, .cart-item-name__label) { font-size: 14px !important; }
    body.rendsee-live :is(.card [data-test-info-type="price"], .listItem-price, .cart-item-value) { font-size: 20px !important; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

