/*
Theme Name: Sunny Days
Theme URI: https://stichtingsunnydays.org/
Author: Stichting Sunny Days
Description: Sunny Days is a free, high-quality WordPress theme developed and openly shared by Stichting Sunny Days, a nonprofit organization committed to making digital participation accessible to everyone. Designed for clarity, inclusivity, and adaptability, the theme reflects the foundation’s mission to connect generations through technology. It offers a clean, responsive layout, thoughtful typography, and accessible design standards. Ideal for NGOs, community projects, and educational initiatives promoting digital inclusion.
Version: 3.0.0
Requires at least: 6.6
Tested up to: 6.6
Requires PHP: 8.1
Text Domain: theme4sunnydays
*/
@import url('assets/css/tokens.css');
html,body{margin:0;padding:0}
:root{
  --sd-deep:#0b1521;
  --sd-ink:var(--sd-text);
  --sd-bg:var(--sd-soft);
  --sd-card:var(--sd-white);
  --sd-accent:var(--sd-orange);
}

body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,sans-serif;color:var(--sd-body);background:var(--sd-bg);line-height:1.6;font-size:16px}
a{color:var(--sd-ink);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1160px;margin:0 auto;padding:0 24px}
.sd-section{background:var(--sd-white);border-top:1px solid var(--sd-border)}
.sd-section:first-of-type{border-top:0}
.sd-section.dark{background:var(--sd-navy);color:#e9f0f8}
.sd-section.soft{background:var(--sd-bg)}
.sd-section.band{border-top:0}
.sd-section.dark{border-top:0}
.sd-header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.sd-header h2{margin:0 0 10px;font-size:var(--sd-h2-size);line-height:1.2;color:var(--sd-ink)}
.sd-header .blurb{color:var(--sd-muted);max-width:720px;margin:6px 0 0;flex:1 1 100%;text-align:left}
.sd-header .actions{margin-left:auto;display:flex;gap:12px;align-items:center}
.sd-header .seeall{white-space:nowrap;font-weight:600;color:var(--sd-orange)}
@media (max-width:768px){.sd-header{flex-direction:column;align-items:flex-start}
  .sd-header .actions{align-self:stretch;justify-content:flex-end;width:100%}}
.newsletter .sd-header{text-align:center;margin-inline:auto;justify-content:center;align-items:center;flex-direction:column}
.newsletter .sd-header .blurb{margin-inline:auto;text-align:center;flex:0 1 720px}
.sd-section.band{color:var(--sd-text);text-align:center}
.sd-section.band .sd-header{/* margin:0 auto 24px; */text-align:center;max-width:720px;display:flex;flex-direction:column;align-items:center;gap:10px}
.sd-section.band .sd-header h2{color:var(--sd-text)}
.sd-section.band .sd-header .blurb{font: var(--sd-h3-size);color:rgba(11,18,32,.75);margin: 0 0 18px;text-align:center;flex:0 0 auto}
.volunteer-cta{display:flex;flex-direction:column;align-items:center;text-align:center}
.volunteer-cta .sd-header{margin-bottom:0}
.volunteer-cta p{margin:0}
.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}
@media (max-width:980px){.cards-grid{grid-template-columns:repeat(2,1fr)}}
.card{background:var(--sd-card);border-radius:var(--sd-radius);padding:0;border:1px solid var(--sd-border);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 26px rgba(11,18,32,0.05)}
.card .pad{padding:20px}
.card h3{margin:0 0 6px;font-size:22px}
.card .meta{color:#5d6c80;font-size:14px}
.hero{background:var(--sd-navy);color:#eaf3ff;position:relative;overflow:hidden}
.hero .eyebrow{text-transform:uppercase;letter-spacing:.08em;color:#a9bdd6;font-weight:600}
.hero h1{font-size:58px;line-height:1.1;margin:8px 0 14px}
.hero .lead{font-size:20px;color:#c7d6ea;max-width:760px}
.hero .cta{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-block;background:var(--sd-orange);color:var(--sd-text);padding:12px 20px;border-radius:999px;font-weight:700;border:none;box-shadow:0 12px 24px rgba(251,133,0,0.25);transition:transform .2s ease, box-shadow .2s ease}
.btn:hover,.btn:focus{transform:translateY(-1px);box-shadow:0 16px 28px rgba(251,133,0,0.28)}
.btn.secondary{background:var(--sd-white);color:var(--sd-ink);box-shadow:0 12px 28px rgba(11,18,32,0.15)}
.stat-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media (max-width:680px){.stat-cards{grid-template-columns:repeat(2,1fr);gap:16px}}
.stat{background:var(--sd-white);border:1px solid var(--sd-border);border-radius:20px;padding:26px 24px}
.stat .num{font-size:44px;font-weight:800;color:var(--sd-orange)}
.split-2{display:grid;grid-template-columns:1.25fr .75fr;gap:26px}
@media (max-width:980px){.split-2{grid-template-columns:1fr}}
.badge{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--sd-soft);color:var(--sd-text);border:1px solid var(--sd-border);font-weight:600;font-size:12px}
.footer-cta{background:linear-gradient(135deg,var(--sd-orange),var(--sd-amber));color:var(--sd-text);padding:72px 0;text-align:center;border-radius:0;position:relative;overflow:hidden}
.footer-cta::before{content:"";position:absolute;inset:0;opacity:.25;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,0.45),transparent 55%)}
.footer-cta .sd-header h2{color:var(--sd-text)}
.footer-cta .sd-header .blurb{color:var(--sd-body);font:var(--sd-h3-size);text-align: center;}
.site-footer{background:var(--sd-navy);color:#dee6f4;padding:48px 0 32px;border-top:1px solid rgba(255,255,255,0.08)}
.site-footer h4{margin:0 0 12px}
.site-footer a{color:rgba(255,255,255,0.85)}
.site-footer a:hover,.site-footer a:focus{color:var(--sd-amber)}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li+li{margin-top:8px}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:28px}
.footer-grid > *{min-width:0}
@media (max-width:900px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media (max-width:600px){.footer-grid{grid-template-columns:1fr;gap:20px}}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.12);margin-top:24px;padding-top:18px;color:#a7b6c7}
.partner-logos{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:32px;justify-items:center;align-items:center;margin-top:32px}
.partner-logo{display:flex;align-items:center;justify-content:center;padding:18px 24px;background:var(--sd-white);border:1px solid var(--sd-border);border-radius:18px;min-height:120px;transition:transform .2s ease, box-shadow .2s ease;box-shadow:0 8px 20px rgba(11,18,32,0.05)}
.partner-logo:hover,.partner-logo:focus{transform:translateY(-4px);box-shadow:0 12px 24px rgba(36,56,92,.08)}
.partner-logo__img{max-width:140px;max-height:60px;width:auto;height:auto;filter:grayscale(100%);opacity:.85;transition:filter .2s ease, opacity .2s ease}
.partner-logo:hover .partner-logo__img,.partner-logo:focus .partner-logo__img{filter:none;opacity:1}
.partner-logo__name{font-weight:600;color:var(--sd-muted);text-align:center}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
@media (max-width:980px){.team-grid{grid-template-columns:repeat(2,1fr)}}
.member{background:var(--sd-card);border:1px solid var(--sd-border);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.member img{width:100%;height:280px;object-fit:cover;display:block}
.member .pad{padding:16px}
.member .pos{color:var(--sd-muted);font-size:14px}
.newsletter{text-align:center}
.newsletter .input{border-radius:20px;border:1px solid var(--sd-border);background:rgba(255,255,255,0.9);color:var(--sd-text);height:56px;padding:18px 22px;width:100%;min-width:320px;box-shadow:0 10px 24px rgba(11,18,32,0.12)}
@media (max-width:680px){.newsletter .input{max-width:100%}}
.newsletter .btn{padding:14px 22px;border-radius:22px;box-shadow:0 12px 24px rgba(251,133,0,0.25)}
@media (max-width:520px){.newsletter .btn{width:100%}}

body{font-size:var(--sd-body-size)}
