/* ─── TOKENS ─── */
:root{
  --ink:       #0C2233;
  --navy:      #1A4A6E;
  --azure:     #2777C5;
  --blue:      #3B9BD4;
  --terra:     #B84820;
  --ember:     #D46030;
  --gold:      #C09030;
  --honey:     #F0B429;
  --sand:      #A8D8EA;
  --ivory:     #EBF6FC;
  --parch:     #D6EAF8;
  --mid:       #B8D9F0;
  --muted:     #4A708A;
  --white:     #FFFFFF;
  --sh:        0 4px 28px rgba(12,34,51,.10);
  --sh-lg:     0 12px 56px rgba(12,34,51,.18);
  --r:         12px;
  --r-lg:      20px;
  --ease:      cubic-bezier(.25,.8,.25,1);
  /* legacy aliases so components keep working */
  --earth:     #1A4A6E;
}

/* ─── RESET ─── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--ivory);color:var(--ink);overflow-x:hidden;line-height:1.7}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}

/* ─── KEYFRAMES ─── */
@keyframes kb{0%{transform:scale(1) translate(0,0)}100%{transform:scale(1.09) translate(-1.2%,-0.8%)}}
@keyframes floatLeaf{0%,100%{transform:translateY(0) rotate(0deg)}40%{transform:translateY(-26px) rotate(8deg)}70%{transform:translateY(-10px) rotate(-5deg)}}
@keyframes slideUp{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes scan{0%{top:-100%;opacity:0}30%{opacity:1}100%{top:110%;opacity:0}}
@keyframes blob{0%,100%{border-radius:62% 38% 46% 54%/60% 44% 56% 40%}33%{border-radius:40% 60% 60% 40%/46% 58% 42% 54%}66%{border-radius:54% 46% 38% 62%/54% 38% 62% 46%}}

/* ─── REVEAL ─── */
.rv{opacity:0;transform:translateY(36px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.rv-l{opacity:0;transform:translateX(-36px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.rv-r{opacity:0;transform:translateX(36px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.rv.on,.rv-l.on,.rv-r.on{opacity:1;transform:none}

/* ─── NAV ─── */
#nav{
  position:fixed;top:0;left:0;right:0;z-index:500;
  padding:18px 0;
  transition:background .4s,padding .4s,box-shadow .4s;
}
#nav.solid{
  background:rgba(235,246,252,.97);
  backdrop-filter:blur(18px);
  box-shadow:0 2px 24px rgba(12,34,51,.09);
  padding:11px 0;
}
/* Inner pages start solid */
#nav.always-solid{
  background:rgba(235,246,252,.97);
  backdrop-filter:blur(18px);
  box-shadow:0 2px 24px rgba(12,34,51,.09);
  padding:11px 0;
}
.nav-wrap{display:flex;align-items:center;justify-content:space-between}
.nav-logo{display:flex;align-items:center;gap:10px}
.logo-img{
  height:40px;width:auto;display:block;
  flex-shrink:0;
  background:var(--white);
  border-radius:8px;
  padding:4px 6px;
  object-fit:contain;
  transition:opacity .3s, box-shadow .3s;
  box-shadow:0 2px 8px rgba(0,0,0,.18);
}
.logo-img:hover{opacity:.88;box-shadow:0 4px 14px rgba(0,0,0,.28)}
.logo-txt{font-family:'Cormorant Garamond',serif;font-size:1.15rem;font-weight:600;color:var(--white);line-height:1.1;transition:color .4s}
.logo-txt small{display:block;font-size:.62rem;font-weight:400;letter-spacing:.1em;opacity:.7;font-family:'DM Sans',sans-serif}
#nav.solid .logo-txt,#nav.always-solid .logo-txt{color:var(--ink)}
.nav-links{display:flex;align-items:center;gap:2px}
.nav-links a{padding:8px 12px;font-size:.875rem;font-weight:500;border-radius:9px;color:rgba(255,255,255,.88);transition:background .3s,color .3s}
.nav-links a:hover{background:rgba(255,255,255,.14);color:var(--white)}
#nav.solid .nav-links a,#nav.always-solid .nav-links a{color:var(--earth)}
#nav.solid .nav-links a:hover,#nav.always-solid .nav-links a:hover{background:var(--parch);color:var(--terra)}
.nav-links a.active{color:var(--terra)!important;background:rgba(184,72,32,.09)!important}
.nav-cta{background:var(--terra)!important;color:var(--white)!important;border-radius:50px!important;padding:9px 22px!important}
.nav-cta:hover{background:var(--ember)!important}
.nav-ham{display:none;flex-direction:column;gap:5px;cursor:pointer;border:none;background:transparent;padding:6px}
.nav-ham span{width:22px;height:2px;background:var(--white);border-radius:2px;display:block;transition:.3s}
#nav.solid .nav-ham span,#nav.always-solid .nav-ham span{background:var(--ink)}

/* ─── MOBILE MENU ─── */
#mob{display:none;position:fixed;inset:0;z-index:490;background:var(--ivory);flex-direction:column;padding:88px 32px 48px;gap:0}
#mob.open{display:flex}
#mob a{font-family:'Cormorant Garamond',serif;font-size:1.55rem;font-weight:500;color:var(--earth);padding:15px 0;border-bottom:1px solid var(--parch)}
#mob a:last-child{border:none;color:var(--terra);margin-top:10px;font-weight:600}
.mob-x{position:absolute;top:20px;right:20px;width:44px;height:44px;border-radius:50%;background:var(--parch);border:none;font-size:1.2rem;cursor:pointer;color:var(--earth)}

/* ─── HERO (homepage) ─── */
#hero{position:relative;height:100vh;min-height:580px;display:flex;align-items:flex-end;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0;background:url("../images/WhatsApp Image 2026-05-30 at 2.35.48 PM.jpeg") center 44%/cover no-repeat;animation:kb 22s ease-in-out infinite alternate;will-change:transform}
.hero-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(12,34,51,.92) 0%,rgba(12,34,51,.60) 30%,rgba(26,74,110,.35) 65%,rgba(26,74,110,.15) 100%)}
.flora{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.leaf{position:absolute;animation:floatLeaf var(--d,16s) var(--dl,0s) ease-in-out infinite;will-change:transform}
.hero-body{position:relative;z-index:3;padding:0 0 80px;width:100%}
.hero-sup{display:inline-flex;align-items:center;gap:10px;font-size:.73rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--sand);margin-bottom:20px;animation:slideUp .9s .2s both}
.hero-sup::before{content:'';width:28px;height:1px;background:var(--honey)}
.hero-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(3rem,7.5vw,6.5rem);font-weight:600;color:var(--white);line-height:1.02;margin-bottom:22px}
.hero-h1 span{display:block}
.hero-h1 .l1{animation:slideUp .9s .35s both}
.hero-h1 .l2{animation:slideUp .9s .5s both}
.hero-h1 .l3{font-style:normal;color:var(--honey);animation:slideUp .9s .65s both}
.hero-tag-line{font-size:1rem;color:rgba(255,255,255,.72);max-width:480px;line-height:1.78;margin-bottom:36px;animation:slideUp .9s .8s both}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;animation:slideUp .9s .95s both}
.hbtn{display:inline-flex;align-items:center;gap:9px;padding:14px 30px;border-radius:50px;font-size:.93rem;font-weight:600;transition:background .3s,transform .3s,box-shadow .3s}
.hbtn.fill{background:var(--terra);color:var(--white)}
.hbtn.fill:hover{background:var(--ember);transform:translateY(-3px);box-shadow:0 10px 32px rgba(184,72,32,.45)}
.hbtn.whatsapp{background:#25D366;color:var(--ink)}
.hbtn.whatsapp:hover{background:#31E077;transform:translateY(-3px);box-shadow:0 10px 32px rgba(37,211,102,.32)}
.hbtn.ghost{color:var(--white);border:2px solid rgba(255,255,255,.40)}
.hbtn.ghost:hover{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.75)}
.hero-hint{position:absolute;bottom:28px;right:32px;z-index:3;display:flex;flex-direction:column;align-items:center;gap:8px;color:rgba(255,255,255,.38);font-size:.7rem;letter-spacing:.1em;animation:fadeIn 1s 2s both}
.hint-bar{width:1px;height:42px;background:rgba(255,255,255,.18);position:relative;overflow:hidden}
.hint-bar::after{content:'';position:absolute;left:0;width:100%;height:40%;background:rgba(255,255,255,.6);animation:scan 2.4s ease-in-out 2.4s infinite}
.hero-wave{position:absolute;bottom:-2px;left:0;right:0;z-index:3;line-height:0}

/* ─── INNER PAGE HERO ─── */
.page-hero{
  padding:140px 0 84px;
  background-color:var(--ink);
  background-size:cover;
  background-position:center 40%;
  position:relative;overflow:hidden;
  min-height:340px;
}
/* dark gradient overlay on top of the photo */
.page-hero::before{
  content:'';position:absolute;inset:0;z-index:0;
  background:linear-gradient(to bottom,rgba(12,34,51,.76) 0%,rgba(12,34,51,.55) 50%,rgba(12,34,51,.82) 100%);
}
/* subtle dot texture */
.page-hero::after{
  content:'';position:absolute;inset:0;z-index:0;
  background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='0.018'%3E%3Ccircle cx='30' cy='30' r='1.5'/%3E%3C/g%3E%3C/svg%3E");
}
.page-hero-in{position:relative;z-index:1}
.page-hero .ptag{display:inline-flex;align-items:center;gap:8px;font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--sand);margin-bottom:18px}
.page-hero .ptag::before{content:'';width:22px;height:1px;background:var(--honey)}
.page-hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2.4rem,5vw,4.2rem);font-weight:600;color:var(--white);line-height:1.08;margin-bottom:16px}
.page-hero h1 em{font-style:normal;color:var(--honey)}
.page-hero p{font-size:1rem;color:rgba(255,255,255,.62);max-width:540px;line-height:1.78}
.breadcrumb{display:flex;align-items:center;gap:8px;font-size:.78rem;color:rgba(255,255,255,.35);margin-bottom:20px}
.breadcrumb a{color:rgba(255,255,255,.5);transition:color .2s}
.breadcrumb a:hover{color:var(--sand)}
.breadcrumb span{color:rgba(255,255,255,.25)}

/* ─── STATS ─── */
#stats{background:var(--ink);padding:0}
/* ─── BLUE OVERRIDES ─── */
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.sc{padding:38px 16px;text-align:center;border-right:1px solid rgba(255,255,255,.06);transition:background .3s}
.sc:last-child{border:none}
.sc:hover{background:rgba(255,255,255,.04)}
.sc-n{font-family:'DM Sans',sans-serif;font-size:clamp(2.2rem,4vw,3.2rem);font-weight:700;color:var(--honey);line-height:1;margin-bottom:6px}
.sc-l{font-size:.8rem;color:rgba(255,255,255,.48);line-height:1.45}

/* ─── SHARED UTILS ─── */
.container{max-width:1160px;margin:0 auto;padding:0 28px}
.tag{display:inline-block;font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--terra);background:rgba(184,72,32,.09);border:1px solid rgba(184,72,32,.18);padding:4px 13px;border-radius:50px;margin-bottom:14px}
.tag.lt{color:rgba(255,255,255,.8);background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18)}
.sh{text-align:center;margin-bottom:56px}
.sh h2{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4vw,3rem);margin-bottom:10px}
.sh p{max-width:560px;margin:0 auto;color:var(--muted);font-size:.96rem;line-height:1.8}
.sh.lt h2{color:var(--white)}
.sh.lt p{color:rgba(255,255,255,.55)}
.sec-body{font-size:.95rem;color:var(--muted);line-height:1.85}
.sec-body p{margin-bottom:14px}
.sec-body p:last-child{margin-bottom:0}
.sec-body strong{color:var(--earth);font-weight:600}
.sec-link{display:inline-flex;align-items:center;gap:7px;font-size:.88rem;font-weight:600;color:var(--terra);margin-top:18px;transition:gap .2s}
.sec-link:hover{gap:12px}
.about-quote{margin-top:22px;padding:18px 20px;background:rgba(240,180,41,.16);border-left:3px solid var(--terra);border-radius:0 12px 12px 0;font-family:'Cormorant Garamond',serif;font-size:1.18rem;line-height:1.5;color:var(--earth)}

/* ─── ABOUT ─── */
#about{padding:110px 0 80px}
.about-top{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;margin-bottom:80px}
.ab-vis{position:relative;padding-bottom:36px}
.ab-blob{position:absolute;width:320px;height:320px;background:var(--parch);top:-22px;left:-22px;z-index:0;animation:blob 12s ease-in-out infinite}
.ab-frame{position:relative;z-index:1;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-lg)}
.ab-frame img{width:100%;height:460px;object-fit:cover;transition:transform .65s ease}
.ab-frame:hover img{transform:scale(1.04)}
.ab-chip{position:absolute;bottom:0;right:-14px;z-index:2;background:var(--white);border-radius:16px;padding:17px 20px;box-shadow:var(--sh-lg);display:flex;align-items:center;gap:13px}
.chip-ico{width:44px;height:44px;border-radius:12px;background:rgba(201,144,48,.1);display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}
.ab-chip strong{display:block;font-size:.97rem;color:var(--earth);line-height:1.2}
.ab-chip span{font-size:.73rem;color:var(--muted)}
.ab-txt .big{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,3.5vw,2.85rem);line-height:1.15;margin-bottom:20px}
.ab-txt .big em{font-style:normal;color:var(--terra)}
.founder{display:flex;align-items:center;gap:14px;margin-top:28px;padding:18px 20px;background:var(--parch);border-left:3px solid var(--terra);border-radius:0 12px 12px 0}
.f-ava{width:56px;height:56px;border-radius:50%;background:var(--ember);display:block;object-fit:cover;object-position:center top;flex-shrink:0;border:3px solid rgba(255,255,255,.8);box-shadow:0 8px 18px rgba(12,34,51,.14)}
.founder strong{display:block;font-size:.91rem;color:var(--earth);font-weight:600}
.founder em{font-size:.78rem;color:var(--muted);font-style:normal}
.about-cards{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:48px}
.acard{background:var(--white);border-radius:var(--r-lg);padding:36px 32px;border:1px solid rgba(12,34,51,.07);transition:box-shadow .3s,transform .3s}
.acard:hover{box-shadow:var(--sh);transform:translateY(-4px)}
.acard.accent{border-left:4px solid var(--terra)}
.acard.accent2{border-left:4px solid var(--honey)}
.acard h3{font-family:'Cormorant Garamond',serif;font-size:1.4rem;margin-bottom:12px;color:var(--earth)}
.acard-ico{font-size:2rem;margin-bottom:16px}
.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px}
.ap-pill{background:var(--parch);border-radius:var(--r);padding:20px;text-align:center}
.ap-pill .level{font-family:'DM Sans',sans-serif;font-size:.9rem;font-weight:700;color:var(--terra);margin-bottom:6px;letter-spacing:.04em}
.ap-pill span{font-size:.83rem;color:var(--muted);line-height:1.5}

/* ─── STORY / ORIGIN ─── */
#origin{padding:80px 0;background:var(--parch)}
.origin-inner{display:grid;grid-template-columns:2fr 1fr;gap:64px;align-items:start}
.origin-inner h2{font-family:'Cormorant Garamond',serif;font-size:clamp(1.9rem,3.5vw,2.8rem);margin-bottom:20px;line-height:1.15}
.origin-inner h2 em{font-style:normal;color:var(--terra)}
.story-nums{display:flex;flex-direction:column;gap:18px;margin-top:0}
.snum{background:var(--white);border-radius:var(--r);padding:22px 24px;border:1px solid rgba(12,34,51,.06);display:flex;align-items:center;gap:16px}
.snum-big{font-family:'DM Sans',sans-serif;font-size:2.2rem;font-weight:700;color:var(--terra);line-height:1;flex-shrink:0;min-width:64px}
.snum span{font-size:.85rem;color:var(--muted);line-height:1.45}

/* ─── PROGRAMS ─── */
#programs{padding:100px 0;background:var(--ivory)}
.prog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:48px}
.pc{background:var(--white);border-radius:var(--r-lg);padding:36px 30px;border:1px solid rgba(12,34,51,.07);position:relative;overflow:hidden;transition:box-shadow .35s,transform .35s}
.pc:hover{box-shadow:var(--sh-lg);transform:translateY(-6px)}
.pc::after{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--terra),var(--honey));transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.pc:hover::after{transform:scaleX(1)}
.pc-ico{font-size:2rem;width:58px;height:58px;border-radius:16px;background:rgba(184,72,32,.08);display:flex;align-items:center;justify-content:center;margin-bottom:20px}
.pc h3{font-family:'Cormorant Garamond',serif;font-size:1.3rem;margin-bottom:10px;color:var(--earth)}
.pc p{font-size:.87rem;color:var(--muted);line-height:1.78}
.pc-badge{display:inline-block;margin-top:14px;font-size:.67rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--terra);background:rgba(184,72,32,.09);padding:3px 11px;border-radius:50px}
.action-box{background:var(--earth);color:var(--white);border-radius:var(--r-lg);padding:48px;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.action-box h3{font-family:'Cormorant Garamond',serif;font-size:1.8rem;margin-bottom:14px;color:var(--sand)}
.action-box p{font-size:.92rem;color:rgba(255,255,255,.72);line-height:1.82;margin-bottom:10px}
.action-list{display:flex;flex-direction:column;gap:12px;margin-top:4px}
.action-item{display:flex;gap:12px;align-items:flex-start;font-size:.9rem;color:rgba(255,255,255,.75);line-height:1.6}
.action-item::before{content:'→';color:var(--honey);font-weight:600;flex-shrink:0;margin-top:1px}

/* ─── FACILITIES ─── */
#facilities{padding:80px 0;background:var(--parch)}
.fac-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.fac-card{background:var(--white);border-radius:var(--r);padding:28px 24px;border:1px solid rgba(12,34,51,.07);text-align:center;transition:box-shadow .3s,transform .3s}
.fac-card:hover{box-shadow:var(--sh);transform:translateY(-3px)}
.fac-ico{font-size:2rem;margin-bottom:14px}
.fac-card h4{font-family:'Cormorant Garamond',serif;font-size:1.1rem;color:var(--earth);margin-bottom:8px}
.fac-card p{font-size:.82rem;color:var(--muted);line-height:1.65}

/* ─── GALLERY ─── */
#gallery{padding:100px 0;background:var(--white)}
.masonry{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.gi{border-radius:16px;overflow:hidden;position:relative;background:var(--white);border:1px solid rgba(12,34,51,.07);box-shadow:0 4px 22px rgba(12,34,51,.08);display:flex;flex-direction:column;min-width:0}
.gallery-link{display:block;position:relative;overflow:hidden;cursor:zoom-in}
.gallery-link::after{content:'↗';position:absolute;right:12px;top:12px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--earth);display:grid;place-items:center;font-weight:700;box-shadow:0 8px 20px rgba(12,34,51,.22);opacity:0;transform:translateY(-4px);transition:opacity .25s ease,transform .25s ease}
.gallery-link:hover::after,.gallery-link:focus-visible::after{opacity:1;transform:translateY(0)}
.gallery-link:focus-visible{outline:3px solid var(--honey);outline-offset:-3px}
.gi img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .55s ease}
.gi:hover img{transform:scale(1.035)}
.gi-caption{padding:14px 16px 16px;background:var(--white);flex:1}
.gi-caption strong{display:block;font-size:.9rem;line-height:1.35;color:var(--earth);margin-bottom:4px}
.gi-caption span{display:block;font-size:.78rem;color:var(--muted);line-height:1.55}

/* ─── IMPACT ─── */
#impact{padding:100px 0;background:linear-gradient(135deg,var(--ink) 0%,var(--earth) 100%);position:relative;overflow:hidden}
#impact::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-opacity='0.025'%3E%3Ccircle cx='30' cy='30' r='1.5'/%3E%3C/g%3E%3C/svg%3E")}
.impact-in{position:relative;z-index:1}
.imp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:52px}
.ic{text-align:center;padding:40px 16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);border-radius:20px;transition:background .3s,transform .3s}
.ic:hover{background:rgba(255,255,255,.11);transform:translateY(-4px)}
.ic-ico{font-size:2rem;margin-bottom:14px}
.ic-n{font-family:'DM Sans',sans-serif;font-size:clamp(2.5rem,5vw,3.8rem);font-weight:700;color:var(--honey);line-height:1;margin-bottom:6px}
.ic-l{font-size:.82rem;color:rgba(255,255,255,.54);line-height:1.5}

/* ─── QUOTE ─── */
#quote{padding:100px 0;background:var(--parch);position:relative;overflow:hidden}
#quote::before{content:'\201C';position:absolute;top:-60px;left:16px;font-family:'Cormorant Garamond',serif;font-size:24rem;line-height:1;color:rgba(184,72,32,.06);pointer-events:none;user-select:none}
.q-wrap{max-width:820px;margin:0 auto;text-align:center;position:relative;z-index:1}
.q-wrap blockquote{font-family:'Cormorant Garamond',serif;font-size:clamp(1.7rem,3.2vw,2.5rem);font-weight:500;font-style:normal;color:var(--earth);line-height:1.48;margin-bottom:28px}
.q-wrap blockquote strong{font-style:normal;font-weight:700;color:var(--terra)}
.q-attr{display:flex;align-items:center;justify-content:center;gap:14px}
.q-line{width:44px;height:1px;background:var(--terra)}
.q-attr span{font-size:.87rem;color:var(--muted);font-weight:500}

/* ─── AWARDS ─── */
#awards{padding:100px 0;background:var(--ivory)}
.aw-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.aw{background:var(--white);border-radius:var(--r);padding:26px;display:flex;gap:16px;align-items:flex-start;border:1px solid rgba(12,34,51,.07);transition:box-shadow .3s,transform .3s}
.aw:hover{box-shadow:var(--sh);transform:translateY(-3px)}
.aw-ico{width:50px;height:50px;flex-shrink:0;background:rgba(201,144,48,.1);border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:1.35rem}
.aw h4{font-size:.93rem;font-weight:600;color:var(--earth);margin-bottom:3px}
.aw p{font-size:.81rem;color:var(--muted);line-height:1.55}
.aw-y{font-size:.68rem;font-weight:700;color:var(--terra);letter-spacing:.08em;text-transform:uppercase;margin-top:5px;display:block}

/* ─── GET INVOLVED ─── */
#involve{padding:100px 0;background:var(--earth);position:relative;overflow:hidden}
#involve::after{content:'';position:absolute;bottom:-80px;right:-80px;width:300px;height:300px;border:70px solid rgba(255,255,255,.06);border-radius:50%;pointer-events:none}
.inv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;position:relative;z-index:1}
.icard{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-lg);padding:42px 34px;text-align:center;transition:background .35s,transform .35s}
.icard:hover{background:rgba(255,255,255,.12);transform:translateY(-5px)}
.icard.feat{background:var(--terra);border-color:transparent}
.icard.feat:hover{background:var(--ember)}
.icard-ico{font-size:2.2rem;margin-bottom:18px}
.icard h3{font-family:'Cormorant Garamond',serif;font-size:1.6rem;color:var(--white);margin-bottom:10px}
.icard p{font-size:.88rem;color:rgba(255,255,255,.62);line-height:1.75;margin-bottom:26px}
.icard.feat p{color:rgba(255,255,255,.85)}
.ibtn{display:inline-block;padding:11px 24px;border-radius:50px;font-size:.87rem;font-weight:600;border:2px solid rgba(255,255,255,.36);color:var(--white);transition:background .3s,border-color .3s}
.ibtn:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.8)}
.ibtn.solid{background:var(--white);color:var(--earth);border-color:transparent}
.ibtn.solid:hover{background:var(--ivory)}

/* ─── DONATE ─── */
#donate{padding:100px 0;background:var(--parch)}
.don-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:start}
.don-l h2{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,3.5vw,2.8rem);margin-bottom:16px}
.don-l p{font-size:.94rem;color:var(--muted);line-height:1.87;margin-bottom:14px}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.chip{display:flex;align-items:center;gap:7px;background:var(--white);border:1px solid rgba(92,42,16,.15);border-radius:8px;padding:8px 13px;font-size:.79rem;font-weight:500;color:var(--muted)}
.chip .ck{color:var(--terra)}
.don-card{background:var(--white);border-radius:22px;padding:40px;box-shadow:var(--sh-lg)}
.don-card h3{font-family:'Cormorant Garamond',serif;font-size:1.3rem;margin-bottom:24px;color:var(--earth)}
.brs{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}
.br{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;align-items:start;padding:11px 15px;background:var(--ivory);border-radius:10px;border:1px solid var(--parch)}
.br .l{font-size:.76rem;color:var(--muted);font-weight:500}
.br .v{font-size:.87rem;font-weight:600;color:var(--earth);font-family:'DM Sans',sans-serif;line-height:1.55;overflow-wrap:anywhere}
.or{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.8rem;margin:18px 0}
.or::before,.or::after{content:'';flex:1;height:1px;background:var(--parch)}
.chq{background:rgba(201,144,48,.07);border:1px solid rgba(201,144,48,.2);border-radius:12px;padding:16px;font-size:.83rem;line-height:1.65;color:var(--ink)}
.chq strong{color:var(--gold)}

/* ─── CONTACT ─── */
#contact{padding:100px 0;background:var(--ivory)}
.con-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:72px}
.con-l h2{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,3.5vw,2.8rem);margin-bottom:12px}
.con-l>p{font-size:.94rem;color:var(--muted);margin-bottom:32px}
.c-list{display:flex;flex-direction:column;gap:18px}
.c-row{display:flex;gap:14px;align-items:flex-start}
.c-ico{width:46px;height:46px;flex-shrink:0;background:rgba(184,72,32,.09);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.1rem}
.c-row strong{display:block;font-size:.83rem;font-weight:600;color:var(--earth);margin-bottom:2px}
.c-row span,.c-row a{font-size:.88rem;color:var(--muted);line-height:1.6}
.c-row a:hover{color:var(--terra)}
.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.contact-side{display:flex;flex-direction:column;gap:22px}
.cbox{background:var(--white);border-radius:22px;padding:40px;box-shadow:0 3px 22px rgba(12,34,51,.08)}
.cbox h3{font-family:'Cormorant Garamond',serif;font-size:1.45rem;margin-bottom:22px;color:var(--earth)}
.fg{margin-bottom:14px}
.fg label{display:block;font-size:.78rem;font-weight:600;color:var(--earth);margin-bottom:5px;letter-spacing:.02em}
.fg input,.fg textarea,.fg select{width:100%;padding:11px 14px;border:1.5px solid var(--parch);border-radius:10px;font-size:.9rem;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--ivory);outline:none;transition:border-color .3s,box-shadow .3s}
.fg input:focus,.fg textarea:focus,.fg select:focus{border-color:var(--terra);box-shadow:0 0 0 3px rgba(184,72,32,.12)}
.fg textarea{resize:vertical;min-height:96px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sbtn{width:100%;padding:14px;background:var(--terra);color:var(--white);border:none;border-radius:50px;font-size:.93rem;font-weight:600;font-family:'DM Sans',sans-serif;cursor:pointer;transition:background .3s,transform .3s}
.sbtn:hover{background:var(--ember);transform:translateY(-2px)}
.form-note{margin-top:12px;font-size:.78rem;color:var(--muted);line-height:1.55;text-align:center}
.csr-highlight{background:linear-gradient(135deg,var(--navy) 0%,var(--azure) 100%);border-radius:22px;padding:30px 32px;color:var(--white);box-shadow:0 12px 38px rgba(12,34,51,.18);position:relative;overflow:hidden}
.csr-highlight::after{content:'';position:absolute;right:-54px;top:-54px;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.10);pointer-events:none}
.csr-kicker{display:inline-flex;margin-bottom:10px;font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(240,180,41,.9)}
.csr-highlight h3{font-family:'Cormorant Garamond',serif;font-size:1.45rem;line-height:1.2;margin-bottom:10px;color:var(--white)}
.csr-highlight p{font-size:.88rem;line-height:1.72;color:rgba(255,255,255,.76);margin:0}
.csr-list{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.csr-list span{font-size:.72rem;font-weight:700;color:rgba(255,255,255,.9);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);padding:5px 10px;border-radius:999px}
.csr-note strong{color:var(--white)}

/* ─── FLOATING WHATSAPP ─── */
.whatsapp-float{position:fixed;right:28px;bottom:72px;z-index:440;display:inline-flex;align-items:center;gap:9px;padding:13px 20px;border-radius:999px;background:#25D366;color:#082414;font-size:.9rem;font-weight:700;box-shadow:0 12px 34px rgba(12,34,51,.24),0 8px 24px rgba(37,211,102,.28);transition:transform .25s,box-shadow .25s,background .25s}
.whatsapp-float:hover{background:#31E077;transform:translateY(-3px);box-shadow:0 16px 38px rgba(12,34,51,.26),0 10px 30px rgba(37,211,102,.34)}
.whatsapp-float span{line-height:1}

/* ─── FOOTER ─── */
#footer{background:var(--ink);padding:68px 0 0}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:52px;padding-bottom:52px;align-items:start}
.foot-logo{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.foot-logo-img{
  height:54px;width:auto;display:block;
  background:var(--white);
  border-radius:10px;
  padding:6px 8px;
  object-fit:contain;
}
.foot-logo span{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:600;color:var(--white)}
.foot-desc{font-size:.84rem;color:rgba(255,255,255,.38);line-height:1.76;max-width:264px}
.foot-soc{display:flex;gap:9px;margin-top:18px}
.fsb{width:35px;height:35px;border-radius:9px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;transition:background .3s,color .3s}
.fsb:hover{background:var(--terra);color:var(--white)}
.foot-col h5{font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:14px;font-family:'DM Sans',sans-serif}
.foot-col ul{display:flex;flex-direction:column;gap:9px}
.foot-col li a{font-size:.85rem;color:rgba(255,255,255,.46);transition:color .3s}
.foot-col li a:hover{color:var(--honey)}
.foot-btm{border-top:1px solid rgba(255,255,255,.07);padding:20px 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.foot-btm p{font-size:.78rem;color:rgba(255,255,255,.26)}
.sponsor-credit{letter-spacing:.02em}
.sponsor-credit span{color:var(--blue);font-weight:600}

/* ─── TAX EXEMPTION BANNER ─── */
.tax-banner{background:linear-gradient(135deg,#0C2233 0%,#1A4A6E 100%);border-radius:var(--r-lg);padding:30px 36px;display:flex;align-items:center;gap:22px;margin:0 0 24px}
.tax-ico{flex-shrink:0;width:64px;height:64px;border-radius:50%;background:rgba(240,180,41,.18);border:2px solid rgba(240,180,41,.3);display:flex;align-items:center;justify-content:center;font-size:1.7rem}
.tax-body{flex:1;min-width:0}
.tax-label{font-size:.63rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(240,180,41,.8);margin-bottom:4px}
.tax-title{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:600;color:#fff;line-height:1.2;margin-bottom:6px}
.tax-body p{font-size:.83rem;color:rgba(255,255,255,.65);line-height:1.65;margin:0 0 10px}
.tax-body strong{color:rgba(255,255,255,.9)}
.tax-chips{display:flex;gap:8px;flex-wrap:wrap}
.tax-chip{display:inline-flex;align-items:center;gap:5px;font-size:.7rem;font-weight:600;background:rgba(240,180,41,.14);color:rgba(240,180,41,.9);border:1px solid rgba(240,180,41,.25);padding:4px 10px;border-radius:50px}
.tax-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}
.tax-doc{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:var(--r);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:var(--white);transition:background .25s,transform .25s,border-color .25s}
.tax-doc::before{content:'📄';font-size:1.15rem;line-height:1;margin-bottom:4px}
.tax-doc:hover{background:rgba(255,255,255,.16);border-color:rgba(240,180,41,.42);transform:translateY(-2px)}
.tax-doc span{font-size:.84rem;font-weight:700;line-height:1.35}
.tax-doc small{font-size:.72rem;color:rgba(255,255,255,.58);line-height:1.4}

/* ─── MAP ─── */
.map-wrap{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh);margin-top:32px;height:300px;border:1px solid var(--parch)}
.map-wrap iframe{width:100%;height:100%;border:none;display:block}

/* ─── RESPONSIVE ─── */
@media(max-width:1024px){
  .stats-grid,.fac-grid{grid-template-columns:repeat(2,1fr)}
  .sc:nth-child(2){border-right:none}
  .sc:nth-child(3){border-top:1px solid rgba(255,255,255,.06)}
  .prog-grid{grid-template-columns:1fr 1fr}
  .about-cards{grid-template-columns:1fr}
  .masonry{grid-template-columns:repeat(2,minmax(0,1fr))}
  .imp-grid{grid-template-columns:1fr 1fr}
  .foot-grid{grid-template-columns:1fr}
  .action-box{grid-template-columns:1fr}
  .origin-inner{grid-template-columns:1fr}
}
@media(max-width:768px){
  .nav-links{display:none}
  .nav-ham{display:flex}
  .about-top,.don-grid,.con-grid{grid-template-columns:1fr;gap:44px}
  .ab-blob{display:none}
  .ab-chip{right:0;bottom:-12px}
  .prog-grid,.aw-grid,.inv-grid{grid-template-columns:1fr}
  .approach-grid{grid-template-columns:1fr}
  .masonry{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot-grid{grid-template-columns:1fr;gap:28px}
  .foot-btm{flex-direction:column;text-align:center}
  .frow{grid-template-columns:1fr}
  .hero-body{padding-bottom:56px}
  .fac-grid{grid-template-columns:1fr 1fr}
  .imp-grid{grid-template-columns:1fr 1fr}
  .tax-docs{grid-template-columns:1fr}
}
@media(max-width:480px){
  .masonry{grid-template-columns:1fr}
  .hero-ctas{flex-direction:column;align-items:flex-start}
  .stats-grid{grid-template-columns:1fr 1fr}
  .fac-grid{grid-template-columns:1fr}
  .br{grid-template-columns:1fr;gap:4px}
  .whatsapp-float{right:18px;bottom:22px;padding:12px 15px}
  .whatsapp-float span{display:none}
}
