/* Media Queries for responsive design */
@media (max-width: 575.98px) {
    .search-input {
        background-size: 20px 20px;
    }

    .product .product-little-gallery-index {
        padding-left: 1rem;
        width: auto;
    }

    .footer-productfluid .btn-container,
    .footer-productfluid .btn-filled-light-blue {
        width: 100%;
    }

    .product-footerbox {
        flex-wrap: wrap;
        justify-content: center !important;
    }

    .product-footerprice {
        flex-basis: 100%;
        text-align: center;
    }



    .product-table .item img {
        width: 35px;
        height: 35px;
    }

    table.table .font-size-20 * {
        font-size: calc(20px / 1.5) !important;
    }

    table.table .font-size-24 * {
        font-size: calc(24px / 1.5) !important;
    }

    .product-table .font-size-32 * {
        font-size: calc(32px / 1.5) !important;
    }

    .why-choose-us .intro-text-wrapper {
        padding: 2rem !important;
        max-width: 100%;
    }

    .request .font-size-20 * {
        font-size: calc(20px / 1.4) !important;
    }

    .request .font-size-32 * {
        font-size: calc(32px / 1.6) !important;
    }

    .product .product-little-gallery-index img {
        width: 100px;
        height: 145px;
        object-fit: cover;
        aspect-ratio: 126 / 182;
        display: block;
    }

    .about-us-section img {
        height: 300px;
    }

    .request textarea {
        height: 120px;
    }

    .product-list {
        padding-top: 2rem;
    }

    .product-list .pagination-bar {
        padding-top: 0;
    }

    .sort-bar.product .sort-bar-inner {
        padding: 1.5rem 1rem;
    }

    .sort-bar.product {
        padding-bottom: 0;
    }

    .product .product-little-gallery-index,
    .text-image-content img {
        max-height: 400px;
    }

    .text-image-content img {
        height: 100%;
    }

    .product .product-little-gallery-index,
    .text-image-content img {
        max-width: 100%;
    }

    .contact .form-control-textarea {
        height: 120px !important;
    }

    .request input,
    .contact .form-control {
        height: 50px;
    }

    .contact .contact-wrapper {
        padding: 2rem 1rem;
    }

    .contact-cards .contact-card {
        height: 100px;
    }

    .contact-cards .icon {
        width: 20px;
        height: 20px;
    }

    .contact-cards .icon-wrapper {
        width: 50px;
        height: 50px;
    }

    .contact-cards .contact-card {
        padding: 1rem;
    }


    .person-image-large,
    .why-choose-us-img,
    .about-us-section img {
        max-width: 100%;
    }

    .little-hero .blog-image-wrapper img,
    .little-hero-img-wrapper {
        height: 150px;
    }

    .text-image-block,
    .sort-bar.product,
    .text-image-block,
    .little-hero {
        padding-top: 1rem;
    }

    footer img.logo {
        width: 60%;
        height: auto;
    }

    .product-features,
    footer,
    .blog,
    .about-section,
    .popular-products-section {
        padding-top: 3rem;
    }

    .product-features,
    .contact,
    .testimonials,
    .blog,
    .about-section,
    .popular-products-section {
        padding-bottom: 3rem;
    }


    .main-header .search-input {
        width: 100%;
    }

    .blog .card {
        max-width: 100%;
    }

    .category-card {
        max-width: 100%;
    }

    .hero-slide {
        padding: 1rem;
    }

    .image-circle-size {
        width: 100px;
        height: 100px;
        flex: 0 0 100px;
    }

    .main-header {
        height: 80px;
    }

    .main-header .icons img {
        width: 24px;
        height: 24px;
    }

    .search .form-control,
    .main-header .search .form-control,
    .main-header input.form-control:focus {
        height: 40px;
    }

    .main-header .logo {
        max-width: 220px;
    }

    /*NAVBAR*/
    .navbar-custom a.navbar-brand img {
        width: 80%;
        height: auto;
    }

    .navbar-top {
        display: none;
    }

    .navbar-bottom li.nav-item.mobileshow {
        display: block;
    }

    .navbar-collapse {
        display: flex;
        justify-content: flex-end;
    }

    .navbar-nav {
        padding: 15px;
        background: #fff;
        position: absolute;
        top: 0;
        width: 250px;
        right: 0;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    }

    .navbar-nav .dropdown-menu {
        position: absolute !important;
    }

    /* END NAVBAR */

    .font-size-48 * {
        font-size: calc(48px/1.8) !important;
    }

    .font-size-45 * {
        font-size: calc(45px/1.6) !important;
    }

    .font-size-40 * {
        font-size: calc(40px/1.6) !important;
    }

    .font-size-32 * {
        font-size: calc(32px/1.45) !important;
    }

    .font-size-24 * {
        font-size: calc(24px/1.3) !important;
    }

    .font-size-20 * {
        font-size: calc(20px/1.2) !important;
    }

    .font-size-18 * {
        font-size: calc(18px/1.15) !important;
    }

    .font-size-16 * {
        font-size: calc(16px/1.1) !important;
    }

    .font-size-15 * {
        font-size: calc(15px) !important;
    }

    .font-size-14 * {
        font-size: calc(14px) !important;
    }

    .font-size-13 * {
        font-size: calc(13px) !important;
    }

    .font-size-12 * {
        font-size: calc(12px) !important;
    }

    .font-size-11 * {
        font-size: calc(11px) !important;
    }
}

/* Extra small devices (phones, less than 576px) */
@media (min-width: 576px) and (max-width: 767.98px) {
    .search-input {
        background-size: 20px 20px;
    }

    .product .product-little-gallery-index {
        padding-left: 1rem;
        width: auto;
    }

    .footer-productfluid .btn-container,
    .footer-productfluid .btn-filled-light-blue {
        width: 100%;
    }

    .product-footerbox {
        flex-wrap: wrap;
        justify-content: center !important;
    }

    .product-footerprice {
        flex-basis: 100%;
        text-align: center;
    }


    .product-table .item img {
        width: 35px;
        height: 35px;
    }

    table.table .font-size-20 * {
        font-size: calc(20px / 1.4) !important;
    }

    table.table .font-size-24 * {
        font-size: calc(24px / 1.4) !important;
    }

    .product-table .font-size-32 * {
        font-size: calc(32px / 1.4) !important;
    }

    .why-choose-us .intro-text-wrapper {
        padding: 2rem !important;
        max-width: 100%;
    }

    .request .font-size-20 * {
        font-size: calc(20px / 1.4) !important;
    }

    .request .font-size-32 * {
        font-size: calc(32px / 1.6) !important;
    }

    .product .product-little-gallery-index img {
        width: 140px;
        height: 182px;
        object-fit: cover;
        aspect-ratio: 126 / 182;
        display: block;
    }

    .about-us-section img {
        height: 300px;
    }

    .request textarea {
        height: 150px;
    }

    .product-list .pagination-bar {
        padding-top: 0;
    }

    .sort-bar.product .sort-bar-inner {
        padding: 1rem 2rem;
    }

    .product .product-little-gallery-index,
    .text-image-content img {
        max-height: 400px;
    }

    .text-image-content img {
        height: 100%;
    }

    .product .product-little-gallery-index,
    .text-image-content img {
        max-width: 100%;
    }

    .contact .form-control-textarea {
        height: 120px !important;
    }

    .request input,
    .contact .form-control {
        height: 50px;
    }

    .contact .contact-wrapper {
        padding: 2rem 2rem;
    }

    .contact-cards .contact-card {
        height: 100px;
    }

    .contact-cards .icon {
        width: 20px;
        height: 20px;
    }

    .contact-cards .icon-wrapper {
        width: 50px;
        height: 50px;
    }

    .contact-cards .contact-card {
        padding: 1rem;
    }

    .person-image-large,
    .why-choose-us-img,
    .about-us-section img {
        max-width: 100%;
    }

    .little-hero .blog-image-wrapper img,
    .little-hero-img-wrapper {
        height: 150px;
    }

    .text-image-block,
    .sort-bar.product,
    .little-hero {
        padding-top: 1rem;
    }


    footer img.logo {
        width: 70%;
        height: auto;
    }

    .product-features,
    footer,
    .blog,
    .about-section,
    .popular-products-section {
        padding-top: 3rem;
    }

    .product-features,
    .contact,
    .testimonials,
    .blog,
    .about-section,
    .popular-products-section {
        padding-bottom: 3rem;
    }

    .main-header .search-input {
        width: 100%;
    }

    .blog .card {
        max-width: 100%;
    }

    .category-card {
        max-width: 100%;
    }

    .hero-slide {
        padding: 1.5rem;
    }

    .image-circle-size {
        width: 120px;
        height: 120px;
        flex: 0 0 120px;
    }

    .main-header {
        height: 80px;
    }

    .main-header .icons img {
        width: 24px;
        height: 24px;
    }

    .search .form-control,
    .main-header .search .form-control,
    .main-header input.form-control:focus {
        height: 50px;
    }

    .main-header .logo {
        max-width: 220px;
    }

    /*NAVBAR*/

    .navbar-custom a.navbar-brand img {
        width: 80%;
        height: auto;
    }

    .navbar-top {
        display: none;
    }

    .navbar-bottom li.nav-item.mobileshow {
        display: block;
    }

    .navbar-collapse {
        display: flex;
        justify-content: flex-end;
    }

    .navbar-nav {
        padding: 15px;
        background: #fff;
        position: absolute;
        top: 0;
        width: 250px;
        right: 0;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    }

    .navbar-nav .dropdown-menu {
        position: absolute !important;
    }

    /* END NAVBAR */

    .font-size-48 * {
        font-size: calc(48px/1.65) !important;
    }

    .font-size-45 * {
        font-size: calc(45px/1.5) !important;
    }

    .font-size-40 * {
        font-size: calc(40px/1.35) !important;
    }

    .font-size-32 * {
        font-size: calc(32px/1.25) !important;
    }

    .font-size-24 * {
        font-size: calc(24px/1.18) !important;
    }

    .font-size-20 * {
        font-size: calc(20px/1.13) !important;
    }

    .font-size-18 * {
        font-size: calc(18px/1.1) !important;
    }

    .font-size-16 * {
        font-size: calc(16px/1.07) !important;
    }

    .font-size-15 * {
        font-size: calc(15px) !important;
    }

    .font-size-14 * {
        font-size: calc(14px) !important;
    }

    .font-size-13 * {
        font-size: calc(13px) !important;
    }

    .font-size-12 * {
        font-size: calc(12px) !important;
    }

    .font-size-11 * {
        font-size: calc(11px) !important;
    }
}

/* Medium devices (tablets, less than 992px) */
@media (min-width: 768px) and (max-width: 991.98px) {
    .product .product-little-gallery-index {
        padding-left: 1rem;
        width: auto;
    }

    .footer-productfluid .btn-container,
    .footer-productfluid .btn-filled-light-blue {
        width: 100%;
    }

    .product-footerbox {
        flex-wrap: wrap;
        justify-content: center !important;
    }

    .product-footerprice {
        flex-basis: 100%;
        text-align: center;
    }


    .text-image-block.product .font-size-20 * {
        font-size: calc(20px / 1.3) !important;
    }

    .text-image-block.product .font-size-40 * {
        font-size: calc(40px / 1.4) !important;
    }

    .product-table .item img {
        width: 50px;
        height: 50px;
    }

    table.table .font-size-20 * {
        font-size: calc(20px / 1.3) !important;
    }

    table.table .font-size-24 * {
        font-size: calc(24px / 1.3) !important;
    }

    .product-table .font-size-32 * {
        font-size: calc(32px / 1.3) !important;
    }

    .why-choose-us .intro-text-wrapper {
        padding: 3rem !important;
        max-width: 100%;
    }

    .request .font-size-20 * {
        font-size: calc(20px / 1.3) !important;
    }

    .request .font-size-32 * {
        font-size: calc(32px / 1.4) !important;
    }

    .why-choose-us-section .font-size-32 * {
        font-size: calc(32px/1.2) !important;
    }

    .why-choose-us-section .font-size-18 * {
        font-size: calc(18px/1.15) !important;
    }

    .product .product-little-gallery-index img {
        width: 140px;
        height: 182px;
        object-fit: cover;
        aspect-ratio: 126 / 182;
        display: block;
    }

    .about-us-section img {
        height: 300px;
    }

    .request textarea {
        height: 180px;
    }

    .product .product-little-gallery-index,
    .text-image-content img {
        max-height: 500px;
    }

    .text-image-content img {
        height: 100%;
    }

    .product .product-little-gallery-index,
    .text-image-content img {
        max-width: 100%;
    }

    .contact .form-control-textarea {
        height: 120px !important;
    }

    .request input,
    .contact .form-control {
        height: 50px;
    }

    .contact .contact-wrapper {
        padding: 2rem 3rem;
    }

    .contact-cards .contact-card {
        height: 120px;
    }

    .contact-cards .icon {
        width: 25px;
        height: 25px;
    }

    .contact-cards .icon-wrapper {
        width: 60px;
        height: 60px;
    }

    .contact-cards .contact-card {
        padding: 1rem;
    }

    .little-hero .blog-image-wrapper img,
    .little-hero-img-wrapper {
        height: 200px;
    }

    footer img.logo {
        width: 80%;
        height: auto;
    }

    .product-features,
    footer,
    .blog,
    .about-section,
    .popular-products-section {
        padding-top: 3rem;
    }

    .product-features,
    .contact,
    .testimonials,
    .blog,
    .about-section,
    .popular-products-section {
        padding-bottom: 3rem;
    }

    .newsletter-input {
        max-width: 100%;
    }

    .main-header .search-input {
        width: 100%;
    }

    .hero-slide {
        padding: 2rem;
    }

    .image-circle-size {
        width: 180px;
        height: 180px;
        flex: 0 0 180px;
    }

    .main-header {
        height: 100px;
    }

    .main-header .icons img {
        width: 24px;
        height: 24px;
    }

    .search .form-control,
    .main-header .search .form-control,
    .main-header input.form-control:focus {
        height: 60px;
    }

    .main-header .logo {
        max-width: 200px;
    }

    /*NAVBAR*/

    .navbar-custom a.navbar-brand img {
        width: 80%;
        height: auto;
    }

    .navbar-top {
        display: none;
    }

    .navbar-bottom li.nav-item.mobileshow {
        display: block;
    }

    .navbar-collapse {
        display: flex;
        justify-content: flex-end;
    }

    .navbar-nav {
        padding: 15px;
        background: #fff;
        position: absolute;
        top: 0;
        width: 250px;
        right: 0;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    }

    .navbar-nav .dropdown-menu {
        position: absolute !important;
    }

    /* END NAVBAR */

    .font-size-48 * {
        font-size: calc(48px/1.25) !important;
    }

    .font-size-45 * {
        font-size: calc(45px/1.15) !important;
    }

    .font-size-40 * {
        font-size: calc(40px/1.18) !important;
    }

    .font-size-32 * {
        font-size: calc(32px/1.13) !important;
    }

    .font-size-24 * {
        font-size: calc(24px/1.09) !important;
    }

    .font-size-20 * {
        font-size: calc(20px/1.07) !important;
    }

    .font-size-18 * {
        font-size: calc(18px/1.05) !important;
    }

    .font-size-16 * {
        font-size: calc(16px/1.03) !important;
    }

    .font-size-15 * {
        font-size: calc(15px) !important;
    }

    .font-size-14 * {
        font-size: calc(14px) !important;
    }

    .font-size-13 * {
        font-size: calc(13px) !important;
    }

    .font-size-12 * {
        font-size: calc(12px) !important;
    }

    .font-size-11 * {
        font-size: calc(11px) !important;
    }
}

/* Large devices (desktops, less than 1200px) */
@media (min-width: 992px) and (max-width: 1199.98px) {
    .text-image-block.product .font-size-20 * {
        font-size: calc(20px / 1.1) !important;
    }

    .text-image-block.product .font-size-40 * {
        font-size: calc(40px / 1.2) !important;
    }

    table.table .font-size-20 * {
        font-size: calc(20px / 1.2) !important;
    }

    table.table .font-size-24 * {
        font-size: calc(24px / 1.2) !important;
    }

    .product-table .font-size-32 * {
        font-size: calc(32px / 1.2) !important;
    }

    .request .font-size-20 * {
        font-size: calc(20px / 1.2) !important;
    }

    .request .font-size-32 * {
        font-size: calc(32px / 1.3) !important;
    }

    .why-choose-us .font-size-40 * {
        font-size: calc(40px/1.1) !important;
    }

    .why-choose-us .font-size-18 * {
        font-size: calc(18px/1.1) !important;
    }


    .product-categories .font-size-24 * {
        font-size: calc(24px/1.1) !important;
    }


    .product .product-little-gallery-index img {
        width: 100px;
        height: 145px;
        object-fit: cover;
        aspect-ratio: 126 / 182;
        display: block;
    }

    .contact .contact-wrapper {
        padding: 2rem 5rem;
    }

    .contact-cards .contact-card {
        height: 140px;
    }

    .contact-cards .icon {
        width: 25px;
        height: 25px;
    }

    .contact-cards .icon-wrapper {
        width: 60px;
        height: 60px;
    }

    .contact-cards .contact-card {
        padding: 1rem;
    }



    .little-hero .blog-image-wrapper img {
        height: 250px;
    }

    footer img.logo {
        width: 80%;
        height: auto;
    }

    footer,
    .blog,
    .about-section,
    .popular-products-section {
        padding-top: 3rem;
    }

    .contact,
    .testimonials,
    .blog,
    .about-section,
    .popular-products-section {
        padding-bottom: 3rem;
    }

    .newsletter-input {
        max-width: 100%;
    }

    .main-header .search-input {
        width: 100%;
    }

    .category-circle {
        width: 120px;
        height: 120px;
    }

    .hero-slide {
        padding: 4rem;
    }

    .image-circle-size {
        width: 230px;
        height: 230px;
        flex: 0 0 230px;
    }

    .main-header {
        height: 120px;
    }

    /*NAVBAR*/

    .navbar-custom a.navbar-brand img {
        width: 80%;
        height: auto;
    }

    .navbar-top {
        display: none;
    }

    .navbar-bottom li.nav-item.mobileshow {
        display: block;
    }

    .navbar-collapse {
        display: flex;
        justify-content: flex-end;
    }

    .navbar-nav {
        padding: 15px;
        background: #fff;
        position: absolute;
        top: 0;
        width: 250px;
        right: 0;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    }

    .navbar-nav .dropdown-menu {
        position: absolute !important;
    }

    /* END NAVBAR */

    .font-size-48 * {
        font-size: calc(48px/1.1) !important;
    }

    .font-size-45 * {
        font-size: calc(45px/1.08) !important;
    }

    .font-size-40 * {
        font-size: calc(40px/1.08) !important;
    }

    .font-size-32 * {
        font-size: calc(32px/1.06) !important;
    }

    .font-size-24 * {
        font-size: calc(24px/1.04) !important;
    }

    .font-size-20 * {
        font-size: calc(20px/1.03) !important;
    }

    .font-size-18 * {
        font-size: calc(18px/1.02) !important;
    }

    .font-size-16 * {
        font-size: calc(16px/1.01) !important;
    }

    .font-size-15 * {
        font-size: calc(15px) !important;
    }

    .font-size-14 * {
        font-size: calc(14px) !important;
    }

    .font-size-13 * {
        font-size: calc(13px) !important;
    }

    .font-size-12 * {
        font-size: calc(12px) !important;
    }

    .font-size-11 * {
        font-size: calc(11px) !important;
    }
}


@media (max-width: 767.98px) {
    .blog .service-card {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .blog .service-card {
        flex: 0 0 45%;
        max-width: 45%;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .blog .service-card {
        flex: 0 0 30%;
        max-width: 30%;
    }
}


@media (max-width: 991px) {
    .about-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(4, 1fr);
    }

    .about-img-tall-short {
        grid-row: span 2;
        display: grid;
        grid-template-rows: 2fr 1fr;
        gap: 2rem;
    }
}

@media (min-width: 1200px) and (max-width: 1399px) {
    .newsletter-input {
        max-width: 440px;
    }

    .why-choose-us .font-size-40 * {
        font-size: calc(40px/1.1) !important;
    }

    .why-choose-us .font-size-18 * {
        font-size: calc(18px/1.1) !important;
    }

    .product-categories .font-size-24 * {
        font-size: calc(24px/1.1) !important;
    }

    .product .text-block {
        padding-left: 2rem;
    }

    .contact-cards .contact-card {
        padding: 1rem;
    }

    .image-circle-size {
        width: 240px;
        height: 240px;
        flex: 0 0 240px;
    }

    .product-categories .title {
        height: 130px;
    }
}

@media (min-width: 992px) {
    .product .product-little-gallery-index .splide__slide {
        width: auto !important;
    }
}

/* Mobil nézet: a termékkép 100% széles, alatta a szöveg */
@media (max-width: 575.98px) {
    .request .added-products img {
        max-width: 100%;
    }

    .added-product-item {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .added-product-item>a {
        width: 100%;
        margin-bottom: 0.5rem;
        display: block;
    }

    .added-product-item>a img {
        width: 100%;
        height: auto;
        object-fit: contain;
        display: block;
    }

    .added-product-item .flex-grow-1 {
        width: 100%;
    }
}

@media (max-width: 767.98px) {
    #header-search-results {
        position: fixed !important;
        left: 1rem !important;
        right: 1rem !important;
        top: 60px !important;
        /* vagy igazítsd a header magasságához */
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        border-radius: 0 0 12px 12px;
        z-index: 2000 !important;
    }
}

@media (min-width: 767.98px) {
    #header-search-results {
        position: absolute !important;
        left: 0 !important;
        right: auto !important;
        min-width: 400px !important;
        width: 100% !important;
        max-width: 100% !important;
        border-radius: 0 0 12px 12px;
        z-index: 1000 !important;
    }
}