
:root{
  --navy:#062c63;
  --deep:#041b3f;
  --blue:#219ee6;
  --sky:#74c9ff;
  --gold:#efb21b;
  --ink:#07142e;
  --muted:#607089;
  --bg:#f4fbff;
  --white:#fff;
  --shadow:0 24px 70px rgba(6,44,99,.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Cairo","Tajawal",system-ui,sans-serif;
  color:var(--ink);
  background:var(--bg);
  line-height:1.8;
}
a{color:inherit;text-decoration:none}
.container{width:min(1120px,92%);margin:auto}
.hero{
  position:relative;
  min-height:92vh;
  isolation:isolate;
  overflow:hidden;
  background:
    linear-gradient(120deg,rgba(4,27,63,.78),rgba(33,158,230,.20)),
    url("assets/hero-cover.jpg") center/cover no-repeat;
  color:#fff;
}
.hero::after{
  content:"";
  position:absolute;inset:auto -8% -18% -8%;height:24%;
  background:linear-gradient(135deg,#fff 20%,#e9f8ff 100%);
  transform:skewY(-4deg);
  transform-origin:left;
  z-index:1;
}
.nav{
  position:relative;z-index:5;
  width:min(1180px,94%);margin:auto;padding:22px 0;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.brand{display:flex;align-items:center;gap:12px;font-weight:900}
.brand img{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(0,0,0,.25))}
.nav-links{display:flex;gap:8px;flex-wrap:wrap}
.nav-links a{
  padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.12);
  backdrop-filter:blur(6px);font-weight:800;font-size:15px
}
.hero-overlay{
  position:absolute;inset:0;
  background:
    radial-gradient(circle at 78% 20%,rgba(116,201,255,.38),transparent 30%),
    linear-gradient(90deg,rgba(4,27,63,.92) 0%,rgba(4,27,63,.65) 43%,rgba(4,27,63,.25) 100%);
  z-index:0;
}
.hero-content{
  position:relative;z-index:4;width:min(760px,92%);margin:auto;
  padding:72px 0 210px;text-align:center;
}
.crest-wrap{
  width:150px;height:150px;margin:0 auto 22px;border-radius:34px;
  background:rgba(255,255,255,.93);display:grid;place-items:center;
  box-shadow:var(--shadow);border:3px solid rgba(116,201,255,.7)
}
.crest-wrap img{width:130px;height:130px;object-fit:contain}
.eyebrow{
  display:inline-block;margin:0 0 10px;padding:7px 18px;border-radius:999px;
  color:#fff;background:linear-gradient(90deg,var(--blue),#0a56c8);
  font-weight:900;letter-spacing:.5px
}
h1{font-family:"Tajawal","Cairo",sans-serif;font-size:clamp(42px,7vw,82px);line-height:1.05;margin:12px 0 4px;font-weight:900;text-shadow:0 3px 12px rgba(0,0,0,.28)}
.hero h2{font-size:clamp(20px,3vw,34px);margin:0;color:#9ddeff;letter-spacing:3px;font-weight:900;text-shadow:0 2px 10px rgba(0,0,0,.28)}
.lead{font-size:clamp(18px,2.2vw,24px);margin:26px auto;max-width:760px;font-weight:700;color:#fff;background:rgba(4,27,63,.56);padding:14px 20px;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,.18);text-shadow:0 2px 8px rgba(0,0,0,.3)}
.hero-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:48px;
  padding:12px 24px;border-radius:999px;font-weight:900;
  border:2px solid transparent;transition:.2s ease;
}
.btn.primary{background:linear-gradient(90deg,var(--blue),#0a58d8);color:#fff;box-shadow:0 14px 30px rgba(33,158,230,.35)}
.btn.secondary{background:#fff;color:var(--navy);border-color:#bfeaff}
.btn:hover{transform:translateY(-2px)}
.section{padding:78px 0;position:relative}
.section-kicker{display:inline-block;color:var(--blue);font-weight:900;letter-spacing:.5px;margin-bottom:10px}
.section-kicker.center{display:block;text-align:center}
.center-title{text-align:center;font-size:clamp(30px,4vw,48px);line-height:1.25;margin:0 0 34px;font-weight:900;color:var(--navy)}
.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.intro h2,.contact h2{font-size:clamp(30px,4vw,48px);line-height:1.25;margin:0 0 18px;color:var(--navy);font-weight:900}
.intro p,.program p,.cta p{font-size:18px;color:var(--muted);font-weight:700}
.stats-card{
  display:grid;grid-template-columns:1fr 1fr;gap:16px;
  background:#fff;border:1px solid #d8efff;border-radius:34px;padding:22px;
  box-shadow:var(--shadow)
}
.stats-card div{
  min-height:128px;border-radius:26px;display:grid;place-items:center;text-align:center;
  background:linear-gradient(145deg,#f6fcff,#e3f6ff);border:1px solid #cdeeff;
}
.stats-card strong{display:block;font-size:34px;color:var(--navy);font-weight:900;line-height:1.1}
.stats-card span{color:var(--blue);font-weight:900}
.program{background:#fff}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{
  padding:30px;border-radius:30px;background:linear-gradient(180deg,#fff,#f3fbff);
  border:1px solid #d6efff;box-shadow:0 18px 44px rgba(6,44,99,.10);
  text-align:center
}
.icon{
  width:72px;height:72px;border-radius:24px;background:linear-gradient(135deg,var(--blue),#0d55c7);
  display:grid;place-items:center;margin:0 auto 16px;font-size:34px;
  box-shadow:0 14px 30px rgba(33,158,230,.28)
}
.card h3{color:var(--navy);font-size:24px;margin:0 0 10px;font-weight:900}
.gallery{background:linear-gradient(180deg,#f4fbff,#fff)}
.photo-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px
}
.photo-card{
  margin:0;border-radius:26px;overflow:hidden;min-height:255px;background:#dff4ff;
  box-shadow:0 18px 42px rgba(6,44,99,.13);border:1px solid #d7efff
}
.photo-card img{width:100%;height:100%;object-fit:cover;display:block;transition:.35s ease}
.photo-card:hover img{transform:scale(1.04)}
.cta{padding:60px 0}
.cta-box{
  display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap;
  padding:34px;border-radius:34px;color:#fff;
  background:
    radial-gradient(circle at 10% 0%,rgba(116,201,255,.45),transparent 32%),
    linear-gradient(135deg,var(--deep),var(--navy) 58%,var(--blue));
  box-shadow:var(--shadow)
}
.cta h2{margin:0;font-size:38px;font-weight:900}
.btn.large{font-size:20px;padding:14px 34px}
.contact{background:#fff}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.contact-card,.map-card{
  background:linear-gradient(180deg,#fff,#f5fcff);border:1px solid #d6efff;
  border-radius:30px;padding:30px;box-shadow:0 18px 42px rgba(6,44,99,.10)
}
.contact-card ul{list-style:none;padding:0;margin:0}
.contact-card li{padding:12px 0;border-bottom:1px solid #e3f4ff;font-size:18px}
.contact-card strong{color:var(--navy)}
.map-card{
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  background:
    linear-gradient(180deg,rgba(255,255,255,.92),rgba(244,251,255,.9)),
    radial-gradient(circle at 50% 30%,rgba(33,158,230,.25),transparent 42%);
}
.map-card h3{font-size:30px;color:var(--navy);margin:0}
.map-card p{font-size:20px;color:var(--muted);font-weight:800}
footer{
  background:var(--deep);color:#fff;text-align:center;padding:34px 20px;
}
footer img{width:82px;height:82px;object-fit:contain;background:#fff;border-radius:18px;padding:4px}
footer p{font-weight:900;font-size:22px;margin:10px 0 0}
footer span{color:#9fc4e7}
@media (max-width:820px){
  .nav{justify-content:center}.brand span{display:none}.nav-links{display:none}
  .hero{min-height:auto}.hero-content{padding:50px 0 170px}
  .two-col,.cards,.photo-grid,.contact-grid{grid-template-columns:1fr}
  .photo-card{min-height:230px}
  .cta-box{text-align:center;justify-content:center}
}

.photo-card:nth-child(6n+1){grid-row:span 2;min-height:530px}
.photo-card:nth-child(6n+1) img{height:100%;object-fit:cover}
@media (max-width:820px){
  .photo-card:nth-child(6n+1){grid-row:auto;min-height:250px}
}
