:root{
  --brand: #146c43;
  --brand-700: #1b7a43;
  --brand-900: #0f5c32;
  --accent: #27fb55;
  --bg: #f7faf8;
  --surface: #ffffff;
  --ink: #0a0a0a;
  --muted: #59c07d;
  --border: #e2eee5;
}
html[data-theme="dark"]{
  --bg: #0b0f0d;
  --surface: #0f1713;
  --ink: #e8f5ee;
  --muted: #04eb64;
  --border: #1d2a23;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font:16px/1.6 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Arial, sans-serif;color:var(--ink);background:var(--bg);}
img{max-width:100%;display:block}

.container{max-width:1200px;margin:0 auto;padding:0 20px}
.section{padding:48px 0}

.site-header .topbar{background:var(--brand-900);color:#fff}
.site-header .topbar .container{display:flex;align-items:center;justify-content:space-between;padding:10px 20px}
.sec-nav{display:flex;gap:16px;list-style:none;margin:0;padding:0}
.sec-nav a{color:#d6f5e4;text-decoration:none;font-size:14px}
.top-actions{display:flex;gap:12px;align-items:center}
.top-actions .donate-link{background:var(--accent);color:#1a1a1a;padding:8px 12px;border-radius:999px;font-weight:700;text-decoration:none}
.theme-toggle{background:transparent;border:1px solid #ffffff40;color:#fff;padding:6px 10px;border-radius:8px;cursor:pointer}

.navbar{background:var(--brand);color:#fff;position:sticky;top:0;z-index:30}
.nav-inner{display:flex;align-items:center;gap:18px;padding:12px 0}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:800;letter-spacing:.5px}
.menu-toggle{display:none;background:transparent;border:1px solid #ffffff40;color:#fff;padding:8px 10px;border-radius:8px}
.primary-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:16px;align-items:center}
.primary-nav a{color:#eafff4;text-decoration:none;padding:10px 12px;border-radius:8px}
.primary-nav a.active, .primary-nav a:hover{background-color:rgba(255,255,255,.16)}

.has-sub{position:relative}
.has-sub .sub{display:none;position:absolute;top:100%;left:0;background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:12px;min-width:260px;padding:8px;box-shadow:0 10px 24px rgba(0,0,0,.12)}
.has-sub:hover .sub{display:block}
.has-sub .sub a{color:var(--ink);display:block;border-radius:8px}
.has-sub .sub a:hover{background:var(--bg)}

.hero{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--brand-900),var(--brand-700));color:#fff}
.hero .container{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;padding:60px 20px;align-items:center}
.hero .cta-row{display:flex;gap:12px;margin-top:14px;flex-wrap:wrap}
.btn{border:none;border-radius:12px;padding:12px 16px;font-weight:700;cursor:pointer}
.btn-primary{background:var(--accent);color:#1a1a1a}
.btn-ghost{background:transparent;border:1px solid #ffffff60;color:#fff}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px;box-shadow:0 6px 14px rgba(0,0,0,.04)}

.site-footer{background:var(--brand-900);color:#eafff4;margin-top:24px}
.site-footer .newsletter{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.15)}
.site-footer form{display:flex;gap:8px;flex:1}
.site-footer input[type=email]{flex:1;padding:12px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12);color:#fff}
.site-footer form button{background:var(--accent);color:#1a1a1a;border:none;border-radius:12px;padding:12px 18px;font-weight:800}
.site-footer .socials a{font-size:20px;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.25);border-radius:10px;color:#fff}

.site-footer .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:22px 0}
.site-footer h3{margin:0 0 8px}
.site-footer p{margin:0 0 8px}
.site-footer .links, .site-footer .contact, .site-footer .news{list-style:none;margin:0;padding:0}
.site-footer .links a{color:#d6f5e4;text-decoration:none}
.site-footer .links a:hover{text-decoration:underline}
.site-footer .news small{display:block;opacity:.8}
.legal{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.15);padding:16px 0}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}

.sidebar-layout{display:grid;grid-template-columns:280px 1fr 280px;gap:16px}
.sidebar .box{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px}

@media (max-width: 992px){
  .hero .container{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr 1fr}
  .sidebar-layout{grid-template-columns:1fr}
  .primary-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--brand);padding:12px}
  .primary-nav ul{flex-direction:column;align-items:flex-start}
  .menu-toggle{display:inline-block}
  .site-footer .grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 576px){
  .cards{grid-template-columns:1fr}
  .site-footer .grid{grid-template-columns:1fr}
}
/* Remove underline from button-like links */
.btn,
.btn:link,
.btn:visited,
.btn:hover,
.btn:focus,
.btn-primary,
.btn-primary:link,
.btn-primary:visited,
.btn-primary:hover,
.btn-primary:focus,
.btn-ghost,
.btn-ghost:link,
.btn-ghost:visited,
.btn-ghost:hover,
.btn-ghost:focus,
.top-actions .donate-link,
.top-actions .donate-link:link,
.top-actions .donate-link:visited,
.top-actions .donate-link:hover,
.top-actions .donate-link:focus {
  text-decoration: none !important;
}
