/* =========================================================
   AAAF Moldova Park — Events, event detail, Zirve Voice.
   Tokens and base components live in style.css / pages.css.
   ========================================================= */

/* Events hero -------------------------------------------- */
.ev-hero{padding-bottom:48px}
.ev-hero .page-title .accent{color:var(--sand)}
.ev-hero .hero-facts dd{color:rgba(255,255,255,.6)}
.simple-page .eyebrow{justify-content:center}

/* Featured event — continues the dark band ---------------- */
.ev-featured{padding:0 0 96px;background:var(--ink);color:#fff}
.feat{display:grid;grid-template-columns:1fr 1.05fr;gap:44px;align-items:center;padding:22px;border-radius:28px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12)}
.feat-media{position:relative;overflow:hidden;border-radius:20px;aspect-ratio:4/3.1;background:#0A0C0B}
.feat-media>img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.04)}
.feat-media .poster-big{font-size:clamp(40px,4.4vw,58px)}
.feat-body{padding:6px 24px 12px 0}
.feat-body .h2{font-size:clamp(30px,3.3vw,48px);color:#fff}
.feat-body .h2 a{transition:color .2s}
.feat-body .h2 a:hover{color:var(--sand)}
.feat-body .lead{margin-top:16px}
.feat-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px;margin-top:26px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12)}
.feat-facts dt{font-size:11.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.feat-facts dd{margin-top:5px;font-size:17px;font-weight:700}
.feat-sold{max-width:460px;margin-top:24px}
.feat .sold-bar{background:rgba(255,255,255,.14)}
.feat .sold p{color:rgba(255,255,255,.62)}
.feat-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:28px}

/* Weekly rhythm ------------------------------------------ */
.rhythm{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
.rhythm-day{display:flex;flex-direction:column;padding:20px 18px 22px;border-radius:18px;background:#fff;border:1px solid var(--line)}
.rhythm-dow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 8px;min-width:0;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rhythm-now{padding:3px 8px;border-radius:999px;background:var(--red);color:#fff;font-size:9.5px;letter-spacing:.08em}
.rhythm-ic{display:grid;place-items:center;width:42px;height:42px;margin:18px 0 14px;border-radius:12px;background:var(--cream);color:var(--green)}
.rhythm-day h3{font-size:17px;font-weight:800;line-height:1.2;letter-spacing:-.02em}
.rhythm-text{margin-top:8px;font-size:13.5px;line-height:1.5;color:var(--muted)}
.rhythm-day.is-today{background:var(--green);border-color:var(--green);color:#fff}
.rhythm-day.is-today .rhythm-dow{color:rgba(255,255,255,.72)}
.rhythm-day.is-today .rhythm-ic{background:rgba(255,255,255,.12);color:var(--sand)}
.rhythm-day.is-today .rhythm-text{color:rgba(255,255,255,.75)}

/* Calendar: tabs, counter, empty state -------------------- */
.ev-count{display:inline-flex;align-items:center;gap:8px;margin:-16px 0 22px;font-size:13.5px;font-weight:600;color:var(--muted)}
.ev-count .i{width:16px;height:16px;color:var(--green)}
.ev-empty{display:flex;flex-direction:column;align-items:center;padding:64px 24px;border-radius:24px;background:#fff;border:1px dashed rgba(21,24,22,.2);text-align:center}
.ev-empty-ic{display:grid;place-items:center;width:58px;height:58px;margin-bottom:20px;border-radius:50%;background:var(--cream);color:var(--green)}
.ev-empty-ic .i{width:26px;height:26px}
.ev-empty h3{font-size:24px;font-weight:800;letter-spacing:-.03em}
.ev-empty p{max-width:48ch;margin:10px 0 24px;font-size:15px;color:var(--muted)}

/* Venue overview ----------------------------------------- */
.venue-card .card-media{aspect-ratio:4/3}
.venue-cap{display:flex;align-items:center;gap:9px;margin-top:14px;font-size:14.5px;font-weight:600}
.venue-cap .i{width:17px;height:17px;color:var(--green)}

/* Event detail hero -------------------------------------- */
.evd-hero-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:56px;align-items:center}
.evd-hero .page-title{font-size:clamp(34px,4.4vw,62px)}
.evd-meta{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:26px;font-size:15px;font-weight:600}
.evd-meta li{display:inline-flex;align-items:center;gap:9px}
.evd-meta .i{width:18px;height:18px;color:var(--sand)}
.evd-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px;margin-top:22px}
.evd-price strong{font-size:30px;font-weight:800;letter-spacing:-.03em}
.evd-price span{padding:5px 12px;border-radius:999px;background:rgba(255,255,255,.12);font-size:13px;font-weight:700}
.evd-visual{position:relative;overflow:hidden;border-radius:24px;aspect-ratio:4/3.1;background:#0A0C0B;box-shadow:var(--shadow)}
.evd-visual>img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.04)}
.evd-visual .poster-big{font-size:clamp(40px,4.4vw,56px)}

/* Event detail body -------------------------------------- */
.evd-detail{align-items:start}
.evd-sub{max-width:62ch;margin:-6px 0 22px}
.ticket-list{border-top:1px solid var(--line)}
.ticket-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:16px 28px;padding:20px 0;border-bottom:1px solid var(--line)}
.ticket-info h3{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:19px;font-weight:800;letter-spacing:-.02em}
.ticket-info p{margin-top:5px;font-size:14.5px;color:var(--muted)}
.ticket-flag{padding:4px 9px;border-radius:999px;background:#FBE3E1;color:var(--red-deep);font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.ticket-price{font-size:22px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.ticket-price.price-free{color:#1C7C45}
.ticket-qty output{min-width:24px}
.ticket-row.is-picked output{color:var(--green)}
.ticket-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:26px}
.evd-aside-list{display:flex;flex-direction:column;gap:12px;margin-top:2px;padding-top:18px;border-top:1px solid var(--line)}
.evd-aside-list div{display:flex;justify-content:space-between;gap:16px;font-size:14.5px}
.evd-aside-list dt{color:var(--muted)}
.evd-aside-list dd{font-weight:700;text-align:right}
.evd-aside .sold{margin-top:18px}
.evd-aside-sel{display:flex;align-items:center;gap:9px;margin-top:18px;padding:11px 14px;border-radius:12px;background:var(--cream);font-size:13.5px;font-weight:700;color:var(--green)}
.evd-aside-sel .i{flex:none;width:17px;height:17px}
.evd-aside-sel+.btn{margin-top:14px}

/* Venue block + stay upsell ------------------------------- */
.venue-box{display:grid;grid-template-columns:minmax(0,290px) 1fr;gap:26px;align-items:center;padding:20px;border-radius:22px;background:#fff;border:1px solid var(--line)}
.venue-box img{width:100%;height:100%;min-height:196px;border-radius:16px;object-fit:cover;filter:saturate(.9) contrast(1.04)}
.venue-box-body h3{font-size:22px;font-weight:800;letter-spacing:-.02em}
.venue-box-body>p{margin-top:6px;font-size:14.5px}
.venue-box-facts{margin:16px 0 18px}
.venue-box-facts li{display:flex;align-items:flex-start;gap:11px;padding:7px 0;font-size:14.5px;color:var(--ink-2)}
.venue-box-facts .i{flex:none;margin-top:2px;width:17px;height:17px;color:var(--green)}
.upsell{display:grid;grid-template-columns:minmax(0,260px) 1fr;gap:26px;align-items:center;padding:20px;border-radius:22px;background:var(--green);color:#fff}
.upsell img{width:100%;height:100%;min-height:200px;border-radius:16px;object-fit:cover;filter:saturate(.9) contrast(1.04)}
.upsell .eyebrow{margin-bottom:12px;color:var(--sand)}
.upsell-body h3{font-size:26px;font-weight:800;letter-spacing:-.03em}
.upsell-body p{margin-top:8px;font-size:15px}
.upsell-name{margin-top:6px;font-size:14px;font-weight:700;letter-spacing:.02em;color:var(--sand)}
.upsell-body .muted{color:rgba(255,255,255,.74)}
.upsell-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-top:22px}
.upsell-price strong{font-size:22px;font-weight:800;letter-spacing:-.02em}
.upsell-price span{font-size:13.5px;color:rgba(255,255,255,.7)}

/* Zirve Voice hero --------------------------------------- */
.zv-hero{position:relative;padding:168px 0 88px;overflow:hidden;background:radial-gradient(58% 55% at 80% 6%,rgba(214,38,122,.55),transparent 62%),radial-gradient(62% 58% at 2% 100%,rgba(228,50,43,.5),transparent 60%),#08080A;color:#fff}
.zv-hero-inner{position:relative;z-index:1}
.zv-crumbs,.zv-crumbs a{color:rgba(255,255,255,.55)}
.zv-crumbs a:hover{color:#fff}
.zv-kicker{font-size:12px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--sand)}
.zv-lockup{display:flex;flex-direction:column;margin-top:14px;font-size:clamp(58px,11vw,148px);font-weight:900;line-height:.86;letter-spacing:-.055em}
.zv-lockup-2{color:var(--sand)}
@supports (-webkit-text-stroke:2px #fff){.zv-lockup-2{color:transparent;-webkit-text-stroke:2px var(--sand)}}
.zv-tagline{margin-top:24px;font-size:clamp(20px,2.4vw,30px);font-weight:800;letter-spacing:-.03em}
.zv-lead{margin-top:14px;max-width:620px}
.zv-countdown{display:inline-flex;align-items:center;gap:12px;margin-top:26px;padding:11px 18px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);font-size:14.5px;font-weight:600;transition:background .2s,border-color .2s}
.zv-countdown:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.45)}
.zv-countdown .i{width:17px;height:17px;color:var(--sand)}
.zv-hero .page-hero-ctas{margin-top:30px}

/* Contestants -------------------------------------------- */
.cast-card{display:flex;flex-direction:column;padding:24px 22px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);transition:background .3s,transform .3s}
.cast-card:hover{background:rgba(255,255,255,.08);transform:translateY(-4px)}
.cast-avatar{display:grid;place-items:center;width:60px;height:60px;margin-bottom:18px;border-radius:50%;background:linear-gradient(150deg,rgba(214,38,122,.95),rgba(228,50,43,.95));font-size:19px;font-weight:800;color:#fff}
.cast-card h3{font-size:20px;font-weight:800;letter-spacing:-.02em}
.cast-city{display:flex;align-items:center;gap:7px;margin-top:6px;font-size:13.5px;color:rgba(255,255,255,.62)}
.cast-city .i{width:15px;height:15px;color:var(--sand)}
.cast-line{margin-top:12px;font-size:14px;line-height:1.5;color:rgba(255,255,255,.72)}
.cast-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:20px}
.cast-votes strong{display:block;font-size:22px;font-weight:800;letter-spacing:-.03em}
.cast-votes span{font-size:12px;color:rgba(255,255,255,.55)}
.cast-vote .i{width:15px;height:15px}
.cast-vote[aria-pressed="true"]{background:#fff;color:var(--green-deep)}
.cast-vote[aria-pressed="true"] .i{fill:currentColor}
.cast-note{margin-top:22px;font-size:13px;color:rgba(255,255,255,.5)}

/* Episodes ----------------------------------------------- */
.ep-card{display:flex;flex-direction:column;overflow:hidden;border-radius:20px;background:#fff;border:1px solid var(--line);transition:transform .3s,box-shadow .3s}
.ep-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.ep-art{position:relative;display:grid;place-items:center;aspect-ratio:16/9;background:radial-gradient(70% 70% at 82% 8%,rgba(214,38,122,.85),transparent 60%),radial-gradient(70% 70% at 0% 100%,rgba(228,50,43,.75),transparent 60%),#0A0A0C;color:#fff}
.ep-num{font-size:46px;font-weight:900;letter-spacing:-.05em;opacity:.92}
.ep-mic{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.3)}
.ep-mic .i{width:16px;height:16px}
.ep-body{display:flex;flex:1;flex-direction:column;padding:18px 20px 20px}
.ep-body h3{font-size:18px;font-weight:800;letter-spacing:-.02em}
.ep-body p{margin-top:6px;font-size:13.5px;color:var(--muted)}
.ep-tag{display:inline-flex;align-self:flex-start;align-items:center;gap:7px;margin-top:16px;padding:6px 12px;border-radius:999px;background:var(--cream);font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}
.ep-card.is-soon .ep-art{filter:grayscale(.4) brightness(.82)}
.ep-card.is-soon .ep-tag{background:var(--cream-2);color:var(--muted)}

/* Apply banner ------------------------------------------- */
.zv-apply{padding:0 0 var(--section)}
.zv-apply-inner{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:56px;border-radius:28px;background:var(--ink);color:#fff}
.zv-apply-copy .h2{max-width:15ch;color:#fff}
.zv-apply-copy .lead{margin-top:16px}
.zv-bullets{max-width:440px;margin-top:24px}
.zv-apply-inner .tick-list li{border-bottom-color:rgba(255,255,255,.12);color:rgba(255,255,255,.85)}
.zv-apply-inner .tick-list .i{color:var(--sand)}
.zv-form .form-actions{margin-top:22px}
.zv-form-sent{display:flex;align-items:flex-start;gap:9px;margin-top:16px;padding:12px 14px;border-radius:12px;background:#EEF3EC;color:var(--green);font-size:13.5px;font-weight:700;line-height:1.45}
.zv-form-sent[hidden]{display:none}
.zv-form-sent .i{flex:none;width:17px;height:17px;margin-top:1px;stroke-width:2.4}

/* AAAF wordmark line ------------------------------------- */
.zv-foot{padding:0 0 var(--section)}
.zv-foot-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;padding-top:26px;border-top:1px solid var(--line)}
.zv-foot-line{display:flex;align-items:center;gap:12px;font-size:14.5px;color:var(--muted)}
.zv-mark{font-size:21px;font-weight:900;letter-spacing:-.05em;color:var(--ink)}

/* Responsive --------------------------------------------- */
@media (max-width:1100px){
  .feat{gap:28px;padding:18px}
  .feat-body{padding:4px 8px 6px 0}
  .feat-body .h2{font-size:clamp(28px,3.2vw,36px)}
  .feat-facts{gap:14px 20px;margin-top:20px;padding-top:18px}
  .rhythm{grid-template-columns:repeat(4,minmax(0,1fr))}
  .evd-hero-grid{grid-template-columns:1fr;gap:36px}
  .evd-visual{max-width:520px}
  .zv-apply-inner{grid-template-columns:1fr;gap:36px;padding:44px 40px}
}
@media (max-width:860px){
  .ev-hero{padding-bottom:36px}
  .ev-featured{padding-bottom:64px}
  .feat{grid-template-columns:1fr;gap:22px;padding:14px;border-radius:22px}
  .feat-body{padding:0 4px 8px}
  .feat-facts{grid-template-columns:1fr 1fr;gap:14px 18px;margin-top:22px;padding-top:20px}
  .feat-facts dd{font-size:15.5px}
  .feat-actions{gap:12px 18px;margin-top:22px}
  .rhythm{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .rhythm-day{padding:16px 15px 18px}
  .rhythm-ic{width:38px;height:38px;margin:14px 0 12px}
  .ev-count{margin:-12px 0 18px}
  .ev-empty{padding:44px 20px}
  .evd-meta{gap:8px 18px;font-size:14px}
  .evd-visual{aspect-ratio:4/3;max-width:none}
  .evd-price strong{font-size:26px}
  .ticket-row{grid-template-columns:auto 1fr;gap:12px 16px;padding:18px 0}
  .ticket-info{grid-column:1/-1}
  .ticket-price{justify-self:start}
  .ticket-qty{justify-self:end}
  .ticket-qty button{width:44px;height:44px}
  .venue-box,.upsell{grid-template-columns:1fr;gap:18px;padding:16px}
  .venue-box img,.upsell img{min-height:180px;max-height:230px}
  .upsell-foot{margin-top:18px}
  .zv-hero{padding:118px 0 64px}
  .zv-tagline{margin-top:18px}
  .zv-countdown{gap:10px;padding:10px 14px;font-size:13.5px}
  .cast-card{padding:20px 18px}
  .cast-avatar{width:52px;height:52px;margin-bottom:14px;font-size:17px}
  .ep-num{font-size:38px}
  .zv-apply-inner{padding:28px 22px;border-radius:22px}
  .zv-foot-inner{flex-direction:column;align-items:flex-start;gap:14px}
}
