:root{
  --bg: #ffffff;
  --text: #2e2e2e;
  --muted: #646b74;
  --soft: #f7f8fb;
  --card: #ffffff;
  --brand: #ff6b6b;    /* soft coral from logo */
  --brand-2: #6bc2ff;  /* soft sky from logo */
  --brand-3: #4a90e2;  /* deeper blue from logo */
  --accent: #ffd29d;   /* peach from logo */
  --accent-2: #ffb74d; /* deeper orange from logo */
  --gradient-1: linear-gradient(135deg, var(--brand), var(--brand-2));
  --gradient-2: linear-gradient(135deg, var(--accent), var(--brand));
  --ring: rgba(0,0,0,.08);
  --shadow: 0 6px 20px rgba(0,0,0,.06);
  --radius: 18px;
  --maxw: 1100px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--bg); color:var(--text);
  font: 16px/1.65 system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji";
}
/* Top bar */
.topbar{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.85);backdrop-filter:saturate(120%) blur(8px);border-bottom:1px solid #eee}
.nav{max-width:var(--maxw);margin:auto;display:flex;align-items:center;gap:16px;padding:12px 16px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.logo-img{height: 60px;
  object-fit: cover;}
.logo-img-small{width:32px;height:32px;border-radius:50%;object-fit:cover;box-shadow:var(--shadow)}
.title{font-weight:800;letter-spacing:.3px}
.domain{font-size:.8rem;color:var(--muted)}
.spacer{flex:1}
.links{display:flex;gap:8px;flex-wrap:wrap}
.links a{padding:8px 12px;border-radius:999px;text-decoration:none;color:var(--text);font-weight:600;transition:all 0.3s ease}
.links a:hover{background:var(--soft);color:var(--brand-3)}
.menu-btn{display:none;border:1px solid #eee;border-radius:10px;padding:8px 10px;background:#fff}

/* Hero */
.hero{position:relative;overflow:hidden}
.hero-wrap{max-width:var(--maxw);margin:auto;display:grid;grid-template-columns:1.1fr .9fr;gap:28px;padding:48px 16px 24px}
.badge{display:inline-flex;gap:8px;align-items:center;padding:6px 10px;border-radius:999px;background:linear-gradient(90deg,var(--soft),#fff);border:1px solid #eee;color:#555;font-weight:600}
.tag-dot{width:8px;height:8px;border-radius:50%;background:var(--brand)}
h1{font-size:clamp(28px,5vw,46px);line-height:1.15;margin:14px 0 8px}
.lead{font-size:clamp(16px,2.6vw,20px);color:var(--muted)}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.btn{appearance:none;border:0;border-radius:999px;padding:12px 18px;font-weight:700;text-decoration:none;cursor:pointer;box-shadow:var(--shadow)}
.btn-primary{background:var(--gradient-1);color:#fff}
.btn-secondary{background:#fff;border:1px solid #eee;color:#333}
.cloud{position:absolute;inset:auto -10% -22% -10%;height:320px;background:radial-gradient(50% 50% at 50% 50%, rgba(255,107,107,.18) 0, rgba(255,107,107,0) 60%),radial-gradient(60% 60% at 60% 40%, rgba(107,194,255,.20) 0, rgba(107,194,255,0) 60%)}
.hero-card{background:var(--card);border:1px solid #f0f0f0;border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}
.hero-card-logo{
  display: flex;
  align-items:center;
  justify-content:center;

  img{
    height: 100px;
  }
}
/* Sections */
section{padding:38px 16px}
.container{max-width:var(--maxw);margin:auto}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.col-6{grid-column:span 6}
.col-5{grid-column:span 5}
.col-7{grid-column:span 7}
h2{font-size:clamp(22px,4vw,34px);margin:0 0 10px;color:#2e2e2e}
.muted{color:var(--muted)}
.card{background:var(--card);border:1px solid #eee;border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{border:1px solid #eee;border-radius:999px;padding:6px 10px;background:#fff;font-size:.9rem;color:#444}

/* Programs */
.programs{background:linear-gradient(180deg,#fff, #f0f7ff)}
.program-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.program{position:relative}
.program h3{margin:0 0 6px;color:var(--brand-3)}
.program small{color:var(--muted)}

/* Impact */
.impact{background:linear-gradient(180deg,#fff,#fff2e8)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-top:10px}
.stat{background:#fff;border:1px solid #f0f0f0;padding:18px;border-radius:16px;text-align:center;box-shadow:var(--shadow)}
.stat .num{font-weight:900;font-size:34px;background:var(--gradient-1);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.stat .label{color:var(--muted);font-weight:600}

/* Testimonial */
.testi{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
blockquote{margin:0;padding:18px;background:#fff;border-left:4px solid var(--brand-2);border-radius:0 var(--radius) var(--radius) 0;box-shadow:var(--shadow)}
blockquote footer{margin-top:8px;color:var(--muted);font-size:.9rem}

/* FAQ */
.faq .item{border:1px solid #eee;border-radius:14px;padding:14px 16px;background:#fff;transition:all 0.3s ease}
.faq .q{display:flex;justify-content:space-between;gap:10px;cursor:pointer;font-weight:700}
.faq .a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq .item.active{border-color:var(--brand-2);box-shadow:0 4px 15px rgba(107,194,255,0.1)}
.faq .item.active .a{max-height:260px}

/* Contact */
form{display:grid;gap:12px}
input,textarea,select{width:100%;padding:12px 14px;border-radius:12px;border:1px solid #e6e6e6;background:#fff;outline:none}
input:focus,textarea:focus,select:focus{border-color:#c9e7ff;box-shadow:0 0 0 4px rgba(107,194,255,.18)}
.note{font-size:.9rem;color:var(--muted)}

/* Footer */
footer{background:linear-gradient(to bottom, #f7f9ff, #f0f7ff);border-top:1px solid #e0e8f5}
.foot{max-width:var(--maxw);margin:auto;padding:26px 16px;display:grid;gap:8px}
.footer-brand{display:flex;align-items:center;gap:10px;margin-bottom:5px}
.footer-brand span{font-size:1.1rem}
.foot small{color:var(--muted)}

/* Image Grid */
.image-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 20px;
  margin: 30px 0;
}
.image-grid img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
  cursor: pointer;
  border: 3px solid white;
}
.image-grid img:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.15);
  border-color: var(--brand-2);
}

/* Section with images background */
.image-section {
  background: linear-gradient(to bottom, #fff, #f0f7ff);
  padding-bottom: 50px;
}

/* Image Gallery */
.gallery-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.9);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 2000;
}
.gallery-content {
  position: relative;
  max-width: 90%;
  max-height: 90%;
}
.gallery-img {
  max-width: 100%;
  max-height: 90vh;
  border-radius: 8px;
  box-shadow: 0 5px 25px rgba(0,0,0,0.2);
}
.gallery-close {
  position: absolute;
  top: -40px;
  right: 0;
  color: white;
  font-size: 30px;
  cursor: pointer;
  background: none;
  border: none;
  padding: 5px;
}
.gallery-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: white;
  font-size: 30px;
  cursor: pointer;
  background: linear-gradient(135deg, var(--brand-3), var(--brand-2));
  border: none;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.gallery-nav:hover {
  transform: translateY(-50%) scale(1.1);
  box-shadow: 0 0 15px rgba(107,194,255,0.5);
}
.gallery-prev {
  left: -60px;
}
.gallery-next {
  right: -60px;
}

@media (max-width: 768px) {
  .gallery-nav {
    width: 40px;
    height: 40px;
    font-size: 24px;
  }
  .gallery-prev {
    left: -45px;
  }
  .gallery-next {
    right: -45px;
  }
  
  /* Adjust image grid for mobile */
  .image-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin: 15px 0;
  }
  .image-grid img {
    height: 160px;
  }
  
  /* Ensure images are visible above the fold */
  .hero-wrap {
    padding-bottom: 10px;
  }
  .hero .section-head {
    margin-bottom: 0;
  }
}

/* Utilities */
.hidden{display:none}
.rounded{border-radius:var(--radius)}
.shadow{box-shadow:var(--shadow)}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:8px}

/* Mobile */
@media (max-width: 860px){
  .hero-wrap{grid-template-columns:1fr; padding-top:0}
  .links{display:none}
  .menu-btn{display:inline-flex}
  .col-6,.col-5,.col-7{grid-column:1/-1}
  .section-head{flex-direction:column;align-items:flex-start}
  .section-head .muted{margin-top:5px}
}