/* Add these styles to a new CSS file or append to your existing CSS */

/* Fix for viewport and page scaling */
html, body {
    width: 100vw;
    max-width: 100%;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
}

/* Prevent zooming from affecting layout by using fixed units */
body {
    min-width: 1200px; /* Set a minimum width to prevent content shifts */
    font-size: 16px !important; /* Base font size in px instead of relative units */
    -webkit-text-size-adjust: 100%; /* Prevent text size adjustment on mobile */
    text-size-adjust: 100%; /* Standard property */
    zoom: 1.0; /* Reset zoom level */
}

/* Container fixes */
.container {
    width: 100vw !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
}

/* Ensure all section elements fill the width */
section,
.hero,
.about,
.carousel-container,
.carousel,
.carousel-inner,
.carousel-item,
footer,
.copyright,
.location {
    width: 100vw !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

/* Allow form-container to use Bootstrap properly */
.form-container .container {
    width: auto !important;
    max-width: 1140px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
}

/* Force the header to span the full width */
header {
    width: 100vw !important;
    box-sizing: border-box !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Fix for carousel to span full width */
.carousel-container {
    width: 100vw !important;
    max-width: 100% !important;
    margin: 0 !important;
}

/* Fix for the blue navigation bar */
.bluebar {
    width: 100vw !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Text container fixes - use absolute positioning and fixed sizes */
.hero_header, .company, .tagline, .about h4, .ourproductstext, .left-text p, .carousel-caption h3, .copyright, .location p {
    font-size: 16px !important; /* Base size - adjust for specific elements below */
    line-height: 1.5 !important;
    letter-spacing: normal !important;
    word-spacing: normal !important;
    position: relative !important;
    width: auto !important;
    text-align: center !important;
}

/* Size overrides for specific text elements */
.hero_header {
    font-size: 28px !important;
}

.tagline {
    font-size: 18px !important;
}

/* Enhanced fixed positioning for h4 in the about section */
.about h4, h4 {
    font-size: 16px !important;
    padding: 0 50px !important;
    margin: 20px 0 !important;
    position: static !important; /* Changed from relative to static */
    width: 2000px !important; /* Set a fixed width */
    max-width: 100% !important; /* Limit width to 80% of container */
    margin-left: auto !important;
    margin-right: auto !important;
    /* Prevent text scaling on zoom */
    transform: translateZ(0); /* Hardware acceleration */
    backface-visibility: hidden; /* Prevents flickering */
    transform-style: preserve-3d; /* Maintains 3D context */
}

.ourproductstext {
    font-size: 22px !important;
}

.carousel-caption h3 {
    font-size: 24px !important;
}

/* Fix for form elements */
.form-container {
    padding: 25px !important;
    position: relative !important;
    width: 100% !important;
}

/* Enhanced fixed positioning for the left text in form container */
.form-container .left-text {
    position: static !important; /* Changed from relative to static */
}

/* Fix specifically for the paragraph inside left-text */
.form-container .left-text p {
    position: static !important; /* Static position instead of relative */
    text-align: left !important; /* Match original alignment */
    padding: 10px !important; /* Add some padding */
    font-size: 16px !important; /* Fixed font size */
    /* Prevent movement on zoom */
    transform: translateZ(0) !important; /* Hardware acceleration */
    backface-visibility: hidden !important; /* Prevents flickering */
    word-wrap: break-word !important; /* Ensure text wraps correctly */
    margin: 0 !important; /* Remove any margin */
    /* More aggressive fixes for zoom stability */
    -webkit-transform: translateZ(0) !important;
    -moz-transform: translateZ(0) !important;
    -ms-transform: translateZ(0) !important;
    transform-style: preserve-3d !important;
    perspective: 1000px !important;
}

.form-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;
    width: 100% !important;
}

/* Fix for navigation */
/* nav {
    float: right !important;
    width: 50% !important;
    text-align: right !important;
    margin-right: 25px !important;
    position: absolute !important;
    right: 0 !important;
    top: 40px !important;
} */

nav ul li {
    float: left !important;
    margin-right: 25px !important;
    font-size: 14px !important;
}

/* Fix for images */
img {
    max-width: 100%;
    height: auto;
}

/* Disable text scaling on zoom */
* {
    max-height: 1000000px; /* Prevent Android font boosting */
}

/* Additional fixes to prevent text movement on zoom */
body * {
    text-size-adjust: none !important; /* Additional property to prevent text scaling */
    -webkit-text-size-adjust: none !important;
    -moz-text-size-adjust: none !important;
    -ms-text-size-adjust: none !important;
}

/* Fix specifically for the form-container text in the email section */
.email .form-container .left-text p {
    position: static !important;
    text-align: left !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    display: block !important;
    /* Enhanced anti-movement properties */
    transform: translateZ(0) !important;
    -webkit-transform: translateZ(0) !important;
    -moz-transform: translateZ(0) !important;
    -ms-transform: translateZ(0) !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
    transform-style: preserve-3d !important;
    -webkit-transform-style: preserve-3d !important;
    perspective: 1000px !important;
    -webkit-perspective: 1000px !important;
    /* Fixed position strategy as backup */
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    text-transform: none;
}

.form-cell{
    height: 50px;
    margin-bottom: 32px;
}

.button-cell{
    margin-bottom: 0;
}

.call-back-button{
    margin-top: 32px;
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid rgb(207, 207, 207);
}


/* Fix for media queries - make them respect the min-width */
@media (max-width: 1200px) {
    body {
        min-width: 1200px !important;
    }
    
    /* Prevent any responsive changes */
    * {
        max-width: none;
        width: auto;
    }
    
    /* Maintain fixed positions for our target elements */
    .about h4, h4, .form-container .left-text p {
        position: static !important;
        transform: translateZ(0);
    }
}

/* Completely disable responsive behavior */
@media (max-width: 768px) {
    body {
        min-width: 1200px !important;
    }
    
    .form-container {
        flex-direction: row !important;
    }
    
    .form-grid {
        grid-template-columns: 1fr 1fr !important;
    }
    
    /* nav {
        width: 50% !important;
        float: right !important;
        display: block !important;
    } */
    
    /* .container header nav {
        display: block !important;
        width: 50% !important;
        float: right !important;
    }
    
    header nav ul {
        float: right !important;
    } */
    
    .logo {
        width: 10% !important;
        text-align: left !important;
        float: left !important;
    }
    
    /* Ensure about h4 and form container text remain fixed */
    .about h4, h4 {
        width: 800px !important;
        max-width: 80% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    
    /* Maintain fixed position for email text even in mobile view */
    .email .form-container .left-text p {
        position: static !important;
        transform: translateZ(0) !important;
        backface-visibility: hidden !important;
    }
}
