:root {
    --icon-dimension: 32px;
    --itemsTitleSize: 20px;
    --basicTextSize: 16px;

    @media (width < 1024px) {
        --icon-dimension: clamp(1.5rem, 1.2727rem + 1.1364vw, 2rem);
        --itemsTitleSize: clamp(1.125rem, 1.0682rem + 0.2841vw, 1.25rem);
        --basicTextSize: clamp(0.875rem, 0.8182rem + 0.2841vw, 1rem);
    }
}

@media (min-width: 768px) {
    .product-image-gallery>.product-container {
        display: flex;
        width: min(1560px, 100%);
        margin-inline: auto;
        gap: 15px;
    }

    .product-image-gallery>.product-container.row::after {
        display: none;
    }
}


#lo-prodDesc video:hover,
#lo-prodDesc iframe:hover {
    outline: none;
    border: none;
}

.product-descritpio-test-container {
    width: min(1290px, 100%);
    margin-inline: auto;
    padding-block: 55px;
    background: #FCF8F1;
}

.top-page-section-mockup {
    width: calc(100% - 100px);
    margin-inline: auto;
    margin-block-end: 65px;
    padding-inline: 16px;
}

.top-page-section-mockup img {
    width: 100%;
}

/* Set section */
.lo-product-set {
    width: 100%;
}

.lo-product-set__title {
    font-size: 16px;
    color: #1F1E1D;
    margin-block-end: 20px;
}

.lo-product-set__setItems {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    gap: 25px;
    flex-wrap: nowrap;

    @media (width < 1440px) {
        gap: clamp(0.75rem, -1.5084rem + 3.4121vw, 1.5625rem);
    }

    @media (768px <=width < 1059px) {
        flex-direction: column;
        gap: 10px;
    }

}

.lo-product-set__item:not(.active):has(.lo-product-set__link:hover) {
    scale: 1.05;
}

.lo-product-set__setItems:has(.lo-product-set__link:hover) .lo-product-set__item:not(:hover) {
    /* scale: 0.9; */
    opacity: 0.7;
}

.lo-product-set__item {
    height: auto;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 11px;
    overflow: hidden;
    flex: 1 0 28%;
    padding: 11px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    position: relative;
    z-index: 1;
    transition: scale 450ms ease, opacity 450ms ease;

    @media (768px <=width < 1059px) {
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        padding: 8px 11px;
    }
}

.lo-product-set__item.active {
    /* box-shadow: 4px 6px 16px 0 rgba(87, 66, 43, .2); */
    cursor: default;
    background: #F4F4F4;
    border: 1px solid #1F1E1D;
}

.lo-product-set__link {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
}

.lo-product-set__item.active .lo-product-set__link {
    cursor: default;
    pointer-events: none;
}

.lo-product-set__img {
    width: min(82px, 100%);
    aspect-ratio: 1 / 1;
    height: auto;
}


.lo-product-set__itemTitle {
    font-size: 14px;
    text-align: center;
    color: #1F1E1D;
    width: 100%;
    margin-block: auto 0;

    @media (768px <=width < 1059px) {
        margin-block: 0;
        text-align: left;
    }
}

#lo-prodDesc {
    font-family: "Plus Jakarta Sans", sans-serif;
    color: #1E1E20;
    padding-inline: 16px;
}

#lo-prodDesc :is(h2, h3, h4, p) {
    margin: 0;
}

#lo-prodDesc .lo-prodDesc__container,
.product-data-wrapper .lo-prodDesc__container {
    width: calc(100% - 100px);
    margin-inline: auto;

    @media (width < 1024px) {
        width: calc(100% - clamp(0rem, -2.8409rem + 14.2045vw, 6.25rem));
    }
}

#lo-prodDesc .lo-prodDesc__banner{
    margin-block-end: 55px;

    @media (width < 768px) {
        margin-block-end: clamp(2.1875rem, 1.2946rem + 4.4643vw, 3.4375rem);
    }
}

#lo-prodDesc .lo-prodDesc__banner .lo-prodDesc__bannerImg {
    width: 100%;
}

.lo-prodDesc__intro {
    background: #F4F4F4;
    border: none;
    border-radius: 20px;
    text-align: center;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 24px;
    justify-content: center;
    align-items: center;
    margin-block-end: 62px;
    padding-block: 48px;
    padding-inline: 16px;
}

.lo-prodDesc__introTxt {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    max-width: 48ch;
    text-wrap: pretty;
    margin: 0;
}

.lo-prodDesc__slogan {
    font-size: 48px;
    font-weight: 600;
    line-height: 1.4;
    color: #ff4d1c;
    margin: 0;

    @media (width < 1024px) {
        font-size: clamp(2.5rem, 2.2727rem + 1.1364vw, 3rem);
    }

    @media (width < 768px) {
        line-height: 1.1;
    }
}

.lo-prodDesc__sectionHeader {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-block-end: 38px;
}

.lo-prodDesc__sectionTitle {
    font-size: 28px;
    font-weight: 600;
    line-height: 1;
    color: #000000;

    @media (width < 1024px) {
        font-size: clamp(1.25rem, 1.0227rem + 1.1364vw, 1.75rem);
    }
}

.lo-prodDesc__sectionBtn {
    appearance: none;
    background: none;
    border: none;
    padding: 0;
    color: #000000;
    cursor: pointer;
    width: 100%;
    height: 32px;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: "Plus Jakarta Sans", sans-serif;
}

.lo-prodDesc__sectionBtnIcon {
    display: block;
    position: relative;
    width: var(--icon-dimension);
    height: var(--icon-dimension);
}

.lo-prodDesc__sectionBtnIcon::before,
.lo-prodDesc__sectionBtnIcon::after {
    content: "";
    position: absolute;
    background: #1E1E20;
    transition: all 320ms ease-in;
}

.lo-prodDesc__sectionBtnIcon::before {
    width: 100%;
    height: 3px;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.lo-prodDesc__sectionBtnIcon::after {
    width: 3px;
    height: 100%;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.lo-prodDesc__sectionBtn.expanded .lo-prodDesc__sectionBtnIcon::after {
    transform: translateX(-50%) rotate(90deg);
    opacity: 0;
}

#lo-prodDesc .lo-prodDesc__container:not(.lo-prodDesc__sectionHeader):not(.lo-prodDesc__intro):not(.lo-prodDesc__banner),
#lo-product-desc .lo-prodDesc__container:not(.lo-prodDesc__sectionHeader) {
    margin-block-end: 55px;
    border-block-end: 1px solid #D2D2D2;
}

.lo-prodDesc__grid,
#lo-product-desc .lo-prodDesc__container:has(.lo-prodDesc-produce) .lo-prodDesc__grid,
.product-data-wrapper .lo-prodDesc__container {
    padding-block-end: 0;
    max-height: 0;
    opacity: 0;

    overflow: hidden;
    transition:
        max-height 700ms ease-out,
        opacity 600ms ease-in 100ms,
        padding-block-end 700ms ease-out;
}

.lo-prodDesc__container.expanded .lo-prodDesc__grid,
#lo-product-desc .lo-prodDesc__container:has(.lo-prodDesc-produce).expanded .lo-prodDesc__grid,
.product-data-wrapper .lo-prodDesc__container.expanded {
    max-height: 2000px;
    opacity: 1;
    padding-block-end: 55px;

    @media (width < 768px) {
        padding-block-end: 40px;
    }
}

.lo-prodDesc__detailItem {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 24px;
}

#lo-prodDesc .lo-prodDesc__detailIcon {
    object-fit: contain;
    max-height: 52px;
    aspect-ratio: 52 / 52;
    border-radius: 0;
}

.lo-prodDesc__gridItemBody {
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.lo-prodDesc__gridItemTitle {
    font-size: var(--itemsTitleSize);
    font-weight: 600;
    line-height: 1.4;
}

.lo-prodDesc__gridItemDesc {
    font-size: var(--basicTextSize);
    font-weight: 400;
    line-height: 1.4;
}

.lo-prodDesc__setImage {
    width: auto;
    height: 100%;
    max-height: 180px;
    object-position: left top;
}

.lo-prodDesc__featureImage {
    width: 100%;
    max-width: 490px;
    height: auto;
    object-position: left top;
    border-radius: 12px;
}

#lo-prodDesc img.lo-prodDesc__videoPlaceHolder {
    width: 100%;
}

.lo-prodDesc__videoWrapper {
    width: 100%;
    height: auto;
    object-position: left top;
    border-radius: 12px;
    overflow: hidden;
    display: grid;
    position: relative;
}

.video-drag-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
}

.lo-prodDesc__featureVideo {
    grid-column: 1 / -1;
    grid-row: 1 / -1;
    width: 100%;
    max-width: 490px;
    height: auto;
    object-position: left top;
    z-index: 1;
}

.lo-prodDesc-navDesktop {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 5;
    width: 75px;
    height: 100%;
    max-height: 565px;
    padding: 2px;
    display: flex;
    align-items: center;
    transition: all 350ms ease-in-out;

    @media (width <=768px) {
        display: none;
    }
}

.lo-prodDesc-navDesktop.lo-prodDesc-navDesktop--prev {
    justify-content: flex-end;
}

.lo-prodDesc-navDesktop.lo-prodDesc-navDesktop--next {
    justify-content: flex-start;
}

/* .lo-prodDesc-navDesktop:hover {
    background: #DCE0E2;
    backdrop-filter: blur(2px);
} */

.lo-prodDesc-navDesktop .lo-prodDesc-nav__navBtn {
    width: 50px;
    height: 50px;
    padding: 0;
    opacity: 0;
    transition: all 350ms ease-in-out;
    background: #73838D;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
}

.lo-prodDesc-navDesktop:hover .lo-prodDesc-nav__navBtn {
    opacity: 1;
}

.lo-prodDesc-navDesktop--prev {
    left: 0;
}

.lo-prodDesc-navDesktop--next {
    right: 0;
}

.lo-prodDesc-navDesktop .lo-prodDesc-nav__navBtn svg {
    width: 18px;
}

.lo-prodDesc-nav {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border: 1px solid #F2ECE2;
    border-radius: 32px;
    padding: 8px;
    width: fit-content;
    margin-inline: auto;
    margin-block-start: 25px;

    @media (width > 768px) {
        display: none;
    }
}

.lo-prodDesc-nav__navBtn {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: none;
    border: none;
    cursor: pointer;
    width: 24px;
    height: 24px;
}

.lo-prodDesc-nav .lo-prodDesc-nav__pagginationWrapper .swiper-pagination {
    position: relative;
    transform: none;
    top: unset;
    bottom: unset;
    left: unset;
}

.lo-prodDesc-nav .lo-prodDesc-nav__pagginationWrapper .swiper-pagination-bullet {
    border: 1px solid #E0D8D3;
    background: none;
    width: 12px;
    height: 12px;
    opacity: 1;
    cursor: pointer;
    margin-inline: 5px;
}

.lo-prodDesc-nav .lo-prodDesc-nav__pagginationWrapper .lo-prodDesc-swiper-active-bullet {
    border: 1px solid #1E1E20;
    background: #1F1E1D;
    width: 14px;
    height: 14px;
}

/* Reference block */
#product-refGrid#product-refGrid .lo-product-reference {
    padding-inline: 5px;
}

#product-refGrid#product-refGrid .lo-product-reference__item {
    display: flex;
    flex-direction: column;
    background: #FCF8F1;
    padding: 25px;
    border: 1px solid #D2D2D2;
    border-radius: 25px;
    color: #000;

    @media (width < 1024px) {
        padding: clamp(0.75rem, 0.3807rem + 1.8466vw, 1.5625rem);
    }
}

#product-refGrid .lo-product-reference__body {
    padding-inline: 10px;
    order: 2;
}

.lo-product-reference__body--hideContent {
    transition: max-height .75s ease-in, margin-block .75s ease-in;
    max-height: 0;
    overflow: hidden;
}

.lo-product-reference__body--hideContent[open] {
    max-height: 935px;
    transition: max-height .75s ease-in, margin-block .75s ease-in;
}

#lo-prodDesc .lo-product-reference__moreBtn {
    appearance: none;
    background: 0 0;
    border: none;
    display: flex;
    text-align: right;
    justify-content: flex-end;
    align-items: center;
    gap: 7px;
    cursor: pointer;
    color: #000;
    font-family: league spartan, sans-serif;
    font-size: 14px;
    margin-inline-start: auto;
}

.lo-product-reference__moreBtn:focus {
    outline: none;
}

.lo-product-reference__moreBtn:focus-visible {
    outline: 1px solid #fff;
}

.lo-product-reference__moreArrow {
    transition: transform .65s linear;
    transform: rotate(180deg);
    width: 18px;
}

.lo-product-reference__moreArrow[open] {
    transform: rotate(0deg);
    transition: transform .65s linear;
}

#product-refGrid .lo-prodDesc__gridItemDesc--reference {
    margin-block-end: 10px;
    display: block;
}

#product-refGrid .lo-product-reference__specBio {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-left: 5px;
    gap: 10px;
    order: 1;
    margin-block-end: 7px;
}

#lo-prodDesc .lo-product-reference__specPhoto {
    flex-basis: 8%;
    flex-grow: 0;
    flex-shrink: 0;
}

#lo-prodDesc .lo-product-reference__img {
    width: 100%;
    max-width: 175px;
    min-width: 80px;
    border-radius: 50%;
}

#product-refGrid .lo-product-reference__specDesc {
    flex-basis: 90%;
    flex-grow: 0;
}

#lo-prodDesc .lo-prodDesc__gridItemDesc--specName {
    margin: 0;
    line-height: 1.5;
    display: block;
}

#lo-prodDesc .lo-prodDesc__gridItemDesc--specInfo {
    font-size: calc(var(--basicTextSize) - 1px);
    line-height: 1.2;
}

#product-awardGrid#product-awardGrid .lo-product-awards__item {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 10px;
    background: #FCF8F1;
    padding: 25px;
    border: 1px solid #D2D2D2;
    border-radius: 25px;
    color: #000;

    @media (width < 599px) {
        flex-wrap: wrap;
        justify-content: center;
    }
}

#product-awardGrid .lo-product-awards__awardLogo {
    flex-basis: 25%;
    flex-shrink: 0;
    flex-grow: 0;

    @media (width < 599px) {
        flex-basis: 45%;
    }
}

#lo-prodDesc .lo-product-awards__img {
    width: 100%;
    max-width: 170px;
    min-width: 80px;
}

#product-awardGrid .lo-prodDesc__gridItemDesc--awardTitle {
    margin-block-end: 8px;
}

#product-awardGrid .lo-prodDesc__gridItemDesc--award {
    font-size: calc(var(--basicTextSize) - 1px);
}

#product-awardGrid .lo-prodDesc__gridItemDesc--award:first-child {
    margin-block-end: 5px;
}

/* Old prod desc */
#opis,
#lo-product-desc {
    width: min(1560px, 100%);
    margin-inline: auto;
}

#opis .wiersz,
#lo-product-desc .wiersz {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    column-gap: 15px;
    margin-block-end: 35px;
}

#opis .tytul,
#lo-product-desc .tytul {
    width: 90%;
    flex-grow: 1;
}

#opis .opis,
#opis .grafika,
#lo-product-desc .opis,
#lo-product-desc .grafika {
    width: 40%;
    flex-grow: 1;
    padding: 10px;
}

#opis .opis,
#lo-product-desc .opis {
    padding: 10px;

    @media (width < 1024px) {
        width: 60%
    }
}

#opis .grafika_2,
#lo-product-desc .grafika_2,
#opis .grafika:has(img + img),
#lo-product-desc .grafika:has(img + img) {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    gap: 15px;
    justify-content: center;
    align-items: center;

    @media (width < 1024px) {
        flex-wrap: wrap;
    }
}

#opis .grafika_2 .grafika-opis,
#lo-product-desc .grafika_2 .grafika-opis,
#opis .grafika:has(img + img) .grafika-opis,
#lo-product-desc .grafika:has(img + img) .grafika-opis {
    width: 45%;
    flex-grow: 1;
    height: auto;

    @media (width < 1024px) {
        width: 65%;
    }
}

#opis .wiersz:not(:has(.opis)) .tytul,
#lo-product-desc .wiersz:not(:has(.opis)) .tytul {
    width: 45%;

    @media (width < 1024px) {
        width: 65%;
    }
}



/* Prod specyfication */

/* .product-features-wrapper section.page-product-box:first-of-type {
    display: none;
} */

.product-features-wrapper .page-product-box .h6 {
    @media (width < 425px) {}
}

.page-product-box>dl.data-sheet dl {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 5px;
}

.page-product-box>dl.data-sheet dt.name {
    width: auto;
    flex: 0 0 220px;

    @media (width < 425px) {
        flex: 0 0 50%;
        font-size: clamp(0.75rem, 0.369rem + 1.9048vw, 0.875rem);
    }
}

.page-product-box>dl.data-sheet dd.value {
    width: auto;
    flex: 1 1 auto;

    @media (width < 425px) {
        font-size: clamp(0.875rem, 0.494rem + 1.9048vw, 1rem);
    }
}

/* Product notification email */
.text-center.lo-product-allert {
    background: #F4F4F4;
    padding: 18px 19px;
    border-radius: 12px;
}

.lo-product-allert__title {
    text-align: left;
    font-size: 16px;
    font-weight: 700;
    color: #000;
    margin-block-end: 12px;
}

.lo-product-allert__desc {
    text-align: left;
    font-size: 14px;
    color: #000;
    line-height: 1.3;
    margin-block-end: 13px;
}

.text-center .btn.btn-mailAlerts {
    background: #fff;
    color: #1E1E20;
    padding: 10px 22px !important;
    line-height: 1;
    border: 1px solid #1E1E20;
    transition: background 450ms ease-in-out, color 450ms ease-in-out;
    height: auto;
}

.text-center .btn.btn-mailAlerts span {
    font-size: 14px;
    line-height: 14px;
    font-weight: 600;
}

.text-center .btn.btn-mailAlerts:hover {
    background: #1E1E20;
    color: #fff;
    padding: 10px 22px !important;
}

.product-additional-info .social-sharing {
    display: none;
}

.text-center input.form-control {
    border-color: #ADADAD;
    border-radius: 4px;
    color: #000;
}

.text-center input.form-control::placeholder {
    color: #000;
}

.text-center input.form-control:focus {
    border-color: hsla(0, 0%, 68%, 0.4) hsla(0, 0%, 68%, 0.4) #00a446;
}

/* Producer info */
.lo-prodDesc-producer {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 25px;
    flex-wrap: wrap;
}

.lo-prodDesc-producerItem{
    flex: 0 1 auto;
}

.lo-prodDesc-producerItem > * + * {
    margin-block-start: 8px;
}

.lo-prodDesc-producerItem div{
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
}

div.lo-prodDesc-producer__title{
    font-size: 17;
    font-weight: 600;
    line-height: 1;
}

/* Paymant icon */
.lo-payment-metods{
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    gap: 15px;
    margin-block-start: 10px;
}

.lo-payment-metods img{
    width: 48px;
    height: auto;
    aspect-ratio: 40 / 25;
}