/* Fix for horizontal scrollbar */
html, body {
    overflow-x: hidden;
    width: 100%;
    position: relative;
    margin: 0;
    padding: 0;
}

/* Fix for any potential overflowing elements */
.bylon {
    overflow-x: hidden;
    width: 100%;
}

/* Ensure all sections stay within viewport width */
.bylon main,
.bylon section,
.bylon .container,
.bylon .hero-container,
.bylon .modules-container,
.bylon .features-container,
.bylon .stats-container,
.bylon .cta-container,
.bylon .footer-container {
    max-width: 100%;
    box-sizing: border-box;
    padding-left: 1rem;
    padding-right: 1rem;
}

/* Fix for potential overflowing images */
img {
    max-width: 100%;
    height: auto;
}

/* Fix for potential overflowing tables */
table {
    max-width: 100%;
    display: block;
    overflow-x: auto;
}

/* Fix for footer */
.site-footer {
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}

/* Footer specific fixes */
.footer-container {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0 1rem;
    overflow: hidden;
}

.footer-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 2rem;
    width: 100%;
    max-width: 100%;
}

.footer-section {
    width: 100%;
    box-sizing: border-box;
}

.footer-links {
    padding-left: 0;
    list-style-type: none;
}

.footer-bottom {
    width: 100%;
    box-sizing: border-box;
}

.footer-bottom-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1rem;
    width: 100%;
}

.copyright {
    width: 100%;
    max-width: 600px;
}

.legal-links {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.company-tagline {
    max-width: 100%;
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
}

/* Fix for mobile view */
@media (max-width: 768px) {
    .footer-grid {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }
    
    .footer-bottom-content {
        flex-direction: column;
        text-align: center;
    }
    
    .legal-links {
        justify-content: center;
    }
}
