*{box-sizing:border-box;margin:0;padding:0}body{color:#333;font-display:swap;background-color:#f8f9fa;font-family:Arial,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}h1,h2,h3,h4,h5,h6{margin-bottom:1rem;font-weight:700;line-height:1.2}p{margin-bottom:1rem}.skip-nav{color:#fff;z-index:9999;background:#000;border-radius:4px;padding:8px;text-decoration:none;position:absolute;top:-40px;left:6px}.skip-nav:focus{top:6px}header{color:#fff;z-index:1000;background:linear-gradient(135deg,#1e3a5f 0%,#2c5282 100%);width:100%;padding:1rem 0;position:fixed;top:0;box-shadow:0 2px 10px #0000001a}nav{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 2rem;display:flex}.logo{color:#fff;font-size:1.8rem;font-weight:700}.nav-links{gap:2rem;list-style:none;display:flex}.nav-links a{color:#fff;border-radius:4px;padding:.5rem 1rem;font-weight:500;text-decoration:none;transition:color .3s}.nav-links a:hover,.nav-links a.active,.nav-links a:focus{color:#dc2626;background-color:#ffffff1a;outline:2px solid #0000}.mobile-menu-btn{color:#fff;cursor:pointer;background:0 0;border:none;font-size:1.5rem;display:none}.hero,.page-header{color:#fff;text-align:center;background-color:#0000;background-image:linear-gradient(#1e3a5fcc,#2c5282cc),url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1200 600\"><rect fill=\"%23f0f4f8\" width=\"1200\" height=\"600\"/><polygon fill=\"%23e2e8f0\" points=\"0,400 400,350 800,380 1200,320 1200,600 0,600\"/><polygon fill=\"%23cbd5e0\" points=\"0,450 300,420 600,440 900,400 1200,380 1200,600 0,600\"/></svg>");background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;margin-top:80px;padding:150px 2rem 100px}.hero h1,.page-header h1{text-shadow:2px 2px 4px #0000004d;margin-bottom:1rem;font-size:clamp(2rem,5vw,3.5rem)}.hero-subtitle,.page-header p{color:#e2e8f0;margin-bottom:2rem;font-size:clamp(1rem,3vw,1.3rem)}.cta-button{color:#fff;cursor:pointer;background:linear-gradient(45deg,#dc2626,#b91c1c);border:none;border-radius:8px;padding:15px 30px;font-size:1.1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block;box-shadow:0 4px 15px #dc26264d}.cta-button:hover,.cta-button:focus{background:linear-gradient(45deg,#b91c1c,#991b1b);outline:2px solid #0000;transform:translateY(-2px);box-shadow:0 6px 20px #dc262666}.service-card,.credential-card,.class-card{background:#fff;border-radius:12px;padding:2rem;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 5px 20px #0000001a}.service-card:hover,.credential-card:hover,.class-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #00000026}.service-card:before,.class-card:before{content:"";background:linear-gradient(90deg,#dc2626,#1e3a5f);width:100%;height:4px;position:absolute;top:0;left:0}.services-grid,.credentials-grid,.classes-grid,.testimonials-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem;display:grid}.testimonials{background:#f8f9fa;padding:80px 2rem}.testimonials-container{max-width:1200px;margin:0 auto}.testimonial-card{text-align:center;background:#fff;border-radius:12px;padding:2rem;position:relative;box-shadow:0 5px 20px #0000001a}.testimonial-card:before{content:"\"";color:#dc2626;opacity:.3;font-family:Georgia,serif;font-size:4rem;position:absolute;top:-10px;left:20px}.stars{color:#fbbf24;margin-bottom:1rem;font-size:1.2rem}.testimonial-card blockquote{color:#4b5563;margin-bottom:1.5rem;font-size:1.1rem;font-style:italic;line-height:1.6}.testimonial-card cite{color:#1e3a5f;font-style:normal;font-weight:700}.upcoming-classes{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin:2rem 0;display:grid}.class-listing{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;background:#fffffff2;border:2px solid #ffffff4d;border-radius:10px;padding:1.5rem;box-shadow:0 4px 15px #0000001a}.class-listing h3{color:#1e3a5f;margin-bottom:1rem;font-size:1.3rem;font-weight:700}.class-listing .class-info{color:#4b5563;margin-bottom:0;line-height:1.8}.class-listing strong{color:#1e3a5f;background:#1e3a5f1a;border-radius:6px;margin-top:.5rem;padding:.5rem;font-size:1.2rem;font-weight:700;display:block}.section-title{text-align:center;color:#1e3a5f;margin-bottom:3rem;font-size:clamp(2rem,4vw,2.5rem);font-weight:700}.main-content,.services-container{max-width:1200px;margin:0 auto;padding:80px 2rem}footer{color:#fff;background:#1f2937;padding:40px 2rem 20px}.footer-container{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto;display:grid}.footer-section h4{color:#dc2626;margin-bottom:1rem}.footer-section p,.footer-section a{color:#d1d5db;line-height:1.6;text-decoration:none}.footer-section a:hover,.footer-section a:focus{color:#fff;outline:2px solid #0000}.footer-bottom{text-align:center;color:#9ca3af;border-top:1px solid #374151;margin-top:2rem;padding-top:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#374151;margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}.form-group input,.form-group textarea,.form-group select{background:#fafbfc;border:1px solid #d1d5db;border-radius:10px;width:100%;padding:1rem 1.25rem;font-family:inherit;font-size:1rem;transition:all .25s;box-shadow:0 1px 2px #0000000a}.form-group input:hover:not(:disabled),.form-group textarea:hover:not(:disabled),.form-group select:hover:not(:disabled){border-color:#9ca3af}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{background:#fff;border-color:#10b981;outline:none;box-shadow:0 0 0 4px #10b98114,0 2px 4px #0000000f}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{cursor:not-allowed;opacity:.6;background-color:#f9fafb}.form-hint{color:#6b7280;margin-top:.5rem;font-size:.8rem;line-height:1.4;display:block}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-actions{justify-content:flex-end;margin-bottom:1rem;display:flex}.error-message{color:#991b1b;background:linear-gradient(135deg,#fee2e2 0%,#fecaca 100%);border:2px solid #ef4444;border-radius:8px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:1rem 1.25rem;font-size:.9rem;font-weight:500;display:flex}.error-message:before{content:"⚠️";font-size:1.25rem}.text-center{text-align:center}.mb-2{margin-bottom:2rem}.mt-2{margin-top:2rem}.mt-4{margin-top:1.5rem}.full-width{width:100%}.text-sm{color:#6b7280;font-size:.875rem}.link-button{color:#10b981;cursor:pointer;font-size:inherit;background:0 0;border:none;font-weight:600;text-decoration:none;transition:color .2s}.link-button:hover{color:#059669;text-decoration:underline}:focus{outline-offset:2px;outline:2px solid #dc2626}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.6s ease-out fadeIn}@media (max-width:768px){.nav-links{opacity:0;visibility:hidden;background:#1e3a5f;flex-direction:column;gap:0;width:100%;padding:1rem 0;transition:all .3s;position:absolute;top:100%;left:0;transform:translateY(-100%)}.nav-links.active{opacity:1;visibility:visible;transform:translateY(0)}.nav-links li{width:100%}.nav-links a{text-align:left;width:100%;padding:1rem 2rem;display:block}.mobile-menu-btn{display:block}.hero,.page-header{padding:120px 1rem 80px}.services-grid,.credentials-grid,.classes-grid{grid-template-columns:1fr;gap:1.5rem}.main-content,.services-container{padding:60px 1rem}.upcoming-classes{grid-template-columns:1fr;gap:1.5rem}.class-listing{background:#fff;border:2px solid #e5e7eb;padding:2rem 1.5rem}.class-listing h3{color:#1e3a5f;font-size:1.4rem}.class-listing strong{color:#1e3a5f;background:#f0f4f8;border:1px solid #cbd5e0;margin-top:1rem;padding:1rem;font-size:1.3rem}.form-row{grid-template-columns:1fr}.form-group input,.form-group textarea,.form-group select{font-size:16px}}@media (max-width:480px){nav{padding:0 1rem}.service-card,.credential-card,.class-card{padding:1.5rem}}@media (prefers-contrast:high){.cta-button{border:2px solid #fff}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
