/* ========== Birzia Fonts ========== */
@font-face{font-family:'Birzia';src:url('../fonts/Birzia-Light.otf') format('opentype');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Birzia';src:url('../fonts/Birzia-Medium.otf') format('opentype');font-weight:400 500;font-style:normal;font-display:swap}
@font-face{font-family:'Birzia';src:url('../fonts/Birzia-Bold.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Birzia';src:url('../fonts/Birzia-Black.otf') format('opentype');font-weight:800 900;font-style:normal;font-display:swap}

/* ========== Base ========== */
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:'Birzia',system-ui,-apple-system,'Segoe UI',sans-serif;
  color:#fff;
  background:#0d0d0d;
  min-height:100vh;
  overflow-x:hidden;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}
a{color:inherit;text-decoration:none}
input,select,textarea{font-family:inherit;color:inherit}

/* iOS Safari: מניעת זום אוטומטי בפוקוס — דורש גודל גופן מחושב ≥16px בשדות */
@media (max-width:1023px){
  textarea,
  select,
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="hidden"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="image"]){
    font-size:max(16px,1em);
  }
}

:root{
  --bg-0:#05000f;
  --bg-1:#0b0220;
  --ink:#fff;
  --ink-dim:rgba(255,255,255,.72);
  --ink-mute:rgba(255,255,255,.55);
  --line:rgba(255,255,255,.12);
  --line-2:rgba(255,255,255,.18);
  --glass-bg:rgba(255,255,255,.07);
  --glass-bg-strong:rgba(255,255,255,.1);
  --glass-border:rgba(255,255,255,.14);
  --pink:#ff3cac;
  --purple:#7a4bff;
  --blue:#2b86c5;
  --cyan:#5ee7ff;
  --yellow:#ffd166;
  --grad-brand:linear-gradient(135deg,#ff3cac 0%,#7a4bff 50%,#2b86c5 100%);
  --grad-hot:linear-gradient(135deg,#ff5f6d 0%,#ffc371 100%);
  --radius-sm:12px;
  --radius:18px;
  --radius-lg:26px;
  --radius-xl:36px;
  --shadow-glass:none;
}

.container{
  width:min(100% - 48px, 1352px);
  margin-inline:auto;
}
@media (max-width:960px){
  .container{width:min(100% - 32px, 1352px)}
}

/* ========== Ambient background ========== */
.ambient{display:none}
.grain{display:none}

/* ========== Surface (solid dark card — replaces glass everywhere except header + hero) ========== */
.glass{
  background:#181818;
  border:1px solid rgba(255,255,255,.08);
}

/* Glass-blur: only header and hero content */
.header,
.hero__content{
  backdrop-filter:blur(20px) saturate(130%);
  -webkit-backdrop-filter:blur(20px) saturate(130%);
  border-color:rgba(255,255,255,.1);
}
.header{background:rgba(12,12,12,.82)}
.hero__content{background:rgba(8,8,8,.52)}

/* ========== Header ========== */
.header{
  position:sticky;top:0;z-index:50;
  width:100%;
  border-radius:0;
  border-inline:0;border-top:0;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.header__inner{
  display:flex;align-items:center;gap:20px;
  padding:10px 24px;
  max-width:1400px;
  margin-inline:auto;
}
.logo{display:flex;align-items:center}
.logo__img{
  height:26px;width:auto;
  filter:invert(1);
  object-fit:contain;
}
.logo--lg .logo__img{height:42px}

.nav{display:flex;align-items:center;gap:2px;margin-inline-start:18px}
.nav__link{
  position:relative;
  padding:8px 14px;border-radius:10px;
  font-weight:600;font-size:14px;
  color:var(--ink-dim);
  border:1px solid transparent;
  transition:color .18s,background .18s,border-color .18s;
  white-space:nowrap;
}
.nav__link:hover{color:#fff;background:rgba(255,255,255,.05)}
.nav__link.is-active{
  color:#fff;font-weight:700;
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.12);
}

/* Dropdown trigger + panel */
.nav__item{position:relative}
.nav__item .nav__link{display:flex;align-items:center;gap:4px;cursor:pointer;background:none;font-family:inherit}
.nav__item .nav__link svg{width:12px;height:12px;transition:transform .2s;flex-shrink:0;opacity:.75}
.nav__item.is-open .nav__link svg,
.nav__item:hover .nav__link svg{transform:rotate(180deg);opacity:1}
.nav__item:hover > .nav__link,
.nav__item.is-open > .nav__link{color:#fff;background:rgba(255,255,255,.05)}
.nav__dropdown{
  position:absolute;top:100%;inset-inline-start:-4px;
  min-width:200px;
  padding:14px 8px 8px;   /* top padding acts as hover bridge from button */
  display:none;flex-direction:column;gap:2px;
  z-index:200;
  /* visual card is rendered via ::after so the bridge area stays transparent */
  background:transparent;border:0;box-shadow:none;
}
.nav__dropdown::after{
  content:"";position:absolute;inset:10px 0 0 0;z-index:-1;
  background:rgba(14,10,22,.96);
  backdrop-filter:blur(16px) saturate(130%);
  -webkit-backdrop-filter:blur(16px) saturate(130%);
  border:1px solid rgba(255,255,255,.1);border-radius:14px;
  box-shadow:0 16px 40px rgba(0,0,0,.5);
}
.nav__item.is-open .nav__dropdown,
.nav__item:hover .nav__dropdown{display:flex;animation:navDrop .18s ease-out}
@keyframes navDrop{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.nav__dropdown a{
  display:block;padding:9px 12px;border-radius:9px;
  font-size:13.5px;font-weight:600;color:var(--ink-dim);
  text-decoration:none;white-space:nowrap;
  transition:background .15s,color .15s,transform .15s;
}
.nav__dropdown a:hover{background:rgba(122,75,255,.14);color:#fff}

.header__actions{margin-inline-start:auto;display:flex;align-items:center;gap:8px}
.icon-btn{
  position:relative;
  width:38px;height:38px;display:grid;place-items:center;
  border-radius:10px;background:transparent;
  border:1px solid transparent;
  color:var(--ink-dim);
  transition:background .18s,color .18s,border-color .18s;
}
.icon-btn:hover{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.1)}
.icon-btn svg{width:19px;height:19px}
.icon-btn .badge{
  position:absolute;top:-4px;inset-inline-end:-4px;
  min-width:18px;height:18px;padding:0 5px;border-radius:999px;
  background:var(--grad-hot);font-size:11px;font-weight:700;display:grid;place-items:center;
  border:2px solid #0b0220;color:#fff;
}
.icon-btn--menu{display:none}

/* Login CTA — refined pill */
.cta-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:8px 16px 8px 14px;border-radius:999px;
  font-weight:700;font-size:13.5px;
  color:#fff;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.14);
  transition:background .18s,border-color .18s,transform .18s;
}
.cta-btn:hover{
  background:rgba(255,255,255,.09);
  border-color:rgba(255,255,255,.25);
  transform:translateY(-1px);
}
.cta-btn__icon{
  width:16px;height:16px;fill:currentColor;flex:0 0 auto;display:block;
}

/* ========== Search Overlay (full-width, content-height) ========== */
.search-overlay{
  position:fixed;inset:0;z-index:200;
  display:block;
  opacity:0;pointer-events:none;
  transition:opacity .22s ease;
}
.search-overlay.is-open{opacity:1;pointer-events:auto}
.search-overlay__backdrop{
  position:fixed;inset:0;
  background:rgba(5,0,15,.72);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.search-overlay__panel{
  position:fixed;top:0;left:0;right:0;
  z-index:1;
  width:100%;
  background:linear-gradient(180deg,rgba(20,12,36,.98) 0%,rgba(10,6,22,.98) 100%);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 24px 60px -20px rgba(0,0,0,.6);
  padding:14px 18px 18px;
  transform:translateY(-14px);
  transition:transform .28s cubic-bezier(.22,1,.36,1);
  max-height:min(78vh,640px);
  display:flex;flex-direction:column;
  overflow:hidden;
}
.search-overlay.is-open .search-overlay__panel{transform:translateY(0)}

.search-overlay__form{margin:0;max-width:820px;margin-inline:auto;width:100%}
.search-overlay__top{
  display:flex;align-items:center;gap:10px;
}
.search-overlay__field{
  flex:1;display:flex;align-items:center;gap:10px;
  background:rgba(255,255,255,.04);
  border:1.5px solid rgba(255,255,255,.1);
  border-radius:14px;
  padding:0 14px;
  transition:border-color .2s,background .2s,box-shadow .2s;
}
.search-overlay__field:focus-within{
  border-color:rgba(122,75,255,.55);
  background:rgba(255,255,255,.06);
  box-shadow:0 0 0 4px rgba(122,75,255,.12);
}
.search-overlay__field svg{width:18px;height:18px;color:var(--ink-mute);flex:0 0 auto}
.search-overlay__input{
  flex:1;background:none;border:0;outline:none;
  color:#fff;font-size:16px;font-weight:500;font-family:inherit;
  padding:13px 0;min-width:0;
}
.search-overlay__input::placeholder{color:var(--ink-mute)}
.search-overlay__clear{
  width:24px;height:24px;border-radius:50%;
  background:rgba(255,255,255,.08);
  display:grid;place-items:center;
  transition:background .2s;flex:0 0 auto;color:#fff;
}
.search-overlay__clear svg{width:12px;height:12px}
.search-overlay__clear:hover{background:rgba(255,255,255,.18)}
.search-overlay__close{
  font-size:14px;font-weight:700;color:var(--ink-dim);
  white-space:nowrap;padding:8px 12px;border-radius:10px;
  transition:color .2s,background .2s;flex:0 0 auto;
}
.search-overlay__close:hover{color:#fff;background:rgba(255,255,255,.06)}

.search-overlay__body{
  flex:1;min-height:0;overflow-y:auto;
  padding:14px 2px 6px;
  margin:10px auto 0;
  max-width:820px;width:100%;
  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent;
}
.search-overlay__body::-webkit-scrollbar{width:6px}
.search-overlay__body::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:3px}

/* Ensure [hidden] takes precedence over display:flex on states */
.search-overlay__state[hidden],
.search-overlay__results[hidden]{display:none !important}

.search-overlay__state{padding:4px 4px 2px}
.search-overlay__hint{
  font-size:11px;color:var(--ink-mute);
  margin:0 0 10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  padding:0 6px;
}
.search-overlay__hint--secondary{
  font-size:12px;color:var(--ink-mute);text-transform:none;letter-spacing:0;font-weight:500;
  margin-top:14px;opacity:.7;
}
.search-overlay__tags{
  display:flex;flex-wrap:wrap;gap:8px;padding:0 6px;
}
.search-tag{
  display:inline-flex;align-items:center;gap:6px;
  padding:9px 14px;border-radius:999px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  font-size:13px;font-weight:600;color:var(--ink-dim);
  white-space:nowrap;
  transition:background .2s,color .2s,border-color .2s,transform .2s;
}
.search-tag span{font-size:14px}
.search-tag:hover{background:rgba(122,75,255,.18);border-color:rgba(122,75,255,.45);color:#fff;transform:translateY(-1px)}

.search-overlay__state--loading{
  display:flex;flex-direction:row;align-items:center;gap:10px;
  padding:18px 10px;color:var(--ink-mute);font-size:13.5px;
}
.search-overlay__spinner{
  width:20px;height:20px;border-radius:50%;
  border:2.2px solid rgba(255,255,255,.12);
  border-top-color:rgba(122,75,255,.9);
  animation:sr-spin .8s linear infinite;flex:0 0 auto;
}
@keyframes sr-spin{to{transform:rotate(360deg)}}

.search-overlay__state--empty{
  display:flex;flex-direction:column;align-items:center;
  text-align:center;padding:28px 20px;color:var(--ink-dim);
}
.search-overlay__empty-emoji{font-size:36px;display:block;margin-bottom:6px;opacity:.85}
.search-overlay__state--empty p{margin:3px 0}
.search-overlay__empty-sub{font-size:13px;color:var(--ink-mute)}

/* Results list */
.search-overlay__results{padding:0 6px 4px;gap:18px;flex-direction:column}
.search-overlay__results:not([hidden]){display:flex}
.sr-group{display:flex;flex-direction:column;gap:4px}
.sr-group__head{
  display:flex;align-items:center;justify-content:space-between;
  padding:0 4px 6px;
}
.sr-group__title{
  margin:0;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  color:#fff;
}
.sr-group__title::after{
  content:attr(data-count);margin-inline-start:8px;
  color:var(--ink-mute);font-weight:600;letter-spacing:0;
}
.sr-item{
  display:flex;align-items:center;gap:12px;
  padding:9px 10px;border-radius:12px;
  color:#fff;
  transition:background .18s;
}
.sr-item:hover,.sr-item:focus-visible{background:rgba(122,75,255,.12);outline:none}
.sr-item__img{
  width:46px;height:46px;border-radius:10px;overflow:hidden;flex:0 0 auto;
  background:linear-gradient(135deg,rgba(122,75,255,.25),rgba(255,60,172,.2));
  position:relative;
}
.sr-item--round .sr-item__img{border-radius:50%}
.sr-item__img img{width:100%;height:100%;object-fit:cover;display:block}
.sr-item__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.sr-item__title{
  font-size:14px;font-weight:700;color:#fff;margin:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.sr-item__sub{
  font-size:12px;color:var(--ink-mute);margin:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.sr-item__meta{
  font-size:11px;color:rgba(255,255,255,.55);font-weight:600;
  white-space:nowrap;flex:0 0 auto;margin-inline-start:8px;
}
.sr-group__more{
  margin-top:2px;padding:8px 10px;
  display:flex;align-items:center;gap:6px;justify-content:space-between;
  font-size:13px;font-weight:700;color:rgba(122,75,255,.95);
  border-radius:10px;
}
.sr-group__more:hover{background:rgba(122,75,255,.1);color:#fff}
.sr-group__more svg{width:14px;height:14px}

.search-overlay__all-cta{
  margin-top:10px;padding:12px 14px;border-radius:12px;
  background:var(--grad-brand);color:#fff;
  display:flex;align-items:center;justify-content:center;gap:8px;
  font-size:14px;font-weight:800;
  transition:filter .2s,transform .2s;
}
.search-overlay__all-cta:hover{filter:brightness(1.1);transform:translateY(-1px)}
.search-overlay__all-cta svg{width:16px;height:16px}

/* Mobile: single-line tag slider */
@media(max-width:640px){
  .search-overlay__panel{
    padding:10px 12px 14px;
    max-height:min(82vh,640px);
  }
  .search-overlay__close{padding:8px 10px;font-size:13px}
  .search-overlay__input{font-size:15px;padding:12px 0}
  .search-overlay__hint{font-size:10.5px;margin-bottom:10px}

  /* horizontal tag scroller */
  .search-overlay__tags{
    flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;
    padding:4px 8px 8px;margin:0 -6px;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .search-overlay__tags::-webkit-scrollbar{display:none}
  .search-tag{flex:0 0 auto;scroll-snap-align:start}

  .sr-item__img{width:42px;height:42px}
  .sr-item__title{font-size:13.5px}
}

/* ========== Mobile Drawer ========== */
/* ==========================================================================
   Mobile drawer — "liquid glass" compact sheet (redesigned)
   ========================================================================== */
.drawer{
  position:fixed;inset:0;z-index:190;
  pointer-events:none;
}
.drawer.is-open{pointer-events:auto}

.drawer__backdrop{
  position:absolute;inset:0;
  background:radial-gradient(120% 80% at 50% 0%, rgba(124,59,255,.35) 0%, rgba(5,0,15,.72) 55%, rgba(5,0,15,.85) 100%);
  backdrop-filter:blur(14px) saturate(130%);
  -webkit-backdrop-filter:blur(14px) saturate(130%);
  opacity:0;transition:opacity .3s;
}
.drawer.is-open .drawer__backdrop{opacity:1}

.drawer__panel{
  position:absolute;top:12px;bottom:12px;right:12px;
  width:min(340px, calc(100vw - 24px));
  max-height:calc(100vh - 24px);
  border-radius:28px;
  display:flex;flex-direction:column;
  overflow:hidden;isolation:isolate;
  background:linear-gradient(180deg, rgba(24,8,48,.72) 0%, rgba(14,4,32,.85) 100%);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:
    0 30px 80px -20px rgba(0,0,0,.65),
    0 10px 30px -10px rgba(124,59,255,.45),
    inset 0 1px 0 rgba(255,255,255,.1);
  backdrop-filter:blur(28px) saturate(160%);
  -webkit-backdrop-filter:blur(28px) saturate(160%);
  transform:translateX(calc(100% + 20px)) scale(.98);
  opacity:0;
  transition:transform .4s cubic-bezier(.2,.9,.2,1), opacity .3s ease;
}
.drawer.is-open .drawer__panel{transform:translateX(0) scale(1);opacity:1}

/* Ambient gradient blobs inside the sheet */
.drawer__aura{
  position:absolute;z-index:-1;pointer-events:none;
  width:300px;height:300px;border-radius:50%;filter:blur(80px);opacity:.45;
  mix-blend-mode:screen;
}
.drawer__aura--1{background:#7c3bff;top:-80px;right:-80px}
.drawer__aura--2{background:#ff3fa2;bottom:-100px;left:-80px;opacity:.35}

.drawer__head{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 16px;
  border-bottom:1px solid rgba(255,255,255,.08);
  flex:0 0 auto;
}
.drawer__head .logo__img{height:22px}
.drawer__close{
  width:36px;height:36px;border-radius:12px;border:0;cursor:pointer;
  display:grid;place-items:center;
  background:rgba(255,255,255,.06);color:inherit;
  transition:background .15s ease, transform .15s ease;
}
.drawer__close:hover{background:rgba(255,255,255,.12);transform:rotate(90deg)}
.drawer__close svg{width:18px;height:18px}

.drawer__scroll{
  flex:1;overflow-y:auto;overscroll-behavior:contain;
  padding:14px 14px 18px;
  display:flex;flex-direction:column;gap:14px;
  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent;
}
.drawer__scroll::-webkit-scrollbar{width:6px}
.drawer__scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:4px}

/* ── Profile strip (top) ── */
.drawer__profile{
  display:flex;align-items:center;gap:12px;
  padding:12px;border-radius:18px;text-decoration:none;color:inherit;
  background:linear-gradient(135deg, rgba(124,59,255,.22) 0%, rgba(255,63,162,.18) 100%);
  border:1px solid rgba(255,255,255,.15);
  transition:transform .2s ease, box-shadow .2s ease;
}
.drawer__profile:hover{transform:translateY(-1px);box-shadow:0 8px 22px -10px rgba(124,59,255,.55)}
.drawer__profile-avatar{
  width:46px;height:46px;border-radius:50%;overflow:hidden;flex:0 0 46px;
  background:linear-gradient(135deg,#7c3bff 0%,#ff3fa2 100%);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:800;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.2);
}
.drawer__profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.drawer__profile-meta{display:flex;flex-direction:column;min-width:0;gap:1px}
.drawer__profile-hello{font-size:11px;color:rgba(255,255,255,.65);letter-spacing:.02em}
.drawer__profile-meta strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drawer__profile-cta{
  display:inline-flex;align-items:center;gap:3px;font-size:11.5px;font-weight:700;
  color:#e0d2ff;margin-top:3px;letter-spacing:.02em;
}
.drawer__profile-cta svg{width:12px;height:12px}

/* ── Tiles (main destinations) ── */
.drawer__tiles{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;
}
.drawer__tile{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  padding:12px 6px;border-radius:16px;text-decoration:none;color:#d8cce8;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
  transition:transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
  min-height:78px;
}
.drawer__tile:hover{background:rgba(255,255,255,.08);color:#fff;transform:translateY(-2px)}
.drawer__tile.is-active{
  color:#fff;
  background:linear-gradient(135deg, rgba(124,59,255,.3), rgba(255,63,162,.2));
  border-color:rgba(124,59,255,.55);
  box-shadow:0 6px 18px -8px rgba(124,59,255,.55);
}
.drawer__tile-icon{
  width:34px;height:34px;border-radius:12px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  display:grid;place-items:center;
}
.drawer__tile-icon svg{width:17px;height:17px}
.drawer__tile.is-active .drawer__tile-icon{
  background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.25);
}
.drawer__tile-label{font-size:12.5px;font-weight:700;letter-spacing:.01em}

/* ── Sections with chips ── */
.drawer__section{display:flex;flex-direction:column;gap:8px}
.drawer__section-head{display:flex;align-items:center;justify-content:space-between;padding:0 2px}
.drawer__section-label{
  font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(255,255,255,.55);
}

.drawer__chips{display:flex;flex-wrap:wrap;gap:6px}
.drawer__chip{
  display:inline-flex;align-items:center;
  padding:7px 12px;border-radius:999px;text-decoration:none;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  color:#d6cdea;font-size:12.5px;font-weight:600;letter-spacing:.01em;
  transition:background .2s ease, color .2s ease, transform .2s ease;
}
.drawer__chip:hover{background:rgba(255,255,255,.1);color:#fff;transform:translateY(-1px)}
.drawer__chip.is-active{
  background:linear-gradient(135deg,rgba(124,59,255,.35),rgba(255,63,162,.3));
  color:#fff;border-color:rgba(255,255,255,.3);
}

/* ── Account rows ── */
.drawer__rows{display:flex;flex-direction:column;gap:4px}
.drawer__row{
  display:flex;align-items:center;gap:12px;
  padding:11px 12px;border-radius:12px;text-decoration:none;color:#e2daf2;
  font-size:14px;font-weight:600;
  transition:background .15s ease, color .15s ease;
}
.drawer__row:hover{background:rgba(255,255,255,.08);color:#fff}
.drawer__row-icon{
  width:30px;height:30px;border-radius:10px;flex:0 0 30px;
  background:rgba(255,255,255,.06);display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.08);
}
.drawer__row-icon svg{width:16px;height:16px}
.drawer__row--admin{color:#ffd18a}
.drawer__row--admin .drawer__row-icon{background:rgba(255,191,75,.12);border-color:rgba(255,191,75,.3)}
.drawer__row--admin:hover{background:rgba(255,191,75,.12);color:#ffe4b8}
.drawer__row--danger{color:#ff97b0}
.drawer__row--danger .drawer__row-icon{background:rgba(255,73,124,.12);border-color:rgba(255,73,124,.3)}
.drawer__row--danger:hover{background:rgba(255,73,124,.12);color:#ffbcd0}

/* ── Login CTA (logged-out) ── */
.drawer__login{padding:4px 2px 0}
.drawer__login-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  width:100%;padding:14px 16px;border-radius:16px;text-decoration:none;
  color:#fff;font-weight:800;font-size:15px;letter-spacing:.01em;
  background:linear-gradient(135deg, #7c3bff 0%, #ff3fa2 100%);
  box-shadow:0 14px 34px -14px rgba(255,63,162,.7), 0 6px 18px -10px rgba(124,59,255,.55);
  transition:transform .2s ease, box-shadow .2s ease;
}
.drawer__login-btn:hover{transform:translateY(-1px)}
.drawer__login-btn svg{width:20px;height:20px;fill:currentColor}

@media (max-width:420px){
  .drawer__panel{top:10px;bottom:10px;right:10px;border-radius:24px}
  .drawer__tiles{gap:7px}
  .drawer__tile{min-height:72px;padding:10px 4px}
}

/* ========== Stories ========== */
.stories{padding:34px 0 2px}
.stories__track{
  display:flex;gap:10px;overflow-x:auto;
  padding:6px 2px 14px;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.stories__track::-webkit-scrollbar{display:none}
a.story{
  text-decoration:none;color:inherit;
  -webkit-tap-highlight-color:transparent;
}
.story{
  flex:0 0 auto;width:90px;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:8px;
  scroll-snap-align:start;
}
.story__ring{
  width:86px;height:86px;border-radius:50%;
  padding:3px;
  background:conic-gradient(from 180deg,#ff3cac,#7a4bff,#2b86c5,#5ee7ff,#ff3cac);
  display:grid;place-items:center;position:relative;
  transition:transform .25s;
}
.story:hover .story__ring{transform:scale(1.05)}
.story__ring--live{
  background:conic-gradient(from 0deg,#7a4bff,#2b86c5,#5ee7ff,#c084fc,#7a4bff);
}
.story__img{
  width:100%;height:100%;border-radius:50%;
  background-size:cover;background-position:center;
  border:3px solid #0b0220;
}
.story__img--add{
  background:rgba(255,255,255,.07);
  display:grid;place-items:center;color:#fff;
}
.story__img--add svg{width:26px;height:26px}
.story__live{
  position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);
  font-size:10px;font-weight:800;letter-spacing:.5px;
  padding:2px 8px;border-radius:999px;
  background:#ff2a6d;color:#fff;border:2px solid #0b0220;
}
.story__count{
  position:absolute;top:-2px;inset-inline-end:-4px;
  min-width:22px;height:22px;padding:0 6px;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:800;color:#fff;
  border-radius:999px;border:2px solid #0b0220;
  background:linear-gradient(135deg,#7a4bff,#ff3cac);
  box-shadow:0 4px 10px rgba(122,75,255,.35);
}
.story__name{
  font-size:12px;color:var(--ink-dim);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90px;
}

/* ========== Buttons ========== */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:12px 20px;border-radius:999px;font-weight:700;
  transition:transform .2s, filter .2s, background .2s;
}
.btn svg{width:18px;height:18px}
.btn--primary{
  background:var(--grad-brand);color:#fff;
}
.btn--primary:hover{transform:translateY(-1px);filter:brightness(1.1)}
.btn--glass{
  background:#252525;
  border:1px solid var(--line-2);
}
.btn--glass:hover{background:rgba(255,255,255,.16)}
.btn--ghost{
  background:rgba(255,255,255,.05);
  border:1px solid var(--line);
  padding:12px;
}
.btn--ghost:hover{background:rgba(255,255,255,.1)}
.btn--sm{padding:8px 14px;font-size:13px}
.btn--lg{padding:14px 26px;font-size:16px}

/* ========== Hero ========== */
.hero{padding:20px 0 20px}
.hero__stage{
  position:relative;border-radius:var(--radius-xl);
  overflow:hidden;isolation:isolate;
  aspect-ratio: 16/4.8;
  min-height:300px;
}
.hero__slide{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  display:flex;align-items:flex-end;
  opacity:0;transition:opacity .6s;
  pointer-events:none;
}
.hero__slide.is-active{opacity:1;pointer-events:auto}
.hero__scrim{
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse at 20% 100%, rgba(0,0,0,.75), transparent 55%),
    linear-gradient(180deg, transparent 40%, rgba(5,0,15,.85) 100%),
    linear-gradient(270deg, transparent 40%, rgba(5,0,15,.45) 100%);
}
.hero__content{
  position:relative;margin:20px;padding:20px 24px;
  border-radius:var(--radius-lg);
  max-width:580px;
}
.hero__meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.pill{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 12px;border-radius:999px;
  font-size:12px;font-weight:700;letter-spacing:.3px;
  background:rgba(255,255,255,.1);
  border:1px solid var(--line-2);
}
.pill--hot{background:var(--grad-hot);border-color:transparent;color:#2a0500}
.pill--ghost{background:rgba(255,255,255,.06)}

.hero__title{
  font-family:'Birzia',sans-serif;
  font-size:clamp(22px,3vw,40px);
  line-height:1.05;margin:0 0 8px;font-weight:700;
  letter-spacing:-.5px;
}
.hero__title span{
  background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
  font-weight:800;
}
.hero__desc{
  color:var(--ink-dim);margin:0 0 14px;max-width:54ch;font-size:14px;
}
.hero__bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.hero__stats{
  display:flex;flex-wrap:wrap;gap:18px;
}
.hero__stats > div{display:flex;flex-direction:column}
.hero__stats strong{
  font-family:'Birzia',sans-serif;font-size:18px;font-weight:700;
  background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero__stats span{color:var(--ink-mute);font-size:12px}
.hero__actions{display:flex;flex-wrap:wrap;gap:10px}

.hero__dots{
  position:absolute;bottom:18px;inset-inline-end:24px;
  display:flex;gap:8px;z-index:3;
}
.hero__dot{
  width:8px;height:8px;border-radius:999px;
  background:rgba(255,255,255,.35);transition:width .25s, background .25s;
}
.hero__dot.is-active{width:26px;background:#fff}

/* ========== Sections ========== */
.section{padding:20px 0}
.section__head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;
  margin-bottom:22px;
}
.section__title{
  font-family:'Birzia',sans-serif;
  font-size:clamp(22px,2.6vw,32px);
  margin:0;font-weight:700;letter-spacing:-.3px;
}
.section__sub{margin:6px 0 0;color:var(--ink-mute);font-size:14px}
.gradient-text{
  background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.section__more{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 14px;border-radius:999px;
  background:rgba(255,255,255,.06);border:1px solid var(--line);
  font-weight:600;font-size:13px;transition:background .2s;
}
.section__more:hover{background:rgba(255,255,255,.12)}
.eyebrow{
  display:inline-block;font-size:12px;letter-spacing:1px;font-weight:700;
  color:var(--ink-dim);text-transform:uppercase;margin-bottom:4px;
}

/* ========== Carousel ========== */
.carousel{position:relative}
.carousel__track{
  display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);
  gap:18px;overflow-x:auto;
  padding:6px 2px 18px;scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.carousel__track::-webkit-scrollbar{display:none}

@media (min-width:768px){
  .carousel__track{grid-auto-columns:minmax(280px,calc(33.333% - 12px))}
}
@media (min-width:1200px){
  .carousel__track{grid-auto-columns:minmax(280px,calc(25% - 14px))}
}

.carousel__nav{
  position:absolute;top:40%;transform:translateY(-50%);
  width:44px;height:44px;border-radius:50%;
  background:#222;
  border:1px solid var(--line-2);
  display:grid;place-items:center;
  z-index:2;transition:background .2s, transform .2s;
}
.carousel__nav:hover{background:rgba(255,255,255,.2);transform:translateY(-50%) scale(1.05)}
.carousel__nav svg{width:20px;height:20px}
.carousel__nav--prev{inset-inline-end:8px}
.carousel__nav--next{inset-inline-start:8px}
@media (max-width:768px){.carousel__nav{display:none}}

/* Card */
.card{
  scroll-snap-align:start;
  border-radius:var(--radius-lg);overflow:hidden;
  position:relative;isolation:isolate;
  transition:transform .3s;
  background:#141414;
  border:1px solid rgba(255,255,255,.07);
}
.card:hover{transform:translateY(-4px)}
.card__media{
  position:relative;aspect-ratio:1/1;background-size:cover;background-position:center;
}
.card__media::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, transparent 55%, rgba(5,0,15,.85) 100%);
}
.card__chip{
  position:absolute;top:12px;inset-inline-start:12px;
  padding:5px 10px;border-radius:999px;font-size:11px;font-weight:700;
  background:rgba(0,0,0,.7);border:1px solid var(--line-2);
  z-index:2;
}
.chip--live{
  background:rgba(122,75,255,.28);
  border-color:rgba(255,255,255,.22);
  color:rgba(255,255,255,.95);
}
.chip--new{background:var(--grad-brand);border-color:transparent}
.card__fav{
  position:absolute;top:10px;inset-inline-end:10px;z-index:2;
  width:36px;height:36px;border-radius:50%;
  background:rgba(0,0,0,.65);border:1px solid var(--line-2);
  display:grid;place-items:center;
  transition:background .2s,transform .2s;
}
.card__fav:hover{background:var(--pink);transform:scale(1.08)}
.card__fav svg{width:18px;height:18px}
.card__date{
  position:absolute;bottom:14px;inset-inline-start:14px;z-index:2;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-width:56px;padding:6px 10px;border-radius:14px;
  background:rgba(0,0,0,.75);
  border:1px solid var(--line-2);line-height:1;
}
.card__date strong{
  font-family:'Birzia',sans-serif;font-size:20px;font-weight:700;
}
.card__date span{font-size:11px;color:var(--ink-dim);margin-top:3px}

a.card{text-decoration:none;color:inherit;display:flex;flex-direction:column}
.card{display:flex;flex-direction:column}
.card__body{
  padding:14px 16px 16px;
  border-top:1px solid var(--line);
  flex:1;
}
.card__title{
  font-family:'Birzia',sans-serif;
  font-size:17px;font-weight:700;margin:0 0 4px;letter-spacing:-.2px;
}
.card .card__body.glass{border:0}
.card__place{margin:0 0 8px;color:var(--ink-mute);font-size:13px}
.card__foot{display:flex;align-items:center;justify-content:space-between;gap:10px}
.card__price{
  font-weight:800;font-size:15px;
  background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
}

/* ========== Weekend ========== */
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{
  padding:8px 14px;border-radius:999px;
  background:rgba(255,255,255,.05);border:1px solid var(--line);
  font-size:13px;font-weight:600;color:var(--ink-dim);
  transition:color .2s, background .2s;
}
.chip:hover{color:#fff;background:rgba(255,255,255,.1)}
.chip.is-active{
  color:#fff;background:var(--grad-brand);border-color:transparent;
}

.weekend__grid{
  display:grid;gap:16px;
  grid-template-columns:repeat(2,1fr);
}
@media (max-width:640px){
  .weekend__grid{gap:12px}
}
.wcard{
  border-radius:var(--radius-lg);overflow:hidden;
  display:flex;flex-direction:column;
  transition:transform .3s;
  scroll-snap-align:start;
}
a.wcard{
  text-decoration:none;color:inherit;
  -webkit-tap-highlight-color:transparent;
}
.wcard:hover{transform:translateY(-4px)}
.wcard__media{
  aspect-ratio:16/10;background-size:cover;background-position:center;
  position:relative;
}
.wcard__countdown{
  position:absolute;top:10px;right:10px;z-index:2;
  padding:6px 12px;border-radius:999px;
  font-size:11px;font-weight:800;letter-spacing:.02em;
  background:rgba(5,0,15,.88);border:1px solid var(--line);
  color:#fff;backdrop-filter:blur(8px);
  box-shadow:0 4px 14px rgba(0,0,0,.25);
}
.wcard__media::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, transparent 40%, rgba(5,0,15,.6) 100%);
}
.wcard__body{padding:14px 16px}
.wcard__day{
  display:inline-block;padding:3px 10px;border-radius:999px;
  background:rgba(255,255,255,.08);border:1px solid var(--line);
  font-size:11px;font-weight:700;letter-spacing:.3px;margin-bottom:8px;
}
.wcard h3{font-family:'Birzia',sans-serif;margin:0 0 4px;font-size:17px}
.wcard p{margin:0 0 10px;color:var(--ink-mute);font-size:13px}
.wcard__price{
  font-weight:800;
  background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
}

/* ========== Search ========== */
/* ========== Search Hero ========== */
.search-hero{padding:88px 0 72px;position:relative;overflow:hidden;text-align:center}
.search-hero::before{
  content:"";position:absolute;inset:0 0 auto 0;height:140px;
  background:linear-gradient(180deg,#0d0d0d 0%,rgba(13,13,13,.6) 55%,transparent 100%);
  pointer-events:none;z-index:0;
}
.search-hero>*{position:relative;z-index:1}
.search-hero__glow{
  position:absolute;top:-120px;left:50%;transform:translateX(-50%);
  width:900px;height:560px;
  background:radial-gradient(ellipse,rgba(122,75,255,.14) 0%,rgba(255,60,172,.05) 40%,transparent 68%);
  pointer-events:none;z-index:0;
}
.search-hero__header{margin-bottom:40px;position:relative}
.search-hero__title{font-size:clamp(36px,5.5vw,64px);font-weight:900;margin:8px 0 14px;line-height:1.1}
.search-hero__sub{font-size:16px;color:var(--ink-dim);margin:0}
.search-hero__form{max-width:760px;margin:0 auto 28px;position:relative}
.search-hero__bar{
  display:flex;align-items:center;
  background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.13);
  border-radius:999px;padding:6px 6px 6px 8px;
  transition:border-color .25s,box-shadow .25s;
}
.search-hero__bar:focus-within{
  border-color:rgba(122,75,255,.6);
  box-shadow:0 0 0 4px rgba(122,75,255,.1),0 10px 44px rgba(0,0,0,.4);
}
.search-hero__bar-icon{width:20px;height:20px;color:var(--ink-mute);flex:0 0 auto;margin-inline:10px 6px}
.search-hero__input{
  flex:1;background:none;border:0;outline:none;
  color:#fff;font-size:16px;font-weight:500;font-family:inherit;
  padding:13px 4px;min-width:0;
}
.search-hero__input::placeholder{color:var(--ink-mute)}
.search-hero__divider{width:1px;height:26px;background:rgba(255,255,255,.12);flex:0 0 auto;margin:0 6px}
.search-hero__select-wrap{display:flex;align-items:center;gap:6px;padding:0 10px;flex:0 0 auto}
.search-hero__select-wrap svg{color:var(--ink-mute);flex:0 0 auto}
.search-hero__select{
  background:none;border:0;outline:none;
  color:var(--ink-dim);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;padding:10px 0;
}
.search-hero__select option{background:#1a1028;color:#fff}
.search-hero__btn{
  padding:13px 30px;border-radius:999px;
  background:var(--grad-brand);color:#fff;
  font-weight:800;font-size:15px;font-family:inherit;border:0;cursor:pointer;
  flex:0 0 auto;transition:filter .2s,transform .2s;white-space:nowrap;
}
.search-hero__btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.search-hero__tags{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px}
.search-hero__tags-label{font-size:13px;color:var(--ink-mute);font-weight:600;flex:0 0 auto}
.search-hero__tag{
  padding:8px 16px;border-radius:999px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  font-size:13px;font-weight:600;color:var(--ink-dim);cursor:pointer;font-family:inherit;
  transition:background .2s,color .2s,border-color .2s;
}
.search-hero__tag:hover{background:rgba(122,75,255,.18);border-color:rgba(122,75,255,.4);color:#fff}

/* Trending cloud — tags scattered across the full width, slight random
   rotation & variable size for an organic layout. */
.trend-cloud{
  margin-top:18px;
  display:flex;flex-wrap:wrap;justify-content:center;align-items:center;
  gap:10px 12px;
  padding:4px 6px;
}
.trend-cloud__tag{
  display:inline-flex;align-items:center;
  padding:9px 16px;border-radius:999px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  font-size:13px;font-weight:700;color:var(--ink-dim);
  white-space:nowrap;text-decoration:none;
  transform:rotate(var(--tilt,0deg));
  transition:background .2s,color .2s,border-color .2s,transform .2s;
}
.trend-cloud__tag--sm{font-size:12px;padding:7px 13px}
.trend-cloud__tag--md{font-size:13.5px;padding:9px 16px}
.trend-cloud__tag--lg{font-size:15px;padding:11px 20px}
.trend-cloud__tag:hover{
  background:linear-gradient(135deg,rgba(122,75,255,.22),rgba(255,60,172,.18));
  border-color:rgba(122,75,255,.45);
  color:#fff;transform:rotate(0deg) translateY(-2px);
}
@media(max-width:640px){
  .trend-cloud{margin-top:14px;gap:8px 10px}
  .trend-cloud__tag{padding:7px 12px;font-size:12.5px}
  .trend-cloud__tag--lg{font-size:13.5px;padding:9px 15px}
  /* Mobile: cap to 9 tags only — the full cloud is too dense on small screens. */
  .trend-cloud__tag:nth-child(n+10){display:none}
}
@media(max-width:640px){
  .search-hero{padding:44px 0 52px}
  .search-hero__bar{flex-wrap:wrap;border-radius:22px;padding:14px 16px;gap:10px;align-items:stretch}
  .search-hero__bar-icon{align-self:center;margin-inline:0 6px}
  .search-hero__input{flex:1 0 0;padding:6px 0;font-size:15px}
  .search-hero__divider{display:none}
  .search-hero__select-wrap{flex:1 0 100%;border-top:1px solid rgba(255,255,255,.07);padding:10px 0 0}
  .search-hero__btn{flex:1 0 100%;padding:14px;border-radius:12px}
  .search-hero__header{margin-bottom:28px}
}

/* ========== Independence Day ========== */
.indie__grid{
  display:grid;gap:18px;
  grid-template-columns:1fr;
}
@media (min-width:960px){
  .indie__grid{grid-template-columns:1.4fr 1fr}
}
.indie__feature{
  position:relative;border-radius:var(--radius-xl);overflow:hidden;
  min-height:440px;background-size:cover;background-position:center;
  display:flex;align-items:flex-end;isolation:isolate;
}
.indie__feature--noimg{
  background:linear-gradient(135deg,#2a1f4a 0%,#120a1c 55%,#1a0f28 100%);
}
.indie__scrim{
  position:absolute;inset:0;
  background:
    linear-gradient(180deg, transparent 40%, rgba(5,0,15,.85) 100%),
    linear-gradient(270deg, transparent 50%, rgba(5,0,15,.35) 100%);
}
.indie__content{
  position:relative;margin:22px;padding:24px;
  border-radius:var(--radius-lg);max-width:500px;
}
.indie__content h3{
  font-family:'Birzia',sans-serif;
  margin:10px 0 6px;font-size:clamp(22px,2.4vw,30px);font-weight:700;
}
.indie__content p{margin:0 0 14px;color:var(--ink-dim)}
.indie__meta{
  display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px;
  color:var(--ink-dim);font-size:13px;font-weight:600;
}

.indie__list{display:grid;gap:12px;align-content:start}
.ilist{
  display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;
  padding:12px;border-radius:var(--radius);
  transition:transform .25s, background .25s;
}
.ilist:hover{transform:translateY(-2px);background:#222}
.ilist__img{
  width:64px;height:64px;border-radius:14px;
  background-size:cover;background-position:center;
}
.ilist__img--ph{
  background:linear-gradient(145deg,#3a3048 0%,#1e1828 100%);
}
.ilist h4{font-family:'Birzia',sans-serif;margin:0 0 3px;font-size:15px}
.ilist p{margin:0 0 2px;color:var(--ink-mute);font-size:12px}
.ilist span{font-size:11px;color:var(--ink-dim);font-weight:600}
.ilist__go{
  display:grid;place-items:center;
  width:36px;height:36px;border-radius:50%;
  background:rgba(255,255,255,.08);border:1px solid var(--line-2);
  font-size:18px;font-weight:700;
  transition:background .2s, transform .2s;
}
.ilist__go:hover{background:var(--grad-brand);border-color:transparent;transform:translateX(-3px)}

/* ========== Footer ========== */
.footer{margin-top:60px;position:relative}
.footer::before{
  content:'';display:block;height:1px;
  background:linear-gradient(90deg,transparent 5%,var(--pink) 30%,var(--purple) 50%,var(--blue) 70%,transparent 95%);
  opacity:.55;
}

/* WhatsApp CTA */
.footer__cta{
  position:relative;padding:64px 0 56px;overflow:hidden;
  background:linear-gradient(180deg,rgba(122,75,255,.06) 0%,rgba(255,60,172,.03) 100%);
}
.footer__cta::after{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(122,75,255,.12) 0%,transparent 100%);
  pointer-events:none;
}
.footer__cta-glow{
  position:absolute;top:-120px;left:50%;transform:translateX(-50%);
  width:700px;height:400px;
  background:radial-gradient(ellipse,rgba(122,75,255,.16) 0%,transparent 65%);
  pointer-events:none;
}
.footer__cta-inner{
  max-width:660px;margin:0 auto;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:20px;
  position:relative;z-index:1;
}
.footer__cta-title{
  font-size:clamp(28px,4vw,48px);font-weight:900;margin:0;line-height:1.15;
}
.footer__cta-desc{
  font-size:15px;color:var(--ink-dim);line-height:1.65;margin:0;max-width:54ch;
}
.btn--wa{
  display:inline-flex;align-items:center;gap:10px;
  padding:16px 34px;border-radius:999px;font-weight:800;font-size:16px;
  background:linear-gradient(135deg,#25d366 0%,#128c7e 100%);color:#fff;
  transition:transform .25s,filter .25s,box-shadow .25s;
  box-shadow:0 8px 32px rgba(37,211,102,.28);
}
.btn--wa:hover{transform:translateY(-3px);filter:brightness(1.08);box-shadow:0 16px 44px rgba(37,211,102,.38)}
.footer__cta-disclaimer{font-size:12px;color:var(--ink-mute);margin:0;max-width:50ch;line-height:1.6}

/* Links body */
.footer__body{padding:48px 0 0}
.footer__cols{
  display:grid;grid-template-columns:repeat(4,1fr);gap:32px;
  padding-bottom:40px;border-bottom:1px solid var(--line);
  text-align:center;
}
.footer__col h4{
  font-family:'Birzia',sans-serif;font-size:13px;font-weight:800;
  letter-spacing:1.5px;text-transform:uppercase;margin:0 0 18px;
  color:#fff;
}
.footer__col a{
  display:block;padding:6px 0;color:var(--ink-dim);font-size:14px;
  transition:color .2s;
}
.footer__col a:hover{color:#fff}

/* Disclaimer + bottom bar */
.footer__bottom{margin-top:24px;padding-bottom:36px}
.footer__disclaimer{
  font-size:12px;color:var(--ink-mute);line-height:1.75;margin:0 0 20px;
  padding:14px 20px;text-align:center;
  background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.06);border-radius:12px;
}
.footer__bottom-bar{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  flex-wrap:wrap;color:var(--ink-mute);font-size:13px;
}
.footer__legal{display:flex;gap:2px;flex-wrap:wrap}
.footer__legal a{
  padding:5px 10px;border-radius:8px;font-size:12px;color:var(--ink-mute);
  transition:color .2s,background .2s;
}
.footer__legal a:hover{color:#fff;background:rgba(255,255,255,.07)}

/* ========== Responsive ========== */
@media (max-width:860px){
  .footer__cols{grid-template-columns:1fr 1fr;gap:24px 28px}
  .footer__cta{padding:48px 0 40px}
  .btn--wa{padding:14px 26px;font-size:15px}
}
@media (max-width:600px){
  .footer__cta-inner{padding:0 20px}
  .footer__cta-desc{font-size:14px;line-height:1.6}
}
@media (max-width:960px){
  .nav{display:none}
  .icon-btn--menu{display:grid}
  .cta-btn span{display:none}
  .cta-btn{
    width:38px;height:38px;padding:0;border-radius:10px;
    gap:0;
  }
  .cta-btn .cta-btn__icon{width:18px;height:18px}
}
@media (max-width:640px){
  .header{top:0}
  .header__inner{padding:8px 14px;gap:8px}
  .stories{padding:16px 0 0}
  .stories__track{padding:2px 2px 4px}
  .logo__text{font-size:17px}
  .hero{padding:12px 0 10px}
  .hero__stage{aspect-ratio:auto;min-height:420px}
  .hero__content{margin:16px;padding:20px}
  .hero__stats{gap:14px}
  .hero__stats strong{font-size:17px}
  .search__card{padding:22px}
  .search__tags{font-size:12px}
  .footer{margin-top:40px}
  .footer__cols{grid-template-columns:1fr 1fr;gap:20px 28px}
  .footer__cta{padding:40px 0 36px}
  .footer__body{padding:36px 0 0}
  .footer__bottom-bar{justify-content:center;text-align:center}
  .footer__legal{justify-content:center}
  .indie__feature{min-height:360px}
  .indie__content{margin:14px;padding:18px}
  .section{padding:20px 0}
  .section__head{margin-bottom:16px}
  /* דף הבית: סופ״ש צמוד יותר ל־hero, כותרת + כפתורי יום במרכז */
  .section.weekend{padding:10px 0 20px}
  .section.weekend .section__head{
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    gap:14px;
    margin-bottom:14px;
  }
  .section.weekend .section__head > div:first-child{width:100%;max-width:100%}
  .section.weekend .section__title{margin-inline:auto}
  .section.weekend .section__sub{margin-left:auto;margin-right:auto}
  .section.weekend .chips{justify-content:center;width:100%}
  /* מומלצים: כותרת, משנה, קישור — במרכז; צמוד יותר לסקשן שמעל */
  .home-recommended{padding:0 0 20px;margin-top:-8px}
  .home-recommended .section__head{
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    gap:12px;
    margin-bottom:14px;
  }
  .home-recommended .section__head > div:first-child{width:100%}
  .home-recommended .section__title{margin-inline:auto}
  .home-recommended .section__sub{margin-left:auto;margin-right:auto;max-width:36ch}
  .home-recommended .section__more{margin-inline:auto}
}
@media (max-width:420px){
  .story{width:76px}
  .story__ring{width:72px;height:72px}
}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important}
}
/* ========== Event Page ========== */
.event-page{
  background:#0d0d0d;
  padding-top:0;
}

/* ========== Mini sticky header ========== */
.mini-header{
  position:fixed;top:0;left:0;right:0;z-index:100;
  background:rgba(10,10,10,.95);
  border-bottom:1px solid rgba(255,255,255,.08);
  transform:translateY(-100%);
  transition:transform .3s cubic-bezier(.4,0,.2,1);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.mini-header.is-visible{transform:translateY(0)}
.mini-header__inner{
  display:flex;align-items:center;gap:16px;
  padding:12px 24px;
  max-width:1400px;margin-inline:auto;
}
.mini-back{
  display:grid;place-items:center;width:36px;height:36px;
  border-radius:50%;background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.1);
  flex-shrink:0;transition:background .2s;
}
.mini-back:hover{background:rgba(255,255,255,.14)}
.mini-back svg{width:18px;height:18px}
.mini-header__title{flex:1;font-weight:700;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini-header__cta{flex-shrink:0;padding:9px 18px;font-size:13px}

/* ========== Hero (elegant / compact) ========== */
.ev-hero{
  position:relative;
  min-height:380px;
  width:min(100% - 48px, 1352px);
  margin:24px auto 0;
  padding:0;
  border-radius:22px;
  overflow:hidden;
  isolation:isolate;
  display:flex;flex-direction:column;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 30px 80px -40px rgba(0,0,0,.8);
}
@media (max-width:960px){
  .ev-hero{width:min(100% - 32px, 1352px)}
}
.ev-hero__bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  transform:scale(1.03);
  transition:transform 10s ease-out;
  filter:blur(4px) saturate(1.1);
}
.ev-hero:hover .ev-hero__bg{transform:scale(1)}
.ev-hero__scrim{
  position:absolute;inset:0;
  background:
    linear-gradient(0deg, rgba(10,10,12,.92) 0%, rgba(10,10,12,.55) 40%, rgba(10,10,12,.15) 75%, rgba(10,10,12,.35) 100%),
    linear-gradient(270deg, rgba(10,10,12,.45) 0%, transparent 55%);
}

.ev-hero__top{
  position:relative;z-index:2;
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 22px 0;
}
.ev-back{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 16px;border-radius:999px;
  background:rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.15);
  font-size:14px;font-weight:600;
  color:rgba(255,255,255,.9);
  transition:background .2s, border-color .2s;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.ev-back:hover{background:rgba(0,0,0,.65);border-color:rgba(255,255,255,.3)}
.ev-back svg{width:18px;height:18px}

.ev-hero__badges{display:flex;gap:8px}
.ev-badge{
  padding:6px 14px;border-radius:999px;
  font-size:12px;font-weight:800;letter-spacing:.5px;
}
.ev-badge--live{
  background:rgba(255,255,255,.12);
  color:rgba(255,255,255,.95);
  border:1px solid rgba(255,255,255,.22);
}
.ev-badge--done{background:rgba(255,255,255,.15);color:rgba(255,255,255,.6)}

.ev-hero__img-wrap{display:none}
.ev-hero__img-panel{display:none}
@media (min-width:960px){
  .ev-hero__img-wrap{
    display:block;
    position:absolute;
    inset-inline-end:32px;
    top:50%;transform:translateY(-50%);
    height:80%;
    aspect-ratio:1/1;
    z-index:3;
  }
  .ev-hero__img-badge{
    position:absolute;
    bottom:calc(100% + 12px);
    left:50%;transform:translateX(-50%);
    white-space:nowrap;z-index:4;
    box-shadow:0 6px 16px -6px rgba(0,0,0,.55);
  }
  .ev-hero__img-panel{
    display:block;
    position:absolute;inset:0;
    width:100%;height:100%;
    background-size:cover;background-position:center;
    border-radius:18px;cursor:zoom-in;
    box-shadow:0 10px 30px -8px rgba(0,0,0,.45);
    border:1px solid rgba(255,255,255,.16);
    transition:transform .2s,box-shadow .2s;
  }
  .ev-hero__img-panel:hover{transform:scale(1.02);box-shadow:0 14px 40px -10px rgba(0,0,0,.55)}
  .ev-hero__content{padding-inline-end:calc(clamp(260px, 38%, 420px))}
  /* Countdown is now attached to the image; hide duplicate in top-row on desktop */
  .ev-hero__top .ev-hero__badges{display:none}
}

.ev-lightbox{
  display:none;position:fixed;inset:0;z-index:9999;
  background:rgba(0,0,0,.92);cursor:zoom-out;
  align-items:center;justify-content:center;
}
.ev-lightbox.is-open{display:flex}
.ev-lightbox img{max-width:90vw;max-height:90vh;border-radius:12px;box-shadow:0 20px 80px rgba(0,0,0,.8)}
.ev-lightbox__close{
  position:absolute;top:20px;inset-inline-end:24px;
  background:rgba(255,255,255,.15);border:none;color:#fff;
  font-size:28px;line-height:1;width:44px;height:44px;
  border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;
}

.ev-hero__content{
  position:relative;z-index:2;
  margin-top:auto;
  padding:22px 28px 28px;
  max-width:780px;
}
.ev-hero__tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.etag{
  padding:5px 12px;border-radius:6px;
  font-size:12px;font-weight:700;letter-spacing:.4px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.18);
  color:rgba(255,255,255,.9);
}
.ev-hero__title{
  font-family:'Birzia',sans-serif;
  font-size:clamp(30px,3.6vw,54px);
  line-height:1.05;margin:0 0 6px;
  font-weight:900;letter-spacing:-0.5px;
}
.ev-hero__tagline{
  margin:0 0 10px;
  max-width:52ch;
  font-size:clamp(14px,1.4vw,17px);
  line-height:1.45;
  color:rgba(255,255,255,0.9);
  text-shadow:0 1px 2px rgba(0,0,0,0.35);
}
.ev-hero__sub{
  display:block;
  background:var(--grad-brand);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  font-size:clamp(20px,3vw,46px);
  font-weight:800;
}
.ev-hero__desc{
  margin:10px 0 18px;color:rgba(255,255,255,.78);
  font-size:clamp(13px,1.2vw,15px);max-width:56ch;line-height:1.55;
}

.ev-hero__meta{
  display:flex;flex-wrap:wrap;gap:0;margin-bottom:18px;
  background:rgba(0,0,0,.38);backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;overflow:hidden;
  width:fit-content;
}
.ev-meta-item{
  display:flex;align-items:center;gap:10px;
  padding:10px 16px;
}
.ev-meta-item svg{
  width:16px;height:16px;flex-shrink:0;
  stroke:rgba(255,255,255,.55);
}
.ev-meta-item div{display:flex;flex-direction:column}
.ev-meta-item strong{font-size:13px;font-weight:700;line-height:1.2}
.ev-meta-item span{font-size:11px;color:rgba(255,255,255,.55);margin-top:2px}
.ev-meta-sep{width:1px;background:rgba(255,255,255,.1);margin:10px 0}

.ev-hero__actions{display:flex;flex-wrap:wrap;gap:10px}
.ev-cta-main{
  font-size:14px;padding:11px 22px;
  background:var(--grad-brand);color:#fff;
}
.ev-btn-save,.ev-btn-share{
  padding:14px 20px;border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.15);
  display:inline-flex;align-items:center;gap:8px;
  font-weight:600;font-size:15px;
  transition:background .2s;
}
.ev-btn-save:hover,.ev-btn-share:hover{background:rgba(255,255,255,.15)}
.ev-btn-save svg,.ev-btn-share svg{width:18px;height:18px}

.ev-hero__scroll-hint{display:none}
.ev-hero__scroll-hint svg{width:24px;height:24px}
@keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(6px)}}

/* ========== Main layout ========== */
.ev-main{
  position:relative;z-index:1;
}
.ev-layout{
  max-width:1400px;margin-inline:auto;
  display:grid;grid-template-columns:1fr 360px;
  gap:40px;
  padding:40px 32px;
  align-items:start;
}
.ev-content{display:flex;flex-direction:column;gap:48px}

/* Stats bar */
.ev-statsbar{
  display:flex;gap:0;
  background:#161616;
  border:1px solid rgba(255,255,255,.07);
  border-radius:14px;overflow:hidden;
}
.ev-stat{
  flex:1;padding:18px 20px;text-align:center;
  border-inline-end:1px solid rgba(255,255,255,.07);
}
.ev-stat:last-child{border-inline-end:0}
.ev-stat__label{display:block;font-size:11px;color:rgba(255,255,255,.45);margin-bottom:5px;text-transform:uppercase;letter-spacing:.6px}
.ev-stat__val{font-weight:700;font-size:15px}
.ev-genre-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}
.ev-genre-tag{
  display:inline-block;padding:3px 10px;border-radius:999px;
  font-size:12px;font-weight:600;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);
  color:#fff;text-decoration:none;
  transition:background .15s,border-color .15s;
}
.ev-genre-tag:hover{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.4)}

/* Sections */
.ev-section__title{
  font-family:'Birzia',sans-serif;
  font-size:clamp(20px,2vw,26px);font-weight:800;
  margin:0 0 20px;letter-spacing:-.3px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.ev-occurrences{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:16px;
}
.ev-occ-card{
  border-radius:16px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  display:flex;
  flex-direction:column;
  min-height:0;
}
.ev-occ-card__media{
  aspect-ratio:16/10;
  background-size:cover;
  background-position:center;
  background-color:#1a1a1a;
}
.ev-occ-card__body{padding:16px 18px}
.ev-occ-card__title{
  font-family:'Birzia',sans-serif;
  font-size:1.05rem;font-weight:800;margin:0 0 8px;
  color:#fff;
}
.ev-occ-card__date{
  margin:0;font-size:0.95rem;color:rgba(255,255,255,.72);
}
.ev-about p{
  color:rgba(255,255,255,.75);line-height:1.8;
  margin:0 0 14px;font-size:15px;
}
.ev-about p:last-child{margin:0}
.ev-about div{color:rgba(255,255,255,.75);line-height:1.8;font-size:15px;margin:0 0 14px}
.ev-about div:last-child{margin-bottom:0}
.ev-about ul,.ev-about ol{color:rgba(255,255,255,.75);line-height:1.8;font-size:15px;margin:0 0 14px;padding-inline-start:1.35em}
.ev-about li{margin:0.35em 0}
.ev-about strong,.ev-about b{font-weight:700;color:rgba(255,255,255,.9)}
.ev-about em,.ev-about i{font-style:italic}
.ev-about h1,.ev-about h2,.ev-about h3{
  font-family:'Birzia',sans-serif;font-weight:800;color:rgba(255,255,255,.95);
  line-height:1.25;margin:1.1em 0 0.5em;
}
.ev-about h1:first-child,.ev-about h2:first-child,.ev-about h3:first-child{margin-top:0}
.ev-about h1{font-size:1.65rem}
.ev-about h2{font-size:1.35rem}
.ev-about h3{font-size:1.12rem}
.ev-about hr{
  border:0;border-top:1px solid rgba(255,255,255,.18);
  margin:1.25em 0;
}
.ev-about a{color:rgba(167,139,250,.95);text-decoration:underline;text-underline-offset:3px}
.ev-about a:hover{color:#fff}
.ev-about img{max-width:100%;height:auto;border-radius:12px;margin:12px 0;display:block}
.ev-about img[width="16"],.ev-about img[width="18"],.ev-about img[width="20"],.ev-about img[width="24"],.ev-about img[width="32"]{width:1em;height:1em;display:inline;vertical-align:-0.15em;border-radius:0;margin:0;box-shadow:none}
.yt-embed{
  position:relative;width:100%;padding-bottom:56.25%;
  margin:20px 0;border-radius:16px;overflow:hidden;
}
.yt-embed iframe{
  position:absolute;inset:0;width:100%;height:100%;
  border:0;border-radius:16px;
}

/* Lineup */
.lineup-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:14px;
}
.artist-card{
  position:relative;border-radius:16px;overflow:hidden;
  background:#141414;border:1px solid rgba(255,255,255,.07);
  transition:transform .25s, border-color .25s;
}
.artist-card:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.16)}
.lineup-grid .artist-card__img{
  aspect-ratio:1/1;background-size:cover;background-position:center;
  position:relative;
}
.lineup-grid .artist-card__img::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.8) 100%);
}
.lineup-grid .artist-card--headline .artist-card__img::after{
  background:linear-gradient(180deg,transparent 40%,rgba(122,75,255,.6) 100%);
}
.artist-card__crown{
  position:absolute;top:10px;inset-inline-start:10px;z-index:2;
  padding:4px 10px;border-radius:999px;
  font-size:10px;font-weight:900;letter-spacing:1px;
  background:var(--grad-brand);color:#fff;
}
.artist-card__body{padding:14px 16px}
.artist-card__time{
  font-size:11px;color:rgba(255,255,255,.45);font-weight:600;letter-spacing:.3px;
}
.artist-card h3{
  font-family:'Birzia',sans-serif;
  font-size:16px;font-weight:800;margin:4px 0 2px;
}
.artist-card p{margin:0;font-size:12px;color:rgba(255,255,255,.5)}

/* Info grid */
.info-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;
}
.info-item{
  display:flex;gap:14px;align-items:flex-start;
  background:#141414;border:1px solid rgba(255,255,255,.07);
  border-radius:14px;padding:18px;
  transition:border-color .2s;
}
.info-item:hover{border-color:rgba(255,255,255,.15)}
.info-item__icon{
  width:40px;height:40px;border-radius:12px;flex-shrink:0;
  background:rgba(122,75,255,.15);border:1px solid rgba(122,75,255,.25);
  display:grid;place-items:center;
}
.info-item__icon svg{width:20px;height:20px;stroke:var(--purple)}
.info-item h4{font-size:14px;font-weight:700;margin:0 0 4px}
.info-item p{font-size:13px;color:rgba(255,255,255,.55);margin:0;line-height:1.5}

/* Venue */
.venue-card{
  border-radius:20px;overflow:hidden;
  background:#141414;border:1px solid rgba(255,255,255,.07);
}
.venue-card__img{
  aspect-ratio:21/9;background-size:cover;background-position:center;
}
.venue-card__body{
  padding:22px 24px;
  display:flex;justify-content:space-between;align-items:flex-end;gap:16px;
  flex-wrap:wrap;
}
.venue-card__info h3{font-size:20px;font-weight:800;margin:0 0 4px}
.venue-card__info > p{font-size:13px;color:rgba(255,255,255,.5);margin:0 0 10px}
.venue-card__desc{font-size:14px;color:rgba(255,255,255,.65);line-height:1.6;max-width:55ch;margin:0}
.ev-btn-map{
  padding:11px 18px;border-radius:999px;
  background:#1f1f1f;border:1px solid rgba(255,255,255,.12);
  display:inline-flex;align-items:center;gap:8px;
  font-size:13px;font-weight:600;white-space:nowrap;
  transition:background .2s;
}
.ev-btn-map:hover{background:#2a2a2a}
.ev-btn-map svg{width:16px;height:16px}

/* ========== Ticket widget ========== */
.ev-sidebar{
  position:sticky;top:20px;
}
.ticket-widget{
  background:#141414;
  border:1px solid rgba(255,255,255,.1);
  border-radius:20px;
  overflow:hidden;
}
.ticket-widget__header{
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 22px 16px;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.ticket-widget__header h3{font-size:18px;font-weight:800;margin:0}
.tw-badge{
  padding:4px 12px;border-radius:999px;
  font-size:11px;font-weight:700;background:#14532d;color:#4ade80;
  border:1px solid rgba(74,222,128,.2);
}

.tw-tiers{display:flex;flex-direction:column;gap:6px;padding:16px 16px 0}
.tw-tier{cursor:pointer}
.tw-tier input{position:absolute;opacity:0;pointer-events:none}
.tw-tier__body{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 16px;border-radius:12px;
  border:1.5px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.03);
  transition:border-color .2s, background .2s;
}
.tw-tier input:checked ~ .tw-tier__body{
  border-color:var(--purple);
  background:rgba(122,75,255,.12);
}
.tw-tier__body div{display:flex;flex-direction:column;gap:2px}
.tw-tier__body strong{font-size:14px;font-weight:700}
.tw-tier__body span{font-size:11px;color:rgba(255,255,255,.5)}
.tw-tier__price{font-size:18px;font-weight:800;background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}

.tw-qty{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 22px;margin-top:4px;
  border-top:1px solid rgba(255,255,255,.07);
  font-size:14px;font-weight:600;
}
.tw-qty__ctrl{display:flex;align-items:center;gap:16px}
.tw-qty__btn{
  width:32px;height:32px;border-radius:50%;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
  font-size:18px;line-height:1;display:grid;place-items:center;
  transition:background .15s;
}
.tw-qty__btn:hover{background:rgba(255,255,255,.16)}
#qtyVal{font-size:17px;font-weight:800;min-width:20px;text-align:center}

.tw-total{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 22px;
  border-top:1px solid rgba(255,255,255,.07);
}
.tw-total span{color:rgba(255,255,255,.55);font-size:14px}
.tw-total strong{font-size:22px;font-weight:900}

.tw-buy-btn{
  margin:0 16px 14px;width:calc(100% - 32px);
  display:flex;justify-content:center;align-items:center;gap:10px;
  padding:16px;font-size:15px;border-radius:12px;
}
.tw-buy-btn svg{width:18px;height:18px}

.tw-note{
  margin:0 16px 16px;
  font-size:11px;color:rgba(255,255,255,.35);line-height:1.5;text-align:center;
}

.tw-actions{
  display:grid;grid-template-columns:repeat(3,1fr);
  border-top:1px solid rgba(255,255,255,.07);
}
.tw-action-btn{
  display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:14px 8px;font-size:11px;font-weight:600;color:rgba(255,255,255,.6);
  border-inline-end:1px solid rgba(255,255,255,.07);
  transition:color .2s, background .2s;
}
.tw-action-btn:last-child{border:0}
.tw-action-btn:hover{color:#fff;background:rgba(255,255,255,.04)}
.tw-action-btn svg{width:18px;height:18px}

/* ========== Related events section ========== */
.ev-related{
  background:#111;
  border-top:1px solid rgba(255,255,255,.07);
  margin-top:20px;
  padding:48px 0 64px;
}
.ev-related__inner{
  max-width:1400px;margin-inline:auto;
  padding:0 32px;
}

/* ========== Mobile CTA bar ========== */
.ev-mobile-cta{
  display:none;
  position:fixed;bottom:0;left:0;right:0;z-index:90;
  padding:12px 20px;
  background:rgba(14,14,14,.97);
  border-top:1px solid rgba(255,255,255,.1);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  align-items:center;justify-content:space-between;gap:16px;
}
.ev-mobile-cta div{display:flex;flex-direction:column}
.ev-mobile-cta strong{font-size:14px;font-weight:800}
.ev-mobile-cta span{font-size:12px;color:rgba(255,255,255,.55)}
.ev-mobile-cta .btn{padding:12px 20px;font-size:14px;white-space:nowrap}

/* ========== Responsive ========== */
@media (max-width:1100px){
  .ev-layout{grid-template-columns:1fr 320px;padding:32px 24px}
}
@media (max-width:880px){
  .ev-layout{grid-template-columns:1fr;padding:28px 20px}
  .ev-sidebar{position:static;display:none}
  .ev-mobile-cta{display:flex;transform:translateY(100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}
  .ev-mobile-cta.is-visible{transform:translateY(0)}
  .ev-hero__meta{flex-wrap:wrap}
  .ev-meta-sep{display:none}
  .ev-meta-item{border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 14px}
  .ev-hero__meta{background:none;backdrop-filter:none;border:none;gap:8px}
  .info-grid{grid-template-columns:1fr}
  .ev-statsbar{flex-wrap:wrap}
  .ev-stat{border-inline-end:none;border-bottom:1px solid rgba(255,255,255,.07);min-width:50%}
  .ev-stat:last-child{border-bottom:0}
  .lineup-grid{grid-template-columns:repeat(2,1fr)}
  .ev-related__inner{padding:0 20px}
}
@media (max-width:600px){
  /* No shadow/card feel on mobile hero */
  .ev-hero{margin:14px 12px 0;border-radius:16px;min-height:auto;box-shadow:none}

  /* Square image: 80% width, 1:1, 20px from edges, no border */
  .ev-hero__img-wrap{
    display:block;
    position:relative;inset:auto;transform:none;
    width:calc(100% - 40px);aspect-ratio:1/1;
    margin:20px auto 0;height:auto;
  }
  .ev-hero__img-badge{display:none}
  .ev-hero__img-panel{
    display:block;
    position:absolute;inset:0;
    width:100%;height:100%;
    background-size:cover;background-position:center;
    border-radius:14px;border:none;
    box-shadow:0 6px 24px rgba(0,0,0,.45);
    cursor:default;z-index:3;
  }

  /* Back + badge overlay the image */
  .ev-hero__top{
    position:absolute;
    top:20px;left:20px;right:20px;
    z-index:4;
    padding:12px 12px 0;
  }

  /* Countdown badge: black semi-transparent, no border */
  .ev-hero__top .ev-badge--live{
    background:rgba(0,0,0,.55);
    border:none;
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
  }

  /* Content: centered below image, flex order */
  .ev-hero__content{
    padding:16px 18px 28px;
    text-align:center;
    display:flex;flex-direction:column;align-items:center;
    max-width:none;
  }
  .ev-hero__title{font-size:clamp(24px,7vw,36px);order:1;margin-bottom:12px}
  .ev-hero__actions{width:100%;order:2}
  .ev-hero__desc{max-width:none;order:3;margin-top:12px}
  .ev-hero__meta{justify-content:center;order:4}

  /* CTA 100% width, slightly bigger text */
  .ev-cta-main{width:100%;justify-content:center;font-size:16px;padding:13px}

  /* Back button icon only */
  .ev-back span:not(.artist-hero__back-label){display:none}
  .ev-back{padding:10px}

  /* "על האירוע" centered on mobile */
  .ev-about{text-align:center}

  .ev-layout{padding:20px 16px}
  .lineup-grid{grid-template-columns:1fr 1fr}
  .venue-card__body{flex-direction:column;align-items:flex-start}
  .ev-related__inner{padding:0 16px}

  /* Mobile bottom strip: title only */
  .ev-mobile-cta span{display:none}
}

/* ========== Artist page ========== */
.artist-main{padding-bottom:40px}
.artist-hero{
  position:relative;isolation:isolate;overflow:hidden;
  margin:24px auto 0;max-width:1400px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 30px 80px -40px rgba(0,0,0,.8);
  min-height:0;
}
.artist-hero__bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  transform:scale(1.1);filter:blur(20px) saturate(1.1) brightness(.55);
}
.artist-hero__scrim{
  position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(10,10,12,.55) 0%, rgba(10,10,12,.8) 100%);
}
.artist-hero__inner{
  position:relative;z-index:2;
  display:flex;flex-direction:column;gap:16px;
  padding-top:52px;padding-bottom:28px;
}
.artist-hero__back{
  position:absolute;
  top:12px;right:12px;
  z-index:4;
}
.artist-hero__head{
  display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;
  width:100%;gap:12px;
}
.artist-hero__avatar-col{flex-shrink:0}
.artist-avatar{
  position:relative;flex-shrink:0;
  width:180px;height:180px;border-radius:50%;
  padding:4px;
  background:conic-gradient(from 210deg, #a78bfa, #ec4899, #f59e0b, #a78bfa);
  box-shadow:0 20px 50px -20px rgba(167,139,250,.6);
}
.artist-avatar--live{
  background:conic-gradient(from 210deg, #6366f1, #a78bfa, #22d3ee, #6366f1);
  animation:artistPulse 2.4s ease-in-out infinite;
}
@keyframes artistPulse{
  0%,100%{box-shadow:0 20px 50px -20px rgba(99,102,241,.45)}
  50%{box-shadow:0 20px 58px -18px rgba(34,211,238,.4)}
}
.artist-avatar__img{
  display:block;width:100%;height:100%;border-radius:50%;
  background-size:cover;background-position:center;
  border:3px solid rgba(10,10,12,.95);
}
.artist-avatar__img--ph{background:linear-gradient(135deg,#2a2340,#12101e)}
.artist-avatar__live{
  position:absolute;bottom:6px;left:50%;transform:translateX(-50%);
  background:rgba(15,15,18,.92);color:rgba(255,255,255,.95);font-size:10px;font-weight:800;letter-spacing:.6px;
  padding:3px 10px;border-radius:999px;border:2px solid rgba(10,10,12,.95);
}
.artist-hero__text{flex:1;min-width:0;width:100%}
.artist-hero__name{
  font-family:'Birzia',sans-serif;
  font-size:clamp(32px,4.5vw,64px);
  line-height:1.02;margin:6px 0 10px;
  font-weight:900;letter-spacing:-0.5px;
}
.artist-hero__desc{
  margin:0 0 16px;color:rgba(255,255,255,.78);
  font-size:clamp(14px,1.2vw,16px);max-width:62ch;line-height:1.6;
}
.artist-hero__actions{display:flex;flex-wrap:wrap;gap:10px}
.artist-bio{padding-top:28px}
.artist-bio .section__title{margin-bottom:1rem}
.artist-events{padding-top:28px}
@media (max-width:768px){
  .artist-hero__head{
    flex-direction:column;
    align-items:stretch;
    gap:0;
  }
  .artist-hero__avatar-col{
    align-self:center;
    margin-top:0;
  }
  .artist-hero__text{text-align:center}
  .artist-hero__name{margin-inline:auto;max-width:100%}
  .artist-hero__desc{margin-inline:auto}
}
@media (min-width:769px){
  .artist-hero{min-height:320px}
  .artist-hero__back{
    top:16px;right:16px;
  }
  .artist-hero__back .artist-hero__back-label{display:none}
  .artist-hero__inner{
    display:grid;
    grid-template-columns:auto 1fr;
    grid-template-rows:auto;
    gap:20px 28px;
    align-items:start;
    padding-top:52px;padding-bottom:32px;
  }
  .artist-hero__head{display:contents}
  .artist-hero__avatar-col{
    grid-column:1;
    grid-row:1;
  }
  .artist-hero__text{
    grid-column:2;
    grid-row:1;
    min-width:240px;
    text-align:start;
  }
}
@media (max-width:600px){
  .artist-hero{margin:14px 12px 0;border-radius:16px}
  .artist-avatar{width:140px;height:140px}
  .artist-hero__actions{justify-content:center}
}

/* ========== Listing pages (events / clubs / abroad) ========== */
.listing-hero{padding:36px 0 4px}
.listing-hero__title{font-family:'Birzia',sans-serif;font-size:clamp(30px,4vw,56px);font-weight:900;line-height:1.02;margin:4px 0 8px;letter-spacing:-.5px}
.listing-hero__sub{color:var(--ink-mute);margin:0;max-width:60ch}
.listing-section{padding-top:24px}

/* עמוד ״פסטיבלים מסביב לעולם״ — ריווחי סטוריז כמו בדף הבית (.stories / .stories__track) */
.listing-page--worldwide .listing-hero--worldwide{padding:28px 0 0}
.listing-page--worldwide .listing-section{padding-top:6px}
.listing-page--worldwide .abroad-cities{padding:6px 2px 14px}
.listing-page--worldwide .listing-count{margin:8px 4px 12px}

.filters{
  border-radius:var(--radius-xl);
  padding:18px 18px 14px;
  display:flex;flex-direction:column;gap:14px;
  margin-bottom:22px;
}
.filters__row{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}
.filters__search{
  flex:1;min-width:220px;display:flex;align-items:center;gap:10px;
  padding:10px 14px;border-radius:12px;
  background:rgba(255,255,255,.05);
  border:1px solid var(--line);
}
.filters__search svg{width:18px;height:18px;stroke:rgba(255,255,255,.55);flex-shrink:0}
.filters__search input{flex:1;border:0;outline:0;background:transparent;color:#fff;font-size:14px;min-width:0}
.filters__chips{display:flex;gap:8px;flex-wrap:wrap}
.filters__chips .chip{text-decoration:none}
.filters__selects{display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}
.filters__select{display:flex;flex-direction:column;gap:4px}
.filters__select span{font-size:11px;color:rgba(255,255,255,.55);padding-inline-start:4px;text-transform:uppercase;letter-spacing:.6px}
.filters__select select{
  padding:10px 12px;border-radius:10px;
  background:rgba(255,255,255,.05);
  border:1px solid var(--line);
  color:#fff;font-size:14px;outline:0;
}
.listing-count{color:var(--ink-mute);font-size:13px;margin:0 4px 14px}

/* ============================================================
   EV Filters — pill-based filter with popovers (innovative, clean)
   ============================================================ */
.evfilters{
  margin:0 0 22px;
  display:flex;flex-direction:column;gap:12px;
}
body.evfilter-lock{overflow:hidden}

/* Free-text search bar */
.evfilters__bar{
  display:flex;align-items:center;gap:8px;
  padding:6px 6px 6px 16px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  transition:border-color .2s,background .2s,box-shadow .2s;
}
.evfilters__bar:focus-within{
  border-color:rgba(122,75,255,.5);
  background:rgba(255,255,255,.05);
  box-shadow:0 0 0 4px rgba(122,75,255,.12);
}
.evfilters__bar-icon{display:inline-flex;color:var(--ink-mute);flex:0 0 auto}
.evfilters__bar-icon svg{width:18px;height:18px}
.evfilters__input{
  flex:1;min-width:0;
  background:transparent;border:0;outline:0;
  color:#fff;font-size:15px;font-weight:500;font-family:inherit;
  padding:12px 0;
}
.evfilters__input::placeholder{color:var(--ink-mute)}
.evfilters__clear{
  width:28px;height:28px;border-radius:50%;
  background:rgba(255,255,255,.08);border:0;cursor:pointer;
  display:grid;place-items:center;color:#fff;flex:0 0 auto;
  transition:background .2s;
}
.evfilters__clear svg{width:12px;height:12px}
.evfilters__clear:hover{background:rgba(255,255,255,.18)}
.evfilters__submit{
  padding:10px 20px;border:0;border-radius:999px;
  background:var(--grad-brand,linear-gradient(135deg,#7a4bff,#ff3cac));
  color:#fff;font-weight:800;font-size:14px;font-family:inherit;
  cursor:pointer;flex:0 0 auto;
  transition:filter .2s,transform .2s;
}
.evfilters__submit:hover{filter:brightness(1.1);transform:translateY(-1px)}

/* Pills row */
.evfilters__pills{
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;
}

/* Single pill */
.evfilter{position:relative}
.evfilter__btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 14px;border-radius:999px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  color:#fff;font-size:13.5px;font-weight:700;font-family:inherit;cursor:pointer;
  transition:background .2s,border-color .2s,transform .2s;
  white-space:nowrap;
}
.evfilter__btn:hover{background:rgba(122,75,255,.12);border-color:rgba(122,75,255,.35)}
.evfilter.is-active .evfilter__btn{
  background:linear-gradient(135deg,rgba(122,75,255,.3),rgba(255,60,172,.22));
  border-color:rgba(122,75,255,.55);
  padding-inline-end:8px;
}
.evfilter.is-open .evfilter__btn{
  background:rgba(122,75,255,.18);
  border-color:rgba(122,75,255,.5);
  box-shadow:0 0 0 3px rgba(122,75,255,.14);
}
.evfilter__i{width:15px;height:15px;opacity:.85;flex:0 0 auto}
.evfilter__label{font-weight:700;color:#fff}
.evfilter.is-active .evfilter__label{color:rgba(255,255,255,.7);font-weight:600}
.evfilter__value{
  display:inline-flex;align-items:center;
  max-width:140px;
  padding:3px 10px;border-radius:999px;
  background:rgba(255,255,255,.18);
  font-weight:800;font-size:12.5px;color:#fff;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.evfilter__caret{width:12px;height:12px;opacity:.7;transition:transform .2s}
.evfilter.is-open .evfilter__caret{transform:rotate(180deg)}

/* Clear (x) badge — overlays pill, visible when active */
.evfilter__x{
  position:absolute;top:-6px;inset-inline-end:-6px;
  width:22px;height:22px;border-radius:50%;border:2px solid #0a0512;
  background:#e94c89;color:#fff;cursor:pointer;
  display:grid;place-items:center;
  box-shadow:0 4px 10px -4px rgba(233,76,137,.7);
  transition:transform .15s,background .2s;z-index:2;
}
.evfilter__x:hover{transform:scale(1.1);background:#ff5c9b}
.evfilter__x svg{width:10px;height:10px}

/* Reset all */
.evfilter__reset{
  display:inline-flex;align-items:center;gap:6px;
  margin-inline-start:auto;
  padding:8px 14px;border-radius:999px;
  background:transparent;
  color:var(--ink-dim);font-size:13px;font-weight:700;
  transition:color .2s,background .2s;
}
.evfilter__reset:hover{color:#fff;background:rgba(255,255,255,.05)}
.evfilter__reset svg{width:14px;height:14px}

/* Popover */
.evfilter__pop{
  position:absolute;top:calc(100% + 10px);inset-inline-start:0;z-index:80;
  min-width:240px;max-width:360px;
  background:linear-gradient(180deg,rgba(22,14,40,.98) 0%,rgba(12,7,24,.98) 100%);
  border:1px solid rgba(255,255,255,.1);
  border-radius:18px;
  box-shadow:0 24px 60px -18px rgba(0,0,0,.7),0 0 0 1px rgba(122,75,255,.06);
  padding:10px;
  opacity:0;pointer-events:none;
  transform:translateY(-6px) scale(.98);
  transform-origin:top center;
  transition:opacity .18s ease,transform .22s cubic-bezier(.22,1,.36,1);
}
.evfilter__pop--wide{min-width:320px;max-width:440px}
.evfilter.is-open .evfilter__pop{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}

/* Popover header */
.evfilter__pop-h{
  display:flex;align-items:center;justify-content:space-between;
  padding:6px 6px 10px;margin-bottom:4px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.evfilter__pop-h h4{
  margin:0;font-size:13px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
  color:rgba(255,255,255,.85);
}
.evfilter__pop-close{
  width:28px;height:28px;border-radius:50%;border:0;cursor:pointer;
  background:rgba(255,255,255,.06);color:#fff;
  display:grid;place-items:center;
  transition:background .2s;
}
.evfilter__pop-close:hover{background:rgba(255,255,255,.15)}
.evfilter__pop-close svg{width:13px;height:13px}

/* Search inside popover */
.evfilter__pop-search{
  display:flex;align-items:center;gap:8px;
  padding:8px 12px;margin:0 0 8px;border-radius:12px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
}
.evfilter__pop-search:focus-within{border-color:rgba(122,75,255,.4);background:rgba(255,255,255,.06)}
.evfilter__pop-search svg{width:14px;height:14px;color:var(--ink-mute);flex:0 0 auto}
.evfilter__pop-search input{
  flex:1;background:transparent;border:0;outline:0;color:#fff;
  font-size:13.5px;font-family:inherit;min-width:0;
}
.evfilter__pop-search input::placeholder{color:var(--ink-mute)}

/* Options */
.evfilter__opts{
  display:flex;flex-direction:column;gap:2px;
  max-height:300px;overflow-y:auto;padding:2px;
  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent;
}
.evfilter__opts::-webkit-scrollbar{width:6px}
.evfilter__opts::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:3px}
.evfilter__opts--grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:4px;
  max-height:340px;
}
.evfilter__opt{
  display:flex;align-items:center;gap:8px;
  padding:9px 12px;border-radius:10px;
  cursor:pointer;color:rgba(255,255,255,.85);font-size:13.5px;font-weight:600;
  transition:background .15s,color .15s;
  position:relative;
}
.evfilter__opt:hover{background:rgba(255,255,255,.05);color:#fff}
.evfilter__opt input{
  position:absolute;opacity:0;pointer-events:none;
}
.evfilter__opt-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.evfilter__opt:has(input:checked){
  background:linear-gradient(135deg,rgba(122,75,255,.3),rgba(255,60,172,.2));
  color:#fff;
}
.evfilter__opt:has(input:checked)::before{
  content:"✓";position:absolute;inset-inline-end:10px;
  color:#fff;font-weight:900;font-size:12px;
}

/* Mobile — popovers become bottom sheets */
@media (max-width:640px){
  .evfilters__bar{padding:5px 5px 5px 12px;border-radius:20px}
  .evfilters__input{padding:11px 0;font-size:14.5px}
  .evfilters__submit{padding:9px 16px;font-size:13px}
  .evfilters__pills{gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;margin:0 -16px;padding-inline:16px;scrollbar-width:none}
  .evfilters__pills::-webkit-scrollbar{display:none}
  .evfilter{flex:0 0 auto}
  .evfilter__btn{padding:7px 12px;font-size:12.5px}
  .evfilter__value{max-width:90px;font-size:11.5px;padding:2px 8px}
  .evfilter__reset{margin:0;flex:0 0 auto}

  /* Bottom-sheet popovers */
  .evfilter__pop{
    position:fixed;inset:auto 0 0 0;
    top:auto;
    width:100%;max-width:100%;min-width:0;
    border-radius:22px 22px 0 0;
    padding:12px 14px 24px;
    transform:translateY(100%);
    max-height:82vh;display:flex;flex-direction:column;
    box-shadow:0 -24px 60px -12px rgba(0,0,0,.7);
  }
  .evfilter.is-open .evfilter__pop{transform:translateY(0)}
  .evfilter__pop::before{
    content:"";
    position:absolute;top:8px;left:50%;transform:translateX(-50%);
    width:44px;height:4px;border-radius:999px;background:rgba(255,255,255,.2);
  }
  .evfilter__pop-h{padding-top:14px}
  .evfilter__opts{max-height:50vh}
  .evfilter__opts--grid{max-height:55vh}

  /* backdrop behind the sheet */
  .evfilter.is-open::before{
    content:"";position:fixed;inset:0;z-index:79;
    background:rgba(5,0,15,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
    animation:evfilterFade .2s ease both;
  }
}
@keyframes evfilterFade{from{opacity:0}to{opacity:1}}


@media (max-width:640px){
  .filters__selects{grid-template-columns:1fr 1fr}
  .filters{padding:14px}
  .filters__row .btn{flex:1}
  .listing-page--worldwide .listing-hero--worldwide{
    position:relative;
    padding:28px 0 22px;
    isolation:isolate;
  }
  .listing-page--worldwide .listing-hero--worldwide::before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:0;
    background:
      radial-gradient(55% 55% at 20% 40%, rgba(124,58,237,.6) 0%, transparent 65%),
      radial-gradient(50% 50% at 85% 30%, rgba(236,72,153,.5) 0%, transparent 65%),
      radial-gradient(45% 45% at 55% 90%, rgba(56,189,248,.3) 0%, transparent 65%);
    filter:blur(32px) saturate(130%);
    opacity:1;
    pointer-events:none;
    -webkit-mask-image:radial-gradient(ellipse 95% 75% at 50% 35%, black 0%, transparent 80%);
    mask-image:radial-gradient(ellipse 95% 75% at 50% 35%, black 0%, transparent 80%);
    animation:abroadHeroDrift 14s ease-in-out infinite alternate;
  }
  .listing-page--worldwide .listing-hero--worldwide .container{
    display:flex;flex-direction:column;align-items:center;text-align:center;
    position:relative;
  }
  .listing-page--worldwide .listing-hero__title{margin-inline:auto}
  .listing-page--worldwide .listing-hero__sub{margin-inline:auto;max-width:34ch;margin-top:10px}
  .listing-page--worldwide .listing-section{padding-top:0}
  .listing-page--worldwide .abroad-cities{padding:8px 2px 6px;margin-top:-14px}
  .listing-page--worldwide .listing-count{text-align:right;margin:6px 4px 10px;margin-inline-start:auto}
}
@keyframes abroadHeroDrift{
  0%  {transform:translate3d(-2%, 0, 0) scale(1)}
  100%{transform:translate3d(3%, 1%, 0) scale(1.06)}
}
@media (prefers-reduced-motion:reduce){
  .listing-page--worldwide .listing-hero--worldwide::before{animation:none}
}

/* ========== Clubs grid ========== */
.clubs-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.club-card{
  border-radius:var(--radius-lg);overflow:hidden;
  display:flex;flex-direction:column;text-decoration:none;color:inherit;
  transition:transform .3s;
}
.club-card:hover{transform:translateY(-4px)}
.club-card__media{
  aspect-ratio:16/10;background-size:cover;background-position:center;
  position:relative;
}
.club-card__media--ph{background:linear-gradient(135deg,#2a2340,#12101e)}
.club-card__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(5,0,15,.65) 100%)}
.club-card__body{padding:14px 16px}
.club-card h3{font-family:'Birzia',sans-serif;margin:0 0 4px;font-size:18px}
.club-card p{margin:0;color:var(--ink-mute);font-size:13px}
.club-card__city{display:inline-block;padding:3px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid var(--line);font-size:11px;font-weight:700;margin-bottom:6px}

/* cities slider — horizontal scroll (legacy) */
.cities-slider{
  display:flex;gap:12px;
  overflow-x:auto;scroll-snap-type:x mandatory;
  padding:20px 0 24px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.cities-slider::-webkit-scrollbar{display:none}
.cities-slider .city-card{
  flex:0 0 160px;width:160px;
  scroll-snap-align:start;
}
@media (min-width:768px){
  .cities-slider .city-card{flex:0 0 190px;width:190px}
}
@media (min-width:1200px){
  .cities-slider .city-card{flex:0 0 210px;width:210px}
}

/* keep cities-grid for any legacy use */
.cities-grid{
  display:grid;gap:14px;margin:20px 0 28px;
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
}
.city-card{
  position:relative;aspect-ratio:1/1;border-radius:18px;overflow:hidden;
  display:flex;align-items:flex-end;padding:14px;
  text-decoration:none;color:#fff;
  border:1px solid rgba(255,255,255,.08);
  transition:transform .3s, box-shadow .3s;
}
.city-card__bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.04);transition:transform .6s}
.city-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px -20px rgba(0,0,0,.6)}
.city-card:hover .city-card__bg{transform:scale(1.1)}
.city-card__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,0,15,.1) 0%,rgba(5,0,15,.85) 100%)}
.city-card__label{position:relative;z-index:1;display:flex;flex-direction:column;gap:2px}
.city-card__name{font-family:'Birzia',sans-serif;font-size:20px;font-weight:900;letter-spacing:-.3px}
.city-card__country{font-size:11px;color:rgba(255,255,255,.7)}
.city-card.is-active{outline:2px solid #a78bfa;outline-offset:2px}

@media (max-width:640px){
  .cities-grid{grid-template-columns:repeat(3,1fr);gap:10px}
  .city-card{padding:10px}
  .city-card__name{font-size:15px}
  .city-card__country{font-size:10px}
}

/* abroad page: 4 cols */
.events-grid--abroad{
  grid-template-columns:repeat(4,1fr);
}
@media (max-width:1100px){
  .events-grid--abroad{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:700px){
  .events-grid--abroad{grid-template-columns:repeat(2,1fr)}
}

/* ===== Login page ===== */
.login-body{min-height:100svh;background:#06010f;color:#fff;overflow-x:hidden}
/* The site header is now rendered on the login screen so users always have a
   way to leave. The background tiles + scrim should still cover the full
   viewport behind everything, so we pin them as fixed layers. */
.login-body .header{background:rgba(12,8,28,.72);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);z-index:60}
.login-page{position:relative;min-height:calc(100svh - 60px);display:flex;align-items:center;justify-content:center;padding:32px 20px 40px}
.login-bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.login-bg__grid{position:absolute;inset:-10%;display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:1fr;gap:6px;filter:blur(1.5px) saturate(1.15);transform:rotate(-6deg) scale(1.2);opacity:.88}
.login-bg__tile{display:block;width:100%;aspect-ratio:1/1;background-size:cover;background-position:center;border-radius:12px}
.login-bg__scrim{position:absolute;inset:0;background:radial-gradient(110% 70% at 50% 35%,rgba(6,1,15,.25) 0%,rgba(6,1,15,.55) 55%,rgba(6,1,15,.85) 100%)}
.login-card{position:relative;z-index:2;width:100%;max-width:460px;padding:32px 28px 26px;border-radius:26px;background:rgba(20,12,32,.86);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.1);box-shadow:0 30px 80px rgba(0,0,0,.6);text-align:center}
.login-eyebrow{font-size:11px;letter-spacing:.22em;color:#c9a8ff;text-transform:uppercase;margin-bottom:8px}
.login-title{font-size:clamp(28px,4.5vw,38px);font-weight:800;line-height:1.15;margin:6px 0 12px}
.login-title--plain{color:#fff;background:none;-webkit-text-fill-color:#fff}
.login-tag{display:inline-block;padding:6px 14px;border-radius:999px;background:var(--grad-brand,linear-gradient(135deg,#7d3cff 0%,#ff3da0 100%));color:#fff;font-size:12px;font-weight:600;letter-spacing:.04em;margin-bottom:14px}
.login-sub{margin:6px 0 22px;color:rgba(255,255,255,.72);font-size:14px}
.login-form{display:flex;flex-direction:column;gap:12px}
.login-input{display:flex;align-items:center;gap:10px;padding:6px 8px 6px 14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:14px;direction:ltr;text-align:left}
.login-input:focus-within{border-color:rgba(201,168,255,.6);box-shadow:0 0 0 3px rgba(125,60,255,.18)}
.login-flag{display:flex;align-items:center;gap:6px;padding:8px 10px;background:rgba(255,255,255,.06);border-radius:10px;color:#fff;font-weight:600;font-size:14px;cursor:pointer;user-select:none}
.login-flag__emoji{font-size:18px;line-height:1}
.login-flag__code{font-size:13px;opacity:.9}
.login-input input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:#fff;font-size:16px;padding:12px 4px;font-family:inherit;direction:ltr}
.login-input input::placeholder{color:rgba(255,255,255,.4)}
.login-submit{margin-top:6px;padding:14px 18px;border:0;border-radius:14px;background:var(--grad-brand,linear-gradient(135deg,#7d3cff 0%,#ff3da0 100%));color:#fff;font-weight:700;font-size:15px;cursor:pointer;letter-spacing:.02em;transition:transform .15s ease,box-shadow .2s ease}
.login-submit:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(125,60,255,.4)}
.login-or{display:flex;align-items:center;gap:10px;margin:20px 0 14px;color:rgba(255,255,255,.45);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.login-or::before,.login-or::after{content:"";flex:1;height:1px;background:rgba(255,255,255,.1)}
.login-socials{display:flex;justify-content:center;gap:12px}
.login-social{width:54px;height:54px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);display:inline-flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:transform .15s ease,background .2s ease,border-color .2s ease}
.login-social:hover{transform:translateY(-2px);background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22)}
.login-fineprint{margin:18px 0 0;font-size:11px;color:rgba(255,255,255,.45);line-height:1.6}
.login-fineprint a{color:#c9a8ff;text-decoration:none}
.login-fineprint a:hover{text-decoration:underline}

@media (max-width:480px){
  .login-page{padding:22px 14px 28px}
  .login-card{padding:26px 20px 22px;border-radius:22px}
  .login-title{font-size:26px}
  .login-input input{font-size:16px;padding:11px 4px}
  .login-social{width:50px;height:50px}
  .login-bg__grid{grid-template-columns:repeat(4,1fr);gap:5px}
}

/* ===== Login: error + loading + step transitions ===== */
.login-err{min-height:18px;color:#ffb3c1;font-size:13px;margin:-4px 2px 2px;text-align:right}
.login-err--center{text-align:center;margin-bottom:6px}
.login-submit.is-loading{opacity:.75;cursor:wait}
.login-submit.is-loading::after{content:"";display:inline-block;width:14px;height:14px;margin-inline-start:8px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:ldspin .7s linear infinite;vertical-align:-3px}
@keyframes ldspin{to{transform:rotate(360deg)}}

/* ===== Login: 4-digit PIN — iOS "Liquid Glass" ===== */
.login-step{position:relative;animation:pinFade .25s ease}
@keyframes pinFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* Apply the iOS liquid-glass frost to the login card on ALL steps,
   not just the PIN screen. */
.login-body .login-card{
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(40px) saturate(180%);
  -webkit-backdrop-filter:blur(40px) saturate(180%);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:
    0 30px 90px rgba(0,0,0,.55),
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -1px 0 rgba(0,0,0,.25);
}

/* The phone input / profile inputs inherit the frosted look too. */
.login-body .login-input{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
}

.pin-back{position:absolute;top:-6px;right:-6px;background:transparent;border:0;color:#fff;opacity:.72;padding:8px;border-radius:10px;cursor:pointer}
.pin-back:hover{opacity:1;background:rgba(255,255,255,.08)}
.pin-title{font-size:22px;font-weight:700;margin:8px 0 6px;letter-spacing:.01em}
.pin-sub{margin:0 0 18px;color:rgba(255,255,255,.72);font-size:14px}
.pin-phone{direction:ltr;display:inline-block;font-weight:700;color:#fff}

.pin-dots{display:flex;justify-content:center;gap:18px;margin:6px 0 18px}
.pin-dot{width:14px;height:14px;border-radius:50%;background:rgba(255,255,255,.18);transition:background .15s ease,transform .15s ease,box-shadow .2s ease;box-shadow:inset 0 1px 0 rgba(255,255,255,.15)}
.pin-dot.is-on{background:#fff;transform:scale(1.08);box-shadow:0 0 0 3px rgba(255,255,255,.18),0 0 18px rgba(255,255,255,.35)}

.is-shake{animation:pinShake .32s ease}
@keyframes pinShake{0%,100%{transform:translateX(0)}20%{transform:translateX(-7px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}

.login-step.is-verifying{opacity:.7;filter:saturate(.8)}

/* Always run numbers left-to-right, even in RTL pages. */
.pin-pad{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:16px 14px;max-width:330px;margin:6px auto 6px;
  direction:ltr;
}

/* iOS liquid glass bubble button — pure frosted glass, no color tint.
   Key design notes:
   - NO `saturate` filter (that was what made the keys look pinkish because
     it was amplifying the colors of the background photos behind).
   - Neutral white radial highlight only at the very top.
   - Keys are essentially clear with a light rim.
*/
.pin-key{
  position:relative;
  color:#fff;
  border-radius:999px;
  height:72px;
  font-size:30px;
  font-weight:400;
  letter-spacing:-.01em;
  cursor:pointer;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  line-height:1;user-select:none;
  /* Disable double-tap zoom & text highlight flash that made iOS Safari zoom
     into the keypad whenever users tapped two digits in quick succession. */
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  border:1px solid rgba(255,255,255,.20);
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.35),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 6px 16px rgba(0,0,0,.18);
  transition:transform .1s ease, box-shadow .15s ease, background .15s ease;
  text-shadow:none;
}
/* Thin bright top rim — the "lens" reflection */
.pin-key::before{
  content:"";
  position:absolute;inset:3px 3px auto 3px;height:42%;
  border-radius:999px 999px 60% 60% / 999px 999px 90% 90%;
  background:linear-gradient(to bottom, rgba(255,255,255,.22) 0%, rgba(255,255,255,0) 100%);
  opacity:.75;pointer-events:none;
}
.pin-key:hover{background:rgba(255,255,255,.12)}
.pin-key:active,
.pin-key:focus-visible{
  transform:scale(.95);
  outline:none;
  background:rgba(255,255,255,.20);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.5),
    inset 0 -1px 0 rgba(0,0,0,.22),
    0 2px 8px rgba(0,0,0,.25);
}
.pin-key small{
  display:block;margin-top:3px;font-size:10px;letter-spacing:.22em;
  color:rgba(255,255,255,.62);font-weight:600;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",system-ui,sans-serif;
  text-shadow:none;
}
.pin-key--spacer{background:transparent;border:0;pointer-events:none;visibility:hidden;box-shadow:none}
.pin-key--spacer::before{content:none}
.pin-key--fn{
  background:transparent;
  border-color:transparent;
  backdrop-filter:none;-webkit-backdrop-filter:none;
  box-shadow:none;
}
.pin-key--fn::before{content:none}
.pin-key--fn:hover{background:rgba(255,255,255,.08)}
.pin-key--fn:active{background:rgba(255,255,255,.16);transform:scale(.95);box-shadow:none}

.pin-bootstrap{margin:0 0 14px;padding:12px 14px;border-radius:14px;background:linear-gradient(135deg,rgba(251,191,36,.18),rgba(251,146,60,.12));border:1px solid rgba(251,191,36,.45);text-align:center}
.pin-bootstrap__title{font-size:11px;letter-spacing:.12em;color:#fde68a;font-weight:700;text-transform:uppercase;margin-bottom:4px}
.pin-bootstrap__code{font-size:34px;font-weight:800;letter-spacing:.45em;color:#fff;direction:ltr;font-variant-numeric:tabular-nums}
.pin-bootstrap__sub{font-size:12px;color:rgba(255,255,255,.72);margin-top:4px;line-height:1.45}

.pin-foot{margin-top:14px;display:flex;justify-content:center}
.pin-link{background:transparent;border:0;color:rgba(255,255,255,.72);font-size:13px;cursor:pointer;padding:8px 10px;border-radius:10px}
.pin-link:hover:not(:disabled){color:#fff;background:rgba(255,255,255,.06)}
.pin-link:disabled{opacity:.45;cursor:default}

/* ===== Login: profile step ===== */
.login-profile{gap:14px}
.login-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}
.login-field{display:flex;flex-direction:column;gap:6px;text-align:right;min-width:0}
.login-field__label{font-size:12px;color:rgba(255,255,255,.66);font-weight:600;letter-spacing:.02em}
.login-field input[type=text],.login-field input[type=date]{
  width:100%;max-width:100%;box-sizing:border-box;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
  color:#fff;border-radius:12px;padding:12px 14px;font-size:15px;font-family:inherit;
  outline:0;transition:border-color .15s ease,box-shadow .15s ease;
}
.login-field input:focus{border-color:rgba(201,168,255,.6);box-shadow:0 0 0 3px rgba(125,60,255,.18)}
.login-field__err{min-height:14px;font-size:12px;color:#ffb3c1;font-style:normal}
.login-genders{border:0;padding:0;margin:0;display:flex;gap:10px;justify-content:flex-start;flex-wrap:wrap}
.login-genders legend{font-size:12px;color:rgba(255,255,255,.66);font-weight:600;margin-bottom:6px;width:100%}
.login-gender{flex:1 1 0;min-width:140px;display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.04);cursor:pointer;transition:border-color .15s,background .15s}
.login-gender input{accent-color:#c9a8ff}
.login-gender:has(input:checked){border-color:rgba(201,168,255,.6);background:rgba(125,60,255,.16)}

@media (max-width:480px){
  .pin-pad{gap:11px 10px;max-width:300px}
  .pin-key{height:62px;font-size:26px}
  .login-row2{grid-template-columns:1fr}
  .login-gender{min-width:0}
}

/* ===== Events grid (5-col desktop, 2-col mobile, 1:1 images) ===== */
.events-grid{
  display:grid;
  gap:14px;
  grid-template-columns:repeat(5,1fr);
}
.events-grid .wcard__media,
.wcard__media--sq{
  aspect-ratio:1/1 !important;
}
@media (max-width:1100px){
  .events-grid{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:800px){
  .events-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:600px){
  .events-grid{grid-template-columns:repeat(2,1fr);gap:10px}
}

/* ===== Artists grid (listing page) ===== */
.artists-grid{
  display:grid;gap:16px;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
}
@media (max-width:640px){
  .artists-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }
}
.artist-card{
  display:flex;flex-direction:column;align-items:center;gap:12px;
  padding:18px 16px 20px;
  border-radius:var(--radius-lg);
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  text-decoration:none;color:inherit;
  transition:transform .2s, border-color .2s, background .2s;
}
.artist-card:hover{
  transform:translateY(-3px);
  border-color:rgba(122,75,255,.35);
  background:rgba(255,255,255,.05);
}
.artist-card__avatar{
  position:relative;width:110px;height:110px;border-radius:50%;
  padding:3px;
  background:conic-gradient(from 180deg,#ff3cac,#7a4bff,#2b86c5,#5ee7ff,#ff3cac);
  display:grid;place-items:center;
}
.artist-card__avatar--live{
  background:conic-gradient(from 0deg,#7a4bff,#2b86c5,#5ee7ff,#c084fc,#7a4bff);
}
.artist-card__img{
  display:block;width:100%;height:100%;border-radius:50%;
  background-size:cover;background-position:center;
  border:3px solid #0b0220;
  box-shadow:none;
  overflow:hidden;
  box-sizing:border-box;
}
.artist-card__img--ph{
  display:grid;place-items:center;color:#fff;
  font-size:36px;font-weight:900;
  background:linear-gradient(135deg,#2a1f4a,#120a1c);
}
.artist-card__live{
  position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);
  font-size:10px;font-weight:800;letter-spacing:.5px;
  padding:2px 8px;border-radius:999px;
  background:#ff2a6d;color:#fff;border:2px solid #0b0220;
}
.artist-card__body{
  display:flex;flex-direction:column;align-items:center;gap:6px;
  text-align:center;width:100%;
}
.artist-card__name{
  margin:4px 0 0;font-size:16px;font-weight:800;color:#fff;
  max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.artist-card__desc{
  margin:0;font-size:12.5px;color:var(--ink-mute);line-height:1.4;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.artist-card__meta{
  display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:4px;
}
.artist-card__chip{
  display:inline-flex;align-items:center;
  padding:4px 10px;border-radius:999px;font-size:11.5px;font-weight:700;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:var(--ink-dim);
}
.artist-card__chip--up{
  background:linear-gradient(135deg,rgba(122,75,255,.22),rgba(255,60,172,.18));
  border-color:rgba(122,75,255,.45);color:#fff;
}
.artist-card__chip--muted{opacity:.7}

/* ===== Weekend carousel card sizing ===== */
.weekend-carousel{
  grid-auto-columns:minmax(260px,calc(33.333% - 12px));
}
@media (min-width:1200px){
  .weekend-carousel{grid-auto-columns:minmax(260px,calc(25% - 14px))}
}
@media (max-width:640px){
  .weekend-carousel{grid-auto-columns:minmax(230px,calc(80% - 8px))}
}

/* ========== Ticket iframe modal ========== */
.ticket-modal{
  position:fixed;inset:0;z-index:9500;
  background:#06010f;
  display:flex;flex-direction:column;
  transform:translateY(100%);
  transition:transform .38s cubic-bezier(.4,0,.2,1);
  will-change:transform;
}
.ticket-modal.is-open{transform:translateY(0)}
.ticket-modal__bar{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 14px;
  background:rgba(6,1,15,.97);
  border-bottom:1px solid rgba(255,255,255,.07);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  flex-shrink:0;min-height:54px;
}
.ticket-modal__btn{
  width:40px;height:40px;
  display:grid;place-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.1);
  color:#fff;cursor:pointer;
  flex-shrink:0;
  transition:background .2s;
}
.ticket-modal__btn:hover{background:rgba(255,255,255,.14)}
.ticket-modal__btn svg{width:18px;height:18px}
.ticket-modal__logo{height:26px;width:auto;display:block}
.ticket-modal__loading{
  flex:1;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:18px;
}
.ticket-modal__loading.is-hidden{display:none}
.ticket-modal__icon{
  width:80px;height:80px;border-radius:18px;
  animation:tmPulse 1.3s ease-in-out infinite;
}
@keyframes tmPulse{
  0%,100%{transform:scale(1);opacity:1}
  50%{transform:scale(1.07);opacity:.7}
}
.ticket-modal__loading-text{
  color:rgba(255,255,255,.4);font-size:13px;font-weight:500;letter-spacing:.04em;
}
.ticket-modal__iframe{
  flex:1;border:none;width:100%;
  opacity:0;transition:opacity .3s;
  display:none;
}
.ticket-modal__iframe.is-ready{display:block;opacity:1}
.ticket-modal__fallback{
  flex:1;display:none;flex-direction:column;
  align-items:center;justify-content:center;gap:16px;padding:32px;text-align:center;
}
.ticket-modal__fallback.is-visible{display:flex}
.ticket-modal__fallback p{color:rgba(255,255,255,.55);font-size:14px;line-height:1.6;max-width:28ch}

/* ========== About Section ========== */
.about-section{padding:48px 0 88px;position:relative;overflow:hidden;background:linear-gradient(180deg,transparent 0%,rgba(122,75,255,.04) 50%,transparent 100%)}
.about-section__bg-text{
  position:absolute;font-size:clamp(100px,18vw,280px);font-weight:900;
  opacity:.022;top:50%;left:50%;transform:translate(-50%,-50%);
  letter-spacing:-8px;pointer-events:none;white-space:nowrap;user-select:none;line-height:1;
  background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.about__header{text-align:center;margin-bottom:60px;position:relative}
.about__title{
  font-size:clamp(38px,5.5vw,68px);font-weight:900;margin:8px 0 22px;
  background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
  line-height:1.1;
}
.about__intro{font-size:clamp(15px,1.4vw,17px);color:var(--ink-dim);max-width:760px;margin:0 auto;line-height:1.85}
.about__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;position:relative}
.about__card{
  padding:36px 30px;border-radius:var(--radius-lg);position:relative;overflow:hidden;
  text-align:center;
  transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s;
}
.about__card:hover{transform:translateY(-8px);box-shadow:0 24px 64px rgba(122,75,255,.18)}
.about__card::before{
  content:'';position:absolute;inset:0;border-radius:inherit;
  background:var(--grad-brand);opacity:0;transition:opacity .35s;z-index:0;
}
.about__card:hover::before{opacity:.05}
.about__card>*{position:relative;z-index:1}
.about__card-icon{
  width:58px;height:58px;border-radius:18px;
  background:linear-gradient(135deg,rgba(255,60,172,.14),rgba(122,75,255,.22));
  border:1px solid rgba(122,75,255,.28);
  display:grid;place-items:center;margin:0 auto 24px;
  transition:transform .35s cubic-bezier(.22,1,.36,1);
}
.about__card-icon svg{width:26px;height:26px;color:#fff}
.about__card:hover .about__card-icon{transform:scale(1.12) rotate(6deg)}
.about__card-title{
  font-size:clamp(16px,1.5vw,20px);font-weight:800;margin:0 0 14px;
  background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
  line-height:1.3;
}
.about__card-text{font-size:14px;color:var(--ink-dim);line-height:1.85;margin:0}
.about__note{
  display:flex;align-items:flex-start;gap:18px;margin-top:40px;
  padding:28px 32px;border-radius:var(--radius);border-color:rgba(255,209,102,.2);
  position:relative;overflow:hidden;
}
.about__note::before{
  content:'';position:absolute;inset-inline-start:0;top:0;bottom:0;width:4px;
  background:var(--grad-hot);border-radius:0 4px 4px 0;
}
.about__note-icon{font-size:22px;flex:0 0 auto;margin-top:2px}
.about__note p{margin:0;font-size:14px;color:var(--ink-dim);line-height:1.85}
.about__note strong{color:#fff}
@media(max-width:900px){
  .about__cards{grid-template-columns:1fr 1fr}
  .about-section{padding:40px 0 60px}
}
@media(max-width:600px){
  .about__cards{grid-template-columns:1fr}
  .about-section{padding:24px 0 44px}
  .about__card{padding:24px 22px}
  .about__note{padding:20px 20px 20px 24px;gap:14px}
  .about__header{margin-bottom:36px}
}

/* ========== FAQ Section ========== */
.faq-section{padding:60px 0 80px}
.faq__header{text-align:center;margin-bottom:48px}
.faq__list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.faq__item{
  border-radius:var(--radius);border:1px solid rgba(255,255,255,.1);background:#181818;
  overflow:hidden;transition:border-color .25s,box-shadow .25s;
}
.faq__item.is-open{border-color:rgba(122,75,255,.45);box-shadow:0 0 40px rgba(122,75,255,.09)}
.faq__q{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:22px 26px;font-size:clamp(14px,1.3vw,16px);font-weight:700;text-align:right;
  background:none;color:#fff;cursor:pointer;border:0;font-family:inherit;line-height:1.4;
  transition:color .2s;
}
.faq__q:hover{color:#c4b5fd}
.faq__q>span:first-child{flex:1;text-align:right}
.faq__q-icon{
  width:30px;height:30px;border-radius:50%;
  background:rgba(122,75,255,.1);border:1px solid rgba(122,75,255,.25);
  display:grid;place-items:center;flex:0 0 auto;
  transition:transform .38s cubic-bezier(.22,1,.36,1),background .25s,border-color .25s;
}
.faq__item.is-open .faq__q-icon{
  transform:rotate(45deg);background:rgba(122,75,255,.25);border-color:rgba(122,75,255,.55);
}
.faq__q-icon svg{width:14px;height:14px;color:var(--purple)}
.faq__a{
  overflow:hidden;max-height:0;
  padding:0 26px;
  font-size:14px;color:var(--ink-dim);line-height:1.9;box-sizing:border-box;
  transition:max-height .42s cubic-bezier(.22,1,.36,1),padding .3s;
}
.faq__item.is-open .faq__a{max-height:600px;padding-bottom:22px}
@media(max-width:600px){
  .faq-section{padding:24px 0 44px}
  .faq__q{padding:18px 18px}
  .faq__a{padding:0 18px}
  .faq__item.is-open .faq__a{padding:0 18px 18px}
  .faq__header{margin-bottom:32px}
}

/* ========== Clubs / Page Article ========== */
.page-article{padding:0 0 64px}
.page-article__card{
  border-radius:var(--radius-xl);padding:52px 56px;max-width:920px;margin:0 auto;
  position:relative;overflow:hidden;
}
.page-article__card::before{
  content:'';position:absolute;inset-inline-start:0;top:0;bottom:0;width:4px;
  background:var(--grad-brand);border-radius:0 4px 4px 0;
}
.page-article__title{
  font-size:clamp(22px,3vw,34px);font-weight:900;margin:0 0 28px;
  background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
  line-height:1.2;
}
.page-article__body p{
  font-size:15px;color:var(--ink-dim);line-height:1.9;margin:0 0 18px;
}
.page-article__body h3{
  font-size:clamp(16px,1.7vw,20px);font-weight:800;margin:32px 0 12px;color:#fff;
  padding-inline-start:14px;border-inline-start:3px solid var(--purple);
}
@media(max-width:640px){
  .page-article__card{padding:26px 22px}
  .page-article{padding:0 0 44px}
}

/* ========== 404 ========== */
.page-404{
  background:#0a0a0c;
  min-height:100vh;
  margin:0;
}
.not-found{
  position:relative;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:40px 22px 48px;
  text-align:center;
  overflow:hidden;
}
.not-found__glow{
  position:absolute;
  inset:-20% -30% auto;
  height:70%;
  background:
    radial-gradient(40% 45% at 50% 40%, rgba(125,60,255,.35) 0%, transparent 70%),
    radial-gradient(35% 40% at 70% 55%, rgba(34,211,238,.12) 0%, transparent 65%);
  filter:blur(40px);
  pointer-events:none;
  opacity:.9;
}
.not-found__icon-wrap{
  position:relative;
  z-index:1;
  margin-bottom:8px;
  filter:drop-shadow(0 12px 40px rgba(125,60,255,.25));
}
.not-found__icon{
  width:min(260px,72vw);
  height:auto;
  display:block;
}
.not-found__code{
  position:relative;
  z-index:1;
  font-size:12px;
  font-weight:800;
  letter-spacing:.35em;
  color:rgba(255,255,255,.32);
  margin:0 0 10px;
}
.not-found__title{
  position:relative;
  z-index:1;
  font-family:'Birzia',sans-serif;
  font-size:clamp(26px,5.5vw,42px);
  font-weight:900;
  line-height:1.15;
  margin:0 0 14px;
  background:linear-gradient(135deg,#fff 0%,#e9d5ff 45%,#7dd3fc 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.not-found__text{
  position:relative;
  z-index:1;
  color:rgba(255,255,255,.72);
  max-width:36ch;
  line-height:1.55;
  margin:0 0 8px;
  font-size:15px;
}
.not-found__sub{
  position:relative;
  z-index:1;
  color:rgba(255,255,255,.48);
  max-width:38ch;
  line-height:1.5;
  margin:0 0 28px;
  font-size:13px;
}
.not-found__actions{
  position:relative;
  z-index:1;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:center;
}
.not-found__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:14px 26px;
  border-radius:999px;
  font-weight:700;
  font-size:15px;
  text-decoration:none;
  transition:transform .2s, filter .2s, background .2s, border-color .2s;
}
.not-found__btn--primary{
  background:var(--grad-brand);
  color:#fff;
  border:0;
}
.not-found__btn--primary:hover{
  transform:translateY(-2px);
  filter:brightness(1.08);
}
.not-found__btn--ghost{
  background:rgba(255,255,255,.06);
  color:rgba(255,255,255,.9);
  border:1px solid rgba(255,255,255,.18);
}
.not-found__btn--ghost:hover{
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.28);
}
@media (prefers-reduced-motion:reduce){
  .not-found__btn--primary:hover,.not-found__btn--ghost:hover{transform:none}
}

/* ========== Magazine ========== */
.mag-page{background:
    radial-gradient(60% 45% at 85% 0%, rgba(255,60,172,.18) 0%, transparent 65%),
    radial-gradient(55% 40% at 10% 10%, rgba(122,75,255,.22) 0%, transparent 65%),
    radial-gradient(70% 50% at 50% 100%, rgba(43,134,197,.10) 0%, transparent 70%),
    linear-gradient(180deg,#07030f 0%, #0a0419 60%, #050211 100%);
}
.mag-main{padding:0 0 80px;position:relative;z-index:1}

.mag-mast{padding:90px 0 36px;position:relative;overflow:hidden}
.mag-mast::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(40% 40% at 20% 30%, rgba(255,60,172,.15) 0%, transparent 70%),
    radial-gradient(45% 45% at 80% 70%, rgba(94,231,255,.12) 0%, transparent 70%);
  pointer-events:none;z-index:-1;
}
.mag-mast__inner{max-width:900px}
.mag-mast__kicker{
  display:inline-block;font-size:12px;font-weight:800;letter-spacing:.3em;
  color:rgba(255,255,255,.5);margin-bottom:18px;text-transform:uppercase;
}
.mag-mast__title{
  font-family:'Birzia',sans-serif;font-weight:900;line-height:1.02;margin:0;
  font-size:clamp(44px,8vw,92px);letter-spacing:-.02em;
}
.mag-mast__title-accent{
  background:linear-gradient(135deg,#ff3cac 0%,#7a4bff 55%,#5ee7ff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.mag-mast__lede{
  margin:22px 0 0;color:var(--ink-dim);font-size:clamp(16px,1.4vw,19px);
  line-height:1.6;max-width:64ch;
}
.mag-mast__tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.mag-chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 14px;border-radius:999px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  color:rgba(255,255,255,.82);font-size:13px;font-weight:600;
  transition:background .2s,transform .2s,border-color .2s;
}
.mag-chip:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.24)}

.mag-featured{padding:24px 0 12px}
.mag-hero{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  gap:0;border-radius:var(--radius-xl);overflow:hidden;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  transition:transform .28s cubic-bezier(.22,1,.36,1),border-color .28s;
}
.mag-hero:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.16)}
.mag-hero__media{
  position:relative;min-height:420px;background:#110520;
  overflow:hidden;
}
.mag-hero__media img{
  width:100%;height:100%;object-fit:cover;position:absolute;inset:0;
  transform:scale(1.02);transition:transform .5s cubic-bezier(.22,1,.36,1);
}
.mag-hero:hover .mag-hero__media img{transform:scale(1.06)}
.mag-hero__scrim{
  position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(5,2,17,0) 40%, rgba(5,2,17,.55) 100%),
             linear-gradient(180deg,transparent 60%, rgba(5,2,17,.8) 100%);
}
.mag-hero__badge{
  position:absolute;top:20px;inset-inline-start:20px;z-index:1;
  padding:7px 14px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.08em;
  background:linear-gradient(135deg,#ff3cac,#7a4bff);color:#fff;
  box-shadow:0 10px 30px -6px rgba(255,60,172,.6);
}
.mag-hero__body{padding:48px 44px;display:flex;flex-direction:column;justify-content:center;gap:14px}
.mag-eyebrow{
  display:inline-block;font-size:11px;font-weight:800;letter-spacing:.25em;
  color:#ff9ad0;text-transform:uppercase;
}
.mag-eyebrow--lg{font-size:13px}
.mag-hero__title{
  font-family:'Birzia',sans-serif;font-weight:900;
  font-size:clamp(28px,3.5vw,44px);line-height:1.1;margin:0;letter-spacing:-.01em;
}
.mag-hero__excerpt{margin:0;color:var(--ink-dim);font-size:16px;line-height:1.65;max-width:56ch}
.mag-hero__cta{
  display:inline-flex;align-items:center;gap:8px;margin-top:6px;
  font-weight:700;font-size:14px;color:#fff;
}
.mag-hero__cta svg{width:18px;height:18px;transition:transform .25s}
.mag-hero:hover .mag-hero__cta svg{transform:translateX(-4px)}

.mag-meta{
  display:flex;gap:16px;flex-wrap:wrap;align-items:center;
  color:var(--ink-mute);font-size:13px;font-weight:600;
}
.mag-meta span{position:relative;display:inline-flex;align-items:center}
.mag-meta span + span::before{
  content:"";width:3px;height:3px;border-radius:50%;
  background:currentColor;opacity:.5;margin-inline-end:16px;margin-inline-start:0;
}
.mag-meta--card{font-size:12px;gap:12px}
.mag-meta--card span + span::before{margin-inline-end:12px}
.mag-meta--article{
  font-size:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1);
  margin-top:8px;
}
.mag-meta__author{color:#fff;font-weight:700}

.mag-section{padding:56px 0 8px}
.mag-section__head{
  display:flex;align-items:baseline;justify-content:space-between;
  gap:12px;margin-bottom:24px;
}
.mag-section__title{
  font-family:'Birzia',sans-serif;font-weight:900;margin:0;
  font-size:clamp(26px,3vw,36px);
}
.mag-section__count{color:var(--ink-mute);font-size:13px;font-weight:600}

.mag-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
  gap:22px;
}
.mag-grid--sm{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}

.mag-card{
  border-radius:22px;overflow:hidden;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  transition:transform .28s cubic-bezier(.22,1,.36,1),border-color .28s,background .28s;
  position:relative;
}
.mag-card:hover{
  transform:translateY(-5px);
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.18);
}
.mag-card__link{display:flex;flex-direction:column;height:100%}
.mag-card__media{
  position:relative;aspect-ratio:16/10;overflow:hidden;background:#120625;
}
.mag-card__media img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s cubic-bezier(.22,1,.36,1);
}
.mag-card:hover .mag-card__media img{transform:scale(1.06)}
.mag-card__placeholder{
  width:100%;height:100%;
  background:
    radial-gradient(50% 50% at 30% 30%, rgba(255,60,172,.35), transparent 60%),
    radial-gradient(50% 50% at 70% 70%, rgba(122,75,255,.35), transparent 60%),
    linear-gradient(135deg,#1a0735,#0b0220);
}
.mag-card__cat{
  position:absolute;top:14px;inset-inline-start:14px;
  padding:6px 11px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.08em;
  background:rgba(5,2,17,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  color:#ff9ad0;text-transform:uppercase;
  border:1px solid rgba(255,255,255,.12);
}
.mag-card__body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.mag-card__title{
  font-family:'Birzia',sans-serif;font-weight:800;margin:0;
  font-size:20px;line-height:1.25;letter-spacing:-.01em;
}
.mag-card__excerpt{
  margin:0;color:var(--ink-dim);font-size:14px;line-height:1.6;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.mag-card__link:hover .mag-card__title{color:#fff}

.mag-empty{
  padding:60px 30px;text-align:center;color:var(--ink-mute);
  border:1px dashed rgba(255,255,255,.14);border-radius:22px;
  background:rgba(255,255,255,.02);
}

/* ========== Magazine — Single article ========== */
.mag-article{background:
    radial-gradient(55% 40% at 80% 0%, rgba(122,75,255,.18) 0%, transparent 65%),
    radial-gradient(50% 35% at 10% 15%, rgba(255,60,172,.14) 0%, transparent 65%),
    linear-gradient(180deg,#07030f 0%, #0a0419 60%, #050211 100%);
}
.mag-article-main{padding:0 0 80px;position:relative}
.mag-article__hero{
  position:relative;height:min(62vh,560px);min-height:360px;overflow:hidden;
  margin-bottom:40px;
}
.mag-article__hero img{width:100%;height:100%;object-fit:cover}
.mag-article__hero-scrim{
  position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(5,2,17,.2) 0%, transparent 25%, transparent 45%, rgba(5,2,17,.85) 100%);
}
.mag-article__back{
  display:inline-flex;align-items:center;gap:8px;margin-bottom:26px;
  padding:9px 16px;border-radius:999px;font-size:13px;font-weight:700;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  color:rgba(255,255,255,.88);
  transition:background .2s,border-color .2s,transform .2s;
}
.mag-article__back:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.24);transform:translateX(4px)}
.mag-article__back svg{width:16px;height:16px}

.mag-article__head{max-width:780px;margin:0 auto 38px}
.mag-article__title{
  font-family:'Birzia',sans-serif;font-weight:900;margin:14px 0 14px;
  font-size:clamp(32px,5vw,56px);line-height:1.08;letter-spacing:-.02em;
}
.mag-article__excerpt{
  margin:0 0 6px;color:var(--ink-dim);font-size:clamp(17px,1.5vw,20px);line-height:1.65;
  font-weight:500;
}

.mag-article__content{
  max-width:760px;margin:0 auto;
  color:#eceafe;font-size:18px;line-height:1.85;
}
.mag-article__content > * + *{margin-top:1.2em}
.mag-article__content h1,
.mag-article__content h2,
.mag-article__content h3{
  font-family:'Birzia',sans-serif;font-weight:800;letter-spacing:-.01em;
  color:#fff;line-height:1.2;margin-top:1.6em;
}
.mag-article__content h1{font-size:clamp(28px,3.2vw,40px)}
.mag-article__content h2{font-size:clamp(24px,2.6vw,32px)}
.mag-article__content h3{font-size:clamp(20px,2.1vw,26px)}
.mag-article__content p{margin:0}
.mag-article__content p::first-letter:first-child{font-weight:700}
.mag-article__content p:first-of-type::first-letter{
  font-family:'Birzia',sans-serif;font-weight:900;
  font-size:4.2em;line-height:.9;float:right;margin:.05em 0 -.1em .08em;
  background:linear-gradient(135deg,#ff3cac 0%,#7a4bff 55%,#5ee7ff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.mag-article__content a{color:#c5aaff;text-decoration:underline;text-underline-offset:3px}
.mag-article__content a:hover{color:#fff}
.mag-article__content strong{color:#fff}
.mag-article__content blockquote{
  margin:28px 0;padding:18px 24px;border-inline-start:4px solid #ff3cac;
  background:rgba(255,60,172,.07);border-radius:12px;
  font-size:20px;font-style:italic;color:#fff;
}
.mag-article__content hr{
  border:0;height:1px;background:rgba(255,255,255,.14);margin:42px auto;
  max-width:120px;
}
.mag-article__content img{
  max-width:100%;height:auto;display:block;
  border-radius:16px;margin:18px auto;
  box-shadow:0 20px 60px -20px rgba(0,0,0,.55);
}
.mag-article__content img[width="16"],.mag-article__content img[width="18"],
.mag-article__content img[width="20"],.mag-article__content img[width="24"],
.mag-article__content img[width="32"]{
  width:1em;height:1em;display:inline;vertical-align:-0.15em;
  border-radius:0;margin:0;box-shadow:none;
}
.mag-article__content ul,
.mag-article__content ol{padding-inline-start:1.4em}
.mag-article__content li + li{margin-top:.5em}

.mag-article__foot{
  max-width:760px;margin:54px auto 0;
  text-align:center;padding-top:30px;
  border-top:1px solid rgba(255,255,255,.1);
}
.mag-article__cta{
  display:inline-flex;align-items:center;gap:10px;
  padding:14px 26px;border-radius:999px;
  background:linear-gradient(135deg,#ff3cac,#7a4bff);color:#fff;
  font-weight:700;font-size:15px;
  box-shadow:0 16px 40px -12px rgba(255,60,172,.55);
  transition:transform .2s,box-shadow .2s,filter .2s;
}
.mag-article__cta:hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:0 22px 50px -12px rgba(255,60,172,.7)}
.mag-article__cta svg{width:18px;height:18px}

.mag-related{padding-top:60px;border-top:1px solid rgba(255,255,255,.06);margin-top:40px}

/* Responsive */
@media (max-width:900px){
  .mag-hero{grid-template-columns:1fr}
  .mag-hero__media{min-height:280px;aspect-ratio:16/10}
  .mag-hero__body{padding:32px 26px}
  .mag-mast{padding:60px 0 28px}
  .mag-article__hero{height:min(48vh,380px);margin-bottom:28px}
}
@media (max-width:640px){
  .mag-grid{grid-template-columns:1fr;gap:18px}
  .mag-card__body{padding:16px 18px 20px}
  .mag-article__content{font-size:17px}
  .mag-article__content p:first-of-type::first-letter{font-size:3.4em}
}

/* ========== Search Results Page ========== */
.search-results-main{min-height:60vh;padding-bottom:72px}
.sres-hero{
  position:relative;padding:72px 0 28px;text-align:center;overflow:hidden;
}
.sres-hero::before{
  content:"";position:absolute;inset:-40px 0 auto 0;height:260px;
  background:radial-gradient(600px 260px at 50% 40%,rgba(122,75,255,.16),transparent 70%);
  pointer-events:none;
}
.sres-hero>*{position:relative;z-index:1}
.sres-hero__title{
  font-size:clamp(32px,5vw,54px);font-weight:900;margin:10px 0 10px;line-height:1.1;
  background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.sres-hero__sub{color:var(--ink-dim);font-size:16px;margin:0 0 24px}
.sres-hero__sub strong{color:#fff}
.sres-form{max-width:640px;margin:0 auto 20px}
.sres-form__bar{
  display:flex;align-items:center;gap:6px;
  background:rgba(255,255,255,.05);
  border:1.5px solid rgba(255,255,255,.13);
  border-radius:999px;padding:6px 6px 6px 14px;
  transition:border-color .2s,box-shadow .2s;
}
.sres-form__bar:focus-within{
  border-color:rgba(122,75,255,.55);
  box-shadow:0 0 0 4px rgba(122,75,255,.12);
}
.sres-form__bar svg{width:18px;height:18px;color:var(--ink-mute);flex:0 0 auto}
.sres-form__bar input{
  flex:1;background:none;border:0;outline:none;
  color:#fff;font-size:15px;font-weight:500;padding:11px 6px;min-width:0;font-family:inherit;
}
.sres-form__bar button{
  padding:11px 24px;border-radius:999px;
  background:var(--grad-brand);color:#fff;font-weight:800;font-size:14px;
  transition:filter .2s;flex:0 0 auto;
}
.sres-form__bar button:hover{filter:brightness(1.1)}

.sres-filters{
  display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px;
}
.sres-filter{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 14px;border-radius:999px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  font-size:13px;font-weight:700;color:var(--ink-dim);
  transition:background .2s,color .2s,border-color .2s;
}
.sres-filter:hover{background:rgba(122,75,255,.15);color:#fff;border-color:rgba(122,75,255,.35)}
.sres-filter.is-active{
  background:var(--grad-brand);border-color:transparent;color:#fff;
  box-shadow:0 6px 20px rgba(122,75,255,.25);
}
.sres-filter__c{
  background:rgba(255,255,255,.16);border-radius:999px;padding:1px 8px;
  font-size:11px;font-weight:800;
}
.sres-filter.is-active .sres-filter__c{background:rgba(255,255,255,.25)}

.sres-body{padding:12px 16px 0;display:flex;flex-direction:column;gap:44px}
.sres-group{display:flex;flex-direction:column;gap:14px}
.sres-group__head{display:flex;align-items:baseline;gap:10px;padding:0 2px}
.sres-group__title{margin:0;font-size:20px;font-weight:900;color:#fff}
.sres-group__count{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  padding:2px 10px;border-radius:999px;
  font-size:12px;font-weight:700;color:var(--ink-dim);
}

.sres-grid{
  display:grid;gap:16px;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
}
.sres-card{
  display:flex;flex-direction:column;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;overflow:hidden;
  transition:transform .25s,border-color .25s,background .25s;
  color:#fff;
}
.sres-card:hover{
  transform:translateY(-3px);
  border-color:rgba(122,75,255,.4);
  background:rgba(122,75,255,.06);
}
.sres-card__media{
  aspect-ratio:16/10;background:#1a1028;
  position:relative;overflow:hidden;
}
.sres-card__media img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .4s;
}
.sres-card:hover .sres-card__media img{transform:scale(1.05)}
.sres-card__placeholder{
  position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(122,75,255,.3),rgba(255,60,172,.25));
}
.sres-card__body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:5px;flex:1}
.sres-card__title{
  margin:0;font-size:16px;font-weight:800;color:#fff;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.sres-card__sub{
  margin:0;font-size:13px;color:var(--ink-dim);line-height:1.4;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.sres-card__meta{
  margin-top:auto;font-size:12px;color:rgba(122,75,255,.9);font-weight:700;
}
.sres-card--round .sres-card__media{aspect-ratio:1/1}
.sres-card--round .sres-card__media img{border-radius:0}

.sres-group__more{display:flex;justify-content:center;margin-top:4px}
.sres-more-btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:12px 22px;border-radius:999px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
  font-size:14px;font-weight:700;color:#fff;
  transition:background .2s,border-color .2s,transform .2s;
}
.sres-more-btn:hover{background:rgba(122,75,255,.18);border-color:rgba(122,75,255,.45);transform:translateY(-1px)}
.sres-more-btn svg{width:14px;height:14px}

.sres-empty,.sres-empty-intro{padding:60px 20px;text-align:center}
.sres-empty__box{
  max-width:500px;margin:0 auto;padding:40px 28px;
  border-radius:22px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
}
.sres-empty__box h2{margin:0 0 8px;font-size:22px;font-weight:800}
.sres-empty__box p{margin:0;color:var(--ink-dim)}
.sres-empty__emoji{font-size:48px;display:block;margin-bottom:12px}
.sres-empty__cta{
  display:inline-block;margin-top:20px;padding:11px 22px;border-radius:999px;
  background:var(--grad-brand);color:#fff;font-weight:800;font-size:14px;
  transition:filter .2s,transform .2s;
}
.sres-empty__cta:hover{filter:brightness(1.1);transform:translateY(-1px)}

@media(max-width:640px){
  .sres-hero{padding:56px 0 24px}
  .sres-form__bar{padding:5px 5px 5px 12px}
  .sres-form__bar button{padding:10px 18px}
  .sres-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .sres-card__body{padding:11px 12px 13px}
  .sres-card__title{font-size:14px}
  .sres-card__sub{font-size:12px}
  .sres-body{padding-top:6px;gap:32px}
  .sres-filters{padding:0 4px;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scrollbar-width:none}
  .sres-filters::-webkit-scrollbar{display:none}
  .sres-filter{flex:0 0 auto}
}

/* ========== Holiday Page ========== */
.holiday-page{padding-bottom:64px}

/* ---------- Hero (compact, image-forward) ---------- */
.hol-hero{
  position:relative;isolation:isolate;overflow:hidden;
  margin:16px auto 0;max-width:1400px;
  min-height:clamp(240px,34vh,340px);
  border-radius:24px;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 24px 60px -32px rgba(0,0,0,.75);
}
.hol-hero__bg{
  position:absolute;inset:0;z-index:-2;
  background-size:cover;background-position:center;
  transform:scale(1.05);
  filter:saturate(1.05) brightness(.7);
}
.hol-hero__scrim{
  position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(800px 340px at 20% 0%,rgba(122,75,255,.25),transparent 60%),
    linear-gradient(180deg,rgba(8,4,18,.1) 0%,rgba(8,4,18,.55) 55%,rgba(8,4,18,.88) 100%);
}
.hol-hero__inner{
  position:relative;
  display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
  min-height:clamp(240px,34vh,340px);
  padding-top:40px;padding-bottom:26px;
}
.hol-hero__text{max-width:760px;display:flex;flex-direction:column;gap:8px}
.hol-hero__eyebrow{
  display:inline-flex;align-items:center;gap:6px;
  font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;
  color:#ff9ad0;
}
.hol-hero__eyebrow svg{width:14px;height:14px}
.hol-hero__title{
  font-family:'Birzia',sans-serif;
  font-size:clamp(32px,5vw,56px);line-height:1.05;
  margin:2px 0 6px;font-weight:900;letter-spacing:-.01em;
  text-shadow:0 4px 24px rgba(0,0,0,.5);
}
.hol-hero__meta{
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:2px;
}
.hol-hero__chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:7px 13px;border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  font-size:13px;font-weight:600;color:#fff;
}
.hol-hero__chip svg{width:14px;height:14px;opacity:.85}
.hol-hero__chip--accent{
  background:linear-gradient(135deg,rgba(122,75,255,.45),rgba(255,60,172,.4));
  border-color:rgba(255,255,255,.24);
}
.hol-hero__chip strong{font-weight:800}
.hol-hero__desc{
  margin:8px 0 0;color:rgba(255,255,255,.82);
  font-size:15px;line-height:1.55;max-width:62ch;
}
.hol-hero__jump{
  display:inline-flex;align-items:center;gap:6px;
  padding:9px 15px;border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.15);
  font-size:13px;font-weight:700;color:#fff;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  flex:0 0 auto;align-self:flex-end;
  transition:background .2s,transform .2s;
}
.hol-hero__jump:hover{background:rgba(255,255,255,.14);transform:translateY(-2px)}
.hol-hero__jump svg{width:14px;height:14px}

/* ---------- Events section ---------- */
.hol-events{padding:32px 0 8px;scroll-margin-top:80px}
.hol-events__head{
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:16px;margin-bottom:14px;
}
.hol-events__title{
  font-family:'Birzia',sans-serif;font-weight:900;margin:0 0 2px;
  font-size:clamp(22px,2.8vw,30px);
}
.hol-events__sub{margin:0;color:var(--ink-mute);font-size:13px;font-weight:600}
.hol-events__sub #holEventsShown{color:#fff;font-weight:800}

/* Filter chips */
.hol-filter{
  display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;
}
.hol-filter__chip{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 14px;border-radius:999px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  font-size:13px;font-weight:700;color:var(--ink-dim);font-family:inherit;
  cursor:pointer;
  transition:background .2s,color .2s,border-color .2s,transform .2s;
}
.hol-filter__chip:hover{background:rgba(122,75,255,.14);color:#fff;border-color:rgba(122,75,255,.35)}
.hol-filter__chip.is-active{
  background:linear-gradient(135deg,#ff3cac,#7a4bff);
  border-color:transparent;color:#fff;
  box-shadow:0 8px 22px -10px rgba(122,75,255,.7);
}
.hol-filter__n{
  font-size:11px;font-weight:800;
  padding:2px 7px;border-radius:999px;
  background:rgba(0,0,0,.22);color:rgba(255,255,255,.88);
}
.hol-filter__chip.is-active .hol-filter__n{background:rgba(255,255,255,.22)}

/* Events grid — 5 per row desktop, 2 per row mobile */
.hol-grid{
  display:grid;gap:14px;
  grid-template-columns:repeat(5,minmax(0,1fr));
}
@media (max-width:1200px){ .hol-grid{grid-template-columns:repeat(4,minmax(0,1fr))} }
@media (max-width:900px) { .hol-grid{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media (max-width:640px) { .hol-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px} }

.hol-card{
  display:flex;flex-direction:column;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;overflow:hidden;
  color:#fff;
  transition:transform .28s,border-color .28s,background .28s;
}
.hol-card:hover{
  transform:translateY(-4px);
  background:rgba(122,75,255,.06);
  border-color:rgba(122,75,255,.35);
}
.hol-card__media{
  position:relative;aspect-ratio:1/1;
  background:#140820 center/cover no-repeat;
}
.hol-card__media::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(5,2,14,0) 45%,rgba(5,2,14,.82) 100%);
  pointer-events:none;
}
.hol-card__badge{
  position:absolute;top:10px;inset-inline-end:10px;z-index:2;
  padding:4px 10px;border-radius:999px;
  background:rgba(7,4,16,.75);
  border:1px solid rgba(255,255,255,.18);
  font-size:11px;font-weight:800;letter-spacing:.02em;color:#fff;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.hol-card__genre{
  position:absolute;bottom:10px;inset-inline-start:10px;z-index:2;
  padding:4px 10px;border-radius:999px;
  background:linear-gradient(135deg,rgba(122,75,255,.9),rgba(255,60,172,.85));
  font-size:11px;font-weight:800;letter-spacing:.04em;color:#fff;
  box-shadow:0 6px 18px -8px rgba(122,75,255,.8);
}
.hol-card__body{
  padding:12px 13px 14px;display:flex;flex-direction:column;gap:4px;flex:1;
}
.hol-card__when{
  font-size:11px;font-weight:800;letter-spacing:.03em;color:#ff9ad0;
  text-transform:uppercase;
}
.hol-card__title{
  margin:0;font-size:15px;font-weight:800;line-height:1.25;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.hol-card__place{
  margin:0;font-size:12px;color:var(--ink-mute);line-height:1.4;
  display:flex;align-items:center;gap:4px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.hol-card__place svg{width:12px;height:12px;flex-shrink:0;opacity:.7}
.hol-card__price{
  margin-top:auto;font-size:12px;font-weight:800;color:#fff;
  padding:4px 10px;border-radius:999px;
  background:rgba(122,75,255,.18);
  border:1px solid rgba(122,75,255,.35);
  align-self:flex-start;
}

/* Empty states */
.hol-empty,.hol-empty-filter{
  padding:48px 24px;text-align:center;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;margin-top:4px;
}
.hol-empty__emoji{font-size:44px;display:block;margin-bottom:8px;opacity:.85}
.hol-empty h3{margin:0 0 6px;font-size:20px;font-weight:800}
.hol-empty p,.hol-empty-filter p{margin:0;color:var(--ink-dim)}
.hol-empty__cta{
  display:inline-block;margin-top:16px;padding:10px 20px;border-radius:999px;
  background:var(--grad-brand);color:#fff;font-weight:800;font-size:13px;
  transition:filter .2s,transform .2s;
}
.hol-empty__cta:hover{filter:brightness(1.1);transform:translateY(-1px)}

/* About */
.hol-about{padding:40px 0 8px}
.hol-about__title{
  font-family:'Birzia',sans-serif;font-weight:900;margin:0 0 14px;
  font-size:clamp(22px,2.8vw,30px);
}
.hol-about__body{max-width:780px}

@media (max-width:768px){
  .hol-hero{margin-inline:10px;border-radius:20px;min-height:clamp(200px,30vh,280px)}
  .hol-hero__inner{padding-top:34px;padding-bottom:22px;min-height:clamp(200px,30vh,280px);flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px}
  .hol-hero__text{align-items:center;text-align:center;max-width:100%}
  .hol-hero__title{font-size:clamp(26px,6vw,40px);text-align:center}
  .hol-hero__meta{justify-content:center}
  .hol-hero__desc{font-size:13.5px;text-align:center;margin-inline:auto}
  .hol-hero__jump{align-self:center}
  .hol-events{padding-top:22px}
  .hol-events__head{margin-bottom:10px}
  .hol-filter{gap:6px;flex-wrap:nowrap;overflow-x:auto;margin-inline:-16px;padding:2px 16px 6px;scrollbar-width:none}
  .hol-filter::-webkit-scrollbar{display:none}
  .hol-filter__chip{flex:0 0 auto;padding:7px 12px;font-size:12.5px}
  .hol-card__title{font-size:13.5px}
  .hol-card__body{padding:10px 10px 11px;gap:3px}
  .hol-card__when{font-size:10px}
  .hol-card__place{font-size:11px}
  .hol-card__price{font-size:11px;padding:3px 8px}
  .hol-card__genre,.hol-card__badge{font-size:10px;padding:3px 8px}
  .hol-card__media{aspect-ratio:1/1}
}

/* ========================================================================
   User menu (avatar dropdown) — replaces login CTA once logged-in
   ======================================================================== */
.user-menu{position:relative}
.user-menu__btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:42px;height:42px;padding:0;border-radius:999px;border:0;cursor:pointer;
  background:transparent;color:inherit;
  transition:transform .2s ease, box-shadow .2s ease;
}
.user-menu__btn::before{
  content:"";position:absolute;inset:-2px;border-radius:999px;
  background:conic-gradient(from 120deg, #7c3bff, #ff3fa2, #ffbf4b, #39e0ff, #7c3bff);
  filter:blur(.3px);opacity:.85;
  transition:opacity .2s ease;
}
.user-menu__btn::after{
  content:"";position:absolute;inset:0;border-radius:999px;
  background:rgba(10,0,30,.9);
}
.user-menu__btn:hover{transform:translateY(-1px)}
.user-menu__btn:hover::before{opacity:1}
.user-menu__avatar{
  position:relative;z-index:1;width:38px;height:38px;border-radius:999px;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#7c3bff 0%,#ff3fa2 100%);
  color:#fff;font-weight:800;font-size:14px;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.15);
}
.user-menu__avatar img{width:100%;height:100%;object-fit:cover;display:block}
.user-menu__avatar--lg{width:56px;height:56px;font-size:22px}
.user-menu__initials{letter-spacing:.5px}

.user-menu__dropdown{
  position:absolute;top:calc(100% + 12px);
  /* Anchor dropdown's LEFT edge to the avatar's LEFT edge so the panel
     extends to the right and never falls off the viewport (the avatar in
     an RTL header sits near the left edge of the screen). */
  left:0;right:auto;transform-origin:top left;
  min-width:260px;max-width:calc(100vw - 24px);padding:10px;border-radius:18px;
  background:rgba(14,4,32,.96);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 24px 60px -12px rgba(0,0,0,.65), 0 6px 22px -8px rgba(124,59,255,.5);
  backdrop-filter:blur(26px) saturate(160%);
  -webkit-backdrop-filter:blur(26px) saturate(160%);
  opacity:0;pointer-events:none;transform:scale(.96) translateY(-6px);
  transition:opacity .18s ease, transform .22s cubic-bezier(.2,.8,.2,1);
  z-index:60;
}
.user-menu.is-open .user-menu__dropdown{opacity:1;pointer-events:auto;transform:scale(1) translateY(0)}

.user-menu__head{
  display:flex;align-items:center;gap:12px;padding:10px 10px 14px;
  border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:8px;
}
.user-menu__head strong{display:block;font-size:15px;line-height:1.2}
.user-menu__sub{display:block;font-size:12px;color:var(--ink-mute,#a69cc2);margin-top:3px}

.user-menu__item{
  display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;
  color:inherit;text-decoration:none;font-size:14px;font-weight:600;
  transition:background .15s ease, color .15s ease;
}
.user-menu__item svg{width:18px;height:18px;flex:0 0 18px;opacity:.85}
.user-menu__item:hover{background:rgba(255,255,255,.08)}
.user-menu__item--admin{color:#ffd18a}
.user-menu__item--admin:hover{background:rgba(255,191,75,.12)}
.user-menu__item--danger{color:#ff97b0}
.user-menu__item--danger:hover{background:rgba(255,73,124,.12)}
.user-menu__sep{height:1px;background:rgba(255,255,255,.08);margin:6px 8px}

/* Drawer variant — used in the mobile menu when logged-in */
.drawer__userbar{
  display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);
  color:inherit;text-decoration:none;
  transition:background .2s ease, transform .2s ease;
}
.drawer__userbar:hover{background:rgba(255,255,255,.08);transform:translateY(-1px)}
.drawer__userbar-avatar{
  width:44px;height:44px;border-radius:999px;overflow:hidden;flex:0 0 44px;
  background:linear-gradient(135deg,#7c3bff 0%,#ff3fa2 100%);
  display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;
}
.drawer__userbar-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.drawer__userbar-meta{display:flex;flex-direction:column;min-width:0}
.drawer__userbar-hello{font-size:11px;color:var(--ink-mute,#a69cc2);letter-spacing:.02em}
.drawer__userbar-meta strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drawer__logout{
  display:block;text-align:center;margin-top:10px;color:#ff97b0;font-weight:700;font-size:13px;
  text-decoration:none;padding:8px 10px;border-radius:10px;
}
.drawer__logout:hover{background:rgba(255,73,124,.12)}

/* ========================================================================
   Profile page
   ======================================================================== */
.profile-page{padding-top:0}

/* Hero */
.profile-hero{position:relative;padding:28px 0 40px;overflow:hidden;isolation:isolate}
.profile-hero__bg{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.profile-hero__blob{
  position:absolute;width:520px;height:520px;border-radius:50%;filter:blur(120px);opacity:.45;
  mix-blend-mode:screen;
}
.profile-hero__blob--1{background:#7c3bff;top:-180px;right:-120px;animation:profBlob 22s ease-in-out infinite}
.profile-hero__blob--2{background:#ff3fa2;bottom:-220px;left:-100px;animation:profBlob 28s ease-in-out infinite reverse}
.profile-hero__blob--3{background:#39e0ff;top:40%;left:30%;opacity:.28;animation:profBlob 36s ease-in-out infinite}
@keyframes profBlob{
  0%,100%{transform:translate(0,0) scale(1)}
  50%{transform:translate(30px,-40px) scale(1.1)}
}

.profile-hero__card{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;gap:28px;
  padding:28px;border-radius:28px;
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 30px 80px -30px rgba(124,59,255,.35), 0 10px 30px -12px rgba(0,0,0,.45);
  backdrop-filter:blur(28px) saturate(140%);
  -webkit-backdrop-filter:blur(28px) saturate(140%);
  animation:profCardIn .7s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes profCardIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

.profile-hero__avatar-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px}
.profile-avatar{
  position:relative;width:148px;height:148px;border-radius:50%;overflow:hidden;
  background:linear-gradient(135deg,#7c3bff 0%,#ff3fa2 100%);
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-family:'Birzia',sans-serif;font-size:56px;font-weight:800;letter-spacing:2px;
  box-shadow:0 18px 40px -8px rgba(124,59,255,.55), inset 0 0 0 4px rgba(255,255,255,.1);
}
.profile-avatar--xl{width:168px;height:168px;font-size:64px}
.profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.profile-avatar__initials{user-select:none}
.profile-avatar.is-loading{filter:brightness(.6)}
.profile-avatar__upload{
  position:absolute;bottom:6px;left:6px;
  width:44px;height:44px;border:0;border-radius:50%;cursor:pointer;
  background:linear-gradient(135deg,#fff 0%,#f2f2f7 100%);color:#0a0018;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 24px rgba(0,0,0,.35);
  transition:transform .2s ease;
}
.profile-avatar__upload:hover{transform:scale(1.08)}
.profile-avatar__upload svg{width:22px;height:22px}

.profile-hero__badge{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 12px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.08em;
  background:linear-gradient(135deg,rgba(255,191,75,.18),rgba(255,73,124,.18));
  border:1px solid rgba(255,191,75,.45);color:#ffd18a;text-transform:uppercase;
}
.profile-hero__badge svg{width:14px;height:14px}

.profile-hero__meta{min-width:0}
.profile-hero__eyebrow{
  display:inline-block;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.2em;
  background:rgba(255,255,255,.08);color:var(--ink-mute,#a69cc2);text-transform:uppercase;
}
.profile-hero__name{
  font-family:'Birzia',sans-serif;font-size:clamp(30px,4vw,44px);line-height:1.05;margin:10px 0 8px;
  background:linear-gradient(120deg,#fff 0%,#fff 40%,#b498ff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.profile-hero__bio{margin:0 0 14px;color:var(--ink-mute,#b7adcd);font-size:15px;line-height:1.55;max-width:60ch}
.profile-hero__chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}
.profile-chip{
  display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  font-size:12.5px;font-weight:600;color:var(--ink,#fff);
}
.profile-chip svg{width:14px;height:14px;opacity:.75}
.profile-chip--muted{color:var(--ink-mute,#a69cc2)}
.profile-hero__actions{display:flex;flex-wrap:wrap;gap:10px}
.profile-hero__actions .btn--danger{color:#ff97b0}
.profile-hero__actions .btn--danger:hover{background:rgba(255,73,124,.1)}

.profile-hero__stats{
  display:flex;flex-direction:column;gap:14px;padding:16px 22px;margin:0;list-style:none;
  border-radius:22px;min-width:170px;
  background:linear-gradient(180deg, rgba(124,59,255,.14), rgba(255,63,162,.08));
  border:1px solid rgba(255,255,255,.1);
}
.profile-hero__stats li{display:flex;flex-direction:column;gap:2px;text-align:center}
.profile-hero__stats strong{
  font-family:'Birzia',sans-serif;font-size:30px;line-height:1;color:#fff;
}
.profile-hero__stats span{font-size:12px;color:var(--ink-mute,#a69cc2);letter-spacing:.02em}

@media (max-width:960px){
  .profile-hero__card{grid-template-columns:1fr;text-align:center}
  .profile-hero__meta{text-align:center}
  .profile-hero__chips,.profile-hero__actions{justify-content:center}
  .profile-hero__stats{flex-direction:row;justify-content:space-around}
  .profile-hero__avatar-wrap{margin:0 auto}
}

/* Sections */
.profile-section{padding:36px 0}
.profile-section__head{margin-bottom:22px}
.profile-section__title{
  font-family:'Birzia',sans-serif;font-size:clamp(24px,3vw,34px);margin:6px 0 6px;line-height:1.05;
}
.profile-section__sub{margin:0;color:var(--ink-mute,#a69cc2);max-width:60ch}

.profile-empty{
  padding:40px 24px;border-radius:22px;text-align:center;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);
}
.profile-empty__emoji{font-size:42px;margin-bottom:10px}
.profile-empty h3{margin:0 0 6px;font-family:'Birzia',sans-serif;font-size:22px}
.profile-empty p{margin:0 0 18px;color:var(--ink-mute,#a69cc2)}

/* Grid used by profile & favorites */
.grid-events{
  display:grid;gap:16px;
  grid-template-columns:repeat(4,1fr);
}
@media (max-width:1100px){.grid-events{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.grid-events{grid-template-columns:repeat(2,1fr);gap:12px}}
@media (max-width:420px){.grid-events{grid-template-columns:1fr}}

/* Favorite card wrapper — click whole card, heart stays interactive */
.fav-card{position:relative;transition:transform .3s ease, opacity .3s ease}
.fav-card .wcard__link{
  position:absolute;inset:0;z-index:1;border-radius:inherit;
  text-decoration:none;color:inherit;-webkit-tap-highlight-color:transparent;
}
.fav-card .wcard__media{aspect-ratio:1/1}
.fav-card.is-removing{opacity:0;transform:scale(.95) translateY(10px)}

.fav-btn{
  position:absolute;top:10px;left:10px;z-index:3;
  width:40px;height:40px;border-radius:50%;border:0;cursor:pointer;padding:0;
  display:flex;align-items:center;justify-content:center;
  background:rgba(8,2,24,.55);color:#fff;
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 6px 18px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,255,255,.12);
  transition:transform .2s ease, color .2s ease, background .2s ease;
}
.fav-btn svg{width:20px;height:20px}
.fav-btn:hover{transform:scale(1.08)}
.fav-btn.is-active{color:#ff3fa2;background:rgba(255,63,162,.18)}
.fav-btn:disabled{opacity:.6;cursor:default}
@keyframes favPop{0%{transform:scale(.8)}60%{transform:scale(1.15)}100%{transform:scale(1)}}
.fav-btn.is-active{animation:favPop .35s ease}

/* Home-hero save button */
.hero__save{
  width:44px;height:44px;padding:0;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  transition:transform .2s ease, color .2s ease, background .2s ease, border-color .2s ease;
}
.hero__save svg{width:20px;height:20px}
.hero__save:hover{transform:translateY(-1px)}
.hero__save.is-active{
  color:#ff3fa2;background:rgba(255,63,162,.15);border-color:rgba(255,63,162,.5);
}
@keyframes heroSavePop{0%{transform:scale(.8)}60%{transform:scale(1.18)}100%{transform:scale(1)}}
.hero__save.is-active{animation:heroSavePop .35s ease}

/* Event-page save button */
.ev-save-btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:12px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.18);cursor:pointer;
  background:rgba(255,255,255,.06);color:#fff;font-weight:700;font-size:14px;
  transition:background .2s ease, color .2s ease, transform .2s ease;
}
.ev-save-btn:hover{background:rgba(255,255,255,.1);transform:translateY(-1px)}
.ev-save-btn svg{width:18px;height:18px}
.ev-save-btn.is-active{
  background:rgba(255,63,162,.18);color:#ff9ecb;border-color:rgba(255,63,162,.5);
}
.ev-save-btn.is-active svg{color:#ff3fa2}
.ev-save-btn:disabled{opacity:.6;cursor:default}

/* ========================================================================
   Profile: Business profile CTA + My tracks
   ======================================================================== */
.profile-hero__biz{
  background:linear-gradient(120deg,rgba(124,59,255,.18),rgba(255,63,162,.18));
  border-color:rgba(255,255,255,.18);
}
.profile-hero__biz:hover{
  background:linear-gradient(120deg,rgba(124,59,255,.28),rgba(255,63,162,.28));
}

.profile-tracks{
  display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));
}
@media (max-width:760px){.profile-tracks{grid-template-columns:1fr}}
.profile-track{
  display:grid;grid-template-columns:88px 1fr auto;align-items:center;gap:14px;
  padding:12px;border-radius:18px;
}
.profile-track__media{
  width:88px;height:88px;border-radius:14px;background:#15081f center/cover no-repeat;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.profile-track__body{min-width:0}
.profile-track__title{
  margin:0 0 4px;font-family:'Birzia',sans-serif;font-size:17px;line-height:1.2;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.profile-track__album{margin:0;font-size:12.5px;color:var(--ink-mute,#a69cc2)}
.profile-track__actions{display:flex;gap:6px;align-items:center}
.profile-track__play,
.profile-track__ext{
  width:40px;height:40px;border-radius:50%;border:0;cursor:pointer;padding:0;
  display:inline-flex;align-items:center;justify-content:center;color:#fff;
  background:rgba(255,255,255,.08);transition:background .2s ease,transform .2s ease;
}
.profile-track__play svg,.profile-track__ext svg{width:18px;height:18px}
.profile-track__play:hover,.profile-track__ext:hover{background:rgba(255,255,255,.16);transform:scale(1.05)}
.profile-track__play.is-playing{background:linear-gradient(120deg,#7c3bff,#ff3fa2)}

/* ========================================================================
   Become-producer landing + wizard
   ======================================================================== */
.producer-page{position:relative;padding:40px 0 80px;min-height:70vh;overflow:hidden;isolation:isolate}

/* Soft, blurred color blobs in the background (like the profile hero). Keeps
   the page airy and colorful instead of fully black. */
.producer-page__bg{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.producer-page__blob{
  position:absolute;width:520px;height:520px;border-radius:50%;filter:blur(110px);opacity:.45;
}
.producer-page__blob--1{background:#7c3bff;top:-180px;right:-120px;animation:profBlob 22s ease-in-out infinite}
.producer-page__blob--2{background:#ff3fa2;bottom:-220px;left:-100px;animation:profBlob 28s ease-in-out infinite reverse}
.producer-page__blob--3{background:#39e0ff;top:40%;left:30%;opacity:.22;animation:profBlob 36s ease-in-out infinite}

.producer-page__head{text-align:center;max-width:640px;margin:0 auto 28px}
.producer-page__eyebrow{
  display:inline-block;padding:6px 12px;border-radius:999px;font-size:12px;letter-spacing:.1em;
  text-transform:uppercase;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  color:#e2d9ff;margin-bottom:10px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
}
.producer-page__kicker{
  display:block;margin:0 0 4px;font-size:13.5px;letter-spacing:.04em;color:#e2d9ff;font-weight:600;
}
.producer-page__title{
  font-family:'Birzia',sans-serif;font-size:clamp(28px,4vw,42px);margin:0 0 10px;line-height:1.05;
}
.producer-page__sub{margin:0;color:var(--ink-mute,#cfc4e8);font-size:15.5px}

.producer-picker{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:900px;margin:0 auto;
}
@media (max-width:720px){.producer-picker{grid-template-columns:1fr}}
.producer-card{
  display:flex;flex-direction:column;gap:14px;padding:24px;border-radius:24px;
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 20px 60px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.18);
  text-decoration:none;color:inherit;transition:transform .25s ease,border-color .25s ease,background .25s ease;
  position:relative;overflow:hidden;isolation:isolate;
}
.producer-card:hover:not(.is-disabled){
  transform:translateY(-4px);border-color:rgba(255,63,162,.4);
  background:linear-gradient(160deg,rgba(124,59,255,.22),rgba(255,63,162,.14));
}
.producer-card.is-disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.5)}
.producer-card__badge{
  position:absolute;top:14px;left:14px;padding:4px 10px;border-radius:999px;
  font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  background:rgba(255,255,255,.08);color:#bfb2e6;
}
.producer-card__icon{
  width:56px;height:56px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#7c3bff,#ff3fa2);color:#fff;
}
.producer-card__icon svg{width:28px;height:28px}
.producer-card.is-disabled .producer-card__icon{background:rgba(255,255,255,.08);color:#8b8198}
.producer-card__title{margin:0;font-family:'Birzia',sans-serif;font-size:22px}
.producer-card__text{margin:0;color:var(--ink-mute,#cfc4e8);font-size:14.5px;line-height:1.55}
.producer-card__cta{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-weight:700;color:#ff9ecb}

.producer-steps{
  display:flex;justify-content:center;gap:14px;margin:0 0 22px;padding:0;list-style:none;
}
.producer-steps li{
  display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-mute,#cfc4e8);
}
.producer-steps li .n{
  width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.08);color:#bfb2e6;font-weight:700;
}
.producer-steps li.is-active{color:#fff}
.producer-steps li.is-active .n{background:linear-gradient(120deg,#7c3bff,#ff3fa2);color:#fff}
.producer-steps li.is-done .n{background:rgba(124,59,255,.5);color:#fff}

/* iOS glass card — mirrors .login-card visually for visual continuity. */
.producer-form{
  max-width:640px;margin:0 auto;padding:28px 26px;border-radius:26px;
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:
    0 30px 90px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -1px 0 rgba(0,0,0,.25);
  display:flex;flex-direction:column;gap:16px;
}
.producer-form label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:var(--ink-mute,#cfc4e8);font-weight:600}
.producer-form label input,
.producer-form label textarea{
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:#fff;
  border-radius:12px;padding:11px 14px;font:inherit;font-size:14px;
}
.producer-form label input:focus,
.producer-form label textarea:focus{outline:none;border-color:rgba(255,63,162,.55);background:rgba(255,255,255,.1)}

.producer-avatar{
  display:flex;align-items:center;gap:16px;padding:14px;border-radius:18px;
  background:rgba(255,255,255,.05);border:1px dashed rgba(255,255,255,.2);
}
.producer-avatar__preview{
  width:92px;height:92px;border-radius:20px;background:#15081f center/cover no-repeat;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;
  color:#8b8198;flex-shrink:0;
}
.producer-avatar__preview svg{width:36px;height:36px}
.producer-avatar__body{display:flex;flex-direction:column;gap:8px;min-width:0}
.producer-avatar__body h4{margin:0;font-family:'Birzia',sans-serif;font-size:17px;color:#fff}
.producer-avatar__body p{margin:0;font-size:12.5px;color:var(--ink-mute,#cfc4e8)}
.producer-avatar__btns{display:flex;gap:8px;flex-wrap:wrap}
.producer-avatar__btns .btn{font-size:13px;padding:8px 14px}

/* Apple-style switch + single-line consent row. */
.producer-check{
  display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:14px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);
  font-size:13.5px;color:#e6ddf8;line-height:1.35;cursor:pointer;
}
.producer-check input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}
.producer-check .ios-switch{
  flex-shrink:0;position:relative;display:inline-block;width:46px;height:28px;border-radius:999px;
  background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.12);
  transition:background .2s ease,border-color .2s ease;
}
.producer-check .ios-switch::after{
  content:"";position:absolute;top:2px;right:2px;width:22px;height:22px;border-radius:50%;
  background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.35);
  transition:transform .22s cubic-bezier(.2,.8,.2,1);
}
.producer-check input:checked + .ios-switch{
  background:linear-gradient(120deg,#7c3bff,#ff3fa2);border-color:transparent;
}
.producer-check input:checked + .ios-switch::after{transform:translateX(-18px)}
.producer-check input:focus-visible + .ios-switch{box-shadow:0 0 0 3px rgba(255,63,162,.35)}
.producer-check .ios-text{
  flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.producer-check a{color:#ff9ecb}
@media (max-width:540px){
  .producer-check{font-size:12.5px}
  .producer-check .ios-text{font-size:12.5px}
}

.producer-toolbar{
  display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap;
}
.producer-search{
  flex:1;min-width:220px;display:flex;gap:8px;align-items:center;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:10px 12px;
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
.producer-search input{background:transparent;border:0;color:#fff;font:inherit;font-size:14px;width:100%;min-width:0}
.producer-search input:focus{outline:none}
.producer-search__status{font-size:12px;color:var(--ink-mute,#cfc4e8);white-space:nowrap}

/* Track picker: 2 columns on small/medium desktop, 3 on wide; single column on phones
   with stacked artwork + text so titles don’t crush. */
.producer-tracks{
  display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));
}
@media (min-width:900px){
  .producer-tracks{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:420px){.producer-tracks{gap:10px}}

.producer-track{
  position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;
  padding:10px 12px;border-radius:18px;
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 10px 30px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.14);
  cursor:pointer;text-align:start;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
  -webkit-tap-highlight-color:transparent;
}
.producer-track:hover{background:rgba(255,255,255,.09);transform:translateY(-1px)}
.producer-track.is-selected{
  background:linear-gradient(135deg,rgba(124,59,255,.28),rgba(255,63,162,.22));
  border-color:rgba(255,63,162,.55);
}
.producer-track__media{
  position:relative;width:72px;height:72px;border-radius:14px;background:#15081f center/cover no-repeat;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);flex-shrink:0;overflow:hidden;
}
.producer-track__body{min-width:0;display:flex;flex-direction:column;gap:4px}
.producer-track__title{
  margin:0;font-family:'Birzia',sans-serif;font-size:15px;line-height:1.2;color:#fff;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  word-break:break-word;overflow-wrap:anywhere;
}
.producer-track__album{
  margin:0;font-size:11.5px;color:var(--ink-mute,#cfc4e8);line-height:1.35;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  word-break:break-word;overflow-wrap:anywhere;
}
.producer-track__check{
  position:absolute;top:5px;inset-inline-start:5px;z-index:1;
  width:26px;height:26px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.28);color:transparent;
  box-shadow:0 2px 8px rgba(0,0,0,.45);
  pointer-events:none;
}
.producer-track__check svg{width:16px;height:16px}
.producer-track.is-selected .producer-track__check{
  background:linear-gradient(120deg,#7c3bff,#ff3fa2);color:#fff;border-color:transparent;
}

@media (max-width:640px){
  .producer-track{
    grid-template-columns:1fr;
    grid-template-rows:auto auto;
    padding:14px;
    align-items:stretch;
  }
  .producer-track__media{
    grid-row:1;
    width:100%;max-width:min(220px,100%);height:auto;aspect-ratio:1;
    margin-inline:auto;
  }
  .producer-track__body{
    grid-row:2;
    text-align:center;
    align-items:center;
  }
  .producer-track__title,.producer-track__album{
    -webkit-line-clamp:4;
  }
}

.producer-actions{display:flex;justify-content:space-between;gap:10px;margin-top:22px;flex-wrap:wrap}
.producer-actions .btn{min-width:140px}

/* ── Success screen (confetti) ── */
.producer-success{
  position:relative;max-width:560px;margin:0 auto;padding:34px 28px;border-radius:28px;text-align:center;
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 30px 90px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.22);
  overflow:hidden;
}
.producer-success__emoji{font-size:64px;line-height:1;margin-bottom:10px;animation:successPop .9s cubic-bezier(.2,.8,.2,1)}
@keyframes successPop{0%{transform:scale(.4) rotate(-14deg);opacity:0}60%{transform:scale(1.15) rotate(6deg);opacity:1}100%{transform:scale(1) rotate(0)}}
.producer-success__title{margin:0 0 10px;font-family:'Birzia',sans-serif;font-size:clamp(24px,3.4vw,34px)}
.producer-success__text{margin:0 0 22px;color:var(--ink-mute,#cfc4e8);font-size:15px;line-height:1.6}
.producer-success .btn{min-width:180px}

.producer-confetti{
  position:fixed;inset:0;pointer-events:none;z-index:50;overflow:hidden;
}
.producer-confetti i{
  position:absolute;top:-10vh;width:9px;height:14px;border-radius:2px;opacity:.92;
  animation:confettiFall 3.6s cubic-bezier(.2,.8,.2,1) forwards;
}
@keyframes confettiFall{
  0%{transform:translate3d(0,-10vh,0) rotate(0);opacity:0}
  10%{opacity:1}
  100%{transform:translate3d(var(--cx,0),110vh,0) rotate(var(--cr,720deg));opacity:.95}
}

/* ========================================================================
   Profile edit modal
   ======================================================================== */
.profile-modal{
  position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;
  padding:20px;
}
.profile-modal[hidden]{display:none}
.profile-modal__backdrop{
  position:absolute;inset:0;background:rgba(5,0,18,.7);backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  animation:modalFade .25s ease;
}
@keyframes modalFade{from{opacity:0}to{opacity:1}}
.profile-modal__panel{
  position:relative;width:min(560px,100%);max-height:92vh;overflow:auto;
  padding:22px 24px;border-radius:26px;
  background:rgba(14,4,32,.88);border:1px solid rgba(255,255,255,.14);
  box-shadow:0 30px 80px -20px rgba(0,0,0,.6);
  animation:modalIn .35s cubic-bezier(.2,.8,.2,1);
}
@keyframes modalIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.profile-modal__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.profile-modal__head h3{margin:0;font-family:'Birzia',sans-serif;font-size:22px}
.profile-modal__head .icon-btn{width:36px;height:36px;border-radius:12px;background:transparent;border:0;color:inherit;cursor:pointer}
.profile-modal__head .icon-btn:hover{background:rgba(255,255,255,.08)}

.profile-form{display:flex;flex-direction:column;gap:14px}
.profile-form__row{display:flex;flex-direction:column;gap:6px}
.profile-form__row--2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:520px){.profile-form__row--2{grid-template-columns:1fr}}
.profile-form__field{display:flex;flex-direction:column;gap:6px;min-width:0}
.profile-form__field span{font-size:12.5px;color:var(--ink-mute,#a69cc2);font-weight:600}
.profile-form__field input,
.profile-form__field textarea{
  width:100%;box-sizing:border-box;min-width:0;
  padding:12px 14px;border-radius:14px;font:inherit;color:inherit;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
  transition:border-color .2s ease, background .2s ease;
}
.profile-form__field input:focus,
.profile-form__field textarea:focus{outline:none;border-color:rgba(124,59,255,.6);background:rgba(255,255,255,.08)}
.profile-form__field textarea{resize:vertical;min-height:80px;font-family:inherit}

.profile-form__label{font-size:12.5px;color:var(--ink-mute,#a69cc2);font-weight:600}
.profile-form__radios{display:flex;gap:10px;margin-top:6px}
.profile-form__radios label{
  flex:1;display:flex;align-items:center;justify-content:center;gap:6px;
  padding:10px;border-radius:12px;cursor:pointer;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  font-weight:600;
}
.profile-form__radios label:has(input:checked){
  background:linear-gradient(135deg,rgba(124,59,255,.25),rgba(255,63,162,.2));
  border-color:rgba(124,59,255,.55);
}
.profile-form__radios input{accent-color:#7c3bff}

.profile-form__error{
  background:rgba(255,73,124,.12);border:1px solid rgba(255,73,124,.4);color:#ffb2c8;
  padding:10px 12px;border-radius:12px;font-size:13.5px;
}

/* ========== Static Content Page ========== */
.static-page{min-height:70vh}

.static-page__hero{
  position:relative;overflow:hidden;
  padding:80px 0 64px;
  text-align:center;
}
.static-page__hero::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(122,75,255,.18),transparent 70%);
  pointer-events:none;
}
.static-page__hero::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(13,13,13,0) 60%,#0d0d0d 100%);
  pointer-events:none;
}
.static-page__hero-glow{
  position:absolute;top:-160px;left:50%;transform:translateX(-50%);
  width:700px;height:460px;
  background:radial-gradient(ellipse at 50% 30%,rgba(255,63,162,.13) 0%,rgba(122,75,255,.12) 40%,transparent 70%);
  pointer-events:none;
}
.static-page__hero-inner{
  position:relative;z-index:1;
  display:flex;flex-direction:column;align-items:center;gap:20px;
}
.static-page__back{
  display:inline-flex;align-items:center;gap:6px;
  font-size:13px;font-weight:600;color:var(--ink-dim);letter-spacing:.3px;
  text-decoration:none;transition:color .2s;
  align-self:flex-start;
}
.static-page__back:hover{color:#fff}
.static-page__back svg{width:16px;height:16px}
.static-page__title{
  font-size:clamp(32px,5.5vw,64px);font-weight:900;line-height:1.1;
  margin:0;
  background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;
}

.static-page__body{padding:0 0 88px}
.static-page__content{
  max-width:800px;margin:0 auto;
  padding-top:16px;
}

/* ========== Artist local chip ========== */
.artist-card__chip--local{
  background:rgba(52,211,153,.1);
  border:1px solid rgba(52,211,153,.3);
  color:rgb(110,231,183);
}
.profile-form__foot{display:flex;gap:10px;justify-content:flex-end;margin-top:4px;flex-wrap:wrap}
