@media screen and (max-width: 991px){
    h1 {
        font-size: 42px;
    }
    .container {
        padding: 0 12px;
    }
    /* Ensure Bootstrap grid works properly */
    .row {
        margin-left: -12px;
        margin-right: -12px;
    }
    .row > * {
        padding-left: 12px;
        padding-right: 12px;
    }
    .main-header {
        padding: 16px 0;
    }
    .site-logo {
        max-width: 120px;
    }
    body.active-menu .site-logo .primary {
        display: none;
    }
    body.active-menu .site-logo .white {
        display: block;
    }
   .topbar-section {
        display: none;
    }
    #mainmenu {
        position: absolute;
        z-index: 9;
        width: 100%;
        left: 0;
        top: 0;
        background-color: var(--secondary);
        background: linear-gradient(32deg, #FE5836 0%, #B40C98 49.68%, #4E00A6 99.36%);
    }
    .mobile-header {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        position: relative;
        z-index: 10;
    }
    .hamburger-btn {
        width: 40px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        gap: 10px;
        border: none;
        background: transparent;
        padding: 3px 0;
   }
   .hamburger-btn span {
        width: 100%;
        height: 3px;
        background-color: var(--primary);
        border-radius: 3px;
        position: relative;
        top: 0;
        -webkit-transition: all 0.33s;
        transition: all 0.33s;
    }
    body.active-menu .hamburger-btn span {
        background-color: var(--white);
        top: -8px;
    }
    body.active-menu .hamburger-btn span:first-child {
        -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg);
        top: 13px;
    }
    body.active-menu .hamburger-btn span:last-child {
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        top: -12px;
    }
    body.active-menu .hamburger-btn span:nth-child(2) {
        width: 0;
        top: 2px;
    }
    nav.navbar {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 86px 12px 48px;
        gap: 24px;
    }
    nav.navbar > ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 16px;
    }
    nav.navbar ul li a {
        color: var(--white);
        font-size: 16px;
        font-weight: 600;
    }
    nav.navbar .link-with-icon {
        color: var(--white);
        font-weight: 400;
    }
    nav.navbar :is(.primary-transparent-small, .primary-solid-small) {
        border-color: var(--white);
        color: var(--white);
        font-weight: 600;
        background-color: transparent;
    }
    nav.navbar .primary-solid-small {
        background: var(--white);
        color: var(--primary);
    }
    nav.navbar ul li a:hover, .link-with-icon:hover {
        color: var(--primary);
    }
    .single-teaser-box {
        padding: 32px;
        border-radius: 20px;
    }
    .distributors-inquiry-form {
        padding: 48px;
   }
    .inquiry-fields-row {
        -webkit-column-gap: 32px;
           -moz-column-gap: 32px;
                column-gap: 32px;
   }
    .contact-form {
        padding: 0;
        border: none;
        border-radius: 0;
    }
    .multiple-card-section {
        padding: 80px 0;
        background-position: center;
    }
    .single-card-content {
        padding: 40px 48px;
        font-size: 21px;
    }
    .distributor-inquiry {
        background-position: center;
    }
}
@media screen and (max-width: 767px){
    body {
        font-size: 16px;
        line-height: 1.5;
    }
    h1 {
        font-size: 32px;
        line-height: 1.2;
    }
    h2 {
        font-size: 28px;
        line-height: 1.2;
    }
    h3 {
        font-size: 24px;
        line-height: 1.3;
    }
    h4 {
        font-size: 20px;
        line-height: 1.3;
    }
    h5 {
        margin-bottom: 20px;
        font-size: 16px;
    }
    /* Fix container padding for mobile */
    .container {
        padding: 0 16px;
    }
    /* Ensure proper mobile grid behavior */
    .row {
        margin-left: -16px;
        margin-right: -16px;
    }
    .row > * {
        padding-left: 16px;
        padding-right: 16px;
    }
    :is(.hero-img, .full-width-banner) img, .full-width-image-with-overlay::before, .full-width-image-with-overlay::after {
        border-radius: 20px;
   }
    .hero-section {
        padding: 24px 0 48px;
   }
    .hero-img img {
        width: 100%;
   }
    .full-width-banner h2 {
        margin-bottom: 32px;
   }
    .full-width-banner {
        padding: 48px 0 80px;
   }
    .three-box-section, .experience-section, .multiple-card-section, .distributor-inquiry, .teaser-box-section {
        padding: 64px 0;
   }
   .single-box {
        border-radius: 24px;
    }
    .three-box-top, .three-box-content {
        margin-bottom: 48px;
   }
    .three-box-bottom h2 {
        font-size: 48px;
        margin-bottom: 32px;
   }
    .single-box-content {
        padding: 24px 32px 32px;
   }
    .experience-banner img {
        border-radius: 25px;
   }
    .experience-content h4 {
        margin-bottom: 48px;
   }
    .experience-row {
        row-gap: 48px;
   }
    .experience-column h2 {
        font-size: 60px;
   }
    .banner-top {
        margin-bottom: 28px;
   }
    .single-card-content {
        padding: 32px;
        border-radius: 20px;
   }
    .distributors-inquiry-form {
        padding: 0;
        border-radius: 0;
        border: none;
   }
    .inquiry-fields-row > * {
        -webkit-box-flex: 1;
            -ms-flex: 1 1 100%;
                flex: 1 1 100%;
   }
    .teaser-box-section h2 {
        margin-bottom: 40px;
   }
    .full-width-section {
        padding: 64px 0 80px;
   }
    .contact-section {
        padding: 48px 0;
   }
}
@media screen and (max-width: 575px){
    /* Extra small mobile devices */
    .container {
        padding: 0 12px;
    }
    .row {
        margin-left: -12px;
        margin-right: -12px;
    }
    .row > * {
        padding-left: 12px;
        padding-right: 12px;
    }
    h1 {
        font-size: 28px;
        line-height: 1.1;
    }
    h2 {
        font-size: 24px;
        line-height: 1.1;
    }
    h3 {
        font-size: 20px;
        line-height: 1.2;
    }
    .buttons-group {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: stretch;
            -ms-flex-align: stretch;
                    -ms-grid-row-align: stretch;
                align-items: stretch;
        gap: 12px;
   }
    .footer-buttons-group {
        -webkit-column-gap: 8px;
           -moz-column-gap: 8px;
                column-gap: 8px;
   }
    .contact-information {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
   }
   /* Fix mobile menu positioning */
   #mainmenu {
       position: fixed;
       top: 0;
       left: 0;
       width: 100%;
       height: 100vh;
       z-index: 9999;
       overflow-y: auto;
   }
   /* Ensure images are responsive */
   img {
       max-width: 100%;
       height: auto;
   }
   /* Fix form elements for mobile */
   input, textarea, select {
       font-size: 16px; /* Prevents zoom on iOS */
       padding: 12px 16px;
   }
   /* Fix button sizing for mobile */
   .primary-transparent, .primary-solid, .primary-transparent-small, .primary-solid-small {
       min-height: 44px; /* iOS touch target minimum */
       padding: 12px 20px;
   }
   /* Fix mobile menu button */
   .hamburger-btn {
       min-width: 44px;
       min-height: 44px;
   }
}

/* Additional mobile fixes for very small screens */
@media screen and (max-width: 480px) {
    .container {
        padding: 0 8px;
    }
    .row {
        margin-left: -8px;
        margin-right: -8px;
    }
    .row > * {
        padding-left: 8px;
        padding-right: 8px;
    }
    h1 {
        font-size: 24px;
    }
    h2 {
        font-size: 20px;
    }
    h3 {
        font-size: 18px;
    }
    /* Reduce padding on sections for very small screens */
    .hero-section, .three-box-section, .experience-section {
        padding: 32px 0;
    }
    .single-box-content {
        padding: 20px 24px 24px;
    }
    .single-teaser-box {
        padding: 32px 24px;
    }
}