:root {
    --ps-product-hero-bg: #ffffff;
    --ps-product-page-bg: #ffffff;
    --ps-product-heading: #111111;
    --ps-product-text: #2c2622;
    --ps-product-muted: #a39a91;
    --ps-product-gallery-bg:
        radial-gradient(circle at 20% 18%, rgba(255, 227, 190, 0.82), rgba(255, 255, 255, 0) 35%),
        radial-gradient(circle at 82% 88%, rgba(248, 214, 174, 0.68), rgba(255, 255, 255, 0) 34%),
        linear-gradient(180deg, #fffaf5 0%, #fff4ea 100%);
    --ps-product-gallery-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75), 0 22px 60px rgba(66, 20, 0, 0.08);
    --ps-product-thumb-border: #ece2d6;
    --ps-product-thumb-bg: #fffaf5;
    --ps-product-trigger-bg: #ffffff;
    --ps-product-trigger-color: #111111;
    --ps-product-support-bg: #fff7f1;
    --ps-product-support-border: #f1dfd2;
    --ps-product-support-text: #3c332d;
    --ps-product-support-label: #8a7d74;
    --ps-product-support-chip-bg: #111111;
    --ps-product-support-chip-border: #111111;
    --ps-product-support-chip-color: #ffffff;
    --ps-product-price: #111111;
    --ps-product-meta-border: #ece4dc;
    --ps-product-meta-text: #6f635a;
    --ps-product-link: #111111;
    --ps-product-qty-bg: #ffffff;
    --ps-product-qty-border: #d9c9ba;
    --ps-product-qty-button: #4b423d;
    --ps-product-qty-input: #111111;
    --ps-product-toggle-section-bg: #ffffff;
    --ps-product-toggle-card-bg: #fff7f1;
    --ps-product-toggle-card-border: #f1dfd2;
    --ps-product-toggle-caption: #8a7d74;
    --ps-product-toggle-title: #111111;
    --ps-product-toggle-label: #6f635a;
    --ps-product-toggle-label-active-bg: #111111;
    --ps-product-toggle-label-active-color: #ffffff;
    --ps-product-toggle-switch-bg: linear-gradient(180deg, #ff2b3a 0%, #d70311 100%);
    --ps-product-toggle-switch-border: #c10310;
    --ps-product-toggle-thumb: #ffffff;
    --ps-product-toggle-shadow: 0 20px 34px rgba(215, 3, 17, 0.15);
}

html[data-ps-single-product-theme="dark"],
html[data-ps-site-theme="dark"][data-ps-site-theme-context="product"] {
    --ps-product-hero-bg: #0f1215;
    --ps-product-page-bg: #0f1215;
    --ps-product-heading: #f5efe7;
    --ps-product-text: #ddd1c4;
    --ps-product-muted: #998f86;
    --ps-product-gallery-bg:
        radial-gradient(circle at 20% 18%, rgba(180, 112, 67, 0.22), rgba(15, 18, 21, 0) 35%),
        radial-gradient(circle at 82% 88%, rgba(150, 88, 55, 0.18), rgba(15, 18, 21, 0) 34%),
        linear-gradient(180deg, #1b2025 0%, #13181c 100%);
    --ps-product-gallery-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 26px 60px rgba(0, 0, 0, 0.4);
    --ps-product-thumb-border: #2b3137;
    --ps-product-thumb-bg: #181d21;
    --ps-product-trigger-bg: #f5efe7;
    --ps-product-trigger-color: #111111;
    --ps-product-support-bg: #171c20;
    --ps-product-support-border: #2b3137;
    --ps-product-support-text: #ddd1c4;
    --ps-product-support-label: #998f86;
    --ps-product-support-chip-bg: #f5efe7;
    --ps-product-support-chip-border: #f5efe7;
    --ps-product-support-chip-color: #111111;
    --ps-product-price: #ffffff;
    --ps-product-meta-border: #2b3137;
    --ps-product-meta-text: #b2a79d;
    --ps-product-link: #f5efe7;
    --ps-product-qty-bg: #ffffff;
    --ps-product-qty-border: #64574d;
    --ps-product-qty-button: #231f1d;
    --ps-product-qty-input: #111111;
    --ps-product-toggle-section-bg: #0f1215;
    --ps-product-toggle-card-bg: #171c20;
    --ps-product-toggle-card-border: #2b3137;
    --ps-product-toggle-caption: #998f86;
    --ps-product-toggle-title: #f5efe7;
    --ps-product-toggle-label: #bdb2a8;
    --ps-product-toggle-label-active-bg: #f5efe7;
    --ps-product-toggle-label-active-color: #111111;
    --ps-product-toggle-switch-bg: linear-gradient(180deg, #ff2b3a 0%, #d70311 100%);
    --ps-product-toggle-switch-border: #ff4554;
    --ps-product-toggle-thumb: #ffffff;
    --ps-product-toggle-shadow: 0 24px 40px rgba(0, 0, 0, 0.3);
}

.ps-product-hero {
    margin-top: 136px;
    padding: 34px 0 18px;
    background: var(--ps-product-hero-bg);
}

.ps-product-hero__inner,
.ps-product-page__inner {
    width: min(1150px, calc(100% - 48px));
    margin: 0 auto;
}

.ps-product-hero .breadcrumbs-wrapper {
    margin-bottom: 18px;
}

.ps-product-hero .breadcrumb,
.ps-product-hero .breadcrumb a {
    color: var(--ps-product-muted);
    font-size: 13px;
    line-height: 1.5;
}

.ps-product-hero__title {
    margin: 0;
    color: var(--ps-product-heading);
    font-family: MontserratS, sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    line-height: 1.04;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.ps-product-hero .ps-product-badges {
    justify-content: center;
    margin: 18px auto 0;
}

.ps-product-page {
    padding: 10px 0 80px;
    background: var(--ps-product-page-bg);
}

.ps-product-page__inner {
    display: grid;
    gap: 56px;
}

.ps-product-main .woocommerce {
    width: 100%;
}

.ps-product-page .single-product div.product {
    display: grid;
    grid-template-columns: minmax(340px, 0.98fr) minmax(430px, 1fr);
    gap: clamp(34px, 5vw, 64px);
    align-items: start;
}

.ps-product-page .single-product div.product > .woocommerce-product-gallery,
.ps-product-page .single-product div.product > .images {
    grid-column: 1;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
}

.ps-product-page .woocommerce-product-gallery {
    position: relative;
}

.ps-product-page .woocommerce-product-gallery__image a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: clamp(360px, 42vw, 560px);
    padding: clamp(18px, 2vw, 30px);
    border-radius: 32px;
    background: var(--ps-product-gallery-bg);
    box-shadow: var(--ps-product-gallery-shadow);
}

.ps-product-page .woocommerce-product-gallery__image img {
    display: block;
    width: min(100%, 540px) !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto;
    object-fit: contain;
}

.ps-product-page .woocommerce-product-gallery__trigger {
    top: 18px !important;
    right: 18px !important;
    background: var(--ps-product-trigger-bg) !important;
    color: var(--ps-product-trigger-color) !important;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.12);
}

.ps-product-page .flex-control-thumbs {
    display: flex;
    gap: 12px;
    margin: 18px 0 0 !important;
    padding: 0 !important;
}

.ps-product-page .flex-control-thumbs li {
    float: none !important;
    width: 72px !important;
    margin: 0 !important;
    list-style: none;
}

.ps-product-page .flex-control-thumbs img {
    border: 1px solid var(--ps-product-thumb-border);
    border-radius: 16px;
    background: var(--ps-product-thumb-bg);
}

.ps-product-page .single-product div.product > .summary,
.ps-product-page .single-product div.product > .entry-summary {
    grid-column: 2;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding-top: clamp(18px, 2.2vw, 32px);
    display: flex !important;
    flex-direction: column;
    gap: 18px;
    align-content: start;
    justify-content: start;
    color: var(--ps-product-text);
}

.ps-product-page .single-product div.product > .summary .product_title,
.ps-product-page .single-product div.product > .entry-summary .product_title {
    display: none !important;
}

.ps-product-page .ps-product-description {
    grid-area: lead;
    max-width: 620px;
    color: var(--ps-product-text);
}

.ps-product-page .ps-product-description p {
    margin: 0;
    color: var(--ps-product-text);
    font-size: clamp(17px, 1.35vw, 21px);
    line-height: 1.66;
    letter-spacing: 0.01em;
}

.ps-product-page .ps-product-supporting-meta {
    grid-area: support;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: flex-start;
    max-width: 620px;
}

.ps-product-page .ps-product-supporting-meta__item {
    padding: 14px 18px;
    border: 1px solid var(--ps-product-support-border);
    border-radius: 18px;
    background: var(--ps-product-support-bg);
    color: var(--ps-product-support-text);
}

.ps-product-page .ps-product-supporting-meta__item--weight,
.ps-product-page .ps-product-supporting-meta__item--param {
    display: inline-flex;
    width: max-content;
    max-width: 100%;
    align-items: center;
    gap: 10px;
    padding: 11px 15px;
    border-radius: 14px;
    font-family: MontserratS, sans-serif;
    font-size: 15px;
    letter-spacing: 0;
}

.ps-product-page .ps-product-supporting-meta__item--note p {
    margin: 0;
    font-size: 15px;
    line-height: 1.62;
}

.ps-product-page .ps-product-supporting-meta__label {
    display: inline-flex;
    align-items: center;
    color: var(--ps-product-support-label);
    font-family: MontserratS, sans-serif;
    font-size: 12px;
    line-height: 1;
    text-transform: uppercase;
}

.ps-product-page .ps-product-supporting-meta__value {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    color: var(--ps-product-support-text);
    font-family: MontserratS, sans-serif;
    font-size: 15px;
    line-height: 1;
}

.ps-product-page .ps-product-purchase-row {
    grid-area: purchase;
    --ps-product-qty-width: 132px;
    --ps-product-cta-min-width: 168px;
    display: grid;
    grid-template-columns: var(--ps-product-qty-width) minmax(var(--ps-product-cta-min-width), max-content) max-content;
    grid-template-areas: "cart cart price";
    gap: 10px 14px;
    align-items: center;
    width: max-content;
    max-width: 100%;
    margin-top: 0;
}

.ps-product-page .ps-product-purchase-row--with-weight {
    grid-template-areas:
        ". support ."
        "cart cart price";
    align-items: end;
}

.ps-product-page .ps-product-purchase-row--with-supporting-meta {
    margin-top: 8px;
}

.ps-product-page .ps-product-purchase-row__support {
    grid-area: support;
    align-self: end;
    justify-self: center;
    min-width: 0;
}

.ps-product-page .ps-product-supporting-meta--purchase {
    width: max-content;
    max-width: none;
}

.ps-product-page .ps-product-purchase-row__price {
    grid-area: price;
    align-self: center;
    justify-self: start;
    min-width: 0;
    transform: translateY(8px);
}

.ps-product-page .ps-product-purchase-row__price .price {
    margin: 0 !important;
    color: var(--ps-product-price);
    font-family: MontserratS, sans-serif !important;
    font-size: clamp(26px, 2.25vw, 32px) !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    white-space: nowrap;
}

.ps-product-page .ps-product-purchase-row__price .price del {
    margin-right: 10px;
    opacity: 0.45;
    font-size: 0.62em;
}

.ps-product-page .ps-product-purchase-row__price .price ins {
    text-decoration: none;
}

.ps-product-page .ps-product-purchase-row > form.cart {
    grid-area: cart;
    display: grid !important;
    grid-template-columns: var(--ps-product-qty-width) minmax(var(--ps-product-cta-min-width), max-content);
    align-items: center;
    justify-content: start;
    gap: 12px;
    width: auto !important;
    margin: 0 !important;
    justify-self: start;
}

.ps-product-page .ps-product-purchase-row > form.cart::before,
.ps-product-page .ps-product-purchase-row > form.cart::after {
    display: none !important;
}

.ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty {
    display: grid !important;
    grid-template-columns: 39px 54px 39px;
    align-items: center;
    min-width: var(--ps-product-qty-width);
    width: var(--ps-product-qty-width);
    height: 54px;
    margin: 0 !important;
    float: none !important;
    overflow: hidden;
    border: 1px solid var(--ps-product-qty-border);
    border-radius: 999px;
    background: var(--ps-product-qty-bg);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
    justify-self: center;
}

.ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty__button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 39px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--ps-product-qty-button) !important;
    font-family: MontserratS, sans-serif !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    cursor: pointer !important;
    appearance: none !important;
}

.ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty__button:hover {
    background: #faf2eb !important;
}

.ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty__button:focus-visible,
.ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty__input:focus-visible {
    outline: 2px solid #d70311;
    outline-offset: -2px;
}

.ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty__input {
    width: 54px !important;
    min-width: 54px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid #e5d7ca !important;
    border-right: 1px solid #e5d7ca !important;
    background: transparent !important;
    color: var(--ps-product-qty-input) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    text-align: center !important;
    box-shadow: none !important;
    appearance: textfield !important;
    -moz-appearance: textfield !important;
}

.ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty__input::-webkit-outer-spin-button,
.ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty__input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button {
    min-width: var(--ps-product-cta-min-width);
    min-height: 52px;
    margin: 0 !important;
    padding: 0 22px !important;
    border: 1px solid #d70311 !important;
    border-radius: 18px 0 18px 0 !important;
    background: linear-gradient(180deg, #ff2b3a 0%, #d70311 100%) !important;
    color: #ffffff !important;
    font-family: MontserratB, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.03em;
    box-shadow: 0 18px 34px rgba(215, 3, 17, 0.18);
    white-space: nowrap;
}

.ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button:hover {
    background: linear-gradient(180deg, #ff4050 0%, #c10310 100%) !important;
    border-color: #c10310 !important;
}

.ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button::before,
.ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button::after {
    display: none !important;
}

.ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button .ps-product-cart-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
}

.ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button .ps-product-cart-icon {
    display: block;
    width: 44px;
    height: 44px;
    object-fit: contain;
}

.ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button .ps-product-cart-label--short {
    display: none;
}

.ps-product-page .single-product div.product > .product_meta {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: 14px 28px;
    margin: 40px 0 0 !important;
    padding-top: 22px;
    border-top: 1px solid var(--ps-product-meta-border);
    color: var(--ps-product-meta-text);
    font-size: 14px;
    line-height: 1.6;
}

.ps-product-page .single-product div.product > .product_meta > span {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
}

.ps-product-page .single-product div.product > .product_meta a {
    color: var(--ps-product-link);
    font-family: MontserratS, sans-serif;
}

.ps-product-page .single-product div.product > .related.products {
    grid-column: 1 / -1;
    margin-top: 56px;
    display: none !important;
}

.ps-product-page .single-product div.product > .related.products > h2 {
    margin: 0 0 24px;
    color: var(--ps-product-heading);
    font-family: MontserratS, sans-serif;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.08;
    text-transform: uppercase;
}

.ps-product-page .single-product div.product > .related.products ul.products {
    margin: 0 !important;
    padding: 0;
}

.ps-product-theme-switcher-section {
    padding: 0 0 60px;
    background: var(--ps-product-toggle-section-bg);
}

.ps-product-theme-switcher-section__inner {
    width: min(1150px, calc(100% - 48px));
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 24px 28px;
    border: 1px solid var(--ps-product-toggle-card-border);
    border-radius: 28px;
    background: var(--ps-product-toggle-card-bg);
    box-shadow: var(--ps-product-toggle-shadow);
}

.ps-product-theme-switcher-section__copy {
    display: grid;
    gap: 6px;
}

.ps-product-theme-switcher-section__caption {
    color: var(--ps-product-toggle-caption);
    font-family: MontserratS, sans-serif;
    font-size: 13px;
    letter-spacing: 0.08em;
    line-height: 1.3;
    text-transform: uppercase;
}

.ps-product-theme-switcher-section__title {
    color: var(--ps-product-toggle-title);
    font-family: MontserratS, sans-serif;
    font-size: clamp(22px, 2.3vw, 30px);
    line-height: 1.06;
}

.ps-product-theme-switcher-control {
    display: inline-flex;
    align-items: center;
    gap: 14px;
}

.ps-product-theme-switcher-label {
    color: var(--ps-product-toggle-label);
    font-family: MontserratS, sans-serif;
    font-size: 14px;
    line-height: 1;
    white-space: nowrap;
    padding: 8px 0;
    transition: color 0.2s ease, background-color 0.2s ease;
}

.ps-product-theme-switcher-label[data-ps-single-product-theme-option="light"] {
    background: var(--ps-product-toggle-label-active-bg);
    color: var(--ps-product-toggle-label-active-color);
    border-radius: 999px;
    padding: 8px 14px;
}

html[data-ps-single-product-theme="dark"] .ps-product-theme-switcher-label[data-ps-single-product-theme-option="light"],
html[data-ps-site-theme="dark"][data-ps-site-theme-context="product"] .ps-product-theme-switcher-label[data-ps-single-product-theme-option="light"] {
    background: transparent;
    color: var(--ps-product-toggle-label);
    padding: 8px 0;
}

html[data-ps-single-product-theme="dark"] .ps-product-theme-switcher-label[data-ps-single-product-theme-option="dark"],
html[data-ps-site-theme="dark"][data-ps-site-theme-context="product"] .ps-product-theme-switcher-label[data-ps-single-product-theme-option="dark"] {
    background: var(--ps-product-toggle-label-active-bg);
    color: var(--ps-product-toggle-label-active-color);
    border-radius: 999px;
    padding: 8px 14px;
}

.ps-product-theme-toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: 74px;
    height: 40px;
    padding: 4px;
    border: 1px solid var(--ps-product-toggle-switch-border);
    border-radius: 999px;
    background: var(--ps-product-toggle-switch-bg);
    box-shadow: none;
    cursor: pointer;
}

.ps-product-theme-toggle:focus-visible {
    outline: 2px solid #d70311;
    outline-offset: 3px;
}

.ps-product-theme-toggle:hover {
    transform: translateY(-1px);
}

.ps-product-theme-toggle__thumb {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--ps-product-toggle-thumb);
    box-shadow: 0 10px 18px rgba(0, 0, 0, 0.24);
    transition: transform 0.24s ease;
}

html[data-ps-single-product-theme="dark"] .ps-product-theme-toggle__thumb,
html[data-ps-site-theme="dark"][data-ps-site-theme-context="product"] .ps-product-theme-toggle__thumb {
    transform: translateX(34px);
}

.ps-product-secondary {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
    gap: 36px;
    padding-top: 30px;
    border-top: 1px solid #ece4dc;
    align-items: start;
}

.ps-product-share {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
}

.ps-product-share__label {
    color: #6f635a;
    font-family: MontserratS, sans-serif;
    font-size: 13px;
    letter-spacing: 0.08em;
    line-height: 1.4;
    text-transform: uppercase;
}

.ps-product-share .addtoany_shortcode {
    display: inline-flex;
    align-items: center;
}

.ps-product-sidebar {
    display: grid;
    gap: 28px;
}

.ps-product-sidebar__widgets,
.ps-product-sidebar__socials {
    display: grid;
    gap: 18px;
}

.ps-product-sidebar__socials {
    padding-top: 8px;
    border-top: 1px solid #ece4dc;
}

.ps-product-sidebar .widget-wrapper,
.ps-product-sidebar .widget-wrapper > div,
.ps-product-sidebar .widget-wrapper > div > div {
    width: 100%;
    float: none !important;
}

.ps-product-sidebar h4 {
    position: relative;
    margin: 0 0 18px;
    padding-bottom: 14px;
    color: #111111;
    font-family: MontserratS, sans-serif;
    font-size: 18px;
    line-height: 1.28;
}

.ps-product-sidebar h4::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 74px;
    height: 2px;
    background: #cb0014;
}

.ps-product-sidebar ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ps-product-sidebar ul li {
    margin-bottom: 16px;
}

.ps-product-sidebar ul li::after {
    content: "";
    display: block;
    clear: both;
}

.ps-product-sidebar ul li img {
    float: left;
    width: 96px !important;
    height: auto !important;
    margin: 0 14px 0 0 !important;
    border-radius: 14px;
    position: static !important;
}

.ps-product-sidebar .rpwwt-post-title,
.ps-product-sidebar ul li h3 {
    display: block;
    margin: 0 0 6px;
    color: #111111;
    font-family: MontserratS, sans-serif;
    font-size: 16px;
    line-height: 1.35;
    float: none !important;
    width: auto !important;
}

.ps-product-sidebar .rpwwt-post-date,
.ps-product-sidebar ul li h4 {
    margin: 0;
    padding: 0;
    color: #8a7d74;
    font-family: Montserrat, sans-serif;
    font-size: 13px;
    line-height: 1.5;
    float: none !important;
    width: auto !important;
    background: none !important;
}

.ps-product-sidebar__socials figure {
    margin: 0;
}

.ps-product-sidebar__socials figure a {
    display: inline-flex;
}

.ps-product-sidebar__socials figure img {
    width: auto;
    height: 34px;
    padding-right: 6px;
}

@media (max-width: 1080px) {
    .ps-product-page .single-product div.product {
        gap: 32px;
    }

    .ps-product-secondary {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 990px) {
    /* This site strips the usual body classes, so the single-product CSS file
       itself is the scope boundary for these mobile header overrides. */
    body {
        padding-top: 0 !important;
    }

    body > header,
    body > header.fixed-on {
        position: fixed !important;
        top: 0;
        left: 0;
        right: 0;
        height: 80px !important;
        padding-bottom: 0 !important;
        background: rgba(18, 18, 18, 0.94) !important;
        box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24) !important;
        overflow: visible !important;
        z-index: 1000 !important;
    }

    body > header .pre-line,
    body > header .pre-line-wrapper {
        height: 80px;
        border-bottom: 0;
        background: transparent !important;
    }

    body > header .pre-line-wrapper > div.widget-wrapper:nth-of-type(3) {
        display: block !important;
        opacity: 1 !important;
        top: 50%;
        left: 50%;
        margin-top: 0 !important;
        transform: translate(-50%, -50%);
        z-index: 2;
    }

    body > header .pre-line-wrapper > .widget-wrapper figure {
        display: flex;
        align-items: center;
        justify-content: center;
        padding-top: 0 !important;
        margin: 0;
    }

    body > header .pre-line-wrapper > div.widget-wrapper:nth-of-type(3) img {
        width: auto !important;
        height: 34px !important;
        max-width: min(210px, 50vw);
        object-fit: contain !important;
        filter: none !important;
    }

    body > header .pre-line-wrapper .icons-block {
        display: flex;
        align-items: center;
        gap: 14px;
        top: 0;
        right: 18px;
        height: 80px;
        transform: none;
        z-index: 3;
    }

    body > header .pre-line-wrapper .icons-block > .cart-outer {
        position: relative;
        margin-top: 0 !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
        float: none;
    }

    body > header .wc-block-mini-cart__button {
        margin-right: 0 !important;
        float: none !important;
    }

    body > header .langs {
        display: none !important;
    }

    body > header .mobile .burger-menu {
        top: 20px;
        left: 18px;
        z-index: 1001;
    }

    body > header .mobile .burger-menu .line {
        background: #ffffff;
    }

    body > header .mobile .burger-menu .line::after {
        background: #cb0014;
    }
}

@media (max-width: 920px) {
    .ps-product-page .single-product div.product {
        grid-template-columns: 1fr;
    }

    .ps-product-page .single-product div.product > .woocommerce-product-gallery,
    .ps-product-page .single-product div.product > .images,
    .ps-product-page .single-product div.product > .summary,
    .ps-product-page .single-product div.product > .entry-summary,
    .ps-product-page .single-product div.product > .product_meta,
    .ps-product-page .single-product div.product > .related.products {
        grid-column: 1;
    }

    .ps-product-page .single-product div.product > .summary,
    .ps-product-page .single-product div.product > .entry-summary {
        gap: 12px;
        padding-top: 0;
    }

    .ps-product-page .ps-product-purchase-row {
        align-items: end;
        width: 100%;
        gap: 18px;
    }

    .ps-product-page .ps-product-purchase-row__support {
        justify-self: start;
    }

    .ps-product-page .ps-product-purchase-row__price {
        justify-self: start;
        transform: none;
    }

    .ps-product-page .ps-product-purchase-row > form.cart {
        width: 100% !important;
        justify-self: start;
        justify-content: start;
    }
}

@media (max-width: 768px) {
    .ps-product-hero {
        margin-top: 0;
        padding: 90px 0 12px;
    }

    .ps-product-hero__inner,
    .ps-product-page__inner {
        width: min(100%, calc(100% - 32px));
    }

    .ps-product-hero .breadcrumbs-wrapper {
        display: none;
    }

    .ps-product-hero__title {
        font-size: clamp(28px, 8vw, 38px);
        line-height: 1.04;
        letter-spacing: 0.02em;
    }

    .ps-product-hero .ps-product-badges {
        margin-top: 12px;
    }

    .ps-product-page {
        padding-bottom: 56px;
    }

    .ps-product-page__inner {
        gap: 42px;
    }

    .ps-product-page .woocommerce-product-gallery__image a {
        min-height: auto;
        border-radius: 24px;
        padding: 16px;
    }

    .ps-product-page .flex-control-thumbs {
        gap: 8px;
        margin-top: 12px !important;
    }

    .ps-product-page .flex-control-thumbs li {
        width: 58px !important;
    }

    .ps-product-page .ps-product-description p {
        font-size: 16px;
        line-height: 1.64;
    }

    .ps-product-page .ps-product-supporting-meta {
        width: 100%;
        max-width: none;
        gap: 8px;
    }

    .ps-product-page .ps-product-supporting-meta__item--weight,
    .ps-product-page .ps-product-supporting-meta__item--param {
        padding: 10px 12px;
        border-radius: 12px;
        font-size: 14px;
    }

    .ps-product-page .ps-product-supporting-meta--purchase .ps-product-supporting-meta__item--weight {
        gap: 6px;
        padding: 9px 10px;
    }

    .ps-product-page .ps-product-supporting-meta__label {
        font-size: 11px;
    }

    .ps-product-page .ps-product-supporting-meta--purchase .ps-product-supporting-meta__label {
        font-size: 10px;
    }

    .ps-product-page .ps-product-supporting-meta__value {
        font-size: 14px;
    }

    .ps-product-page .ps-product-supporting-meta--purchase .ps-product-supporting-meta__value {
        font-size: 13px;
        white-space: nowrap;
    }

    .ps-product-page .ps-product-purchase-row__price .price {
        font-size: 30px !important;
    }

    .ps-product-page .ps-product-purchase-row {
        position: static;
        display: grid;
        grid-template-columns: minmax(118px, 132px) minmax(0, 1fr);
        grid-template-areas:
            "support price"
            "cart cart";
        gap: 10px 12px;
        width: 100%;
        min-height: 0;
    }

    .ps-product-page .ps-product-purchase-row__support {
        grid-area: support;
        align-self: end;
        justify-self: start;
    }

    .ps-product-page .ps-product-supporting-meta--purchase {
        max-width: 142px;
    }

    .ps-product-page .ps-product-purchase-row__price {
        grid-area: price;
        top: auto;
        right: auto;
        position: static;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        align-self: auto;
        min-height: 0;
        text-align: left;
        z-index: auto;
        transform: translate(32px, 18px);
    }

    .ps-product-page .ps-product-purchase-row > form.cart {
        width: 100% !important;
        grid-template-columns: minmax(118px, 132px) minmax(0, 1fr);
        gap: 0;
        padding: 4px;
        border: 1px solid #cf0312;
        border-radius: 999px;
        background: linear-gradient(180deg, #ff2b3a 0%, #d70311 100%) !important;
        box-shadow: 0 14px 28px rgba(215, 3, 17, 0.18);
        overflow: hidden;
        justify-self: stretch;
        justify-content: initial;
        align-items: stretch;
        position: relative;
        z-index: 1;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty {
        grid-area: auto;
        grid-template-columns: 36px 46px 36px;
        min-width: 0;
        width: 100%;
        max-width: 132px;
        height: 52px;
        justify-self: start;
        border: 0;
        border-radius: 999px;
        background: #ffffff;
        box-shadow: none;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty__button {
        width: 36px !important;
        height: 52px !important;
        font-size: 20px !important;
        color: #231f1d !important;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty__input {
        width: 46px !important;
        min-width: 46px !important;
        height: 52px !important;
        font-size: 17px !important;
        border-left: 1px solid #eaded2 !important;
        border-right: 1px solid #eaded2 !important;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button {
        grid-area: auto;
        width: 100%;
        min-height: 52px;
        padding: 0 18px !important;
        border: 0 !important;
        border-left: 1px solid rgba(255, 255, 255, 0.22) !important;
        border-radius: 0 999px 999px 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        font-size: 16px !important;
        letter-spacing: 0.02em;
        white-space: nowrap;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button:hover {
        background: transparent !important;
        border-color: rgba(255, 255, 255, 0.22) !important;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button .ps-product-cart-label--full {
        display: none;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button .ps-product-cart-label--short {
        display: inline-flex;
        width: 100%;
    }

    .ps-product-page .single-product div.product > .product_meta {
        margin-top: 28px !important;
        padding-top: 18px;
    }

    .ps-product-page .single-product div.product > .related.products {
        margin-top: 42px;
    }

    .ps-product-share {
        gap: 10px;
    }

    .ps-product-theme-switcher-section {
        padding: 0 0 42px;
    }

    .ps-product-theme-switcher-section__inner {
        width: min(100%, calc(100% - 32px));
        flex-direction: column;
        align-items: flex-start;
        padding: 22px 20px;
        border-radius: 24px;
    }

    .ps-product-theme-switcher-control {
        width: 100%;
        justify-content: space-between;
    }
}

@media (max-width: 540px) {
    .ps-product-hero__title {
        font-size: clamp(24px, 8.8vw, 33px);
        line-height: 1.04;
        letter-spacing: 0.02em;
    }

    .ps-product-hero {
        padding-top: 88px;
    }

    .ps-product-page .ps-product-purchase-row > form.cart {
        width: 100% !important;
        grid-template-columns: minmax(110px, 124px) minmax(0, 1fr);
        padding: 3px;
        justify-items: stretch;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty {
        grid-template-columns: 34px 44px 34px;
        max-width: 124px;
        height: 50px;
        justify-self: start;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty__button {
        width: 34px !important;
        height: 50px !important;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .ps-product-qty__input {
        width: 44px !important;
        min-width: 44px !important;
        height: 50px !important;
        font-size: 16px !important;
    }

    .ps-product-page .ps-product-purchase-row__price .price {
        font-size: clamp(28px, 10.8vw, 32px) !important;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button {
        width: 100%;
        min-height: 50px;
        padding: 0 14px !important;
        font-size: clamp(14px, 4.5vw, 15px) !important;
        justify-content: center;
    }

    .ps-product-page .ps-product-purchase-row > form.cart .single_add_to_cart_button .ps-product-cart-icon {
        width: 46px;
        height: 46px;
    }

    .ps-product-page .single-product div.product > .related.products > h2 {
        margin-bottom: 18px;
    }

    .ps-product-theme-switcher-section__title {
        font-size: 20px;
    }

    .ps-product-theme-switcher-control {
        gap: 10px;
    }

    .ps-product-theme-switcher-label {
        font-size: 13px;
    }

    .ps-product-theme-toggle {
        width: 68px;
        height: 38px;
    }

    .ps-product-theme-toggle__thumb {
        width: 28px;
        height: 28px;
    }

    html[data-ps-single-product-theme="dark"] .ps-product-theme-toggle__thumb,
    html[data-ps-site-theme="dark"][data-ps-site-theme-context="product"] .ps-product-theme-toggle__thumb {
        transform: translateX(30px);
    }
}
