
:root{
  --bg:#0b0b0c;
  --bg-raised:#121214;
  --text:#f5f7fb;
  --muted:#b8bdc7;
  --accent:#8bd3ff;
  --accent-2:#b892ff;
  --card:#15161a;
  --ring: rgba(139,211,255,.35);
  --radius: 16px;
  --shadow: 0 10px 30px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:radial-gradient(1200px 800px at 20% -10%, rgba(184,146,255,.18), transparent 60%), linear-gradient(180deg, rgba(0,0,0,.2), transparent 30%), var(--bg); color:var(--text); font:16px/1.6 Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif}
img{max-width:100%;height:auto;border-radius:12px;display:block}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1100px;margin:0 auto;padding:24px}
.header{position:sticky;top:0;z-index:50;background:rgba(11,11,12,.7);backdrop-filter: blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.2px;color:var(--text);text-decoration:none}
.brand .dot{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2))}
.menu{display:flex;flex-wrap:wrap;gap:14px}
.menu a{padding:8px 12px;border-radius:10px;color:var(--text)}
.menu a.active, .menu a:hover{background:rgba(255,255,255,.06)}
.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:36px;padding:48px 0}
.hero h1{font-size: clamp(32px, 4.5vw, 56px);line-height:1.05;margin:.2em 0}
.hero p.lead{font-size: clamp(16px, 2vw, 20px);color:var(--muted)}
.badge{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);font-size:13px;color:var(--muted)}
.grid{display:grid;gap:20px}
.grid.cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:var(--card);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}
.card h3{margin-top:0}
.section{padding:24px 0}
.kicker{color:var(--muted);text-transform:uppercase;letter-spacing:.18em;font-size:12px}
h2{font-size: clamp(22px, 3vw, 34px);margin:0 0 8px 0}
.list{display:grid;gap:10px}
footer{margin-top:40px;border-top:1px solid rgba(255,255,255,.08);padding:28px 0;color:var(--muted)}
.cta{display:inline-flex;gap:8px;align-items:center;padding:10px 14px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#0b0b0c;font-weight:700;border:0;cursor:pointer}
.button{display:inline-flex;gap:8px;align-items:center;padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.08);color:var(--text);border:1px solid rgba(255,255,255,.12);cursor:pointer}
.input, textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#0e0f12;color:var(--text);outline:none}
.input:focus, textarea:focus{border-color:var(--ring);box-shadow:0 0 0 6px var(--ring)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.small{font-size:13px;color:var(--muted)}
.note{padding:12px;border-left:3px solid var(--accent);background:rgba(139,211,255,.08);border-radius:8px}
/* Home columns */
.home-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.home-columns .card{ text-align:center }
.home-columns .card img{ margin:0 auto 10px auto }
.home-columns .card h3{ margin:10px 0 8px 0 }
/* Video */
.video-embed{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:100%;border-radius:12px}
.video-embed iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0}
/* Responsive calendar — ONLY affects the calendar iframe */
.calendar-wrap{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.1)}
.calendar-frame{width:100%;height:70vh;min-height:520px;border:0;display:block}
@media (max-width: 860px){
  .hero{grid-template-columns:1fr}
  .split{grid-template-columns:1fr}
  .home-columns{grid-template-columns:1fr}
  .gallery{grid-template-columns:repeat(2,1fr)}
  .calendar-frame{height:75vh;min-height:520px}
}
