
:root{
  --purple:#6c42d9;
  --purple-dark:#4d2aa5;
  --purple-soft:#f1ecff;
  --orange:#f3a04a;
  --green:#4f9b70;
  --ink:#171625;
  --muted:#737080;
  --cream:#fcfaf7;
  --line:#e9e5ee;
  --white:#fff;
  --shadow:0 20px 60px rgba(40,28,65,.11);
  --radius:24px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"DM Sans",sans-serif;color:var(--ink);line-height:1.65;background:#fff}
img{display:block;width:100%;object-fit:cover}
a{text-decoration:none;color:inherit}
button,input,textarea,select{font:inherit}
.container{width:min(1160px,calc(100% - 40px));margin:auto}
.topbar{background:#20172d;color:#d9d1df;font-size:11px}
.topbar-inner{height:38px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.topbar a{margin-left:22px;color:#eee8f1}
.header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.95);border-bottom:1px solid rgba(233,229,238,.9);backdrop-filter:blur(14px)}
.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:10px}
.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--purple);color:#fff;border-radius:13px;font-size:18px;box-shadow:0 8px 22px rgba(108,66,217,.25)}
.brand-text strong,.brand-text small{display:block;line-height:1}
.brand-text strong{font:800 19px/1 "Manrope",sans-serif;letter-spacing:-.04em}
.brand-text small{font-size:9px;letter-spacing:.2em;color:var(--muted);margin-top:5px}
.nav{display:flex;align-items:center;gap:27px}
.nav>a{font-size:13px;font-weight:700;color:#5d5a67;transition:.2s}
.nav>a:hover{color:var(--purple)}
.nav-donate{background:var(--purple);color:#fff!important;padding:11px 20px;border-radius:999px;box-shadow:0 7px 18px rgba(108,66,217,.2)}
.nav-toggle{display:none;border:0;background:none;cursor:pointer}
.nav-toggle span{width:24px;height:2px;background:var(--ink);display:block;margin:5px}

.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#f7f2ff 0%,#fff 56%,#fff8ef 100%);min-height:650px;display:flex;align-items:center}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:60px;padding:80px 0 95px;position:relative;z-index:2}
.pill{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid #e6def8;color:#6543a8;border-radius:999px;padding:8px 13px;font-size:11px;font-weight:800;margin-bottom:20px;box-shadow:0 5px 18px rgba(60,35,90,.05)}
.pill span{width:7px;height:7px;background:var(--orange);border-radius:50%}
.hero h1{font:800 clamp(45px,5.6vw,70px)/1.04 "Manrope",sans-serif;letter-spacing:-.055em;max-width:690px}
.hero h1 em,.content h2 em,.section-head h2 em,.programme h2 em,.safe-haven h2 em,.cta h2 em{color:var(--purple);font-style:normal}
.hero-copy>p{max-width:610px;color:var(--muted);font-size:16px;margin:23px 0}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:14px 20px;border-radius:999px;font-size:13px;font-weight:800;transition:.22s;cursor:pointer;border:1px solid transparent}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--purple);color:#fff;box-shadow:0 12px 26px rgba(108,66,217,.25)}
.btn-soft{background:#fff;color:var(--purple);border-color:#ddd5ef}
.btn-white{background:#fff;color:var(--purple)}
.btn-outline-white{border-color:rgba(255,255,255,.4);color:#fff}
.hero-trust{display:flex;align-items:center;gap:11px;margin-top:31px;color:#7c7784;font-size:11px;max-width:450px}
.hero-trust strong{color:var(--ink)}
.avatars{display:flex}
.avatars i{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;border:2px solid #fff;background:var(--purple);color:#fff;font-size:10px;font-style:normal;margin-left:-5px}
.avatars i:first-child{margin-left:0;background:#f3a04a}.avatars i:last-child{background:#4f9b70}
.hero-visual{position:relative;min-height:490px}
.photo-main{width:76%;height:450px;margin-left:auto;border-radius:34px;overflow:hidden;box-shadow:var(--shadow);transform:rotate(2deg)}
.photo-main img{height:100%}
.photo-small{position:absolute;width:42%;height:220px;left:2%;bottom:10px;border:8px solid #fff;border-radius:25px;overflow:hidden;box-shadow:var(--shadow);transform:rotate(-4deg)}
.photo-small img{height:100%}
.hero-badge{position:absolute;right:3%;bottom:42px;background:#fff;padding:13px 16px;border-radius:16px;display:flex;align-items:center;gap:10px;box-shadow:var(--shadow)}
.hero-badge>span{width:38px;height:38px;background:#eee8ff;color:var(--purple);display:grid;place-items:center;border-radius:12px}
.hero-badge strong,.hero-badge small{display:block}.hero-badge strong{font-size:12px}.hero-badge small{font-size:10px;color:var(--muted)}
.hero-shape{position:absolute;border-radius:50%;filter:blur(1px);opacity:.5}.shape-one{width:420px;height:420px;background:#eee5ff;right:-160px;top:-170px}.shape-two{width:260px;height:260px;background:#ffedd9;left:-120px;bottom:-160px}
.hero-wave{position:absolute;bottom:-1px;left:-2%;width:104%;height:45px;background:#fff;clip-path:ellipse(53% 60% at 50% 100%)}

.quick-stats{background:#fff;border-bottom:1px solid var(--line)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stats-grid>div{padding:28px 20px;border-right:1px solid var(--line);text-align:center}.stats-grid>div:last-child{border:0}
.stats-grid strong{display:block;font:800 29px/1 "Manrope",sans-serif;color:var(--purple)}
.stats-grid span{display:block;font-size:11px;color:var(--muted);margin-top:5px}

.section{padding:105px 0}
.two-col{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px;align-items:center}
.image-stack{position:relative;padding:0 35px 30px 0}
.img-large{height:510px;border-radius:30px;box-shadow:var(--shadow)}
.experience-card{position:absolute;right:0;bottom:0;background:#fff;border-radius:18px;padding:17px 20px;box-shadow:var(--shadow);display:flex;align-items:center;gap:11px}
.experience-card strong{width:38px;height:38px;background:#eee8ff;color:var(--purple);display:grid;place-items:center;border-radius:11px}
.experience-card span{font-weight:800;font-size:12px;line-height:1.35}
.dots{position:absolute;left:-25px;top:-18px;width:95px;height:95px;background-image:radial-gradient(#bca8ed 1.5px,transparent 1.5px);background-size:11px 11px;z-index:-1}
.section-label{display:inline-block;text-transform:uppercase;letter-spacing:.18em;font-size:10px;font-weight:900;color:var(--purple);margin-bottom:12px}
.content h2,.section-head h2,.centered h2,.programme h2,.safe-haven h2,.cta h2{font:800 clamp(35px,4.3vw,54px)/1.06 "Manrope",sans-serif;letter-spacing:-.045em}
.content>p{color:var(--muted);font-size:14px;margin:15px 0}
.check-list{margin:24px 0;display:grid;gap:10px}
.check-list div{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700}
.check-list b{width:23px;height:23px;background:#eee8ff;color:var(--purple);border-radius:50%;display:grid;place-items:center;font-size:11px}
.text-link{color:var(--purple);font-size:12px;font-weight:900}.text-link span{margin-left:6px}

.homes{background:var(--cream)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}
.section-head>p{max-width:390px;color:var(--muted);font-size:13px}
.centered{text-align:center;display:block;max-width:680px;margin:0 auto 50px}
.centered p{margin:14px auto 0;color:var(--muted);font-size:13px;max-width:600px}
.home-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.home-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;min-height:240px;transition:.25s;position:relative;overflow:hidden}
.home-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.home-card.featured{grid-column:span 2;grid-row:span 2;min-height:495px;padding:0;color:#fff}
.featured>img{height:100%}.home-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,14,30,.85),transparent 65%)}
.home-info{position:absolute;left:28px;right:28px;bottom:26px}.home-info>span,.home-tag{font-size:9px;letter-spacing:.17em;font-weight:900;color:var(--purple)}
.home-info>span{color:#decfff}.home-info h3{font:800 25px/1.1 "Manrope",sans-serif;margin:7px 0}.home-info p{font-size:11px;color:#eee;max-width:560px}
.home-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:13px;margin-bottom:22px;font-weight:900}
.home-icon.purple{background:#eee8ff;color:var(--purple)}.home-icon.orange{background:#fff0df;color:#dc7a17}.home-icon.green{background:#e7f5ec;color:#34845b}.home-icon.blue{background:#e8f0ff;color:#3e6cc3}.home-icon.rose{background:#ffe8ed;color:#c84c68}
.home-card h3{font:800 19px/1.15 "Manrope",sans-serif;margin:7px 0 12px}.home-card p{font-size:11px;color:var(--muted);line-height:1.55}.home-card a{position:absolute;bottom:22px;color:var(--purple);font-size:11px;font-weight:900}

.programme{background:#fff}
.program-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.program{border:1px solid var(--line);border-radius:22px;padding:28px;position:relative;min-height:300px;transition:.25s}
.program:hover{box-shadow:var(--shadow);transform:translateY(-5px)}
.program-number{position:absolute;right:22px;top:20px;font:800 12px "Manrope";color:#d4d0d9}
.program-icon{width:49px;height:49px;background:var(--purple-soft);color:var(--purple);display:grid;place-items:center;border-radius:14px;margin-bottom:28px;font-weight:900}
.program h3{font:800 19px/1.2 "Manrope",sans-serif;margin-bottom:12px}.program p{font-size:12px;color:var(--muted)}

.safe-haven{background:linear-gradient(135deg,#241a31,#49307a);color:#fff}
.haven-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.light-label{color:#d9c8ff!important}.safe-haven h2 em{color:#e0b3ff}.safe-haven p{color:#d7d0df;font-size:13px;margin:16px 0}
.haven-card{background:#fff;padding:10px;border-radius:26px;box-shadow:0 25px 70px rgba(0,0,0,.25)}
.haven-image{height:390px;border-radius:19px;overflow:hidden}.haven-image img{height:100%}
.haven-caption{color:var(--ink);display:flex;justify-content:space-between;padding:14px 9px 5px;font-size:12px}.haven-caption span{color:var(--muted)}

.help{background:var(--cream)}
.help-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.help-card{background:#fff;border:1px solid var(--line);border-radius:21px;padding:25px;min-height:240px;transition:.25s}
.help-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.help-card>span{width:45px;height:45px;border-radius:13px;background:var(--purple-soft);color:var(--purple);display:grid;place-items:center;font-weight:900;margin-bottom:22px}
.help-card h3{font:800 19px "Manrope";margin-bottom:9px}.help-card p{font-size:11px;color:var(--muted);min-height:57px}.help-card b{display:block;color:var(--purple);font-size:11px;margin-top:22px}
.fraud-warning{margin-top:25px;background:#fff4e6;border:1px solid #f5d4a7;border-radius:16px;padding:15px 18px;display:flex;gap:12px;align-items:flex-start}
.fraud-warning>span{width:24px;height:24px;display:grid;place-items:center;background:var(--orange);color:#fff;border-radius:50%;font-weight:900;font-size:12px}
.fraud-warning strong{font-size:12px}.fraud-warning p{font-size:10px;color:#776657;margin-top:2px}

.stories{background:#fff}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.story-card{border:1px solid var(--line);border-radius:21px;overflow:hidden;background:#fff;transition:.25s}.story-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.story-img{height:220px}.story-img img{height:100%}.story-body{padding:22px}.story-body>span{font-size:9px;letter-spacing:.16em;font-weight:900;color:var(--purple)}.story-body h3{font:800 18px/1.2 "Manrope";margin:8px 0}.story-body p{font-size:11px;color:var(--muted)}.story-body a{display:block;margin-top:16px;color:var(--purple);font-size:11px;font-weight:900}

.cta{background:var(--purple-dark);color:#fff;padding:75px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{max-width:700px}.cta h2 em{color:#e2b8ff}.cta-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}

.footer{background:#17131d;color:#fff}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.25fr;gap:45px;padding:65px 0 45px}.footer-brand{margin-bottom:18px}.footer p{color:#9e96a5;font-size:11px;max-width:280px}.footer h4{font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:17px;color:#ddd6e1}.footer a{display:block;color:#aaa2b0;font-size:11px;margin:8px 0}.footer a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:19px 0 25px;display:flex;justify-content:space-between;color:#77707e;font-size:9px}
.back-top{position:fixed;right:22px;bottom:22px;width:40px;height:40px;border:0;border-radius:50%;background:var(--purple);color:#fff;box-shadow:var(--shadow);display:none;z-index:999;cursor:pointer;font-weight:900}.back-top.show{display:block}
.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}

@media(max-width:980px){
  .nav{gap:15px}.nav>a{font-size:11px}
  .hero-grid,.two-col,.haven-grid{gap:45px}
  .program-grid,.help-grid{grid-template-columns:repeat(2,1fr)}
  .home-grid{grid-template-columns:repeat(2,1fr)}
  .home-card.featured{grid-column:span 2}
}
@media(max-width:760px){
  .container{width:min(100% - 28px,1160px)}
  .topbar{display:none}.nav-wrap{height:70px}
  .nav-toggle{display:block}
  .nav{position:absolute;display:none;left:14px;right:14px;top:70px;background:#fff;padding:12px;border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:2px}
  .nav.open{display:flex}.nav>a{padding:11px}.nav-donate{text-align:center}
  .hero-grid,.two-col,.haven-grid{grid-template-columns:1fr}
  .hero{min-height:auto}.hero-grid{padding:70px 0 85px}.hero h1{font-size:45px}
  .hero-visual{min-height:400px}.photo-main{height:390px;width:82%}.photo-small{height:180px}
  .stats-grid{grid-template-columns:1fr 1fr}.stats-grid>div:nth-child(2){border-right:0}.stats-grid>div{border-bottom:1px solid var(--line)}
  .section{padding:75px 0}.image-stack{max-width:560px}.img-large{height:430px}
  .section-head,.cta-inner{display:block}.section-head>p{margin-top:15px}
  .home-grid,.story-grid{grid-template-columns:1fr}.home-card.featured{grid-column:auto;min-height:400px}
  .program-grid,.help-grid{grid-template-columns:1fr 1fr}
  .haven-card{margin-top:10px}.haven-image{height:310px}
  .cta-actions{justify-content:flex-start;margin-top:25px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:30px}
}
@media(max-width:480px){
  .hero h1{font-size:39px}.hero-actions,.cta-actions{flex-direction:column;align-items:stretch}.btn{width:100%}
  .hero-visual{min-height:340px}.photo-main{height:330px}.photo-small{height:145px}
  .hero-badge{bottom:22px;right:0}.hero-trust{align-items:flex-start}
  .stats-grid{grid-template-columns:1fr 1fr}.stats-grid strong{font-size:24px}
  .program-grid,.help-grid,.footer-grid{grid-template-columns:1fr}
  .program{min-height:240px}.home-card.featured{min-height:350px}
  .footer-bottom{display:block}.footer-bottom span{display:block;margin:5px 0}
}
