@media (min-width: 768px) and (max-width: 1023.98px) {
    .site-header__inner {
        height: 44px;
        gap: 20px;
    }

    .site-header__right {
        flex: 1 1 auto;
        justify-content: flex-end;
        gap: 12px;
    }

    .site-search {
        flex: 1 1 auto;
        height: 44px;
        min-width: 0;
    }

    .site-lang {
        display: none;
    }

    .site-basket {
        height: 44px;
        padding: 8px 12px;
    }

    .site-burger {
        flex: 0 0 44px;
        width: 44px;
        height: 44px;
        padding: 0 13px;
    }

    .mobile-nav {
        max-height: calc(100vh - 84px);
    }

    .mobile-nav__inner {
        max-width: var(--wrap);
        margin: 0 auto;
        padding: 8px 0 32px;
    }

    .mobile-nav__list a {
        padding: 13px 0;
        font-size: 18px;
        line-height: 24px;
    }

    .mobile-nav__lang {
        height: 44px;
        min-width: 56px;
        margin-top: 24px;
    }

    .section-title,
    .page-title,
    .product-section__title,
    .cta__title {
        font-size: 28px;
        line-height: 36px;
    }

    .about-title {
        font-size: 26px;
        line-height: 36px;
    }

    .hero {
        height: auto;
    }

    .hero__inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 38%;
        column-gap: 32px;
        align-items: stretch;
        height: auto;
        padding: 64px 0 72px;
    }

    .hero__content {
        width: auto;
        min-width: 0;
    }

    .hero__title {
        font-size: clamp(34px, 4vw, 40px);
        line-height: 1.25;
    }

    .hero__lead {
        font-size: 17px;
        line-height: 27px;
    }

    .hero__buttons {
        flex-wrap: wrap;
        margin-top: 32px;
    }

    .hero__line {
        margin: 32px 0;
    }

    .hero__stats {
        gap: 24px;
    }

    .hero__stat {
        flex: 1 1 0;
        min-width: 0;
    }

    .hero__stat-number {
        font-size: 40px;
        line-height: 40px;
    }

    .hero__image {
        position: static;
        width: 100%;
        height: 100%;
        min-height: 380px;
        object-position: 50% 30%;
        contain: size;
    }

    .partners {
        padding-top: 56px;
    }

    .partners__inner {
        gap: 28px;
    }

    .partners__label {
        font-size: 18px;
    }

    .partners__line {
        margin-top: 48px;
    }

    .directions {
        padding: 72px 0 80px;
    }

    .directions__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px;
        margin-top: 40px;
    }

    .directions__grid .card:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    .card {
        min-height: 0;
        gap: 32px;
        padding: 28px;
    }

    .card__title {
        font-size: 22px;
        line-height: 28px;
    }

    .reviews {
        padding: 72px 0;
    }

    .reviews__head,
    .related__head,
    .more-news__head {
        gap: 24px;
        margin-bottom: 32px;
    }

    .reviews__arrow {
        width: 44px;
        height: 44px;
    }

    .reviews__track,
    .related__track,
    .more-news__track {
        gap: 24px;
    }

    .review {
        flex: 0 0 calc((100% - 24px) / 2);
        padding: 24px 28px;
    }

    .reviews--about .review {
        padding: 28px;
    }

    .reviews.reviews--about {
        padding: 80px 0 0;
    }

    .faq {
        padding: 80px 0 96px;
    }

    .faq__inner {
        flex-direction: column;
        gap: 32px;
    }

    .faq__intro {
        width: auto;
        max-width: 560px;
    }

    .faq__text {
        margin: 16px 0 24px;
    }

    .faq__intro .btn--small {
        height: 44px;
    }

    .faq__list {
        width: 100%;
        gap: 8px;
        padding-top: 0;
    }

    .faq__question {
        min-height: 44px;
        padding: 10px 0 16px;
    }

    .faq__list.faq__list--duk {
        gap: 8px;
    }

    .faq__list--duk .faq__question {
        padding: 10px 0 15px;
    }

    .cta {
        padding-bottom: 80px;
    }

    .cta.cta--about {
        padding-top: 80px;
    }

    .cta__box {
        gap: 24px;
        padding: 32px;
    }

    .contact {
        padding: 80px 0;
    }

    .single-product .contact {
        padding-top: 80px;
    }

    .contact.contact--article {
        padding: 80px 0 0;
    }

    .contact.contact--duk {
        padding: 80px 0 96px;
    }

    .contact__box {
        flex-direction: column;
        gap: 32px;
        padding: 40px 32px;
    }

    .contact__info,
    .contact__form {
        flex: none;
        width: 100%;
    }

    .contact__lead {
        max-width: 560px;
    }

    .contact__list {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 16px 40px;
        margin-top: 28px;
    }

    .contact__row {
        gap: 16px;
    }

    .contact__row + .contact__row,
    .contact__textarea {
        margin-top: 16px;
    }

    .contact__consent {
        min-height: 44px;
        margin-top: 8px;
    }

    .contact__submit {
        margin-top: 8px;
    }

    .site-footer {
        padding: 48px 0 24px;
    }

    .site-footer__top {
        flex-direction: column;
        gap: 40px;
    }

    .site-footer__brand {
        flex: none;
        width: 100%;
        max-width: 480px;
        min-height: 0;
    }

    .site-footer__social {
        gap: 12px;
        margin-top: 24px;
    }

    .site-footer__cols {
        justify-content: space-between;
        width: 100%;
        gap: 24px;
    }

    .site-footer__col {
        width: auto;
    }

    .site-footer__links {
        gap: 8px;
    }

    .site-footer__bottom {
        margin-top: 40px;
    }

    .site-footer__row {
        gap: 24px;
    }

    .site-footer__legal {
        flex-wrap: wrap;
        gap: 4px 20px;
    }

    .page-title {
        margin-top: 40px;
    }

    .page-title--shop,
    .page-title--contacts {
        margin-top: 0;
    }

    .partner-list {
        padding: 40px 0 96px;
    }

    .news__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 24px;
    }

    .partner-list__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 20px;
        row-gap: 20px;
    }

    .partner-card__title {
        font-size: 22px;
        line-height: 32px;
    }

    .partner-card__link {
        min-height: 32px;
    }

    .partner-card__logo {
        padding: 16px;
    }

    .partner-card__logo img {
        max-width: 100%;
        height: auto;
    }

    .partner-hero__inner {
        grid-template-columns: minmax(0, 1fr);
        column-gap: 0;
        min-height: 0;
        padding-bottom: 64px;
    }

    .partner-hero__left {
        display: grid;
        grid-template-columns: 240px minmax(0, 1fr);
        grid-template-rows: auto auto;
        column-gap: 32px;
        align-content: center;
        margin-top: 40px;
    }

    .partner-hero__logo {
        grid-row: 1 / 3;
        width: 240px;
        height: 125px;
    }

    .partner-hero__meta {
        align-self: end;
        margin: 0;
    }

    .partner-hero__site {
        align-self: start;
        justify-self: start;
        min-height: 44px;
        margin-top: 4px;
    }

    .partner-hero__line {
        width: 100%;
        height: 1px;
        min-height: 0;
        margin-top: 40px;
        background: #1e3a40;
    }

    .partner-hero__right {
        margin-top: 40px;
    }

    .partner-hero__title {
        font-size: 32px;
        line-height: 40px;
    }

    .partner-hero__right .btn {
        height: 44px;
        margin-top: 32px;
    }

    .categories {
        padding-top: 80px;
    }

    .categories__grid {
        gap: 24px;
        margin-top: 40px;
    }

    .category-card {
        gap: 24px;
        padding: 24px;
    }

    .solutions {
        padding-top: 80px;
    }

    .solutions__tabs {
        flex-wrap: wrap;
        gap: 0;
        margin-top: 24px;
        border-bottom: 0;
    }

    .solutions__tab {
        flex: 1 1 auto;
        margin: 0;
        padding: 0 16px 10px;
        border-bottom: 1px solid #cacaca;
        white-space: nowrap;
    }

    .solutions__tab.is-active {
        padding-bottom: 9px;
        border-bottom: 2px solid #499d64;
    }

    .solutions__panel .btn {
        height: 44px;
        margin-top: 28px;
    }

    .shop {
        padding-bottom: 96px;
    }

    .shop__head {
        flex-wrap: wrap;
        align-items: center;
        gap: 16px 24px;
        height: auto;
        margin-top: 32px;
    }

    .shop__controls {
        margin-top: 0;
    }

    .shop__select select {
        height: 44px;
    }

    .shop__line {
        margin-top: 20px;
    }

    .shop__body {
        flex-direction: column;
        align-items: stretch;
        gap: 32px;
        margin-top: 32px;
    }

    .shop__filters {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr) auto;
        gap: 24px 40px;
        flex: none;
        width: auto;
        padding: 16px 20px 12px;
    }

    .shop__filters .filter-group:nth-child(2) .filter-group__list {
        column-count: 2;
        column-gap: 16px;
    }

    .filter-group__list li {
        break-inside: avoid;
    }

    .filter-group__list {
        margin-top: 4px;
    }

    .filter-option {
        min-height: 44px;
        height: auto;
        line-height: 20px;
    }

    .filter-option span {
        white-space: normal;
    }

    .shop__results {
        width: 100%;
    }

    .shop__grid {
        gap: 24px;
    }

    .pagination {
        margin-top: 40px;
    }

    .pagination .page-numbers {
        width: 44px;
        height: 44px;
    }

    .product-card__btn {
        height: 44px;
    }

    .product-hero__inner {
        gap: 32px;
        margin-top: 32px;
    }

    .product-gallery {
        flex: 0 0 44%;
    }

    .product-gallery__main {
        padding: 28px;
    }

    .product-gallery__thumbs {
        gap: 12px;
        margin-top: 12px;
    }

    .product-info__title {
        margin-top: 8px;
        font-size: 28px;
        line-height: 36px;
        overflow-wrap: anywhere;
    }

    .product-info__stock {
        margin-top: 32px;
    }

    .product-info__row {
        flex-wrap: wrap;
        gap: 16px;
    }

    .product-info__btn {
        height: 44px;
    }

    .product-tabs {
        margin-top: 48px;
    }

    .product-tabs__inner {
        gap: 32px;
    }

    .product-tabs__tab {
        padding: 18px 0;
        font-size: 17px;
    }

    .models {
        padding-top: 32px;
    }

    .qty__btn {
        flex-basis: 36px;
        width: 36px;
        height: 36px;
    }

    .qty__input {
        height: 36px;
    }

    .models__add {
        height: 44px;
    }

    .models__actions {
        width: 150px;
    }

    .models__add {
        width: 100%;
    }

    .product-desc {
        padding-top: 72px;
    }

    .product-desc__text {
        margin-top: 24px;
    }

    .spec {
        margin-top: 72px;
        padding: 56px 0;
    }

    .spec__table {
        margin-top: 24px;
    }

    .spec__table .spec__label {
        width: 38%;
        padding-right: 32px;
        white-space: normal;
    }

    .related {
        padding-top: 80px;
    }

    .about-hero {
        min-height: 0;
    }

    .about-hero__inner {
        padding-bottom: 64px;
    }

    .about-hero__row {
        flex-direction: column;
        gap: 24px;
        margin-top: 40px;
    }

    .about-hero__title {
        flex: none;
        width: auto;
        padding-right: 0;
        font-size: 32px;
    }

    .about-hero__text {
        flex: none;
        width: 100%;
    }

    .why {
        padding-top: 72px;
    }

    .why__grid {
        gap: 24px;
        margin-top: 32px;
    }

    .why__item {
        min-height: 0;
        padding-bottom: 24px;
    }

    .team {
        padding-top: 80px;
    }

    .team__grid {
        gap: 24px;
        margin-top: 32px;
    }

    .news {
        padding: 40px 0 96px;
    }

    .news__grid {
        row-gap: 32px;
    }

    .page-title--news,
    .page-title--duk,
    .page-title--text,
    .page-title--cart {
        margin-top: 40px;
    }

    .news-article__title {
        margin-top: 40px;
        font-size: 34px;
        line-height: 1.25;
    }

    .news-article__banner {
        margin-top: 32px;
    }

    .news-article__content {
        margin-top: 32px;
    }

    .news-gallery {
        gap: 24px;
        margin: 32px 0;
    }

    .more-news {
        padding: 80px 0 96px;
    }

    .contacts {
        padding-bottom: 80px;
    }

    .contacts__inner {
        flex-direction: column;
        align-items: stretch;
        gap: 40px;
        padding-top: 40px;
    }

    .contacts__info,
    .contacts__form {
        flex: none;
        width: 100%;
        margin-top: 0;
    }

    .contacts__info {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        column-gap: 32px;
        align-items: start;
    }

    .contacts__info > .page-title,
    .contacts__lead {
        grid-column: 1 / -1;
    }

    .contacts__company {
        grid-column: 1;
        grid-row: 3 / 5;
        margin-top: 24px;
    }

    .contacts__list {
        grid-column: 2;
        grid-row: 3;
        margin-top: 24px;
    }

    .contacts__social {
        grid-column: 2;
        grid-row: 4;
        margin-top: 24px;
    }

    .contacts__row + .contacts__row,
    .contacts__textarea {
        margin-top: 16px;
    }

    .contacts__textarea {
        height: 180px;
    }

    .contacts__social-links a {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 44px;
        min-height: 44px;
    }

    .contacts__social-links {
        gap: 0;
        margin: 2px 0 0 -12px;
    }

    .contacts__social-links a + a {
        margin-left: -16px;
    }

    .contacts__map {
        margin-top: 64px;
    }

    .duk__line {
        margin-top: 20px;
    }

    .duk__body {
        flex-direction: column;
        align-items: stretch;
        gap: 32px;
        margin-top: 32px;
    }

    .duk__topics,
    .duk__content {
        flex: none;
        width: 100%;
    }

    .duk__topics-box {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 4px;
    }

    .duk__topic {
        display: flex;
        align-items: center;
        min-height: 44px;
        white-space: normal;
    }

    .cart {
        padding-bottom: 96px;
    }

    .cart__inner {
        margin-top: 32px;
    }

    .cart__head,
    .cart__row {
        grid-template-columns: minmax(0, 400fr) minmax(140px, 200fr) minmax(80px, 154fr) 44px;
    }

    .cart__remove {
        justify-self: end;
    }

    .cart__remove-link {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        margin-right: -14px;
    }

    .qty--cart .qty__input {
        flex-basis: 64px;
        width: 64px;
    }

    .cart__continue {
        min-height: 44px;
    }

    .cart__actions {
        margin-top: 20px;
    }

    .checkout-page {
        padding-bottom: 96px;
    }

    .checkout__form {
        margin-top: 32px;
    }

    .checkout__heading {
        margin: 40px 0 20px;
    }

    .checkout__heading--delivery {
        margin-top: 32px;
    }

    .checkout__grid {
        gap: 20px 24px;
    }

    .checkout__grid--delivery #billing_address_1_field {
        width: calc(200% + 24px - 213px);
    }

    .order-summary__consent {
        min-height: 44px;
        align-items: center;
    }

    .text-page {
        padding-bottom: 80px;
    }

    .text-page__content {
        margin-top: 24px;
    }

    .woocommerce-form-login {
        max-width: 480px;
        margin-top: 16px;
    }

    .woocommerce-form-login .form-row {
        margin: 0 0 20px;
    }

    .woocommerce-form-login .form-row-wide label {
        display: block;
        margin-bottom: 8px;
        font-size: 12px;
        line-height: 15px;
        font-weight: 500;
        color: #000000;
    }

    .woocommerce-form-login .password-input {
        display: block;
    }

    .woocommerce-form-login .show-password-input {
        display: none;
    }

    .woocommerce-form-login .input-text {
        display: block;
        width: 100%;
        height: 46px;
        margin: 0;
        padding: 0 16px;
        border: 1px solid var(--color-border);
        border-radius: 8px;
        background: #ffffff;
        font-family: var(--font);
        font-size: 16px;
        line-height: 24px;
        color: #000000;
        outline: none;
    }

    .woocommerce-form-login .input-text:focus {
        border-color: #0b3c36;
        box-shadow: 0 0 0 1px #0b3c36;
    }

    .woocommerce-form-login__rememberme {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        min-height: 44px;
        font-size: 14px;
        line-height: 20px;
        cursor: pointer;
    }

    .woocommerce-form-login__rememberme input {
        width: 18px;
        height: 18px;
        margin: 0;
        accent-color: #499d64;
    }

    .woocommerce-form-login__submit {
        display: block;
        width: 100%;
        height: 49px;
        margin-top: 12px;
        padding: 15px 20px;
        border: 0;
        border-radius: 8px;
        background: #499d64;
        font-family: var(--font);
        font-size: 16px;
        line-height: 19px;
        color: #ffffff;
        cursor: pointer;
    }

    .woocommerce-form-login__submit:hover {
        background: #0b3c36;
    }

    .woocommerce-form-login .lost_password {
        margin: 0;
    }

    .cart-modal__box {
        width: min(520px, calc(100% - 48px));
    }

    .cart-modal__close {
        width: 44px;
        height: 44px;
        top: 12px;
        right: 12px;
        line-height: 44px;
    }

    .cart-modal__actions .btn {
        height: 44px;
    }

    @media (max-width: 768.98px) {
        .cmplz-cookiebanner.cmplz-cookiebanner {
            left: auto;
            right: 10px;
            bottom: 10px;
            width: auto;
        }

        .cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons {
            flex-direction: row;
        }
    }
}

@media (min-width: 900px) and (max-width: 1023.98px) {
    .categories__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .shop__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .related__track .product-card {
        flex: 0 0 calc((100% - 48px) / 3);
    }

    .more-news__track .news-card {
        flex: 0 0 calc((100% - 48px) / 3);
    }

    .news__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .why__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .team__grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .cart__inner,
    .checkout__form {
        gap: 0 24px;
    }

    .cart-collaterals,
    .checkout__side {
        flex: 0 0 300px;
    }

    .models__head,
    .models__row {
        grid-template-columns: minmax(0, 1fr) 170px 96px 120px 150px;
    }

    .models__name {
        padding-right: 32px;
    }

    .solutions__tab {
        padding-left: 12px;
        padding-right: 12px;
    }

    .contact__box {
        flex-direction: row;
        gap: 40px;
        padding: 40px;
    }

    .contact__info {
        flex: 1 1 0;
        width: auto;
        min-width: 0;
    }

    .contact__form {
        flex: 0 0 54%;
        width: auto;
    }

    .contact__list {
        flex-direction: column;
        gap: 16px;
        margin-top: 40px;
    }

    .site-footer__top {
        flex-direction: row;
        gap: 40px;
    }

    .site-footer__brand {
        flex: 0 1 260px;
        width: auto;
        min-height: 0;
    }

    .site-footer__social {
        margin-top: auto;
        padding-top: 24px;
    }

    .site-footer__cols {
        flex: 0 1 auto;
        width: auto;
        gap: 32px;
    }
}

@media (min-width: 768px) and (max-width: 899.98px) {
    .categories__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .solutions__tab {
        flex: 1 1 50%;
    }

    .shop__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .related__track .product-card {
        flex: 0 0 calc((100% - 24px) / 2);
    }

    .more-news__track .news-card {
        flex: 0 0 calc((100% - 24px) / 2);
    }

    .why__grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
    }

    .team__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cart__inner,
    .checkout__form {
        flex-direction: column;
        align-items: stretch;
        gap: 40px;
    }

    .cart__form,
    .checkout__main,
    .cart-collaterals,
    .checkout__side {
        flex: none;
        width: 100%;
        max-width: none;
    }

    .models__head {
        display: none;
    }

    .models__row {
        grid-template-columns: repeat(3, minmax(0, 1fr)) 150px;
        grid-template-areas: "name name name name" "stock warranty price actions";
        align-items: end;
        gap: 16px 24px;
        padding: 24px 0;
    }

    .models__name {
        grid-area: name;
        padding-right: 0;
    }

    .models__stock {
        grid-area: stock;
    }

    .models__warranty {
        grid-area: warranty;
    }

    .models__price {
        grid-area: price;
    }

    .models__actions {
        grid-area: actions;
    }

    .models__stock,
    .models__warranty,
    .models__price {
        align-self: center;
    }

    .models__stock {
        position: relative;
        padding-top: 16px;
    }

    .models__stock::after {
        content: "Prieinamumas";
        position: absolute;
        top: 0;
        left: 0;
        font-size: 12px;
        line-height: 16px;
        font-weight: 500;
        color: #6e6e6e;
        white-space: nowrap;
    }

    .models__warranty::before,
    .models__price::before {
        display: block;
        font-size: 12px;
        line-height: 16px;
        font-weight: 500;
        color: #6e6e6e;
    }

    .models__warranty::before {
        content: "Garantinis";
    }

    .models__price::before {
        content: "Kaina be PVM";
    }
}

@media (min-width: 768px) and (max-width: 899.98px) {
    .shop__filters {
        grid-template-columns: auto minmax(0, 1fr);
        gap: 24px 48px;
    }

    .shop__filters .filter-group:nth-child(2) {
        grid-column: 2;
        grid-row: 1 / span 2;
    }

    .shop__filters .filter-group:nth-child(3) {
        grid-column: 1;
        grid-row: 2;
    }
}
