:root{
  --primary:#1E40AF;
  --secondary:#06B6D4;
  --accent:#F97316;
  --bg:#F8FAFC;
  --text:#0F172A;
  --card:#FFFFFF;
  --border:#E2E8F0;
}
*{box-sizing:border-box;margin:0;padding:0}
body{
  font-family:Arial, Helvetica, sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.6;
}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
.container{width:90%;max-width:1200px;margin:0 auto}
.site-header{
  position:sticky;top:0;background:var(--card);border-bottom:1px solid var(--border);z-index:1000
}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 0}
.logo{max-height:50px}
.logo-footer{max-height:100px}
.main-nav{display:flex;gap:24px}
.main-nav a{font-weight:600;color:var(--text)}
.burger{display:none;font-weight:600;color:var(--primary);cursor:pointer}
.nav-toggle{display:none}
.nav-close{display:none}

.hero{padding:70px 0;background:var(--card)}
.small-hero{padding:50px 0}
.hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:40px;align-items:center}
.hero h1{font-size:40px;margin-bottom:12px}
.hero p{margin-bottom:16px}
.keywords-line{font-size:14px;color:#475569}

.btn{
  display:inline-block;padding:12px 22px;border-radius:6px;border:1px solid var(--primary);font-weight:600
}
.btn.primary{background:var(--primary);color:#fff}
.btn.secondary{background:transparent;color:var(--primary)}
.cta-group{display:flex;gap:12px;flex-wrap:wrap}

.benefits, .program-overview, .student-work, .trust, .cta-panel, .faq, .contact-form-section, .about-story, .about-values, .about-workshops, .about-space, .services-list, .service-details, .service-approach, .contact-details, .contact-extra{
  padding:70px 0
}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.card{background:var(--card);border:1px solid var(--border);padding:24px;border-radius:8px}
.card h3{margin-bottom:10px}

.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.program-text ul{margin-top:14px;padding-left:20px}
.checklist li{margin-bottom:8px}

.work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.work-item{background:var(--card);border:1px solid var(--border);padding:20px;border-radius:8px}
.work-item h3{margin:12px 0 6px}

.trust-grid{display:grid;grid-template-columns:1.2fr 0.8fr;gap:32px;align-items:center}

.cta-panel{background:var(--primary);color:#fff}
.cta-inner{display:flex;flex-direction:column;gap:12px}
.cta-panel .btn.secondary{border-color:#fff;color:#fff}

.faq-grid details{background:var(--card);border:1px solid var(--border);padding:16px;border-radius:6px;margin-bottom:12px}
.faq-grid summary{font-weight:600;cursor:pointer}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.contact-form form{display:flex;flex-direction:column;gap:12px}
input, textarea{padding:10px;border:1px solid var(--border);border-radius:6px}

.contact-list{list-style:none;margin-top:10px}
.contact-list li{margin-bottom:8px}

.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}

.site-footer{background:#0B1220;color:#fff;padding:50px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.2fr 0.8fr 0.8fr;gap:32px}
.footer-nav a, .footer-legal a{display:block;color:#E2E8F0;margin-top:8px}
.footer-bottom{margin-top:20px;border-top:1px solid #1F2937;padding-top:16px;font-size:14px;color:#E2E8F0}

.legal{padding:70px 0}
.legal-content h1{margin-bottom:20px}
.legal-content h2{margin:24px 0 10px}

.cookie-banner{
  position:fixed;bottom:0;left:0;right:0;background:var(--card);border-top:1px solid var(--border);padding:16px;display:none
}
.cookie-content{display:flex;align-items:center;justify-content:space-between;gap:20px}

.thank-details p{margin-bottom:8px}

@media (max-width:900px){
  .hero-grid, .program-grid, .trust-grid, .contact-grid, .split-grid, .footer-grid{grid-template-columns:1fr}
  .main-nav{
    position:fixed;inset:0;background:var(--card);flex-direction:column;align-items:center;justify-content:center;gap:24px;display:none
  }
  .nav-toggle:checked + .burger + .main-nav{display:flex}
  .burger{display:block}
  .nav-close{display:block;position:absolute;top:20px;right:20px;font-size:32px;cursor:pointer}
  .header-inner{position:relative}
}

@media (max-width:600px){
  .hero h1{font-size:32px}
  .cta-group{flex-direction:column;align-items:flex-start}
  .cookie-content{flex-direction:column;align-items:flex-start}
}