@media (max-width: 1179px) {
    .line-hero-visual {
        margin-top: -200px;
        bottom: -200px;
    }

    .line-hero-visual .swiper {
        height: 480px;
    }

    .line-card-feature {
        margin-top: 64px;
    }

}

@media (max-width: 1024px) {
    .featured-card {
        height: 220px;
    }

    .feature-grid.grid-4 {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Vendor Section */

    .vendor-section {
        display: none;
    }

    /* Footer */

    .footer-block {
        gap: 32px;
    }

    .footer-col.footer-contact {
        max-width: 240px;
    }

    .line-hero-visual {
        margin-top: -180px;
        bottom: -180px;
    }

    .line-hero-visual .swiper {
        height: 400px;
    }

    .orbit-medium {
        top: 150px;
    }

    .line-card-feature {
        margin-top: 50px;
    }

    .orbit {
        border-color: transparent;
        max-width: 65% !important;
        width: 65% !important;
    }

    .map-container {
        max-width: 700px;
    }

    .pin-usa {
        top: 42.9%;
        left: 12.8%;
    }

    .pin-india {
        top: 53.9%;
        left: 67.8%;
    }

    .pin-singapore {
        top: 61.7%;
        left: 74.7%;
    }

    .partner-banner{
        padding: 40px 24px;
    }

}

@media (max-width: 991px) {

    .header-nav,
    .header-cta {
        display: none;
    }

    .mobile-toggle {
        display: flex;
    }

    .header-inner {
        padding-block: 14px;
    }

    .feature-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Component */

    .component-card {
        padding: 14px 24px;
    }

    /* Info Cards Grid */

    .info-cards-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* News */
    .news-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Footer */

    .footer-block {
        flex-direction: column;
    }

    .footer-links-block .footer-brand {
        display: none;
    }

    .footer-brand.mobile {
        display: block;
    }

    .footer-col.footer-contact {
        max-width: 100%;
        padding-left: 0;
        border-left: 0;
        padding-top: 32px;
        border-top: 1px solid #D8B4FE;
    }

    .contact-block-wrapper {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(152px, 1fr));
        gap: 0 24px;
    }

    .site-footer {
        padding: 50px 0;
    }

    .catalogue-grid {
        grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    }
}

@media (max-width: 767px) {

    .header-inner {
        padding-block: 8px;
    }

    .header-logo img {
        max-height: 40px;
    }

    .drawer-inner {
        padding: 74px 24px 24px;
    }

    .drawer-cta {
        margin-top: 32px;
    }

    /* Hero Banner */
    .hero-cta {
        flex-direction: column;
        align-items: center;
    }

    .hero-section {
        padding-block: 124px 50px;
        min-height: 0;
    }

    .hero-content .hero-subtitle {
        margin-top: 32px;
        font-size: 16px;
    }

    .hero-cta .btn {
        min-width: 200px;
    }

    /* Brands Listing */

    .brands-listing ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .brands-listing ul li {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .featured-card {
        height: 200px;
    }

    /* Partnership Section */

    .partnership-section .section-inner {
        padding: 60px 12px;
    }

    /* Component */

    .components-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .components-section .section-title {
        margin-bottom: 40px;
    }

    .component-card {
        min-height: 120px;
    }

    .component-icon {
        width: 70px;
        height: 70px;
    }

    .component-icon:before {
        box-shadow: 0px 0px 44px 20px rgb(142 30 154);
    }

    .component-icon img {
        width: 70px;
        height: 70px;
    }

    /* Featured */

    .feature-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .feature-card {
        padding: 20px 20px 24px;
    }

    .feature-card .feature-card-title {
        min-height: 0;
    }

    /* Info Cards Grid */

    .info-cards-grid,
    .news-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    /* Quote Section */

    .quote-section {
        padding: 40px 0;
    }

    .quote-card {
        padding: 28px 22px 32px;
    }

    /* Footer */

    .footer-links-wrapper {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .footer-links li {
        margin-bottom: 12px;
    }

    .footer-links a {
        font-size: 14px;
    }

    .footer-contact .contact-block {
        font-size: 14px;
    }

    .footer-brand {
        margin-top: 24px;
    }

    .footer-brand img {
        max-width: 198px;
    }

    /* Line Hero */

    .line-hero {
        padding: 110px 0 0;
    }

    .line-hero-wrapper {
        padding-inline: 20px;
    }

    .line-hero-visual {
        margin-top: -124px;
        bottom: -124px;
    }

    .line-hero-visual .swiper {
        height: 300px;
    }

    .line-hero-content {
        margin: 0 auto 40px;
    }

    .line-hero-subtitle {
        font-size: 18px;
    }

    .hero-card {
        width: 100%;
    }

    .hero-card.left,
    .hero-card.right {
        display: none;
    }

    .faded-dots {
        height: 124px;
    }

    .map-container {
        max-width: 480px;
        height: 300px;
    }

    .pin-usa {
        top: 43.1%;
        left: 12.8%;
    }

    .pin-india {
        top: 52.9%;
        left: 67.7%;
    }

    .pin-singapore {
        top: 59.7%;
        left: 74.5%;
    }

    .catalogue-section:not(.catalogue-single) {
        padding: 104px 0 50px;
    }

    .catalogue-inner-wrapper {
        padding: 30px 16px 40px;
    }

    .product-card {
        padding: 14px;
    }

    .product-card .product-logo {
        width: 170px;
        height: 48px;
        margin-top: -24px;
        margin-bottom: 18px;
    }

    .product-card .product-logo img {
        max-height: 32px;
    }

    .product-card .product-description {
        margin-bottom: 14px;
        min-height: 0;
    }

    .catalogue-banner {
        aspect-ratio: 16 / 9;
        margin: 40px 0;
    }

    .dash-seperator {
        margin-block: 20px;
    }

    .contact-card .flag {
        max-height: 96px;
    }

    .contact-intro {
        padding-top: 90px;
    }

    .about-intro {
        padding-block: 90px 60px;
    }

    /* Form Elements */
    .wpcf7 form .wpcf7-response-output{
        top: 70px;
    }
}

@media (max-width: 576px) {
    .contact-actions {
        flex-direction: column;
    }

    .btn-contact {
        font-size: 20px;
        padding: 12px 14px;
    }

    .btn-contact::after {
        top: 13px;
    }

    .feature-section .section-title {
        margin-bottom: 40px;
    }

    .feature-section.line-card-feature .section-title {
        margin-bottom: 24px;
    }

    .feature-grid.grid-4 {
        grid-template-columns: repeat(1, 1fr);
    }

    .line-hero-visual {
        margin-top: -80px;
        bottom: -80px;
    }

    .line-hero-visual .swiper {
        height: 220px;
    }

    .faded-dots {
        height: 80px;
    }

    .trust-badges {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
    }

    .trust-badge {
        height: 150px;
    }

    .trust-badge img {
        max-height: 110px;
    }

    .catalogue-grid {
        grid-template-columns: 1fr;
    }

    .partner-banner-inner{
        flex-direction: column;
        text-align: center;
    }
}

@media (max-width: 480px) {
    .map-container {
        max-width: 300px;
        height: 190px;
    }
}