/* src/css/layout.css */

.container { 
    width: 90%; 
    max-width: 1200px; 
    margin: 0 auto; 
    padding: 0 20px; 
    position: relative;
    z-index: 2;
}

/* For headers inside sections that have wrappers (like team scroller) */
.section-header-container { 
    width: 90%; 
    max-width: 1200px; 
    margin: 0 auto 40px auto; 
    padding: 0 20px; 
}

/* General Content Section Layout */
.content-section {
    padding: 80px 0;
    position: relative; 
}
main > .content-section:nth-child(even) { 
    background-color: var(--section-bg-odd); 
}

/* Specific Grid Layouts */
.focus-grid,
.advisor-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}

.contact-layout {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
}
.contact-info { 
    flex: 1; 
    min-width: 300px; 
}
#contact-form-container {
    flex: 1.5; 
    min-width: 320px; 
}


/* Responsive adjustments */
@media (max-width: 768px) {
    .content-section {
        padding: 60px 0; 
    }
    .contact-layout { 
        flex-direction: column; 
        gap: 30px;
    }
}

@media (max-width: 480px) {
    .container, .section-header-container {
        padding: 0 15px; 
    }
    .focus-grid, .advisor-grid {
        grid-template-columns: 1fr;
    }
}