:root{
  --brand:#0052CC; --brand-600:#0747A6; --brand-2:#00B8D9; --brand-2-600:#008DA6; --brand-contrast:#fff;
  --bg:#ffffff; --bg-alt:#F6FAFF; --bg-alt-2:#F9FBFD; --bg-alt-3:#F4F8FF;
  --text:#0B1220; --muted:#475569; --card:#ffffff; --border:#E2E8F0;
}
@media(prefers-color-scheme: dark){
  :root{ --bg:#0B0F14; --bg-alt:#0D121A; --bg-alt-2:#0F1520; --bg-alt-3:#0F1624; --text:#E5E7EB; --muted:#9CA3AF; --card:#0F172A; --border:#1F2937; --brand-contrast:#061018 }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:ui-sans-serif,-apple-system,Segoe UI,Roboto,Helvetica,Arial;color:var(--text);background:var(--bg)}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.85);backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid var(--border)}
@media(prefers-color-scheme: dark){.header{background:rgba(11,15,20,.8)}}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.brand img{height:28px;width:auto}
.brand span{font-weight:800;letter-spacing:.2px}
.nav a{color:var(--text);text-decoration:none;margin-left:20px}
.nav a:hover{color:var(--brand-2)}
section[id]{scroll-margin-top:84px}

/* Hero */
.hero{padding:92px 0 72px}
.hero--radial{background: radial-gradient(1200px 600px at 20% -10%, rgba(0,82,204,.12), transparent), radial-gradient(1000px 500px at 80% -20%, rgba(0,184,217,.10), transparent)}
.hero h1{font-size:clamp(28px,4vw,48px);line-height:1.1;margin:0 0 12px}
.hero p{font-size:clamp(16px,2vw,20px);color:var(--muted);max-width:800px}
.cta{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--brand);color:var(--brand-contrast);padding:12px 18px;border-radius:10px;text-decoration:none;font-weight:700;border:1px solid rgba(0,0,0,.04)}
.btn:hover{background:var(--brand-600)}
.btn.outline{background:transparent;color:var(--text);border-color:var(--border)}
.btn.outline:hover{background:var(--bg-alt)}

/* Sections */
.section{padding:64px 0;border-top:1px solid var(--border);background:var(--bg)}
.section.alt{background:var(--bg-alt)}
.section.alt2{background:var(--bg-alt-2)}
.section.alt3{background:var(--bg-alt-3)}
.section h2{font-size:28px;margin:0 0 16px}
.small{font-size:14px;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.card{grid-column:span 12;background:var(--card);border:1px solid var(--border);padding:18px;border-radius:12px}
@media(min-width:800px){.card{grid-column:span 6}}
.bullets{margin:10px 0 0;padding:0 0 0 18px;color:var(--text)}
.badges{display:flex;gap:8px;margin:10px 0 0;flex-wrap:wrap}
.badge{background:var(--bg-alt);border:1px solid var(--border);padding:6px 10px;border-radius:999px;font-size:13px;color:var(--muted)}

/* Bands */
.band{min-height:42vh;position:relative;overflow:hidden}
.band .overlay{position:absolute;inset:0;background:linear-gradient(to bottom, rgba(0,0,0,.35), rgba(0,0,0,.25))}
.band .container{position:relative;z-index:1;min-height:inherit;display:grid;align-items:center}
.band-content{max-width:720px;color:#fff}
.band--parallax{background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}
.band h2{margin:0}
.band p{margin:6px 0 0;color:#eef}

/* Gallery */
.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}
.thumb{grid-column:span 12;border-radius:12px;overflow:hidden;border:1px solid var(--border)}
.thumb img{display:block;width:100%;height:auto}
@media(min-width:800px){.thumb{grid-column:span 4}}

/* Support */
.support-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
.support-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 18px;border-radius:12px;font-weight:800;text-decoration:none;background:linear-gradient(135deg,var(--brand),var(--brand-2));color:var(--brand-contrast);border:1px solid rgba(0,0,0,.06)}

.footer{border-top:1px solid var(--border);padding:32px 0;color:var(--muted)}
