*{box-sizing:border-box;margin:0;padding:0}
:root{--green:#078b2b;--dark:#075d22;--yellow:#ffd800;--ink:#12301c;--cream:#f7fff8;--white:#fff}
html{scroll-behavior:smooth}
body{font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--white);line-height:1.55}
a{text-decoration:none;color:inherit}
.container{width:min(1120px,92%);margin:auto}
.site-header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #e7eee8}
.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:10px;color:var(--dark)}
.brand strong{font-size:25px;letter-spacing:1px;display:block}
.brand small{font-size:10px;font-weight:700;letter-spacing:.5px}
.brand-mark{width:40px;height:40px;border:3px solid var(--green);border-radius:12px;display:grid;place-items:center;color:var(--green);font-weight:900}
.nav-links{display:flex;gap:28px;align-items:center;font-weight:700}
.nav-links a:hover{color:var(--green)}
.nav-cta{background:var(--green);color:#fff!important;padding:11px 18px;border-radius:8px}
.menu-toggle{display:none;background:none;border:0;font-size:27px}
.hero{background:linear-gradient(135deg,#f9fff9 0%,#e9fbe9 55%,#fff8b9 100%);padding:70px 0}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
.eyebrow{color:var(--green);font-weight:900;letter-spacing:1.4px;text-transform:uppercase;font-size:14px;margin-bottom:10px}
.hero h1{font-size:clamp(45px,6vw,76px);line-height:.98;margin-bottom:22px;color:#0b3217}
.hero h1 span{color:var(--green)}
.hero-text{font-size:19px;max-width:620px;margin-bottom:28px}
.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-block;border:0;border-radius:9px;padding:14px 22px;font-weight:800;cursor:pointer;font-size:16px}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:#056d22}
.btn-outline{border:2px solid var(--green);color:var(--green);background:#fff}
.trust-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:22px;font-weight:700;font-size:14px}
.hero-card{background:#fff;padding:10px;border-radius:18px;box-shadow:0 18px 45px #0b4d1d22}
.hero-card img{display:block;width:100%;height:auto;border-radius:11px}
.section{padding:85px 0}
.section-heading{text-align:center;max-width:720px;margin:0 auto 42px}
.section-heading h2,.two-col h2,.contact-grid h2{font-size:clamp(32px,4vw,48px);line-height:1.05;margin-bottom:14px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-card{padding:24px;border:1px solid #dfeee1;border-radius:15px;background:#fff;box-shadow:0 8px 25px #0b4d1d0c}
.service-card .icon{width:34px;height:34px;border-radius:50%;background:#d9f7df;color:var(--green);display:grid;place-items:center;font-weight:900;margin-bottom:14px}
.service-card h3{font-size:19px;margin-bottom:6px}
.service-card p{color:#53645a}
.green-section{background:var(--dark);color:#fff}
.light{color:var(--yellow)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.check-list{display:grid;gap:12px}
.check-list div{background:#ffffff10;border:1px solid #ffffff24;padding:14px 16px;border-radius:9px;font-weight:700}
.audience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.audience-grid div{min-height:125px;border-radius:14px;background:#f2faf3;border:1px solid #dcefe0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:34px}
.audience-grid strong{font-size:15px}
.location-box{margin-top:30px;background:linear-gradient(90deg,var(--green),#0ca83a);color:#fff;border-radius:16px;padding:25px;text-align:center}
.location-box h3{font-size:25px;margin-bottom:4px}
.contact-section{background:#f7fbf7}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}
.contact-details{display:grid;gap:14px;margin-top:25px}
.contact-details a{color:#075d22;font-weight:700}
.booking-form{background:#fff;border:1px solid #dfeee1;padding:28px;border-radius:16px;box-shadow:0 10px 30px #0b4d1d12}
.booking-form h3{font-size:25px;margin-bottom:18px}
.booking-form label{display:block;font-weight:700;margin-bottom:13px}
.booking-form input,.booking-form select,.booking-form textarea{display:block;width:100%;margin-top:6px;border:1px solid #ccd9cf;border-radius:8px;padding:12px;font:inherit}
.booking-form textarea{resize:vertical}
.booking-form button{width:100%;margin-top:5px}
footer{background:#063e17;color:#dff5e3;padding:24px 0}
.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px}
@media(max-width:850px){
  .nav-links{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:18px 4%;flex-direction:column;align-items:stretch;gap:12px;border-bottom:1px solid #ddd}
  .nav-links.open{display:flex}.menu-toggle{display:block}
  .hero-grid,.two-col,.contact-grid{grid-template-columns:1fr}
  .hero{padding:45px 0}.hero-card{max-width:650px;margin:auto}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .audience-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:520px){
  .service-grid{grid-template-columns:1fr}
  .hero h1{font-size:45px}
  .hero-buttons .btn{width:100%;text-align:center}
  .section{padding:60px 0}
}

.school-section{background:#fbfff8}
.school-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}
.school-image{background:#fff;padding:9px;border-radius:18px;box-shadow:0 14px 35px #0b4d1d14}
.school-image img{display:block;width:100%;height:auto;border-radius:11px}
.school-copy h2{font-size:clamp(34px,4vw,50px);line-height:1.05;margin-bottom:16px;color:#0b3217}
.school-copy>p:not(.eyebrow){font-size:18px;margin-bottom:22px}
.school-points{display:grid;gap:10px;margin-bottom:25px}
.school-points div{padding:12px 14px;border-left:4px solid var(--green);background:#eff9f0;border-radius:6px;font-weight:700}
@media(max-width:850px){.school-grid{grid-template-columns:1fr}}

.banking-section{background:#f2faf3}
.banking-card{background:#fff;border:2px solid #d8ebd9;border-radius:18px;padding:35px;box-shadow:0 10px 30px #0b4d1d12}
.banking-card h2{font-size:clamp(30px,4vw,45px);line-height:1.05;margin-bottom:10px;color:#0b3217}
.banking-details{margin-top:25px;border:1px solid #d9e8da;border-radius:12px;overflow:hidden}
.bank-row{display:flex;justify-content:space-between;gap:20px;padding:18px 20px;border-bottom:1px solid #d9e8da}
.bank-row:last-child{border-bottom:0}
.bank-row span{font-weight:700;color:#53645a}
.bank-row strong{font-size:20px;color:#075d22}
.bank-note{margin-top:16px;font-size:14px;color:#53645a}
@media(max-width:600px){.bank-row{flex-direction:column;gap:5px}.bank-row strong{font-size:19px}}
