* {
    box-sizing: border-box;
}

html, body {
    overflow-x: hidden;
}

/* Default styles for the hamburger menu (hidden on large screens) */
.hamburger {
    display: none;
    cursor: pointer;
    padding: 15px;
    background: none;
    border: none;
}

.hamburger .bar {
    display: block;
    width: 25px;
    height: 3px;
    margin: 5px auto;
    background-color: #333;
    transition: all 0.3s ease-in-out;
}

/* Media query for smaller screens (e.g., tablets and mobiles) */
@media (max-width: 768px) {
    .container {
        padding: 0 1rem;
    }

    .main-nav nav {
        display: none; /* Hide the regular navigation */
        width: 100%;
        position: absolute;
        top: 100%;
        left: 0;
        background-color: #fff;
        box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    }

    .main-nav nav.active {
        display: block; /* Show the navigation when active */
    }

    .main-nav ul {
        flex-direction: column;
        width: 100%;
    }

    .main-nav ul li {
        width: 100%;
        text-align: center;
    }

    .main-nav ul li a {
        padding: 1rem;
        border-bottom: 1px solid #f0f0f0;
    }

    .main-nav ul ul {
        position: static; /* Sub-menus will not be absolute */
        box-shadow: none;
        min-width: auto;
    }

    .main-nav ul ul li a {
        padding-left: 2rem; /* Indent sub-menu items */
    }

    .hamburger {
        display: block; /* Show the hamburger menu */
    }

    /* Hero Section Responsive */
    .hero-section .container {
        flex-direction: column;
        text-align: center;
    }

    .hero-content h1 {
        font-size: 2.5rem;
    }

    .hero-buttons .btn {
        width: 100%;
        margin-bottom: 1rem;
    }

    .hero-image {
        margin-top: 2rem;
    }

    /* Services Section Responsive */
    .services-grid {
        grid-template-columns: 1fr;
    }

    /* Process Section Responsive */
    .process-timeline {
        flex-direction: column;
    }

    .process-step {
        flex-direction: column;
        text-align: center;
    }

    .step-illustration {
        margin-bottom: 1rem;
    }

    /* Schedule Meeting Section Responsive */
    .schedule-meeting-container {
        flex-direction: column;
    }

    .form-row {
        flex-direction: column;
    }

    .form-group {
        width: 100%;
    }

    /* Top Bar Responsive */
@media (max-width: 768px) {
    .top-bar .container {
        justify-content: space-between;
    }

    .top-bar-contact a[href^="mailto:"] {
        display: none;
    }
}