@import url('https://fonts.googleapis.com/css2?family=Kanit:wght@300;400;500;600;700&display=swap');

:root{
  --bg:#070707;
  --panel:#111114;
  --panel2:#18181d;
  --pink:#ff2d8e;
  --pink2:#ff5cab;
  --text:#fff;
  --muted:#b9b9c3;
  --line:rgba(255,45,142,.35);
  --shadow:0 0 32px rgba(255,45,142,.22);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Kanit",system-ui,sans-serif;
  background:
    radial-gradient(circle at 20% 0%,rgba(255,45,142,.12),transparent 28rem),
    var(--bg);
  color:var(--text);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.site-header{
  position:sticky;top:0;z-index:50;
  height:72px;padding:0 5vw;
  display:flex;align-items:center;justify-content:space-between;
  background:rgba(7,7,7,.84);backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.05em}
.brand img{width:44px;height:44px;border-radius:50%;object-fit:cover}
nav{display:flex;gap:28px}
nav a{font-size:.92rem;color:#ddd}
nav a:hover{color:var(--pink)}
.menu-button{display:none;background:none;border:0;color:white;font-size:1.5rem}
.hero{position:relative;min-height:680px;display:flex;align-items:center;overflow:hidden}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.72) 45%,rgba(0,0,0,.18) 100%),linear-gradient(0deg,var(--bg),transparent 35%)}
.hero-content{position:relative;z-index:2;width:min(720px,90%);margin-left:7vw;padding:90px 0}
.eyebrow{margin:0 0 10px;color:var(--pink2);font-weight:600;letter-spacing:.16em;font-size:.82rem}
h1{font-size:clamp(2.8rem,7vw,6rem);line-height:1.03;margin:0 0 24px}
h1 span{color:var(--pink)}
.hero-copy{max-width:630px;color:#ddd;font-size:1.12rem;line-height:1.8}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:0 24px;border-radius:999px;
  border:1px solid var(--line);font-weight:600;cursor:pointer;
}
.btn.primary{background:linear-gradient(135deg,var(--pink),#d9006c);box-shadow:var(--shadow)}
.btn.secondary{background:rgba(0,0,0,.5)}
.quick-grid{
  width:min(1180px,90%);margin:-74px auto 0;position:relative;z-index:5;
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
}
.quick-card{
  min-height:210px;padding:28px;border-radius:26px;
  background:linear-gradient(145deg,rgba(24,24,29,.96),rgba(12,12,14,.96));
  border:1px solid var(--line);box-shadow:var(--shadow);
  transition:.25s transform,.25s border-color;
}
.quick-card:hover{transform:translateY(-6px);border-color:var(--pink)}
.quick-card .icon{font-size:2.1rem}
.quick-card h2{margin:16px 0 6px;font-size:1.35rem}
.quick-card p{margin:0;color:var(--muted);line-height:1.7}
.section{width:min(1180px,90%);margin:110px auto}
.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}
.section-heading h2,.contact-copy h2{font-size:clamp(2rem,4vw,3.3rem);margin:0}
.status{font-size:.86rem;color:#ddd}
.status i{display:inline-block;width:9px;height:9px;border-radius:50%;background:#ff3657;box-shadow:0 0 12px #ff3657;margin-right:8px}
.event-card{
  display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;
  border:1px solid var(--line);border-radius:28px;background:var(--panel);box-shadow:var(--shadow)
}
.event-visual{min-height:390px;background:linear-gradient(135deg,#310018,#090909);display:grid;place-items:center}
.poster-placeholder{font-size:clamp(2rem,5vw,4rem);font-weight:700;color:var(--pink);text-shadow:0 0 25px rgba(255,45,142,.7)}
.event-info{padding:46px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.badge{font-size:.75rem;color:var(--pink);border:1px solid var(--line);padding:7px 12px;border-radius:999px}
.event-info h3{font-size:2rem;margin:18px 0 10px}
.event-info p{color:var(--muted);line-height:1.8;margin-bottom:24px}
.replay-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.replay-card{background:var(--panel);border:1px solid rgba(255,255,255,.08);border-radius:22px;overflow:hidden}
.replay-thumb{height:240px;background:radial-gradient(circle,rgba(255,45,142,.35),transparent 30%),linear-gradient(135deg,#2b0017,#080808);display:grid;place-items:center}
.replay-thumb span{font-size:3rem;width:94px;height:94px;border:2px solid var(--pink);border-radius:50%;display:grid;place-items:center;padding-left:7px;box-shadow:var(--shadow)}
.replay-card>div:last-child{padding:24px}
.replay-card h3{margin:0 0 8px}
.replay-card p{margin:0;color:var(--muted);line-height:1.7}
.contact-section{display:grid;grid-template-columns:1fr 330px;gap:50px;align-items:center;padding:48px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(135deg,rgba(255,45,142,.09),rgba(17,17,20,.95))}
.contact-copy p:not(.eyebrow){color:var(--muted);line-height:1.8;max-width:680px}
.qr-card{background:white;color:#111;border-radius:24px;padding:22px;text-align:center}
.qr-card img{border-radius:16px;margin-bottom:12px}
footer{padding:52px 5vw;text-align:center;border-top:1px solid rgba(255,255,255,.08);color:var(--muted)}
footer img{width:72px;height:72px;object-fit:cover;border-radius:50%;margin:0 auto 16px}
footer p{color:#eee}
footer small{display:block;max-width:700px;margin:auto}
@media(max-width:760px){
  .site-header{height:64px}
  .menu-button{display:block}
  nav{position:absolute;top:64px;left:0;right:0;display:none;flex-direction:column;gap:0;background:#0b0b0d;border-bottom:1px solid var(--line)}
  nav.open{display:flex}
  nav a{padding:16px 6vw;border-top:1px solid rgba(255,255,255,.06)}
  .hero{min-height:620px}
  .hero-content{margin-left:5vw;padding-top:90px}
  .hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.93),rgba(0,0,0,.58)),linear-gradient(0deg,var(--bg),transparent 35%)}
  .quick-grid{grid-template-columns:1fr;margin-top:-34px}
  .quick-card{min-height:160px}
  .section{margin:78px auto}
  .event-card,.contact-section{grid-template-columns:1fr}
  .event-visual{min-height:270px}
  .event-info{padding:30px}
  .replay-grid{grid-template-columns:1fr}
  .section-heading{align-items:flex-start;gap:20px;flex-direction:column}
  .contact-section{padding:28px}
  .qr-card{width:min(330px,100%);margin:auto}
}
