
:root{--y:#FFC400;--k:#000;--w:#fff;--g:#f3f3f3}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--k);background:var(--w);font-size:18px;line-height:1.55}
a{color:inherit}
header{position:sticky;top:0;z-index:50;background:var(--w);border-bottom:2px solid var(--k);display:flex;align-items:center;justify-content:space-between;padding:10px 5vw}
header img{height:44px;display:block}nav a{font-weight:700;text-decoration:none;margin-left:28px;text-transform:uppercase;font-size:14px;letter-spacing:.06em;padding:6px 0;border-bottom:3px solid transparent}
nav a.on,nav a:hover{border-color:var(--y)}
.band{padding:84px 5vw}.y{background:var(--y)}.k{background:var(--k);color:var(--w)}.g{background:var(--g)}
.in{max-width:1180px;margin:0 auto}
.kick{font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:13px;margin-bottom:18px}
h1{font-size:clamp(40px,7vw,92px);line-height:.98;font-weight:900;letter-spacing:-.03em}
h2{font-size:clamp(30px,4.4vw,56px);line-height:1.04;font-weight:900;letter-spacing:-.025em;margin-bottom:22px}
h3{font-size:22px;line-height:1.2;font-weight:800;margin-bottom:10px}
.lead{font-size:clamp(19px,2vw,24px);max-width:760px;margin-top:22px}
.btn{display:inline-block;background:var(--k);color:var(--w);font-weight:800;text-decoration:none;padding:15px 30px;border-radius:40px;margin:26px 12px 0 0;font-size:16px}
.btn.yb{background:var(--y);color:var(--k)}.btn.o{background:transparent;color:var(--k);border:2px solid var(--k)}
.k .btn.o{color:var(--w);border-color:var(--w)}
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:end;padding-bottom:0;position:relative;overflow:hidden}
.hero img.p{width:100%;max-height:720px;object-fit:contain;object-position:bottom;display:block}
.hero .sil{position:absolute;left:0;right:0;bottom:0;width:100%;opacity:.25;z-index:0;pointer-events:none}.hero>*{position:relative;z-index:1}
.hero .txt{padding-bottom:90px}
.grid{display:grid;gap:22px}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.g2{grid-template-columns:repeat(2,1fr)}
.card{background:var(--w);border:2px solid var(--k);border-radius:22px;padding:30px}.y .card{background:var(--w)}.k .card{background:#161616;border-color:#333}
.num{font-size:64px;font-weight:900;color:var(--k);line-height:1}.k .num{color:var(--y)}
.card .num{margin-bottom:14px}
.ticket{display:grid;grid-template-columns:1.2fr .8fr;max-width:980px;margin:36px auto 0;border:3px solid var(--k);border-radius:26px;overflow:hidden;background:var(--w)}
.ticket .f{padding:38px;background:var(--y);border-right:3px dashed var(--k)}.ticket .f h3{font-size:34px;line-height:1.05}
.ticket .b{padding:38px;font-size:16px}.ticket .b h3{font-size:20px}
.note{margin-top:18px;font-size:15px;text-align:center}
form{display:grid;gap:14px;max-width:640px;margin-top:26px}input,textarea{font:inherit;padding:15px 18px;border:2px solid var(--k);border-radius:14px;width:100%}
button{font:inherit;font-weight:800;background:var(--k);color:var(--w);border:0;border-radius:40px;padding:15px 34px;cursor:pointer;justify-self:start}
footer{background:var(--k);color:var(--w);padding:44px 5vw;font-size:15px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}footer img{height:40px}footer a{margin-right:18px}
.quote{font-size:clamp(26px,3.6vw,46px);line-height:1.12;font-weight:900;letter-spacing:-.02em;max-width:980px}
.badge{display:inline-block;background:var(--y);color:var(--k);font-size:12px;font-weight:800;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.08em;margin-left:10px;vertical-align:middle}
details{border-top:2px solid var(--k);padding:18px 0}details:last-child{border-bottom:2px solid var(--k)}summary{cursor:pointer;font-weight:900;font-size:24px;list-style:none;display:flex;justify-content:space-between;gap:20px}summary::after{content:'+';font-size:32px;line-height:1}details[open] summary::after{content:'–'}
details ol{margin:18px 0 6px 28px}details li{padding:5px 0}
.k details{border-color:#444}.k details:last-child{border-color:#444}
.goal{border-top:1px solid #444;padding:18px 0;display:grid;grid-template-columns:70px 1fr;gap:10px}.goal .n{color:var(--y);font-weight:900;font-size:22px}.goal b{display:block;font-size:20px;margin-bottom:4px}.goal span{color:#ddd}
.team .c{border:2px solid var(--k);border-radius:20px;overflow:hidden;background:var(--w)}.team img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:#ddd}
.team .ph{position:relative;aspect-ratio:4/5;overflow:hidden;background:#ddd}.team .ph img{position:absolute;inset:0;height:100%}.team .ph .cut{object-fit:contain;object-position:center bottom;background:var(--y);opacity:0;transition:opacity .35s}.team .ph:hover .cut,.team .ph:focus .cut{opacity:1}
.team .ini{aspect-ratio:4/5;background:var(--y);display:flex;align-items:center;justify-content:center;font-size:64px;font-weight:900}
.team .t{padding:16px 18px}.team .t b{display:block;font-size:19px;line-height:1.2}.team .t span{font-size:14px;color:#444}
.qa{max-width:860px}.qa .q{border-left:8px solid var(--y);padding-left:20px;margin:40px 0 12px;font-weight:900;font-size:22px;line-height:1.25}.qa p{margin-bottom:12px}
.part{font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-top:60px;font-size:14px;background:var(--k);color:var(--y);display:inline-block;padding:6px 14px}
.gal{columns:3;column-gap:18px}.gal figure{break-inside:avoid;margin-bottom:18px;border:2px solid var(--k);border-radius:16px;overflow:hidden;background:var(--w)}.gal img{width:100%;display:block}
.gal figcaption{padding:12px 14px;font-size:14px;line-height:1.4}.gal small{display:block;color:#555;margin-top:4px;font-size:12px}
.fact b{display:block;font-size:19px;line-height:1.25;margin-bottom:8px}.fact span{font-size:14px;color:#bbb}
@media(max-width:900px){.hero,.g3,.g4,.g2,.ticket{grid-template-columns:1fr}.gal{columns:2}.band{padding:56px 6vw}nav a{margin-left:14px;font-size:12px}.ticket .f{border-right:0;border-bottom:3px dashed var(--k)}.hero .txt{padding-bottom:20px}}
@media(max-width:560px){.gal{columns:1}header img{height:34px}.g4,.g3{grid-template-columns:1fr}}
