.cstm-alert {
        font-size: 12px;
        line-height: 16px;
    }
    .productGallery .pgImage video,
    .productGalleryThumb .pgtImage video {
        width: 100%;
        display: block;
    }
    .productTopBar {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        padding: 5px 0 15px;
    }
    .productTopNav {
        display: flex;
        align-items: center;
        min-width: 0;
        gap: 18px;
    }
    .productTopBack,
    .productTopAction {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
        width: 42px;
        height: 42px;
        border: 0;
        border-radius: 50%;
        background: transparent;
        color: #161b22;
        font-size: 19px;
        line-height: 1;
        transition: background-color .2s ease, color .2s ease;
    }
    .productTopBack:hover,
    .productTopAction:hover {
        background: #f0f3f4;
        color: #3b8cb9;
    }
    .productBreadcrumbs {
        display: flex;
        align-items: center;
        min-width: 0;
        margin: 0;
        padding: 0;
        list-style: none;
        color: #8b91a3;
        font-size: 14px;
        line-height: 1.3;
        white-space: nowrap;
    }
    .productBreadcrumbs li {
        display: flex;
        align-items: center;
        min-width: 0;
    }
    .productBreadcrumbs li + li:before {
        content: "/";
        margin: 0 12px;
        color: #c4c8d2;
    }
    .productBreadcrumbs a,
    .productBreadcrumbs span {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        color: inherit;
    }
    .productBreadcrumbs a:hover {
        color: #3b8cb9;
    }
    .productTopActions {
        display: flex;
        align-items: center;
        gap: 14px;
    }
    .productTopAction.add-to-wishlist.active {
        color: #d84b61;
    }
    .productShareNotice {
        display: inline-flex;
        align-items: center;
        flex: 0 0 auto;
        max-width: 0;
        overflow: hidden;
        padding: 10px 0;
        border-radius: 8px;
        background: #161b22;
        color: #fff;
        font-size: 14px;
        line-height: 1.2;
        white-space: nowrap;
        opacity: 0;
        pointer-events: none;
        transform: translateX(8px);
        transition: opacity .2s ease, transform .2s ease, max-width .2s ease, padding .2s ease;
    }
    .productShareNotice.is-visible {
        max-width: 190px;
        padding: 10px 14px;
        opacity: 1;
        transform: translateX(0);
    }
    .shopDetailsPageSection > .container {
        max-width: 1560px;
    }
    .productDetailsLayout {
        align-items: flex-start;
        row-gap: 32px;
    }
    .productDetailsLayout > [class*="col-"] {
        min-width: 0;
    }
    .productMediaColumn {
        align-self: stretch;
    }
    .productGallerySticky {
        position: sticky;
        top: 88px;
    }
    .productGalleryWrap {
        --product-gallery-max-height: clamp(520px, calc(100vh - 128px), 760px);
        display: grid;
        grid-template-columns: 92px minmax(0, 1fr);
        gap: 12px;
        padding: 0;
        align-items: start;
    }
    .productGallery {
        min-width: 0;
    }
    .productGallery .slick-list {
        overflow: hidden;
        border-radius: 10px;
        background: #f3f4f2;
    }
    .productGallery .slick-list,
    .productGallery .slick-track,
    .productGallery .slick-slide > div {
        height: auto;
    }
    .productGallery .pgImage {
        position: relative;
        overflow: hidden;
        background: #f3f4f2;
        display: flex;
        align-items: center;
        justify-content: center;
        height: auto;
        min-height: 0;
        max-height: var(--product-gallery-max-height);
        border-radius: 10px;
    }
    .productGallery .pgImage > a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
    }
    .productGallery .pgImage img,
    .productGallery .pgImage video {
        display: block;
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: var(--product-gallery-max-height);
        object-fit: contain;
        border-radius: 10px;
    }
    .productGalleryThumbWrap {
        grid-column: 1;
        grid-row: 1;
        min-width: 0;
        padding: 0;
        height: auto;
        max-height: var(--product-gallery-max-height);
        overflow: hidden;
    }
    .productGalleryThumb {
        height: 100%;
    }
    .productGalleryThumb .slick-list {
        height: auto !important;
        max-height: var(--product-gallery-max-height);
        overflow: hidden;
    }
    .productGalleryThumb .pgtImage {
        padding: 0 0 12px;
        cursor: pointer;
    }
    .productGalleryThumb .pgtImage img,
    .productGalleryThumb .pgtImage video {
        display: block;
        width: 100%;
        aspect-ratio: 1 / 1.28;
        object-fit: cover;
        border: 2px solid transparent;
        border-radius: 8px;
        background: #f3f4f2;
        transition: border-color .15s ease, box-shadow .15s ease, opacity .15s ease;
    }
    .productGalleryThumb .pgtImage:hover img,
    .productGalleryThumb .pgtImage:hover video {
        opacity: .92;
    }
    .productGalleryThumb .slick-current img,
    .productGalleryThumb .slick-current video,
    .productGalleryThumb .pgtImage.is-active img,
    .productGalleryThumb .pgtImage.is-active video {
        border-color: #3b8cb9;
        box-shadow: inset 0 0 0 1px rgba(178, 44, 255, .2);
    }
    .productGalleryWrap .productGallery {
        grid-column: 2;
        grid-row: 1;
    }
    .productGallery .slick-arrow,
    .productGalleryThumb .slick-arrow {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 42px;
        height: 42px;
        border: none;
        border-radius: 50%;
        background: rgba(255, 255, 255, .94);
        color: #52586d;
        box-shadow: 0 4px 16px rgba(29, 35, 58, .12);
        z-index: 25;
        transition: background-color .2s ease, color .2s ease, opacity .2s ease;
    }
    .productGallery .slick-arrow:hover,
    .productGalleryThumb .slick-arrow:hover {
        background: #fff;
        color: #3b8cb9;
    }
    .productGallery .slick-arrow {
        top: 50%;
        bottom: auto;
        left: 14px;
        right: auto;
        margin: 0;
        transform: translateY(-50%);
    }
    .productGallery .slick-arrow.slick-next {
        left: auto;
        right: 14px;
    }
    .productGalleryThumb .slick-arrow {
        width: 34px;
        height: 34px;
        top: 8px;
        bottom: auto;
        left: 50%;
        right: auto;
        margin: 0;
        transform: translateX(-50%);
    }
    .productGalleryThumb .slick-arrow.slick-next {
        top: auto;
        bottom: 8px;
        left: 50%;
        right: auto;
    }
    .productContentIntro {
        margin-bottom: 28px;
    }
    .productContent h2,
    .productContent h1 {
        margin-bottom: 16px;
    }
    .productContent,
    .productPlainSection,
    .productPlainSectionBody {
        min-width: 0;
        max-width: 100%;
    }
    .productContent,
    .productPlainSectionBody {
        overflow-wrap: break-word;
        word-break: normal;
    }
    .productContentMeta {
        display: grid;
        gap: 8px;
        margin: 0 0 28px;
        color: #717788;
        font-size: 15px;
        line-height: 1.45;
    }
    .productContentMeta strong {
        color: #52586d;
        font-weight: 600;
    }
    .productPlainSections {
        display: grid;
        gap: 30px;
    }
    .productPlainSection h3 {
        margin: 0 0 14px;
        color: #343847;
        font-size: 18px;
        line-height: 1.3;
        font-weight: 700;
    }
    .productPlainSectionBody {
        color: #343847;
        font-size: clamp(14px, 1.16vw, 14px);
        line-height: 1.45;
    }
    .productPlainSectionBody img,
    .productPlainSectionBody video,
    .productPlainSectionBody iframe {
        max-width: 100%;
        height: auto;
    }
    .productPlainSectionBody p:last-child,
    .productPlainSectionBody ul:last-child,
    .productPlainSectionBody table:last-child {
        margin-bottom: 0;
    }
    .productPlainSectionBody table {
        display: block;
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
    }
    .productSidebar {
        position: relative;
        font-size: 16px;
        color: #52586d;
    }
    .productSidebarHost {
        font-size: 0;
        color: transparent;
    }
    .productSidebarCard {
        background: #f3f5f6;
        border: 1px solid #e2e7ea;
        border-radius: 24px;
        padding: 24px;
        margin-bottom: 18px;
    }
    .productSidebarCard:first-child {
        position: sticky;
        top: 88px;
        z-index: 12;
    }
    .productSidebarForm .pcVariations {
        margin-bottom: 20px;
    }
    .productSidebarForm .pcVariation {
        display: block;
        margin-bottom: 0;
    }
    .productSidebarForm .pcVariation > span {
        display: block;
        min-width: 0;
        margin-bottom: 12px;
        line-height: 1.2;
        padding-right: 0;
    }
    .productSizeChoiceHead {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 12px;
        margin-bottom: 12px;
        line-height: 1.2;
    }
    .productSizeChoiceHead span {
        color: #2f3542;
        font-weight: 700;
    }
    .productSizeGridLink {
        flex: 0 0 auto;
        padding: 0;
        border: 0;
        background: transparent;
        color: #3b8cb9;
        font-size: 13px;
        line-height: 1.2;
        text-align: right;
        text-underline-offset: 3px;
        cursor: pointer;
    }
    .productSizeGridLink:hover {
        color: #2f7ca7;
    }
    .productSidebarForm .pcvContainer {
        flex-wrap: wrap;
        gap: 8px;
    }
    .productSidebarForm .pswItem {
        margin: 0;
    }
    .productSidebarForm .pswItem label {
        min-width: 46px;
        width: auto;
        height: 42px;
        padding: 0 14px;
        line-height: 40px;
        border-radius: 12px;
        border-color: #d7dde1;
        background: #fff;
        font-weight: 600;
    }
    .productSidebarPriceBlock {
        padding: 20px;
        margin-bottom: 18px;
        border-radius: 18px;
        background: #fff;
    }
    .productSidebarPrice {
        margin-bottom: 0;
    }
    .productSidebarPrice ins {
        display: inline-block;
        font-size: 34px;
        line-height: 1;
        color: #52586d;
        font-weight: 700;
        text-decoration: none;
        margin-right: 10px;
    }
    .productSidebarPrice del {
        font-size: 18px;
        color: #aeb3c3;
    }
    .productSidebarMetaList {
        display: grid;
        gap: 10px;
    }
    .productSidebarMetaItem {
        display: flex;
        align-items: center;
        gap: 10px;
        color: #52586d;
        font-size: 15px;
        line-height: 1.35;
    }
    .productSidebarMetaItem i {
        width: 18px;
        color: #3b8cb9;
        text-align: center;
    }
    .productSidebarForm .ulinaBTN {
        width: 100%;
        border: none;
    }
    .productSidebarPostCart {
        display: grid;
        gap: 10px;
    }
    .productSidebarPostCartRow {
        display: grid;
        grid-template-columns: minmax(116px, 1fr) minmax(146px, 1.25fr);
        gap: 10px;
    }
    .productSidebarPostQty {
        display: grid;
        grid-template-columns: 38px 1fr 38px;
        align-items: center;
        min-height: 50px;
        border-radius: 16px;
        background: #f4f5f7;
        overflow: hidden;
    }
    .productSidebarPostQty button {
        width: 38px;
        height: 50px;
        border: none;
        background: transparent;
        color: #3b8cb9;
        font-size: 18px;
        line-height: 1;
        cursor: pointer;
    }
    .productSidebarPostQty button:disabled {
        color: #b8c7cf;
        cursor: default;
    }
    .productSidebarPostQty input {
        width: 100%;
        border: none;
        background: transparent;
        color: #161b22;
        font-size: 18px;
        line-height: 1;
        font-weight: 500;
        text-align: center;
        -moz-appearance: textfield;
    }
    .productSidebarPostQty input::-webkit-outer-spin-button,
    .productSidebarPostQty input::-webkit-inner-spin-button {
        margin: 0;
        -webkit-appearance: none;
    }
    .productSidebarPostSubmit {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        min-height: 50px;
        padding: 0 16px;
        border: none;
        border-radius: 16px;
        background: #3b8cb9;
        color: #fff;
        font-size: 16px;
        line-height: 1;
        font-weight: 700;
        white-space: nowrap;
        cursor: pointer;
    }
    .productSidebarPostSubmit:hover {
        background: #2f7ca7;
        color: #fff;
    }
    .productSidebarPostBuyNow {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 50px;
        border-radius: 16px;
        background: rgba(59, 140, 185, .14);
        color: #3b8cb9;
        font-size: 16px;
        line-height: 1;
        font-weight: 700;
        text-align: center;
    }
    .productSidebarPostBuyNow:hover {
        background: rgba(59, 140, 185, .22);
        color: #2f7ca7;
    }
    .productSidebarChooseSize {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 26px;
        padding: 0;
        border: none;
        background: transparent;
        color: #3b8cb9;
        font-family: inherit;
        font-size: 15px;
        line-height: 1.25;
        font-weight: 700;
        text-align: center;
        cursor: pointer;
    }
    .productSidebarChooseSize:hover {
        color: #2f7ca7;
    }
    .productSizeGridModal .modal-content {
        border: 0;
        border-radius: 18px;
        overflow: hidden;
        box-shadow: 0 22px 60px rgba(23, 42, 58, .24);
    }
    .productSizeGridModal .modal-header {
        align-items: flex-start;
        padding: 24px 28px 14px;
        border-bottom: 0;
    }
    .productSizeGridModal .modal-title {
        color: #303847;
        font-size: 24px;
        line-height: 1.2;
        font-weight: 800;
    }
    .productSizeGridModal .modal-body {
        padding: 0 28px 28px;
    }
    .productSizeGridModalIntro {
        margin: 0 0 18px;
        color: #657082;
        font-size: 15px;
        line-height: 1.55;
    }
    .productSizeGridModalTable {
        overflow-x: visible;
        border: 1px solid #dbe4ea;
        border-radius: 8px;
        background: #fff;
    }
    .productSizeGridModalTable table {
        width: 100%;
        margin-bottom: 0;
        color: #303847;
        font-size: 14px;
        table-layout: fixed;
    }
    .productSizeGridModalTable th,
    .productSizeGridModalTable td {
        padding: 12px 10px !important;
        border-color: #e2e9ee !important;
        font-weight: 400;
        line-height: 1.25;
        text-align: center;
        vertical-align: middle;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: normal;
    }
    .productSizeGridModalTable .text-uppercase {
        text-transform: none !important;
    }
    .productSizeGridModalTable thead th {
        background: #f3f8fb;
        font-weight: 600;
    }
    .productSizeGridModalTable tbody th {
        background: #f8fbfd;
        font-weight: 600;
        text-align: left;
    }
    @media (max-width: 575.98px) {
        .productSizeChoiceHead {
            align-items: flex-start;
        }
        .productSizeGridModal .modal-dialog {
            margin: 10px;
        }
        .productSizeGridModal .modal-header {
            padding: 20px 18px 10px;
        }
        .productSizeGridModal .modal-title {
            font-size: 21px;
        }
        .productSizeGridModal .modal-body {
            padding: 0 18px 20px;
        }
        .productSizeGridModalTable th,
        .productSizeGridModalTable td {
            padding: 10px 8px !important;
            font-size: 13px;
        }
    }
    @media (max-width: 480px) {
        .productSidebarPostCartRow {
            grid-template-columns: 1fr;
        }
    }
    .productSidebarDetails {
        border-top: 1px solid #d7dde1;
        padding-top: 18px;
        margin-top: 18px;
    }
    .productSidebarDetails:first-of-type {
        border-top: none;
        padding-top: 0;
        margin-top: 0;
    }
    .productSidebarDetails summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        list-style: none;
        cursor: pointer;
        color: #52586d;
        font-size: 22px;
        line-height: 1.2;
        font-weight: 700;
    }
    .productSidebarDetails summary::-webkit-details-marker {
        display: none;
    }
    .productSidebarChevron {
        font-size: 14px;
        color: #7b9496;
        transition: transform ease 250ms;
    }
    .productSidebarDetails[open] .productSidebarChevron {
        transform: rotate(180deg);
    }
    .productSidebarDetailsBody {
        padding-top: 18px;
    }
    .productSidebarList {
        list-style: none;
        padding: 0;
        margin: 0;
        display: grid;
        gap: 14px;
    }
    .productSidebarList li {
        display: flex;
        align-items: flex-start;
        gap: 12px;
        color: #52586d;
        font-size: 16px;
        line-height: 1.45;
    }
    .productSidebarList li i {
        width: 18px;
        margin-top: 3px;
        color: #3b8cb9;
        text-align: center;
    }
    .productSidebarDeliveryCity {
        margin-bottom: 18px;
        color: #717788;
        font-size: 15px;
        line-height: 1.5;
    }
    .productSidebarDeliveryCity strong {
        color: #52586d;
    }
    .productSidebarDeliveryCityButton {
        display: inline;
        padding: 0;
        border: none;
        background: transparent;
        color: #3b8cb9;
        font: inherit;
        font-weight: 700;
        line-height: inherit;
        text-decoration: underline;
        text-underline-offset: 3px;
        cursor: pointer;
    }
    .productSidebarDeliveryCityButton:hover {
        color: #52586d;
    }
    .productSidebarDeliveryList {
        list-style: none;
        padding: 0;
        margin: 0;
        display: grid;
        gap: 16px;
    }
    .productSidebarDeliveryList li {
        display: grid;
        grid-template-columns: 18px 1fr;
        gap: 12px;
        color: #717788;
    }
    .productSidebarDeliveryList li i {
        color: #3b8cb9;
        margin-top: 4px;
        text-align: center;
    }
    .productSidebarDeliveryDate {
        display: block;
        margin-bottom: 2px;
        color: #52586d;
        font-size: 14px;
        line-height: 1.3;
        font-weight: 700;
    }
    .productSidebarDeliveryTitle {
        display: block;
        color: #52586d;
        font-size: 14px;
        line-height: 1.4;
    }
    .productSidebarDeliveryPrice {
        display: block;
        margin-top: 2px;
        color: #52586d;
        font-size: 14px;
        line-height: 1.45;
        font-weight: 700;
    }
    .productSidebarDeliveryNote {
        display: block;
        margin-top: 2px;
        font-size: 14px;
        line-height: 1.45;
    }
    .productSidebarDeliveryFootnote {
        margin-top: 16px;
    }
    .productSidebarMore {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        margin-top: 18px;
        color: #717788;
        font-size: 15px;
        line-height: 1.2;
    }
    @media (min-width: 1200px) {
        .productDetailsLayout > .productMediaColumn {
            flex: 0 0 44%;
            max-width: 44%;
        }
        .productDetailsLayout > .col-lg-5 {
            flex: 0 0 33%;
            max-width: 33%;
        }
        .productDetailsLayout > .productSidebarHost {
            flex: 0 0 23%;
            max-width: 23%;
        }
    }
    @media (min-width: 992px) and (max-width: 1199.98px) {
        .productDetailsLayout > .productMediaColumn {
            flex: 0 0 42%;
            max-width: 42%;
        }
        .productDetailsLayout > .col-lg-5 {
            flex: 0 0 34%;
            max-width: 34%;
        }
        .productDetailsLayout > .productSidebarHost {
            flex: 0 0 26%;
            max-width: 26%;
        }
        .productGalleryWrap {
            --product-gallery-max-height: clamp(480px, calc(100vh - 128px), 700px);
            grid-template-columns: 82px minmax(0, 1fr);
            gap: 10px;
        }
        .productContent h2 {
            font-size: 24px;
            line-height: 1.08;
        }
        .productContentMeta,
        .productPlainSectionBody {
            font-size: 14px;
        }
    }
    @media (min-width: 992px) {
        .productGalleryThumb.is-static-thumbs {
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            margin: 0;
        }
        .productGalleryThumb.is-static-thumbs .pgtImage {
            flex: 0 0 auto;
            max-width: 100%;
            cursor: pointer;
        }
        .productGalleryThumb.is-static-thumbs .pgtImage img,
        .productGalleryThumb.is-static-thumbs .pgtImage video {
            border: 2px solid transparent;
            transition: border-color .15s ease;
        }
        .productGalleryThumb.is-static-thumbs .pgtImage.is-active img,
        .productGalleryThumb.is-static-thumbs .pgtImage.is-active video {
            border-color: #3b8cb9;
        }
    }
    @media (min-width: 576px) {
    .cstm-alert {
        font-size: 12px;
        line-height: 36px;
    }
}
    @media (max-width: 991.98px) {
        .productTopBar {
            position: absolute;
            top: 0;
            left: 12px;
            right: 12px;
            z-index: 5;
            padding: 12px 0;
            pointer-events: none;
        }
        .productTopBack,
        .productTopAction {
            width: 40px;
            height: 40px;
            background: rgba(255, 255, 255, .92);
            box-shadow: 0 2px 10px rgba(0, 0, 0, .08);
            pointer-events: auto;
        }
        .productBreadcrumbs {
            display: none;
        }
        .productTopActions {
            gap: 10px;
            pointer-events: auto;
        }
        .productShareNotice {
            position: fixed;
            top: 72px;
            right: 12px;
            z-index: 1200;
            max-width: none;
            padding: 10px 14px;
            transform: translateY(-8px);
        }
        .productShareNotice.is-visible {
            transform: translateY(0);
        }
        .shopDetailsPageSection {
            padding-top: 0px;
        }
        .shopDetailsPageSection > .container {
            position: relative;
        }
        .productMediaColumn {
            padding-left: 0;
            padding-right: 0;
        }
        .productGallerySticky {
            position: static;
        }
        .productGalleryWrap {
            display: block;
            margin: 0 0 28px;
        }
        .productGallery .slick-list,
        .productGallery .slick-track,
        .productGallery .slick-slide > div {
            height: auto;
            border-radius: 0;
        }
        .productGallery .pgImage {
            border-radius: 0;
            display: block;
            height: auto;
            min-height: 0;
            max-height: none;
        }
        .productGallery .pgImage img,
        .productGallery .pgImage video {
            width: 100%;
            max-height: none;
            height: auto;
            border-radius: 0;
        }
        .productGalleryThumbWrap {
            display: none;
        }
        .productSidebar {
            position: static;
            margin-top: 32px;
        }
        .productSidebarCard:first-child {
            position: static;
        }
        .productSidebarCard {
            padding: 20px;
        }
    }
