/* ASNOVA 15 лет / АСНОВАПОКОЛЕНИЯ - стили страниц /bilety/ и /asnovapokoleniya/ */
:root{--bg:#0A0705;--card:#140E0A;--text:#F3E6D0;--soft:#E3D3B8;--muted:#CDBB9D;--dim:#A9977B;--faint:#8C7A62;--accent:#E3BE73;--line:rgba(227,190,115,.35);--gold:linear-gradient(180deg,#EFE2D3 0%,#E2C6A2 50%,#D7AA6C 100%)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:'Raleway',sans-serif;font-variant-numeric:lining-nums;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:var(--accent)}a:hover{color:#F6DFA6}
.gold{background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.wrap{max-width:1200px;margin:0 auto}
.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:999px;font-family:inherit;font-weight:600;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;border:0;transition:filter .2s,transform .2s}
.btn-gold{background:var(--gold);color:var(--bg)!important;padding:18px 36px;font-size:16px}
.btn-gold:hover{filter:brightness(1.07)}
.btn-line{background:rgba(10,7,5,.35);color:var(--text)!important;border:1px solid rgba(227,190,115,.6);padding:18px 36px;font-size:16px;font-weight:400}
.btn-line:hover{border-color:var(--accent)}
.btn[disabled]{opacity:.55;cursor:default;filter:none}

/* шапка */
.a15-head{position:relative;z-index:5;border-bottom:1px solid rgba(227,190,115,.18);background:var(--bg)}
.a15-head .wrap{padding:8px 24px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between}
.a15-logo{display:block;line-height:0}.a15-logo img{display:block;height:46px;width:auto}
.a15-nav{display:flex;flex-wrap:wrap;gap:10px 28px;align-items:center;letter-spacing:.14em;text-transform:uppercase}
.a15-nav a.gold{text-decoration:none;font-size:15px;font-weight:600}
.a15-nav .btn-gold{padding:10px 20px;font-size:14px}
@media(max-width:640px){.a15-logo img{height:38px}.a15-nav{gap:8px 18px}.a15-nav a.gold{font-size:13px}.a15-nav .btn-gold{padding:9px 16px;font-size:12px}}
@media(max-width:640px){.a15-head .wrap{justify-content:center}.a15-nav{width:100%;justify-content:center;flex-wrap:nowrap;gap:12px;letter-spacing:.06em;white-space:nowrap}.a15-nav a.gold{font-size:11px}.a15-nav .btn-gold{padding:7px 12px;font-size:10.5px}.a15-nav .mhide{display:none}}
@media(max-width:360px){.a15-nav{gap:9px;letter-spacing:.03em}.a15-nav a.gold{font-size:10px}.a15-nav .btn-gold{padding:6px 10px;font-size:10px}}

/* общие заголовки секций */
.sec-head{text-align:center;margin-bottom:44px}
.sec-kicker{font-size:30px;font-weight:600;letter-spacing:.3em;text-transform:uppercase}
.sec-title{margin:10px 0 0;font-weight:400;font-size:48px;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:640px){.sec-kicker{font-size:22px}.sec-title{font-size:30px}}

/* подложки */
.carpet{background:linear-gradient(180deg,#0A0705 0%,rgba(10,7,5,.6) 10%,rgba(10,7,5,0) 26%),radial-gradient(ellipse 70% 55% at 50% 22%,rgba(214,16,28,.55) 0%,rgba(214,16,28,.18) 45%,rgba(10,7,5,0) 75%),#0A0705}
.progBg{background:#0A0705;position:relative;isolation:isolate;overflow:hidden}
.progBg::before{content:"";position:absolute;left:50%;top:50%;height:118%;aspect-ratio:1040/588;transform:translate(-50%,-50%);z-index:-1;background:url(carpet-bg.webp) center/cover no-repeat;opacity:.9;-webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 52%,#000 45%,rgba(0,0,0,.55) 72%,transparent 100%);mask-image:radial-gradient(ellipse 50% 50% at 50% 52%,#000 45%,rgba(0,0,0,.55) 72%,transparent 100%)}
.progBg::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,7,5,.35) 0%,rgba(10,7,5,.15) 45%,rgba(10,7,5,.45) 100%)}

/* ===== БИЛЕТЫ ===== */
.hero15{background-image:linear-gradient(180deg,rgba(10,7,5,.55) 0%,rgba(10,7,5,.35) 40%,rgba(10,7,5,.75) 72%,rgba(10,7,5,.95) 90%,#0A0705 100%),url(hero15-bg.webp);background-size:cover;background-position:center 30%;padding:96px 24px 120px;text-align:center}
.hero15 .in{max-width:900px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:10px}
.hero15 .date{font-size:22px;letter-spacing:.32em;text-transform:uppercase}
.hero15 .plc{font-size:17px;letter-spacing:.22em;text-transform:uppercase;color:var(--soft)}
.hero15 h1{margin:36px 0 0;width:100%;max-width:640px}.hero15 h1 img{display:block;width:100%;height:auto}
.hero15 .sub{margin-top:28px;font-size:18px;letter-spacing:.3em;text-transform:uppercase;color:var(--soft)}
.hero15 .bday{font-size:44px;font-weight:300;letter-spacing:.24em;text-transform:uppercase}
.divider{display:flex;align-items:center;gap:14px;margin:26px 0 30px}
.divider i{display:block;width:110px;height:1px;background:#C79A4B}.divider b{display:block;width:7px;height:7px;transform:rotate(45deg);background:var(--accent)}
.btns{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
@media(max-width:640px){.hero15{padding:56px 18px 80px}.hero15 .date{font-size:17px}.hero15 .plc{font-size:13px}.hero15 .sub{font-size:13px;letter-spacing:.2em}.hero15 .bday{font-size:26px;letter-spacing:.16em}.btn-gold,.btn-line{padding:16px 24px;font-size:14px}}

#tickets{padding:40px 24px 80px}
.tk-grid{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}
.tk-list{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:24px}
.tk-card{border:1px solid var(--line);border-radius:22px;overflow:hidden}
.tk-card.pok{background:linear-gradient(180deg,rgba(40,24,14,.9),rgba(16,10,7,.95))}
.tk-card.a15{background:linear-gradient(180deg,rgba(150,12,22,.78) 0%,rgba(96,6,12,.88) 45%,rgba(24,6,6,.97) 100%)}
.tk-top{padding:22px 30px 16px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(227,190,115,.18)}
.tk-card.pok .tk-top{padding:26px 30px 18px;background:radial-gradient(ellipse 55% 95% at 50% 50%,rgba(112,10,22,.85) 0%,rgba(84,8,17,.62) 28%,rgba(50,6,11,.38) 55%,rgba(20,5,6,0) 85%),#110406}
.tk-top .t-pok{display:block;height:44px;width:auto;max-width:100%}
.tk-top .note{font-size:15px;color:var(--muted);margin-top:4px}
.tk-top .time{font-size:22px;letter-spacing:.12em}
.t-15{display:flex;align-items:center;gap:12px}.t-15 img:first-child{height:38px;width:auto}.t-15 img:last-child{height:76px;width:auto}
.tk-row{padding:22px 30px;display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.tk-row+.tk-row{border-top:1px solid rgba(227,190,115,.12)}
.tk-row .info{flex:1 1 260px}.tk-row .name{font-size:20px;font-weight:500;display:flex;align-items:center;gap:10px}
.tk-row .desc{font-size:14px;color:var(--dim);margin-top:5px;line-height:1.5}.tk-card.a15 .desc{color:#D9C3A0}
.tk-row .price{font-size:28px;font-weight:500;min-width:110px;text-align:right}
.badge{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--bg);background:var(--gold);border-radius:999px;padding:4px 10px;font-weight:600}
.qty{display:flex;align-items:center;gap:4px;border:1px solid rgba(227,190,115,.45);border-radius:999px;padding:4px}
.qty button{width:44px;height:44px;border-radius:999px;border:0;cursor:pointer;font-size:22px;line-height:1;font-family:inherit}
.qty .minus{background:transparent;color:var(--accent);font-size:26px}.qty .plus{background:var(--accent);color:var(--bg)}
.qty output{min-width:36px;text-align:center;font-size:20px;font-weight:500}
@media(max-width:640px){.tk-top,.tk-row{padding-left:18px;padding-right:18px}.tk-row .price{min-width:0;text-align:left;font-size:24px}.t-15 img:first-child{height:28px}.t-15 img:last-child{height:56px}.tk-top .t-pok{height:34px}}

.order{flex:1 1 360px;min-width:0;border:1px solid rgba(227,190,115,.5);border-radius:22px;background:var(--card);padding:28px;display:flex;flex-direction:column;gap:16px;position:sticky;top:20px}
.order .ttl{font-size:14px;letter-spacing:.28em;text-transform:uppercase;color:#C79A4B}
.order .empty{font-size:16px;color:var(--dim)}
.order .line{display:flex;justify-content:space-between;gap:12px;font-size:16px}.order .line span:last-child{white-space:nowrap}
.order .total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid rgba(227,190,115,.25);padding-top:14px}
.order .total span:first-child{font-size:15px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.order .total .gold{font-size:36px;font-weight:500}
.order label.f{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted)}
.order input[type=text],.order input[type=tel],.order input[type=email]{height:50px;border-radius:12px;border:1px solid var(--line);background:var(--bg);color:var(--text);padding:0 16px;font:inherit;font-size:17px;outline:none}
.order input:focus{border-color:var(--accent)}
.order input::placeholder{color:var(--faint)}
.order label.chk{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--dim);line-height:1.4;cursor:pointer}
.order label.chk input{position:static!important;opacity:1!important;z-index:auto!important;width:20px;height:20px;margin:0;accent-color:var(--accent);flex:none}
.order .pay{height:60px;font-size:17px;letter-spacing:.12em;width:100%}
.order .hint{font-size:13px;color:var(--faint);text-align:center;line-height:1.45}
.order .err{font-size:14px;color:#FF9C8A;min-height:0}
.order .done{text-align:center;display:flex;flex-direction:column;gap:12px;padding:20px 0}
.order .done .big{font-size:28px}
@media(max-width:980px){.order{position:static}}

#program{padding:140px 24px 130px}
.prog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px}
.prog-card{border:1px solid var(--line);border-radius:22px;padding:30px;background:rgba(10,7,5,.62)}
.prog-card h3{margin:0 0 18px;font-size:18px;font-weight:400;letter-spacing:.24em;color:var(--accent)}
.prog-card .row{display:flex;gap:18px;font-size:19px;margin-top:16px}.prog-card .row:first-of-type{margin-top:0}
.prog-card .row span:first-child{color:var(--muted);min-width:130px}
.feat{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:44px;text-align:center}
.feat div{padding:22px 12px;border-radius:16px;background:linear-gradient(135deg,#5A0710 0%,#8E0A16 45%,#C8101C 100%);font-size:18px;letter-spacing:.16em}
@media(max-width:640px){#program{padding:90px 18px 90px}.prog-card{padding:22px}.prog-card .row{font-size:16px;gap:12px}.prog-card .row span:first-child{min-width:110px}}

.info3{padding:0 24px 80px}
.info3 .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.info3 .box{border:1px solid rgba(227,190,115,.25);border-radius:18px;padding:24px}
.info3 .k{font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:#C79A4B}.info3 .v{font-size:20px;margin-top:8px}.info3 .s{font-size:15px;color:var(--dim);margin-top:4px}

.vote-cta{padding:80px 24px 100px;text-align:center}
.vote-cta .in{max-width:820px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:16px}
.vote-cta .t1{display:block;width:100%;max-width:620px;height:auto}.vote-cta .t2{display:block;width:100%;max-width:520px;height:auto;margin:4px 0 6px}
.vote-cta .txt{font-size:18px;color:var(--muted);line-height:1.5}
.tz{width:100%;margin-top:18px;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}
.tzCard{position:relative;display:block;aspect-ratio:4/5;border-radius:18px;overflow:hidden;border:1px solid var(--line);text-decoration:none;color:var(--text)!important;background:var(--card)}
.tzImg{position:absolute;inset:-12px;background:url(kids-bg.webp) no-repeat;background-size:330%;filter:blur(5px) brightness(.75) saturate(1.1);transition:filter .3s}
.tzImg.photo{background-size:cover;background-position:center}
.tzShade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,7,5,.15) 0%,rgba(10,7,5,.1) 45%,rgba(10,7,5,.9) 100%)}
.tzCard:hover .tzImg{filter:blur(3px) brightness(.9)}
.place{position:absolute;top:10px;left:10px;font-size:12px;letter-spacing:.12em;font-weight:600;color:var(--bg);border-radius:999px;padding:4px 10px;background:#8C7A62}
.place.p1{background:var(--gold)}.place.p2,.place.p3{background:#D9C3A0}
.play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.play span{width:56px;height:56px;border-radius:999px;border:1.5px solid var(--accent);background:rgba(10,7,5,.45);display:flex;align-items:center;justify-content:center}
.tzCap{position:absolute;left:12px;right:12px;bottom:10px;display:flex;justify-content:space-between;align-items:baseline;gap:8px;text-align:left}
.tzCap b{font-size:15px;font-weight:500}.tzCap i{font-style:normal;font-size:14px;color:var(--soft);white-space:nowrap}
.vote-cta .note{font-size:15px;color:var(--dim);letter-spacing:.04em}

.a15-foot{border-top:1px solid rgba(227,190,115,.15);padding:28px 24px;text-align:center;font-size:14px;color:var(--faint)}
.a15-foot a{color:#B9A68A}

/* ===== ГОЛОСОВАНИЕ ===== */
.heroKids{position:relative;isolation:isolate;overflow:hidden;background:var(--bg);padding:90px 24px 110px}
.heroKids::before{content:"";position:absolute;right:max(0px,calc((100% - 1200px) / 2 - 40px));top:calc(99px - 31.1%);height:115%;aspect-ratio:849/1200;z-index:-2;background:url(kids-bg.webp) center/cover no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.4) 12%,#000 28%,#000 90%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.4) 12%,#000 28%,#000 90%,transparent 100%)}
.heroKids::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0A0705 0px,rgba(10,7,5,.75) 30px,rgba(10,7,5,.3) 62px,rgba(10,7,5,0) 92px),linear-gradient(90deg,rgba(10,7,5,.96) 0%,rgba(10,7,5,.82) 42%,rgba(10,7,5,.15) 75%,rgba(10,7,5,.4) 100%),linear-gradient(180deg,rgba(10,7,5,0) 70%,#0A0705 100%)}
.heroKids .in{max-width:640px;display:flex;flex-direction:column;gap:14px}
.heroKids .kick{font-size:15px;letter-spacing:.3em;text-transform:uppercase;color:var(--soft)}
.heroKids h1{margin:0;width:100%}.heroKids h1 img{display:block;width:100%;height:auto}
.heroKids .fan{display:block;width:100%;max-width:560px;height:auto;margin-top:6px}
.heroKids p{margin:12px 0 0;font-size:18px;line-height:1.55;color:var(--muted)}
.cd{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.cd .c{min-width:92px;border:1px solid rgba(227,190,115,.45);border-radius:16px;padding:12px 10px;text-align:center;background:rgba(10,7,5,.6)}
.cd .c b{display:block;font-size:40px;font-weight:500;line-height:1}.cd .c span{display:block;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);margin-top:6px}
.cd .lbl{align-self:center;font-size:15px;color:var(--muted);line-height:1.4;padding-left:6px}
@media(max-width:820px){.heroKids{padding:50px 18px 70px}.heroKids::before{height:70%;top:auto;bottom:0;opacity:.45}.heroKids::after{background:linear-gradient(180deg,rgba(10,7,5,.6) 0%,rgba(10,7,5,.75) 60%,#0A0705 100%)}.heroKids p{font-size:16px}.cd .c{min-width:76px}.cd .c b{font-size:30px}}

.rules{padding:20px 24px 60px}
.rules .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.rules .r{border:1px solid rgba(227,190,115,.25);border-radius:20px;padding:24px;display:flex;gap:16px;align-items:flex-start}
.rules .r>span{font-size:44px;font-weight:600;line-height:1}
.rules b{display:block;font-size:19px;font-weight:500}.rules small{display:block;font-size:15px;color:var(--dim);margin-top:4px;line-height:1.45}

.show{padding:0 24px 80px}
.show-head{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;justify-content:space-between;margin-bottom:28px}
.show-head .k{font-size:14px;letter-spacing:.3em;text-transform:uppercase;color:#C79A4B}
.show-head h2{margin:8px 0 0;font-weight:300;font-size:44px;letter-spacing:.06em;text-transform:uppercase}
.tabs{display:flex;gap:6px;border:1px solid var(--line);border-radius:999px;padding:5px}
.tabs button{height:44px;padding:0 20px;border-radius:999px;border:0;cursor:pointer;font:inherit;font-size:15px;letter-spacing:.08em;background:transparent;color:var(--soft)}
.tabs button.on{background:var(--accent);color:var(--bg);font-weight:600}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.card{border:1px solid rgba(227,190,115,.25);border-radius:20px;overflow:hidden;background:var(--card);display:flex;flex-direction:column}
.card .th{position:relative;display:block;aspect-ratio:4/5;text-decoration:none;background:radial-gradient(circle at 30% 20%,rgba(227,190,115,.35),rgba(10,7,5,0) 55%),linear-gradient(160deg,#3A1A12 0%,#1A0E09 60%,#8E0D13 100%) center/cover no-repeat}
.card .th{background-size:cover;background-position:center;background-repeat:no-repeat}
.card .th .play span{width:68px;height:68px;background:rgba(10,7,5,.45)}
.card .body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:10px}
.card .nm{font-size:19px;font-weight:500}.card .mt{font-size:14px;color:var(--dim);margin-top:2px}
.acts{display:flex;gap:8px;align-items:center}
.like{flex:1;height:46px;border-radius:999px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-size:17px;font-weight:500;border:1px solid rgba(227,190,115,.45);background:transparent;color:var(--text)}
.like svg path{fill:none}
.like.on{border-color:var(--accent);background:rgba(227,190,115,.18);color:#F6DFA6}.like.on svg path{fill:var(--accent)}
.like:disabled{cursor:default}
.share{width:46px;height:46px;flex:none;border-radius:999px;border:1px solid rgba(227,190,115,.45);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center}
.empty-show{border:1px dashed var(--line);border-radius:22px;padding:50px 24px;text-align:center;color:var(--muted);font-size:18px;line-height:1.6}

.guest{padding:0 24px 60px}
.guest .wrap{display:flex;flex-wrap:wrap;gap:44px;align-items:center;border:1px solid var(--line);border-radius:26px;padding:36px 40px;background:radial-gradient(ellipse 90% 120% at 15% 50%,rgba(122,10,22,.55) 0%,rgba(40,8,8,.6) 55%,rgba(16,10,7,.95) 100%)}
.guest .ph{flex:0 1 400px;max-width:100%}.guest .ph img{display:block;width:100%;height:auto;border-radius:20px;border:1px solid rgba(227,190,115,.6);box-shadow:0 18px 50px rgba(0,0,0,.55)}
.guest .tx{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:14px}
.guest .k{font-size:22px;font-weight:600;letter-spacing:.28em}
.guest h2{margin:0;font-weight:400;font-size:46px;letter-spacing:.04em;line-height:1.1}
.guest .who{font-size:20px;color:var(--soft);letter-spacing:.04em}
.guest p{margin:6px 0 0;font-size:18px;line-height:1.6;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.chips span{border:1px solid rgba(227,190,115,.55);border-radius:999px;padding:10px 18px;font-size:15px;letter-spacing:.14em}
@media(max-width:640px){.guest .wrap{padding:22px;gap:24px}.guest h2{font-size:32px}.guest .k{font-size:16px}.guest p{font-size:16px}}

.promo{padding:0 24px 80px}
.promo .wrap{border-radius:26px;border:1px solid rgba(227,190,115,.4);background:linear-gradient(120deg,rgba(163,18,26,.6),rgba(20,14,10,.95));padding:44px 40px;display:flex;flex-wrap:wrap;gap:28px;align-items:center;justify-content:space-between}
.promo .t{flex:1 1 420px}.promo h3{margin:0;font-family:'Great Vibes',cursive;font-weight:400;font-size:46px;line-height:1}
.promo p{margin:12px 0 0;font-size:18px;color:var(--muted);line-height:1.55}
.promo .btns{justify-content:flex-start}.promo .btn{padding:18px 30px;font-size:15px}
@media(max-width:640px){.promo .wrap{padding:26px 20px}}

.live{padding:150px 24px 160px;text-align:center}
.live .in{max-width:760px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:12px;text-shadow:0 2px 14px rgba(0,0,0,.85)}
.live .d{font-size:26px;font-weight:600;letter-spacing:.26em;text-shadow:none}
.live .h{font-size:36px;letter-spacing:.06em;text-transform:uppercase}
.live .a{font-size:18px;letter-spacing:.08em;color:var(--soft);line-height:1.5}
.live .btn{margin-top:8px}
@media(max-width:640px){.live{padding:100px 18px 110px}.live .h{font-size:24px}.live .d{font-size:18px}.live .a{font-size:14px}}

/* страница участника */
.solo{padding:30px 18px 10px}
.solo .in{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:18px}
.solo .tt{text-align:center}.solo .tt img{display:block;margin:0 auto;height:auto}
.solo .tt .t1{width:100%;max-width:560px}.solo .tt .t2{width:82%;max-width:460px;margin-top:10px}
.solo .tt .lbl{font-size:13px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;margin-top:12px}
.vid{position:relative;width:100%;border-radius:20px;border:1px solid var(--line);overflow:hidden;background:radial-gradient(circle at 30% 20%,rgba(227,190,115,.35),rgba(10,7,5,0) 55%),linear-gradient(160deg,#3A1A12 0%,#1A0E09 60%,#8E0D13 100%) center/cover}
.vid{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
.vid.v169{aspect-ratio:16/9}.vid.v916{aspect-ratio:9/16;max-width:420px;width:100%;margin:0 auto}.vid.v45{aspect-ratio:4/5}
.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vid .place{top:12px;left:12px}
.solo .who h1{margin:0;font-weight:400;font-size:40px;letter-spacing:.03em}
.solo .who .mt{font-size:16px;color:var(--dim);margin-top:4px}
.solo .who .about{font-size:16px;color:var(--muted);line-height:1.55;margin-top:10px}
.bigLike{width:100%;height:62px;border-radius:999px;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;font:inherit;font-size:17px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--bg);background:var(--gold)}
.bigLike svg path{fill:none;stroke:var(--bg)}.bigLike.on{background:#D9C3A0}.bigLike.on svg path{fill:var(--bg)}
.cnt{text-align:center;font-size:15px;color:var(--muted)}.cnt b{font-size:22px;font-weight:600}
.shr .lbl{font-size:13px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;text-align:center;margin-bottom:12px}
.shr .g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.shr .g a,.shr .g button{text-decoration:none;height:64px;border-radius:14px;border:1px solid var(--line);background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font:inherit;font-size:12px;color:var(--soft);cursor:pointer}
.solo .all{display:flex;align-items:center;justify-content:center;height:54px;border-radius:999px;border:1px solid var(--accent);text-decoration:none;color:var(--text);font-size:14px;letter-spacing:.16em;text-transform:uppercase}
.solo .promo{padding:0}.solo .promo .wrap{padding:24px 22px}.solo .promo h3{font-size:36px}.solo .promo p{font-size:15px}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--card);border:1px solid var(--accent);color:var(--text);padding:12px 20px;border-radius:999px;font-size:15px;z-index:50;opacity:0;transition:opacity .25s;pointer-events:none}
.toast.show{opacity:1}

/* единая цветокоррекция обложек участников: тёплый праздничный тон */
.card .th,.tzCard{isolation:isolate}
.card .th.has-img::before{content:"";position:absolute;inset:0;z-index:0;background:var(--img) var(--pos,50% 25%)/cover no-repeat;filter:saturate(.9) contrast(1.08) brightness(.9);transition:filter .35s}
.card .th.has-img::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(160deg,rgba(246,200,120,.55) 0%,rgba(214,120,60,.35) 45%,rgba(160,16,30,.5) 100%);mix-blend-mode:soft-light}
.card .th.has-img .play{background:radial-gradient(ellipse at 50% 45%,rgba(10,7,5,0) 50%,rgba(40,6,10,.55) 100%),linear-gradient(180deg,rgba(10,7,5,0) 60%,rgba(10,7,5,.55) 100%)}
.card .th.has-img:hover::before{filter:saturate(1) contrast(1.04) brightness(1)}
.card .th .play{z-index:2}.card .th .place{z-index:3}
.tzImg.photo{filter:saturate(.95) contrast(1.06) brightness(.85) blur(1px)}
.tzCard:hover .tzImg.photo{filter:brightness(1)}
#program.progBg::before{height:auto;width:min(1480px,100%);-webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 70%,rgba(0,0,0,.6) 86%,transparent 100%);mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 70%,rgba(0,0,0,.6) 86%,transparent 100%)}

/* праздничные блики на витрине */
.card .th .rays{position:absolute;inset:0;z-index:1;pointer-events:none;background:conic-gradient(from 180deg at 50% -12%,rgba(255,226,170,0) 0deg,rgba(255,226,170,.16) 14deg,rgba(255,226,170,0) 26deg,rgba(255,226,170,.12) 38deg,rgba(255,226,170,0) 52deg,rgba(255,226,170,0) 308deg,rgba(255,226,170,.12) 322deg,rgba(255,226,170,0) 334deg,rgba(255,226,170,.16) 346deg,rgba(255,226,170,0) 360deg);mix-blend-mode:screen;animation:a15rays 7s ease-in-out infinite alternate}
.card .th .glint{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(115deg,rgba(255,240,210,0) 38%,rgba(255,236,200,.38) 48%,rgba(255,240,210,0) 58%);background-size:260% 100%;background-position:130% 0;mix-blend-mode:screen;animation:a15glint 6s ease-in-out infinite}
.card .th .sparks i{position:absolute;z-index:1;width:6px;height:6px;border-radius:50%;background:radial-gradient(circle,#FFF6DD 0%,rgba(255,220,150,.85) 35%,rgba(255,220,150,0) 70%);box-shadow:0 0 8px 2px rgba(255,215,140,.55);opacity:0;animation:a15spark 3.2s ease-in-out infinite}
.card .th .sparks i::before,.card .th .sparks i::after{content:"";position:absolute;left:50%;top:50%;background:rgba(255,236,190,.85);transform:translate(-50%,-50%)}
.card .th .sparks i::before{width:22px;height:1px}.card .th .sparks i::after{width:1px;height:22px}
.card .th .sparks i:nth-child(1){top:14%;right:16%}.card .th .sparks i:nth-child(2){top:46%;left:12%;animation-delay:1.1s}.card .th .sparks i:nth-child(3){bottom:20%;right:24%;animation-delay:2.2s}
.card:nth-child(4n+2) .th .glint,.card:nth-child(4n+2) .th .sparks i{animation-delay:1.5s}.card:nth-child(4n+3) .th .glint{animation-delay:3s}.card:nth-child(4n+4) .th .glint{animation-delay:4.5s}
.card:nth-child(4n+3) .th .sparks i:nth-child(1){animation-delay:.6s}.card:nth-child(4n+4) .th .sparks i:nth-child(2){animation-delay:2.7s}
@keyframes a15glint{0%,55%{background-position:130% 0}85%,100%{background-position:-30% 0}}
@keyframes a15spark{0%,100%{opacity:0;transform:scale(.4) rotate(0deg)}45%{opacity:1;transform:scale(1) rotate(45deg)}70%{opacity:0;transform:scale(.6) rotate(90deg)}}
@keyframes a15rays{0%{opacity:.55}100%{opacity:1}}
@media (prefers-reduced-motion:reduce){.card .th .glint,.card .th .sparks i,.card .th .rays{animation:none}.card .th .sparks i{opacity:.7}}
