
:root{--bg:#0f0f12;--card:#16161b;--accent:#ffb300;--accent-2:#ff4d4d;--text:#f4f4f7;--muted:#a7a7b2;--link:#68d5ff;--shadow:0 10px 30px rgba(0,0,0,.35);--gformH-desktop:1120px;--gformH-tablet:1280px;--gformH-mobile:1500px}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:var(--link);text-decoration:none} a:hover{text-decoration:underline}
.container{max-width:1100px;margin:0 auto;padding:24px}
header.site-header{position:sticky;top:0;background:rgba(15,15,18,.9);backdrop-filter:saturate(140%) blur(6px);z-index:1000;border-bottom:1px solid #2a2a31;box-shadow:0 8px 16px rgba(0,0,0,.25)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand.brand-text{display:flex;align-items:center;gap:.5ch;padding:6px 0}
.brand-title{font-weight:900;font-size:1.2rem;letter-spacing:.2px;color:var(--text);white-space:nowrap}
.brand-title .accent{color:var(--accent);font-weight:900}
nav ul{display:flex;gap:18px;list-style:none;margin:0;padding:0}
nav a{padding:10px 12px;border-radius:10px}
nav a.active, nav a:hover{background:#1f1f26}
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:flex-start;padding:36px 0}
.hero .photo{border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}
.hero h2{font-size:2.2rem;margin:0 0 8px}
.hero p{color:var(--muted)}
.section{padding:28px 0}
.card{background:var(--card);border:1px solid #222;border-radius:16px;box-shadow:var(--shadow);padding:20px}
.grid{display:grid;gap:20px}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}
.btn{display:inline-block;padding:10px 16px;border-radius:12px;background:var(--accent);color:#000;font-weight:700;box-shadow:var(--shadow);border:0}
.btn.secondary{background:var(--accent-2);color:#fff}
.btn.outline{background:transparent;border:2px solid var(--accent);color:var(--text)}
.notice{background:linear-gradient(90deg,rgba(255,179,0,.18),rgba(255,77,77,.18));border:1px solid #3a2a00;padding:12px 16px;border-radius:12px;margin:18px 0;font-weight:600}
/* Promo */
.promo{display:grid;grid-template-columns:1fr .9fr;gap:20px;align-items:center}
.promo .flyer{border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.promo .info h3{margin:0 0 8px;font-size:1.8rem}
.promo .meta{color:var(--muted);margin:6px 0 14px}
/* Video list (vertical, large) */
.video-list{display:grid;gap:32px}
.video-card{max-width:980px}
.video-card .responsive-embed{position:relative;width:100%;padding-top:56.25%}
.video-card .responsive-embed iframe{position:absolute;inset:0;border:0;width:100%;height:100%;border-radius:14px}
.video-title{font-size:1.25rem;margin:12px 0 4px}
.video-actions a{margin-right:12px}
/* Footer */
footer{border-top:1px solid #222;margin-top:38px}
footer .grid{align-items:center}
footer p{color:var(--muted);font-size:.95rem}
/* Google Form crop */
.card.gform-wrap{position:relative;overflow:hidden;border-radius:14px;height:var(--gformH-desktop)}
.card .gform-embed{position:absolute;inset:0;width:100%;height:calc(var(--gformH-desktop) + 180px);border:0}
.gform-fade{position:absolute;left:0;right:0;bottom:0;height:64px;background:linear-gradient(180deg,rgba(22,22,27,0),rgba(22,22,27,1));pointer-events:none}
/* Table */
.table-wrap{overflow:auto;background:var(--card);border:1px solid #222;border-radius:14px;box-shadow:var(--shadow);margin:22px 0;max-width:100%;-webkit-overflow-scrolling:touch}
table.schedule{width:100%;border-collapse:collapse;min-width:720px}
table.schedule th, table.schedule td{padding:12px 14px;border-bottom:1px solid #222;text-align:left}
table.schedule th{font-weight:800;color:var(--text);background:#17171c;position:sticky;top:0}
table.schedule tr:last-child td{border-bottom:none}
.badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:.9rem;background:#1f1f26;border:1px solid #2a2a31;color:var(--text)}
.btn.small{padding:8px 12px;border-radius:10px;font-size:.95rem}
/* Responsive */
@media (max-width:980px){.promo{grid-template-columns:1fr}}
@media (max-width:900px){
  .hero{grid-template-columns:1fr;gap:18px}
  .grid-2{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr 1fr}
  .video-card{max-width:100%}
  .card.gform-wrap{height:var(--gformH-tablet)}
  .card .gform-embed{height:calc(var(--gformH-tablet) + 220px)}
}
@media (max-width:560px){
  .grid-3{grid-template-columns:1fr}
  .brand-title{font-size:1.05rem}
  table.schedule{border:0;width:100%;min-width:0;table-layout:fixed}
  table.schedule thead{display:none}
  table.schedule tr{display:block;margin:0 0 12px;border:1px solid #222;border-radius:12px;overflow:hidden}
  table.schedule td{display:grid;grid-template-columns:1fr auto;gap:10px;padding:10px 12px;border:0;border-bottom:1px solid #222}
  table.schedule tr td:last-child{border-bottom:0}
  table.schedule td::before{content:attr(data-label);color:var(--muted);font-weight:700}
}
