* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: Arial, sans-serif; line-height: 1.6; color: #222; }
a { color: #0057e7; text-decoration: none; }
header { background: #fff; border-bottom: 1px solid #eee; }
.logo { font-size: 1.5rem; font-weight: 700; }
.container { width: 90%; max-width: 1100px; margin: 0 auto; }
.nav-container { display: flex; align-items: center; justify-content: space-between; padding: 1rem 0; }
#main-nav ul { list-style: none; display: flex; gap: 1rem; }
#main-nav li { position: relative; }
#main-nav li a::after { content: ''; position: absolute; width: 0; height: 2px; background: #0057e7; left: 0; bottom: -4px; transition: width .3s; }
#main-nav li a:hover::after { width: 100%; }
#nav-toggle { display: none; width: 30px; height: 30px; background: url('data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjMjIyIiBoZWlnaHQ9IjMyIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIzMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48bGluZSB4MT0iMyIgeDI9IjIxIiB5MT0iNiIgeTI9IjYiIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIi8+PGxpbmUgeDE9IjMiIHgyPSIyMSIgeTE9IjEyIiB5Mj0iMTIiIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIi8+PGxpbmUgeDE9IjMiIHgyPSIyMSIgeTE9IjE4IiB5Mj0iMTgiIHN0cm9rZT0iIzIyMiIgc3Ryb2tlLXdpZHRoPSIyIi8+PC9zdmc+') center/contain no-repeat; border: none; cursor: pointer; }
.hero { background: url('https://atlflex.org/images/home_group_training.jpg') center/cover no-repeat; color: #fff; padding: 6rem 0; text-align: center; }
.hero h1 { font-size: 2.5rem; margin-bottom: 1rem; text-shadow: 1px 1px 3px rgba(0,0,0,.6); }
.btn-primary { background: #0057e7; color: #fff; padding: .75rem 1.5rem; border-radius: 50px; display: inline-block; transition: background .3s; }
.btn-primary:hover { background: #003fbe; }
.features .feature { text-align: center; padding: 2rem; }
.features .feature img { width: 100%; max-width: 280px; margin: 0 auto 1rem; border-radius: 12px; }
.grid { display: grid; gap: 2rem; }
@media (min-width: 768px) { .grid { grid-template-columns: repeat(3, 1fr); } }
.page-header { background: #f7f7f7; padding: 4rem 0; text-align: center; }
.page-header h1 { font-size: 2rem; margin-bottom: .5rem; }
.tier { border: 1px solid #eee; border-radius: 12px; padding: 2rem; text-align: center; transition: transform .3s, box-shadow .3s; }
.tier:hover { transform: translateY(-5px); box-shadow: 0 4px 10px rgba(0,0,0,.05); }
.price { font-size: 2rem; margin: 1rem 0; }
footer { background: #111; color: #eee; padding: 2rem 0; }
footer a { color: #eee; }
.footer-content { display: flex; flex-direction: column; gap: 2rem; }
@media (min-width: 600px) { .footer-content { flex-direction: row; justify-content: space-between; } }
.alert { padding: 1rem; margin-bottom: 1rem; border-radius: 8px; }
.alert.success { background: #d4edda; color: #155724; }
.alert.error { background: #f8d7da; color: #721c24; }

iframe { width: 100%; min-height: 300px; border: 0; border-radius: 12px; }

/* Contact Form Styles */
.contact-form form { max-width: 640px; margin: 0 auto; }
.contact-form label { display: block; font-weight: 600; margin-bottom: .5rem; }
.contact-form input,
.contact-form textarea { 
    width: 100%; 
    padding: 0.75rem 1rem; 
    border: 1px solid #ccc; 
    border-radius: 8px; 
    margin-bottom: 1rem; 
    font-size: 1rem;
}
.contact-form input:focus,
.contact-form textarea:focus {
    outline: none;
    border-color: #0057e7;
    box-shadow: 0 0 0 2px rgba(0, 87, 231, 0.2);
}
.contact-form .btn-primary { width: 100%; }
@media (min-width: 600px) {
    .contact-form .form-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1rem;
    }
    .contact-form .btn-primary { width: auto; }
}