:root {

    --container-padding-lg: 3rem;
    --container-padding-md: 2.4rem;
    --container-padding-sm: 2rem;
    --container-padding-xs: 1.6rem;
    --container-padding-xxs: 1.2rem;


    --pagination-bottom-lg: 3rem;
    --pagination-bottom-md: 2rem;
    --pagination-bottom-sm: 1.5rem;


    --title-size-lg: 4rem;
    --title-size-md: 3.52rem;
    --title-size-sm: 2.88rem;
    --title-size-xs: 2.56rem;
}

@media (max-width: 1600px) {
    .w {
        width: 100%;
        padding: 0 var(--container-padding-lg);
    }
}


@media (max-width: 1280px) {

    .main-container {
        gap: 3rem;
    }

    .main-right {
        width: 32rem;
    }

    .product-detail-container {
        gap: 4rem;
    }

    .product-info {
        width: 35rem;
    }

    .news-section .news-grid .news-card:last-child {
        display: block;
    }

    .products-list .products-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .seek-cooperation-content {
        grid-template-columns: 1fr;
    }

    .seek-cooperation-left {
        display: none;
    }
}




@media (max-width: 1024px) {


    .w,
    .nav .w,
    .footer .w {
        padding: 0 var(--container-padding-md);
    }

    .main {
        padding-top: 0;
    }

    .choose-title {
        text-align: center
    }

    .contact-content, .products-list .products-list-container, .related-grid {
        grid-template-columns: 1fr
    }

    .related-articles {
        margin-top: 6rem;
        padding-top: 4rem;
    }

    .related-articles h3 {
        font-size: 2.8rem;
        margin-bottom: 3rem;
    }

    .related-card {
        margin-bottom: 2rem;
    }

    .related-content {
        padding: 1.5rem;
    }

    .related-content h4 {
        font-size: 1.6rem;
    }

    .related-content p {
        font-size: 1.3rem;
    }

    .products-list .products-sidebar {
        position: relative;
        top: 0;
    }

    .products-list .products-sidebar-content {
        padding: 0
    }

    .news-list .news-image, .products-list .product-image {
        height: auto;
    }

    .news-list .news-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .news-list .news-grid a:last-child .news-card {
        display: none;
    }

    .products-list {
        padding-top: 4rem
    }

    .about-company, .news-section {
        padding: 6rem 0
    }

    .news-section .news-grid .news-card:last-child {
        display: block;
    }

    .page-banner {
        margin-top: 6.6rem;
    }

    .about-content {
        grid-template-columns: 1fr
    }

    .about-stats, .why-choose-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .company-image img {
        height: auto;
    }


    .header-top {
        display: none;
    }


    .nav {
        background: rgba(0, 0, 0, 0.3);
    }

    .header.scrolled .nav {
        background: rgba(255, 255, 255, 0.95);
    }

    .nav-toggle {
        display: flex;
    }

    .nav-menu {
        position: fixed;
        top: 6.6rem;
        left: -100%;
        width: 100%;
        height: calc(100vh - 7.5rem);
        background: rgba(255, 255, 255, 0.98);
        backdrop-filter: blur(1rem);
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        gap: 0;
        padding: 4rem 0;
        transition: left 0.3s ease;
        z-index: 999;
        box-shadow: 0 .5rem 2rem rgba(0, 0, 0, 0.1);
    }

    .nav-menu.active {
        left: 0;
    }

    .nav-item {
        width: 100%;
        text-align: center;
        border-bottom: .1rem solid rgba(0, 0, 0, 0.05);
    }

    .nav-link {
        display: block;
        padding: 2rem 0;
        font-size: 1.92rem;
        width: 100%;
        color: #333 !important;
        text-shadow: none !important;
    }

    .nav-right {
        gap: 1.2rem;
    }

    .search-btn {
        width: 3.6rem;
        height: 3.6rem;
        background: rgba(46, 125, 50, 0.1);
    }

    .language-current {
        padding: .6rem 1rem;
        font-size: 1.3rem;
        border: .1rem solid #e0e0e0;
        background: #fff;
        color: #333;
    }


    .banner {
        width: 100%;
    }

    .banner-pagination {
        bottom: var(--pagination-bottom-lg);
        gap: 1rem;
    }

    .banner-pagination-bullet {
        width: 5rem;
        height: .3rem;
    }

    .banner-pagination-bullet.active {
        width: 3.5rem;
    }


    .products-categories {
        grid-template-columns: repeat(2, 1fr);
        gap: 3rem;
        margin: 0 auto 6rem;
    }

    .products-category {
        min-width: auto;
    }


    .company-content {
        grid-template-columns: 1fr;
        gap: 5rem;
        text-align: center;
    }

    .company-image {
        margin-right: 0;
        width: 100%;
        border-radius: 1.6rem;
    }

    .company-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 3rem;
    }


    .services-grid {
        grid-template-columns: 1fr;
        gap: 3rem;
        max-width: 60rem;
        margin: 0 auto;
    }


    .news-tabs {
        gap: 2rem;
    }

    .news-tab {
        padding: 1rem 2.4rem;
        font-size: 1.6rem;
    }


    .case .w {
        padding: 0 var(--container-padding-lg);
    }

    .case-description {
        position: relative;
        max-width: 100%;
        padding: 10px 0;
    }

    .case-slider {
        max-width: 100%;
        padding: 0 1rem;
    }

    .case-navigation {
        position: relative;
        justify-content: center;
        gap: 2rem;
        margin-bottom: 2rem;
        transform: none;
    }

    .case-prev,
    .case-next {

        top: 50%;
        transform: translateY(-50%);
        width: 4.4rem;
        height: 4.4rem;
        font-size: 1.8rem;
    }

    .case-carousel {
        height: 28rem;
    }

    .case-item {
        height: 24rem;
    }


    .contact-about .contact-content {
        grid-template-columns: 1fr;
        gap: 5rem;
    }

    .contact-form {
        padding: 3rem;
    }


    .footer .footer-content {
        grid-template-columns: 1fr;
        gap: 5rem;
        text-align: center;
    }

    .footer-links {
        grid-template-columns: repeat(2, 1fr);
        gap: 4rem;
    }

    .footer-bottom {
        flex-direction: column;
        gap: 2rem;
        text-align: center;
    }


    .swiper-button-next,
    .swiper-button-prev {
        display: none;
    }

    .news {
        padding: 6rem 0;
    }
}

@media (max-width: 992px) {
    .product-tabs-container {
        flex-direction: column;
        gap: 4rem;
    }

    .main-container {
        flex-direction: column;
        gap: 4rem;
    }

    .main-right {
        width: 100%;
        position: static;
    }

    .contact-sidebar {
        max-width: 50rem;
        margin: 0 auto;
    }

    .product-tabs-sidebar {
        width: 100%;
        position: static;
    }

    .product-tabs-content {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .product-tabs-content.fixed {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .tabs-nav {
        flex-direction: column;
        gap: 0;
    }

    .tab-item {
        flex: none;
    }

    .tab-section {
        margin-bottom: 2.4rem;
    }
}

@media (max-width: 1024px) {
    .product-detail-container {
        flex-direction: column;
        gap: 4rem;
    }

    .product-info {
        width: 100%;
    }

    .product-gallery {
        width: 100%;
        flex-direction: column;
    }

    .product-gallery .gallery-thumbs {
        width: 100%;
        order: 2;
        height: auto;
    }

    .gallery-main {
        order: 1;
        margin-bottom: 2rem;
        width: 100%;
        display: block;
    }

    .product-main-swiper {
        width: 100%;
        height: 40rem;
    }

    .product-thumbs-swiper .swiper-slide {
        width: calc(33.333% - 1.33rem) !important;
        margin-bottom: 0 !important;
        height: 12rem !important;
    }


    .product-thumbs-swiper {
        direction: horizontal !important;
        height: auto !important;
    }

    .product-thumbs-swiper .swiper-wrapper {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 1rem !important;
    }

    .product-thumbs-swiper .swiper-slide {
        flex: 0 0 calc(33.333% - 0.67rem) !important;
    }
}

@media (max-width: 992px) {
    .product-detail-container {
        flex-direction: column;
        gap: 4rem;
    }

    .product-info {
        width: 100%;
    }

    .product-gallery {
        width: 100%;
        flex-direction: column;
    }

    .product-gallery .gallery-thumbs {
        width: 100%;
        order: 2;
        height: auto;
    }

    .gallery-main {
        order: 1;
        margin-bottom: 2rem;
        width: 100%;
        display: block;
    }

    .product-main-swiper {
        width: 100%;
        height: 35rem;
    }

    .product-thumbs-swiper .swiper-slide {
        width: calc(33.333% - 1.33rem) !important;
        margin-bottom: 0 !important;
        height: 10rem !important;
    }


    .product-thumbs-swiper {
        direction: horizontal !important;
        height: auto !important;
    }

    .product-thumbs-swiper .swiper-wrapper {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 1rem !important;
    }

    .product-thumbs-swiper .swiper-slide {
        flex: 0 0 calc(33.333% - 0.67rem) !important;
    }
}

@media (max-width: 768px) {


    html, body {
        overflow-x: hidden;
    }

    body {
        margin-bottom: 6.4rem;
    }

    .contact-about-content, .cooperation-grid {
        grid-template-columns: 1fr
    }

    .cooperation-strength {
        padding: 0 0 4rem;
    }

    .products-services-title, .cooperation-title, .news-section-title, .why-choose-service-title {
        font-size: 3.2rem;
    }

    .news-grid {
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .news-section {
        padding: 6rem 0;
    }

    .news-swiper .news-card {
        min-height: auto;
    }

    .news-tabs {
        flex-direction: column;
        gap: 2rem;
        align-items: flex-start;
    }

    .news-tabs-left {
        width: 100%;
    }

    .news-tabs-right {
        width: 100%;
        gap: 2rem;
        flex-wrap: wrap;
    }

    .news-tab {
        font-size: 1.6rem;
        padding: 1rem 2rem;
    }

    .article-nav {
        margin-top: 4rem;
        padding-top: 3rem;
    }

    .article-nav .nav-item {
        flex-direction: column;
        align-items: flex-start;
        gap: .4rem;
        padding: 1.2rem 0;
    }

    .article-nav .nav-label {
        font-size: 1.28rem;
        margin-bottom: .4rem;
    }

    .article-nav .nav-link {
        font-size: 1.6rem;
        line-height: 1.3;
    }

    .news-pagination {
        bottom: -4rem !important;
    }

    .product-detail {
        padding: 4rem 0;
    }

    .product-detail-container {
        gap: 3rem;
    }

    .product-title {
        font-size: 2.4rem;
    }

    .product-main-swiper {
        height: 30rem;
        width: 100%;
    }

    .related-articles {
        margin-top: 4rem;
        padding-top: 3rem;
    }

    .related-articles h3 {
        font-size: 2.4rem;
        margin-bottom: 2rem;
    }

    .related-grid {
        gap: 2rem;
    }

    .related-card {
        margin-bottom: 1.5rem;
    }



    .related-content {
        padding: 1.2rem;
    }

    .related-content h4 {
        font-size: 1.4rem;
        margin-bottom: 0.8rem;
    }

    .related-content p {
        font-size: 1.2rem;
        margin-bottom: 1.5rem;
    }

    .related-link {
        font-size: 1.3rem;
    }

    .gallery-main {
        width: 100%;
        display: block;
    }

    .product-thumbs-swiper .swiper-slide {
        height: 10rem;
        width: 100% !important;
        margin-bottom: 1rem;
    }


    .product-thumbs-swiper {
        direction: vertical;
    }

    .product-gallery .gallery-thumbs {
        width: 100%;
        height: auto;
    }

    .action-buttons {
        flex-direction: column;
        gap: 1rem;
    }

    .btn-primary,
    .btn-secondary {
        padding: 1.2rem 2rem;
        font-size: 1.4rem;
    }

    .share-buttons {
        gap: 1rem;
    }

    .share-btn {
        width: 3.6rem;
        height: 3.6rem;
    }

    .hero-title {
        font-size: 5.6rem;
    }

    .products-categories {
        gap: 4rem;
    }

    .product-tabs-container {
        gap: 3rem;
    }



    .company-content,
    .case-content,
    .contact-content {
        gap: 6rem;
    }

    .services-grid {
        gap: 3rem;
    }

    .cooperation-grid {
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .cooperation-image {
        height: 20rem;
    }

    .cooperation-content {
        padding: 2rem;
    }

    .cooperation-item-title {
        font-size: 2rem;
    }

    .why-choose-service-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }

    .choose-service-item {
        padding: 2rem 1rem;
    }

    .choose-service-icon {
        width: 6rem;
        height: 6rem;
    }

    .choose-service-icon:hover {
        transform: scale(1.1);
    }

    .choose-service-icon i {
        font-size: 2.4rem;
    }

    .choose-service-title {
        font-size: 2rem;
    }

    .choose-service-desc {
        font-size: 1.4rem;
    }

    .cooperation-brands-title {
        font-size: 3.2rem;
    }

    .brands-swiper-container {
        padding: 1rem 0;
    }

    .brands-swiper {
        padding: 0.5rem 0;
    }

    .brands-swiper .swiper-slide {
        padding: 0.5rem;
    }

    .brand-item {
        height: 8rem;
        padding: 2rem;
        margin: 0.5rem 0;
    }


    .contact-sidebar {
        padding: 2rem;
    }

    .contact-sidebar-title {
        font-size: 2rem;
    }

    .cases-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .case-card .case-content {
        padding: 2rem;
    }

    .case-card .case-title {
        font-size: 1.6rem;
    }

    .service-nav {
        flex-direction: column;
        gap: 1rem;
        padding: 0 2rem;
    }

    .service-nav-item {
        text-align: center;
        padding: 1rem 2rem;
    }

    .related-products {
        padding: 4rem 0;
    }

    .related-title {
        font-size: 2.8rem;
        margin-bottom: 3rem;
    }

    .related-swiper {
        padding: 2rem 3rem 6rem 3rem;
    }

    .related-swiper .swiper-slide {
        padding: 0.8rem;
    }



    .related-info {
        padding: 1.6rem;
    }

    .related-info h3 {
        font-size: 1.6rem;
    }

    .products-services-grid {
        gap: 4rem;
    }

    .service-item {
        grid-template-columns: 1fr;
        gap: 3rem;
        min-height: auto;
    }

    .service-item-reverse .service-image {
        order: 1;
    }

    .service-item-reverse .service-content {
        order: 2;
    }

    .service-image {
        min-height: 25rem;
    }

    .service-title {
        font-size: 2.4rem;
    }

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

    .about-faq .faq-content {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .about-faq .faq-item {
        padding: 2rem;
    }

    .about-faq .faq-question h3 {
        font-size: 1.6rem;
    }

    .about-faq .faq-question h3::before {
        width: 2rem;
        height: 2rem;
        font-size: 1.2rem;
    }

    .partners-swiper-button-next,
    .partners-swiper-button-prev {
        width: 4rem;
        height: 4rem;
        z-index: 1000 !important;
    }

    .partners-swiper-button-next::after,
    .partners-swiper-button-prev::after {
        font-size: 1.4rem;
    }

    .footer-column p {
        width: 100%;
    }

    .footer-tagline p {
        display: none;
    }

    .product-tabs {
        padding: 4rem 0;
    }

    .tabs-content {
        padding: 2rem;
    }

    .tab-section h3 {
        font-size: 2.4rem;
    }

    .form-row {
        grid-template-columns: 1fr;
    }

    .contact-content {
        padding: 0;
        grid-template-columns: 1fr;
    }

    .nav {
        padding: 1.2rem 0;
    }

    .case-caption h3, .accordion-item, .accordion-item.active .accordion-number {
        display: none;
    }

    .accordion-item.active {
        display: block;
    }


    .w,
    .nav .w,
    .footer .w {
        padding: 0 var(--container-padding-sm);
    }

    .back-to-top {
        bottom: 10rem;
    }

    .news {
        padding: 4rem 0;
    }

    .services-main-title {
        font-size: 3.2rem;
    }

    .floating-sidebar {
        width: 100%;
        bottom: 0;
        top: auto;
        right: 0;
        transform: none;
        flex-direction: row;
        gap: 1rem;
        background: #2E7D32;
        border-radius: 0;
        padding: 1.2rem;
    }

    .sidebar-item {
        flex: 1
    }

    .sidebar-tooltip {
        display: none;
    }


    .news-swiper {
        padding: 0 2rem 8rem 2rem;
        margin: 0 -2rem;
    }


    .nav-dropdown {
        position: static;
        transform: none;
        opacity: 1;
        visibility: visible;
        background: transparent;
        box-shadow: none;
        padding: 0;
        margin-top: 1rem;
        min-width: auto;
        display: none;
        margin-left: 1rem;
    }

    .nav-dropdown.show {
        display: block;
    }

    .nav-dropdown-item {
        margin-bottom: 0.5rem;
    }

    .nav-dropdown-link {
        color: rgba(255, 255, 255, 0.8);
        padding: 0.5rem 0;
        font-size: 1.3rem;
        border-left: 2px solid rgba(255, 255, 255, 0.3);
        padding-left: 1.5rem;
    }

    .nav-dropdown-link:hover {
        color: #fff;
        background: transparent;
        transform: none;
    }

    .nav-dropdown-link::before {
        display: none;
    }


    .nav-item--dropdown .nav-link::after {
        content: '▼';
        margin-left: 0.5rem;
        font-size: 1.2rem;
        transition: transform 0.3s ease;
        display: inline-block;
    }

    .nav-item--dropdown .nav-link.active::after {
        transform: rotate(180deg);

        content: '▼';
        position: static;
        bottom: auto;
        left: auto;
        right: auto;
        height: auto;
        background: transparent;
        border-radius: 0;
        margin-left: 0.5rem;
        font-size: 1.2rem;
        transition: transform 0.3s ease;
        display: inline-block;
    }


    .mega-dropdown {
        position: absolute;
        top: 100%;
        left: 50%;
        transform: translateX(-50%);
        width: 100vw;
        height: auto;
        background: #fff;
        box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.15);
        z-index: 9999;
        padding: 2rem 0;
        overflow-y: auto;
        pointer-events: none;
    }

    .mega-dropdown.show {
        pointer-events: auto;
    }

    .mega-dropdown-inner {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
        width: 100%;
        padding: 0;
    }

    .mega-dropdown-inner .w {
        max-width: 100%;
        margin: 0 auto;
        padding: 0 2rem;
    }

    .mega-dropdown-category {
        text-align: center;
        opacity: 1;
        transform: none;
        transition: none;
    }

    .mega-dropdown-category h3 {
        font-size: 1.8rem;
        margin-bottom: 1.5rem;
        color: #2E7D32;
        border-bottom: 2px solid #2E7D32;
        padding-bottom: 0.5rem;
    }

    .mega-dropdown-category h3::after {
        display: none;
    }

    .mega-dropdown-category ul {
        display: flex;
        flex-direction: column;
        gap: 0.8rem;
    }

    .mega-dropdown-category li {
        opacity: 1;
        transform: none;
        transition: none;
        margin-bottom: 0;
        flex: none;
    }

    .mega-dropdown-category a {
        font-size: 1.3rem;
        padding: 0.6rem 0;
        text-align: center;
        color: #333;
    }

    .mega-dropdown-category a:hover {
        background: #f0f8f0;
        border-color: #2E7D32;
        color: #2E7D32;
        transform: none;
        box-shadow: none;
    }


    .banner {
        width: 100%;
        height: auto;
    }

    .banner-image {
        max-height: 70vh;
    }

    .banner-pagination {
        bottom: var(--pagination-bottom-md);
        gap: 1rem;
    }



    .banner-title {
        font-size: var(--title-size-lg);
    }

    .products-title,
    .services-title {
        font-size: var(--title-size-lg);
    }

    .company-title,
    .case-title,
    .contact-title {
        font-size: var(--title-size-md);
    }


    .products,
    .company,
    .services,
    .news,
    .case,
    .contact {
        padding: 4rem 0;
    }

    .products-header {
        margin-bottom: 4rem;
    }

    .products .swiper {
        padding-bottom: 4rem;
    }


    .products-categories {
        display: flex;
        flex-wrap: wrap;
        gap: 0;
        margin-bottom: 4rem;
    }

    .products-category {
        flex-direction: column;
        justify-content: center;
        text-align: center;
        padding: 1.5rem 0;
        gap: 0;
        min-width: 12rem;
        flex: 1;
    }

    .products-category-icon {
        width: 4rem;
        height: 4rem;
    }

    .products-category-text {
        font-size: 1.36rem;
    }

    .products .swiper-slide {
        margin: 0 .5rem;
    }

    .products-card {
        height: auto;
        min-height: 42rem;
        margin: 0 auto;
        max-width: 100%;
    }

    .products-image img {
        min-height: 18rem;
        max-height: 22rem;
    }


    .company-content {
        margin-bottom: 6rem;
    }

    .company-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }

    .company-stat {
        padding: 3rem 2rem;
    }

    .company-stat-number {
        font-size: 4.8rem;
    }


    .services-card {
        padding: 4rem 3rem;
    }


    .news-grid {
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .news-card {
        max-width: 100%;
        margin: 0 auto;
    }

    .news-image {
        height: auto;
    }


    .contact-about .contact-form {
        padding: 3rem;
    }

    .contact-row {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }


    .footer {
        padding: 6rem 0 0;
    }

    .footer-links {
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .footer-column {
        text-align: left;
    }


    .services .accordion-content-inner {
        max-height: 60%;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }


    .banner .swiper-pagination {
        bottom: 2rem;
    }

    .banner .swiper-pagination-bullet {
        width: 1rem;
        height: 1rem;
        margin: 0 .4rem;
    }

    .products .swiper-pagination,
    .news .swiper-pagination {
        margin-top: 3rem;
    }

    .products .swiper-pagination-bullet,
    .news .swiper-pagination-bullet {
        width: 1rem;
        height: 1rem;
        margin: 0 .4rem;
    }


    .fade-in,
    .slide-in-left,
    .slide-in-right,
    .scale-in {
        transform: none;
        opacity: 1;
    }

    .fade-in.visible,
    .slide-in-left.visible,
    .slide-in-right.visible,
    .scale-in.visible {
        transform: none;
        opacity: 1;
    }
}

@media (max-width: 640px) {
    .company-stats, .about-stats, .why-choose-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .news-list .news-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .related-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .related-articles h3 {
        font-size: 2.6rem;
        margin-bottom: 2.5rem;
    }

    .products-title,
    .services-title {
        font-size: var(--title-size-md);
    }

    .products-category {
        border-bottom: none;
    }

    .case-navigation, .case-carousel {
        display: none;
    }

    .case-header {
        margin-bottom: 1rem;
    }

    .news-card {
        width: 100%;
    }
}


@media (max-width: 480px) {


    .w,
    .nav .w,
    .footer .w {
        padding: 0 var(--container-padding-xs);
    }


    .product-thumbs-swiper .swiper-slide {
        height: 8rem;
    }

    .product-meta {
        gap: 1rem;
    }

    .product-brand,
    .product-model,
    .product-status {
        padding: .6rem 1.2rem;
        font-size: 1.2rem;
    }

    .floating-sidebar {
        right: 0.5rem;
        bottom: 1rem;
        gap: 0.8rem;
        background: #2E7D32;
        border-radius: 1.5rem;
        padding: 1rem;
    }


    .news-swiper {
        padding: 0 1rem 8rem 1rem;
        margin: 0 -1rem;
    }


    .banner {
        width: 100%;
    }

    .banner-pagination {
        bottom: 2rem;
        gap: .6rem;
    }

    .banner-pagination-bullet {
        width: 3.5rem;
        height: .3rem;
    }

    .banner-pagination-bullet.active {
        width: 5rem;
    }

    .banner-slider::after {
        height: 8rem;
    }


    .nav-menu {
        top: 7rem;
        height: calc(100vh - 7rem);
        padding: 3rem 0;
    }

    .nav-link {
        padding: 1.6rem 0;
        font-size: 1.76rem;
    }


    .products-title,
    .services-title,
    .news-title {
        font-size: var(--title-size-md);
        margin-bottom: 6rem;
    }

    .company-title,
    .case-title,
    .contact-title {
        font-size: var(--title-size-sm);
        margin-bottom: 2rem;
    }

    .products-subtitle {
        font-size: 1.6rem;
    }

    .company-description,
    .case-description {
        font-size: 1.6rem;
    }

    .related-articles {
        margin-top: 3rem;
        padding-top: 2rem;
    }

    .related-articles h3 {
        font-size: 2rem;
        margin-bottom: 1.5rem;
    }

    .related-grid {
        gap: 1.5rem;
    }



    .related-content {
        padding: 1rem;
    }

    .related-content h4 {
        font-size: 1.3rem;
        margin-bottom: 0.6rem;
    }

    .related-content p {
        font-size: 1.1rem;
        margin-bottom: 1rem;
    }

    .related-link {
        font-size: 1.2rem;
    }


    .products,
    .company,
    .services,
    .news,
    .case,
    .contact {
        padding: 6rem 0;
    }

    .products-header {
        margin-bottom: 4rem;
    }

    .products-categories {
        margin-bottom: 4rem;
    }

    .products-category {
        padding: 1.6rem;
        gap: .8rem;
    }

    .products-category::after {
        transition: width 4s linear;
        height: .2rem;
    }

    .products-category-icon {
        width: 4rem;
        height: 4rem;
    }

    .products-category-text {
        font-size: 1.44rem;
    }

    .products-card {
        margin: 0 1rem;
        height: auto;
        min-height: 38rem;
    }

    .products-image img {
        min-height: 16rem;
        max-height: 20rem;
    }

    .products-info {
        padding: 2.4rem;
    }

    .products-name {
        font-size: 1.92rem;
        margin-bottom: 1.2rem;
    }

    .products-details {
        margin-bottom: 2rem;
    }

    .products-btn {
        padding: 1rem 2rem;
        font-size: 1.44rem;
    }


    .company-content {
        margin-bottom: 5rem;
    }

    .company-image {
        margin-right: 0;
        width: 100%;
        border-radius: 1.6rem;
    }

    .company-image img {
        height: 30rem;
    }

    .company-btn {
        padding: 1.4rem 2.8rem;
        font-size: 1.6rem;
    }

    .company-stat-number {
        font-size: 4rem;
        margin-bottom: 1.2rem;
    }

    .company-stat-label {
        font-size: 1.6rem;
    }


    .services {
        min-height: 80vh;
    }

    .services-container {
        height: 65rem;
        flex-direction: row;
    }

    .accordion-header {
        padding: 4rem 3rem;
    }

    .accordion-item.active .accordion-header {
        padding-top: 6rem;
        padding-left: 4rem;
    }

    .accordion-number {
        font-size: 6.4rem;
        margin-right: 2rem;
    }

    .accordion-item.active .accordion-number {
        font-size: 4rem;
        margin-right: 1.5rem;
    }

    .accordion-title {
        font-size: 3.2rem;
    }

    .accordion-item.active .accordion-title {
        font-size: 2.4rem;
    }

    .accordion-content-inner {
        padding: 4rem;
    }

    .services-main-title {
        font-size: 4rem;
        margin-bottom: 3rem;
    }

    .services-details h4 {
        font-size: 2.24rem;
        margin-bottom: 1.5rem;
    }

    .services-features li {
        font-size: 1.6rem;
        line-height: 1.6;
    }

    .services-cta {
        padding: 1.4rem 2.8rem;
        font-size: 1.6rem;
    }


    .news-tab {
        width: 16rem;
        padding: .8rem 2rem;
        font-size: 1.44rem;
    }

    .news-swiper {
        padding: 0 1rem 6rem 1rem;
    }

    .news-swiper .news-card {
        min-height: 40rem;
    }

    .news-pagination {
        margin-top: 3rem;
    }

    .news-card {
        margin: 0 1rem;
    }

    .news-image {
        height: 20rem;
    }

    .news-content {
        padding: 2.4rem;
    }

    .news-headline {
        font-size: 1.92rem;
        margin-bottom: 1.2rem;
    }

    .news-excerpt {
        margin-bottom: 2rem;
        font-size: 1.6rem;
    }

    .news-view-more {
        padding: 1.4rem 3.2rem;
        font-size: 1.6rem;
    }


    .case-image img {
        height: 30rem;
    }


    .contact-about .contact-subtitle {
        font-size: 1.6rem;
    }

    .contact-item {
        margin-bottom: 1.2rem;
        font-size: 1.6rem;
    }

    .contact-form {
        padding: 2.4rem;
    }

    .contact-form input,
    .contact-form textarea {
        padding: 1.4rem 1.6rem;
        font-size: 1.6rem;
    }

    .contact-submit {
        padding: 1.4rem 2.8rem;
        font-size: 1.6rem;
        margin-top: 1.6rem;
    }


    .footer-content {
        gap: 4rem;
        padding-bottom: 4rem;
    }

    .footer-logo {
        height: 3.5rem;
        margin-bottom: 1.6rem;
    }

    .footer-tagline {
        font-size: 1.4rem;
    }

    .footer-links {
        gap: 2rem;
    }

    .footer-heading {
        font-size: 1.2rem;
        margin-bottom: 1.6rem;
    }

    .footer-list li {
        margin-bottom: .8rem;
    }

    .footer-list a,
    .footer-contact p {
        font-size: 1.3rem;
    }

    .footer-bottom {
        padding: 2rem 0;
    }

    .footer-copyright {
        font-size: 1.2rem;
    }

    .footer-social {
        gap: 1.2rem;
    }

    .footer-social a {
        width: 3.6rem;
        height: 3.6rem;
    }

    .footer-social img {
        width: 1.6rem;
        height: 1.6rem;
    }


    .back-to-top {
        bottom: 2rem;
        right: 2rem;
        width: 4.5rem;
        height: 4.5rem;
        font-size: 1.8rem;
    }


    .search-container {
        width: 95%;
        padding: 3rem 2rem;
    }

    .search-header h2 {
        font-size: 2.4rem;
    }

    .search-close {
        width: 3.6rem;
        height: 3.6rem;
    }

    .search-input {
        padding: 1.4rem 1.6rem;
        font-size: 1.6rem;
    }

    .search-submit {
        padding: 1.4rem 1.6rem;
    }

    .search-tags {
        gap: .8rem;
    }

    .search-tag {
        padding: .6rem 1.2rem;
        font-size: 1.36rem;
    }
}


@media (max-width: 360px) {


    .w,
    .nav .w,
    .footer .w {
        padding: 0 var(--container-padding-xxs);
    }


    .banner {
        width: 100%;
    }

    .banner-pagination {
        bottom: var(--pagination-bottom-sm);
        gap: .5rem;
    }

    .banner-pagination-bullet {
        width: 3rem;
        height: .2rem;
    }

    .banner-pagination-bullet.active {
        width: 4.5rem;
    }

    .banner-slider::after {
        height: 6rem;
    }


    .products-title,
    .services-title,
    .news-title {
        font-size: var(--title-size-sm);
    }

    .company-title,
    .case-title,
    .contact-title {
        font-size: var(--title-size-xs);
    }


    .products-categories {
        gap: 1rem;
    }

    .products-category {
        min-width: 10rem;
        padding: 1.2rem;
    }

    .products-card {
        height: 38rem;
        max-width: 30rem;
    }


    .services {
        min-height: 60vh;
    }

    .services-container {
        height: 46rem;
        flex-direction: row;
    }

    .accordion-header {
        padding: 2rem 1rem;
        flex-direction: column;
    }

    .accordion-item.active .accordion-header {
        flex-direction: row;
        padding-top: 2.5rem;
        padding-left: 1.5rem;
    }

    .accordion-number {
        font-size: 4rem;
        margin-bottom: 1rem;
        margin-right: 0;
    }

    .accordion-item.active .accordion-number {
        font-size: 2.4rem;
        margin-right: .8rem;
        margin-bottom: 0;
    }

    .accordion-title {
        font-size: 1.92rem;
    }

    .accordion-item.active .accordion-title {
        font-size: 1.6rem;
        margin-bottom: 1rem;
    }

    .accordion-content-inner {
        padding: 1.5rem;
    }

    .services-main-title {
        font-size: 2.56rem;
        margin-bottom: 1.5rem;
    }

    .services-details h4 {
        font-size: 1.6rem;
        margin-bottom: 1rem;
    }

    .services-features li {
        font-size: 1.44rem;
        line-height: 1.4;
        margin-bottom: .6rem;
        padding-left: 2rem;
    }

    .services-features li::before {
        font-size: 1.92rem;
    }

    .services-cta {
        padding: 1rem 2rem;
        font-size: 1.44rem;
    }


    .news-swiper {
        padding: 0 .5rem 4rem .5rem;
    }



    .news-pagination {
        margin-top: 2rem;
    }

    .news-pagination .swiper-pagination-bullet {
        width: .8rem;
        height: .8rem;
        margin: 0 .4rem;
    }

    .news-card {
        margin: 0 .5rem;
    }


    .case-slider {
        padding: 0 .5rem;
    }

    .case-carousel {
        height: 22rem;
    }

    .case-item {
        height: 18rem;
        width: calc(100% / 3);
    }

    .case-prev,
    .case-next {
        width: 3.5rem;
        height: 3.5rem;
        font-size: 1.6rem;
    }


    .contact-form {
        padding: 2rem;
    }


    .back-to-top {
        bottom: 1.6rem;
        right: 1.6rem;
        width: 4rem;
        height: 4rem;
        font-size: 1.6rem;
    }


    .search-container {
        width: 95%;
        padding: 3rem 2rem;
    }

    .search-header h2 {
        font-size: 2.4rem;
    }

    .search-close {
        width: 3.6rem;
        height: 3.6rem;
    }

    .search-input {
        padding: 1.4rem 1.6rem;
        font-size: 1.6rem;
    }

    .search-submit {
        padding: 1.4rem 1.6rem;
    }

    .search-tags {
        gap: .8rem;
    }

    .search-tag {
        padding: .6rem 1.2rem;
        font-size: 1.36rem;
    }
}


@media (prefers-reduced-motion: reduce) {
    .swiper {
        --swiper-navigation-sides-offset: 1rem;
        --swiper-theme-color: #2E7D32;
    }

    .banner .swiper-button-next,
    .banner .swiper-button-prev {
        display: block;
    }

    .fade-in,
    .slide-in-left,
    .slide-in-right,
    .scale-in {
        transition: none;
        transform: none;
        opacity: 1;
    }
}




@media (max-width: 480px) {


    .header-top {
        display: none;

    }

    .nav {
        padding: 1rem 0;
    }

    .nav-logo {
        width: 12rem;
        height: 3.6rem;
    }

    .nav-logo img {
        height: 3.2rem;
        width: auto;
    }

    .nav-toggle {
        width: 3.2rem;
        height: 3.2rem;
    }

    .nav-toggle span {
        height: 0.2rem;
    }


    .nav-menu {
        top: 6rem;
        height: calc(100vh - 6rem);
        padding: 2rem 0;
    }

    .nav-link {
        padding: 1.4rem 0;
        font-size: 1.6rem;
    }


    .search-container {
        width: 95%;
        padding: 2rem 1.5rem;
    }

    .search-header h2 {
        font-size: 2rem;
    }

    .search-close {
        width: 3.2rem;
        height: 3.2rem;
    }

    .search-input {
        padding: 1.2rem 1.4rem;
        font-size: 1.6rem;
    }

    .search-submit {
        padding: 1.2rem 1.4rem;
    }

    .search-tags {
        gap: 0.6rem;
    }

    .search-tag {
        padding: 0.5rem 1rem;
        font-size: 1.3rem;
    }


    .banner {
        height: 50vh;
        min-height: 30rem;
    }

    .banner-image {
        height: 100%;
        object-fit: cover;
    }

    .banner-pagination {
        bottom: 1rem;
        gap: 0.4rem;
    }

    .banner-pagination-bullet {
        width: 2.5rem;
        height: 0.2rem;
    }

    .banner-pagination-bullet.active {
        width: 4rem;
    }


    .products {
        padding: 4rem 0;
    }

    .products-header {
        margin-bottom: 3rem;
        text-align: center;
    }

    .products-title {
        font-size: 2.8rem;
        margin-bottom: 1.5rem;
    }

    .products-subtitle {
        font-size: 1.4rem;
        line-height: 1.6;
        padding: 0 1rem;
    }

    .products-categories {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
        margin-bottom: 3rem;
        padding: 0 1rem;
    }

    .products-category {
        padding: 1.2rem 0.8rem;
        gap: 0.6rem;
        min-width: auto;
        flex-direction: column;
        text-align: center;
    }

    .products-category-icon {
        width: 3.2rem;
        height: 3.2rem;
    }

    .products-category-text {
        font-size: 1.2rem;
        line-height: 1.3;
    }

    .products-category::after {
        height: 0.15rem;
    }


    .products-slider {
        padding: 0 1rem;
    }

    .products-card {
        margin: 0 0.5rem;
        height: auto;
        min-height: 35rem;
        max-width: 28rem;
    }

    .products-image img {
        min-height: 14rem;
        max-height: 18rem;
    }

    .products-info {
        padding: 1.8rem;
    }

    .products-name {
        font-size: 1.6rem;
        margin-bottom: 1rem;
        line-height: 1.4;
    }

    .products-details {
        margin-bottom: 1.5rem;
    }

    .products-details p {
        font-size: 1.3rem;
        margin-bottom: 0.5rem;
    }

    .products-btn {
        padding: 0.8rem 1.6rem;
        font-size: 1.3rem;
        width: 100%;
    }


    .company {
        padding: 4rem 0;
    }

    .company-content {
        margin-bottom: 4rem;
        text-align: center;
    }

    .company-text h3 {
        font-size: 2.4rem;
        margin-bottom: 1rem;
    }

    .contact-title {
        font-size: 1.8rem;
        margin-bottom: 1.5rem;
    }

    .company-description {
        font-size: 1.4rem;
        line-height: 1.6;
        padding: 0 1rem;
        margin-bottom: 2rem;
    }

    .company-btn {
        padding: 1.2rem 2.4rem;
        font-size: 1.4rem;
    }

    .company-image {
        margin: 0 auto;
        width: 100%;
        max-width: 30rem;
        border-radius: 1.2rem;
    }

    .company-image img {
        height: 25rem;
        object-fit: cover;
    }


    .company-stats {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        padding: 0 1rem;
    }

    .company-stat {
        padding: 2rem 1.5rem;
        text-align: center;
    }

    .company-stat-number {
        font-size: 3.2rem;
        margin-bottom: 1rem;
    }

    .company-stat-label {
        font-size: 1.4rem;
        line-height: 1.4;
    }


    .services {
        min-height: 60vh;
        padding: 4rem 0;
    }

    .services-container {
        height: 40rem;
        flex-direction: column;
    }

    .accordion-header {
        padding: 2rem 1.5rem;
        flex-direction: column;
        text-align: center;
    }

    .accordion-item.active .accordion-header {
        flex-direction: column;
        padding-top: 2rem;
        padding-left: 1.5rem;
    }

    .accordion-number {
        font-size: 3.2rem;
        margin-bottom: 1rem;
        margin-right: 0;
    }

    .accordion-item.active .accordion-number {
        font-size: 2.4rem;
        margin-right: 0;
        margin-bottom: 1rem;
    }

    .accordion-title {
        font-size: 1.8rem;
        line-height: 1.3;
    }

    .accordion-item.active .accordion-title {
        font-size: 1.6rem;
        margin-bottom: 1rem;
    }

    .accordion-content-inner {
        padding: 2rem 1.5rem;
    }

    .services-main-title {
        font-size: 2.4rem;
        margin-bottom: 2rem;
    }

    .services-details h4 {
        font-size: 1.6rem;
        margin-bottom: 1rem;
    }

    .services-features li {
        font-size: 1.4rem;
        line-height: 1.4;
        margin-bottom: 0.6rem;
        padding-left: 1.5rem;
    }

    .services-features li::before {
        font-size: 1.6rem;
        left: 0;
    }

    .services-cta {
        padding: 1rem 2rem;
        font-size: 1.4rem;
        margin-top: 1.5rem;
    }


    .news {
        padding: 4rem 0;
    }

    .news-title {
        font-size: 2.4rem;
        margin-bottom: 3rem;
        text-align: center;
    }

    .news-swiper {
        padding: 0 0.5rem 4rem 0.5rem;
    }

    .news-swiper .news-card {
        min-height: 32rem;
        margin: 0 0.5rem;
    }

    .news-image {
        height: 18rem;
    }

    .news-content {
        padding: 1.8rem;
    }

    .news-category {
        font-size: 1.2rem;
        padding: 0.4rem 0.8rem;
    }

    .news-date {
        font-size: 1.2rem;
    }

    .news-headline {
        font-size: 1.6rem;
        margin-bottom: 1rem;
        line-height: 1.4;
    }

    .news-excerpt {
        font-size: 1.3rem;
        margin-bottom: 1.5rem;
        line-height: 1.5;
    }

    .news-view-more {
        padding: 1rem 2.4rem;
        font-size: 1.4rem;
        margin-top: 2rem;
    }

    .news-pagination {
        margin-top: 2rem;
    }

    .news-pagination .swiper-pagination-bullet {
        width: 0.8rem;
        height: 0.8rem;
        margin: 0 0.3rem;
    }


    .case {
        padding: 4rem 0;
    }

    .case-header {
        text-align: center;
        margin-bottom: 3rem;
    }

    .case-header h3 {
        font-size: 2rem;
        margin-bottom: 1rem;
    }

    .case-description {
        font-size: 1.4rem;
        line-height: 1.6;
        padding: 0 1rem;
    }

    .case-slider {
        padding: 0 1rem;
    }

    .case-navigation {
        gap: 1rem;
        margin-bottom: 1.5rem;
    }

    .case-prev,
    .case-next {
        width: 3.2rem;
        height: 3.2rem;
        font-size: 1.4rem;
    }

    .case-carousel {
        height: 20rem;
    }

    .case-item {
        height: 16rem;
        width: calc(100% / 2);
    }

    .case-caption h3 {
        font-size: 1.4rem;
        line-height: 1.3;
        padding: 1rem;
    }


    .contact {
        padding: 4rem 0;
    }

    .contact-content {
        grid-template-columns: 1fr;
        gap: 3rem;
        text-align: center;
    }

    .contact-info {
        margin-bottom: 2rem;
    }

    .contact-info h3 {
        font-size: 2.4rem;
        margin-bottom: 1rem;
    }

    .contact-title {
        font-size: 1.8rem;
        margin-bottom: 1rem;
    }

    .contact-subtitle {
        font-size: 1.4rem;
        line-height: 1.6;
        margin-bottom: 2rem;
    }

    .contact-details {
        text-align: center;
    }

    .contact-item {
        margin-bottom: 1rem;
        font-size: 1.4rem;
    }

    .contact-form {
        padding: 2rem 1.5rem;
    }

    .form-description {
        font-size: 1.4rem;
        margin-bottom: 2rem;
        text-align: center;
    }

    .contact-row {
        grid-template-columns: 1fr;
        gap: 1rem;
        margin-bottom: 1rem;
    }

    .form-group input,
    .form-group textarea {
        padding: 1.2rem 1.4rem;
        font-size: 1.4rem;
    }

    .contact-submit {
        padding: 1.2rem 2.4rem;
        font-size: 1.4rem;
        width: 100%;
        margin-top: 1.5rem;
    }


    .footer {
        padding: 4rem 0 0;
    }

    .footer-top {
        text-align: center;
        margin-bottom: 3rem;
    }

    .footer-logo {
        height: 3rem;
        margin-bottom: 1.5rem;
    }

    .footer-tagline p {
        font-size: 1.4rem;
    }

    .footer-links {
        grid-template-columns: 1fr;
        gap: 2rem;
        margin-bottom: 3rem;
    }

    .footer-column {
        text-align: center;
    }

    .footer-heading {
        font-size: 1.4rem;
        margin-bottom: 1.5rem;
    }

    .footer-column p {
        font-size: 1.3rem;
        line-height: 1.6;
    }

    .footer-list li {
        margin-bottom: 0.6rem;
    }

    .footer-list a,
    .footer-contact p {
        font-size: 1.3rem;
    }

    .footer-bottom {
        flex-direction: column;
        gap: 1.5rem;
        text-align: center;
        padding: 2rem 0;
    }

    .footer-copyright {
        font-size: 1.2rem;
    }

    .footer-social {
        gap: 1rem;
    }

    .footer-social a {
        width: 3.2rem;
        height: 3.2rem;
    }

    .footer-social img {
        width: 1.4rem;
        height: 1.4rem;
    }


    .back-to-top {
        bottom: 1.5rem;
        right: 1.5rem;
        width: 4rem;
        height: 4rem;
        font-size: 1.6rem;
    }


    .floating-sidebar {
        right: 1rem;
        gap: 1rem;
        padding: 0.8rem;
    }

    .sidebar-item {
        width: 3.2rem;
        height: 3.2rem;
    }

    .sidebar-icon {
        font-size: 1.6rem;
    }

    .sidebar-tooltip {
        right: 5rem;
        padding: 0.8rem 1.2rem;
    }

    .sidebar-tooltip::after {
        right: -0.6rem;
        border-width: 0.6rem;
    }

    .tooltip-text {
        font-size: 1.2rem;
        margin-bottom: 0.3rem;
    }

    .tooltip-action {
        font-size: 1rem;
    }


    .swiper-pagination {
        margin-top: 2rem;
    }

    .swiper-pagination-bullet {
        width: 0.8rem;
        height: 0.8rem;
        margin: 0 0.3rem;
    }


    .products-category,
    .products-btn,
    .company-btn,
    .services-cta,
    .news-view-more,
    .contact-submit,
    .back-to-top,
    .sidebar-item {
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
    }


    .products-slider,
    .news-swiper,
    .case-carousel {
        -webkit-overflow-scrolling: touch;
        scroll-behavior: smooth;
    }


    body {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        text-rendering: optimizeLegibility;
    }
}


@media (max-width: 360px) {

    .w,
    .nav .w,
    .footer .w {
        padding: 0 1rem;
    }

    .products-categories {
        grid-template-columns: 1fr;
        gap: 0.8rem;
    }

    .products-category {
        padding: 1rem 0.6rem;
    }

    .products-category-icon {
        width: 2.8rem;
        height: 2.8rem;
    }

    .products-category-text {
        font-size: 1.1rem;
    }

    .products-card {
        margin: 0 0.3rem;
        min-height: 32rem;
        max-width: 26rem;
    }

    .products-image img {
        min-height: 12rem;
        max-height: 16rem;
    }

    .products-info {
        padding: 1.5rem;
    }

    .products-name {
        font-size: 1.4rem;
    }

    .products-details p {
        font-size: 1.2rem;
    }

    .products-btn {
        padding: 0.7rem 1.4rem;
        font-size: 1.2rem;
    }

    .company-stat {
        padding: 1.5rem 1rem;
    }

    .company-stat-number {
        font-size: 2.8rem;
    }

    .company-stat-label {
        font-size: 1.3rem;
    }

    .accordion-header {
        padding: 1.5rem 1rem;
    }

    .accordion-number {
        font-size: 2.8rem;
    }

    .accordion-title {
        font-size: 1.6rem;
    }

    .accordion-content-inner {
        padding: 1.5rem 1rem;
    }

    .services-main-title {
        font-size: 2rem;
    }

    .news-title {
        font-size: 2rem;
    }



    .news-image {
        height: 16rem;
    }

    .news-content {
        padding: 1.5rem;
    }

    .news-headline {
        font-size: 1.4rem;
    }

    .case-carousel {
        height: 18rem;
    }

    .case-item {
        height: 14rem;
        width: 100%;
    }

    .contact-form {
        padding: 1.5rem 1rem;
    }

    .form-group input,
    .form-group textarea {
        padding: 1rem 1.2rem;
        font-size: 1.3rem;
    }

    .floating-sidebar {
        right: 0.8rem;
        gap: 0.8rem;
        padding: 0.6rem;
    }

    .sidebar-item {
        width: 2.8rem;
        height: 2.8rem;
    }

    .sidebar-icon {
        font-size: 1.4rem;
    }
}