
/* Event-first single-page navigation and menus. Original theme stays intact. */
#details,#price,#lineup,#rules,#join,#menu{scroll-margin-top:28px}
.site-header nav{gap:20px;flex-wrap:wrap;justify-content:end}
.site-header nav a{white-space:nowrap}
.hero-event-tag{display:inline-block;background:#19d3ef14;border-left:3px solid var(--acid);padding:7px 15px;color:#f5f5ef!important;font-size:clamp(14px,2.4vw,19px)!important;font-weight:800;letter-spacing:.08em;line-height:1.5!important}
.hero-action-row{position:relative;z-index:2;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:26px}
.hero-main-action,.hero-sub-action{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;padding:14px 22px;border:1px solid var(--acid);border-radius:6px;font-weight:800;font-size:14px;min-height:51px}
.hero-main-action{background:var(--acid);color:#0a1015}.hero-main-action:hover{color:#0a1015;background:#70e6f5}
.hero-sub-action{border-color:#5b5b63;background:#202025;color:#e5e5e9}.hero-sub-action:hover{border-color:var(--acid)}
.section-tag{display:block;color:var(--acid);font-size:10px;font-weight:800;letter-spacing:.17em;margin-bottom:8px}
.section-intro>p{color:#bdbdc5;font-size:15px;line-height:1.9;margin-top:15px}.event-overview{padding-bottom:56px}
.overview-grid{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:13px;margin-top:28px}
.overview-grid>div{border:1px solid #34343b;background:#1d1d20;padding:22px 20px;border-radius:7px;min-width:0}
.overview-grid>div>span{display:block;color:#a9a9b0;font-size:11px;margin-bottom:12px}
.overview-grid strong{display:block;font-size:clamp(16px,2vw,22px);font-weight:800;line-height:1.5}
.overview-venue strong{font-size:17px}
.overview-grid small{display:block;color:#a9a9b0;font-size:11px;line-height:1.7;margin-top:6px}
.overview-grid a{display:inline-block;margin-top:13px;font-size:12px;color:var(--acid);text-decoration:underline;text-underline-offset:3px}
.event-prices{padding-top:38px;padding-bottom:76px}
.price-lead{color:#bdbdc5;font-size:13px;margin-top:10px}
.entry-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:25px}
.entry-price-card{background:#1c1c20;border:1px solid #45454b;border-radius:8px;padding:23px 25px;display:flex;flex-direction:column;min-height:210px}
.entry-price-card.featured{background:linear-gradient(135deg,#104451,#132833 70%);border-color:#21a9c3}
.price-label{font-size:15px;font-weight:800}.price-value{font-size:clamp(35px,5vw,58px);letter-spacing:-.05em;line-height:1.2;margin-top:15px}.featured .price-value{color:#66e4fa}
.price-action{margin-top:auto;display:inline-flex;align-items:center;justify-content:space-between;width:fit-content;gap:38px;padding-top:16px;font-weight:800;color:#a2f4ff;font-size:13px}.price-action:hover{color:white}
.price-secondary-note{font-size:12px;color:#aeb0b6;margin-top:auto;padding-top:16px}
.event-rules{scroll-margin-top:28px}
.extra-menu{border-top:1px solid var(--line);background:var(--bg)}
.extra-menu-lead{color:#b3b3ba;line-height:1.8;font-size:12px;margin-top:10px;max-width:740px}
.shisha-compact{margin-top:25px;border:1px solid #37373d;background:#1a1a1d;border-radius:7px;padding:21px 23px;max-width:770px}
.shisha-compact-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px solid #393940}
.shisha-compact-head h3{font-size:17px}.shisha-compact-head span{font-size:9px;letter-spacing:.12em;color:#a9a9b4}
.shisha-compact dl{margin:4px 0 0}.shisha-compact dl>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-block:9px;border-bottom:1px solid #29292f}
.shisha-compact dl>div:last-child{border:0;padding-bottom:0}.shisha-compact dt{font-size:13px;color:#c9c9d1}.shisha-compact dd{margin:0;font-size:16px;font-weight:800;white-space:nowrap}
.gallery-block{margin-top:40px}.gallery-head{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-bottom:14px}.gallery-head h3{font-size:20px}.gallery-head span{color:#b4b4bd;font-size:11px}
.menu-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.menu-gallery.food-gallery{grid-template-columns:repeat(2,minmax(0,1fr));max-width:500px}
.menu-image-button{min-width:0;text-align:left;display:flex;flex-direction:column;border:1px solid #494951;border-radius:8px;padding:7px;background:#1c1c20;color:#ececf0;overflow:hidden}
.menu-image-button:hover{border-color:var(--acid);transform:translateY(-2px)}
.menu-image-button:focus-visible{outline-color:var(--acid)}
.menu-image-button img{display:block;object-fit:contain;object-position:top center;width:100%;height:255px;background:#1c1c1e;border-radius:5px}
.menu-image-button>span{font-size:12px;font-weight:700;display:flex;justify-content:space-between;gap:8px;padding:12px 8px 5px;line-height:1.35}
.menu-image-button>span span{color:var(--acid)}.menu-note{margin-top:32px;font-size:11px;color:#9899a4}
.menu-lightbox{background:#17171b;color:#fff;border:1px solid #54545a;border-radius:10px;padding:0;max-width:min(95vw,1040px);max-height:94vh;box-shadow:0 24px 70px #000c;width:fit-content}
.menu-lightbox::backdrop{background:rgba(0,0,0,.88)}
.lightbox-head{position:sticky;top:0;z-index:1;background:#17171b;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 15px;border-bottom:1px solid #34343b}
.lightbox-head p{font-size:12px;font-weight:700}.lightbox-close{padding:6px 12px;border:1px solid #62626b;border-radius:5px;background:#28282d;font-size:12px;white-space:nowrap}
.lightbox-close:hover{border-color:var(--acid)}.lightbox-content{overflow:auto;max-height:calc(94vh - 56px);text-align:center}
.lightbox-content img{display:block;max-width:100%;width:auto;height:auto;max-height:none;margin:0 auto}
@media(max-width:850px){.overview-grid{grid-template-columns:1fr 1fr}.overview-venue{grid-column:1/-1}.menu-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.menu-image-button img{height:230px}}
@media(max-width:720px){.site-header nav{gap:10px}.site-header nav a{font-size:10px}.site-header nav>a:nth-child(3){display:none}.site-header nav .nav-join{padding:8px 10px}.hero-event-tag{font-size:14px!important}.hero-action-row{gap:9px;margin-top:18px}.hero-main-action,.hero-sub-action{min-height:48px;font-size:12px;gap:14px;padding:12px 14px}.jump-nav{gap:8px;padding-top:17px;padding-bottom:18px}.jump-caption{display:none}.jump-nav a{font-size:11px;padding:7px 10px;min-height:34px;gap:5px}.section-intro>p{font-size:13px}.overview-grid{grid-template-columns:1fr 1fr;gap:10px}.overview-grid>div{padding:15px}.overview-grid strong{font-size:15px}.overview-venue{grid-column:1/-1}.event-overview{padding-bottom:35px}.event-prices{padding-top:30px;padding-bottom:48px}.entry-price-grid{gap:10px}.entry-price-card{padding:17px 13px;min-height:174px}.price-label{font-size:12px}.price-value{font-size:33px}.price-action{font-size:11px;gap:8px}.gallery-block{margin-top:32px}.gallery-head h3{font-size:17px}.gallery-head span{font-size:10px}.menu-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.menu-image-button img{height:195px}.menu-gallery.food-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-image-button>span{font-size:10px;padding:9px 5px 5px}.shisha-compact{padding:16px}.shisha-compact-head h3{font-size:16px}}
@media(max-width:370px){.site-header nav>a:first-child{display:none}.entry-price-card{padding:13px 11px}.price-value{font-size:28px}.menu-image-button img{height:165px}}
@media(prefers-reduced-motion:reduce){.menu-image-button{transition:none}}
/* The base stylesheet hides the second header link on mobile; keep the price link visible. */
@media(max-width:720px){.site-header nav>a:nth-child(2){display:inline-flex}}


/* === ANIMAD 2026: clean event-first header === */
.site-header{justify-content:flex-end;min-height:76px;height:auto;padding-block:16px}
.site-header nav{width:100%;justify-content:flex-end;gap:clamp(10px,1.8vw,22px)}
.site-header nav a{display:inline-flex;align-items:center}
.site-header nav .nav-menu-link{color:#c6c8d0}
.site-header nav .nav-menu-link:hover{color:var(--acid)}
.hero .hero-kicker{font-size:clamp(20px,3vw,35px);font-weight:850;line-height:1.55;letter-spacing:.008em;margin-top:28px;max-width:90%;}
.hero .hero-kicker span{color:var(--acid)}
.event-overview .section-intro>p{display:none}
.event-overview .overview-grid{margin-top:22px}
.extra-menu .extra-menu-lead{display:none}
.extra-menu .shisha-compact{margin-top:22px}
/* Champagne is an optional reservation CTA in the entry section, not a ticket purchase. */
.champagne-reservation{margin-top:23px;padding:20px 23px;background:#17191e;border:1px solid #3b4149;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.champagne-reservation h3{font-size:18px;letter-spacing:.01em}
.champagne-reservation .section-tag{margin-bottom:3px;color:#aa8aff}
.champagne-reservation-button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;background:#27202f;border:1px solid #7452a2;color:#fff;padding:12px 17px;border-radius:6px;font-size:13px;font-weight:800;min-height:44px;white-space:normal}
.champagne-reservation-button:hover{border-color:#bba2ff;color:#fff;background:#382743}
.champagne-reservation-button span{color:#d1b1ff}
/* Event photography: hidden until the actual uploaded photo is available. */
.event-photo-section{padding-block:18px 35px}
.event-photo-section[hidden]{display:none!important}
.event-photo-frame{margin:0;position:relative;overflow:hidden;border-radius:8px;background:#15151b;border:1px solid #333844;aspect-ratio:2.2;max-height:420px}
.event-photo-frame:after{content:'';pointer-events:none;position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,12,16,.75),transparent 40%);}
.event-photo-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 45%}
.event-photo-frame figcaption{position:absolute;z-index:1;bottom:16px;left:20px;font-size:11px;color:#eefaff;font-weight:800;letter-spacing:.22em;text-shadow:0 2px 5px #000}
@media(max-width:720px){
 .site-header{padding-top:12px;padding-bottom:12px;min-height:64px}
 .site-header nav{justify-content:center;gap:8px 12px}
 .site-header nav a,.site-header nav .nav-menu-link{font-size:11px}
 .site-header nav>a:nth-child(3){display:inline-flex}
 .site-header nav .nav-join{padding:7px 10px}
 .hero .hero-kicker{font-size:clamp(19px,5.3vw,26px);line-height:1.48;max-width:90%;margin-top:20px}
 .champagne-reservation{padding:17px;gap:12px}
 .champagne-reservation-button{width:100%;min-height:48px}
 .event-photo-frame{aspect-ratio:1.4;max-height:350px}
 .event-photo-frame figcaption{bottom:12px;left:13px;font-size:9px}
}
@media(max-width:370px){.site-header nav{gap:8px 10px}.site-header nav>a:first-child{display:inline-flex}}


/* EVENT PHOTO: atmospheric, deliberately faint collage behind the hero only.
   The photo is a background treatment, not a separate gallery/section. */
.hero{isolation:isolate;position:relative}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:url('./assets/event/event-scene.jpg');
  background-size:cover;
  background-position:center 47%;
  background-repeat:no-repeat;
  opacity:.17;
  filter:saturate(1.05) blur(.6px);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.64) 26%,#000 65%,rgba(0,0,0,.83) 100%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.64) 26%,#000 65%,rgba(0,0,0,.83) 100%);
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(15,15,17,.42) 0%,transparent 20%,transparent 68%,var(--bg) 100%);
}
.hero>.hero-top,.hero>.hero-kicker,.hero>h1,.hero>.hero-schedule,.hero>.hero-action-row{position:relative;z-index:2}
@media(max-width:720px){
  .hero::before{opacity:.13;background-position:55% center;
    -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.5),#000 32%,rgba(0,0,0,.55) 90%,transparent);
    mask-image:linear-gradient(180deg,rgba(0,0,0,.5),#000 32%,rgba(0,0,0,.55) 90%,transparent)}
  .hero::after{background:linear-gradient(180deg,rgba(15,15,17,.45),transparent 24%,transparent 65%,var(--bg))}
}

/* Hero now contains only the two-line event tagline; photo remains subtle. */
.hero .hero-kicker{max-width:100%;}


/* Edition, date, time, location and genres are collected in Event Information. */
.hero{padding-top:clamp(28px,5vw,64px);padding-bottom:clamp(38px,6vw,76px)}
.hero .hero-kicker{margin-top:0}
.hero .hero-action-row{margin-top:clamp(22px,3.5vw,44px)}
.event-overview .overview-edition{display:block;color:var(--acid);font-size:13px;font-weight:900;letter-spacing:.09em;margin-bottom:5px}
.event-overview .overview-grid>div:first-child>span:nth-child(2){margin-bottom:8px}
.overview-genres{margin-top:14px;padding:20px 22px;border:1px solid #34343b;background:#1d1d20;border-radius:7px}
.overview-genres-label{display:block;color:var(--acid);font-size:11px;font-weight:900;letter-spacing:.12em;margin-bottom:8px}
.overview-genres p{color:#e0e4ea;font-size:clamp(12px,1.5vw,15px);line-height:1.85;font-weight:700;letter-spacing:.015em;overflow-wrap:anywhere}
/* Side-by-side roles: two equal columns on desktop and mobile. */
.lineup-grid.confirmed .lineup-side-by-side{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,3vw,28px);align-items:start}
.lineup-side-role{min-width:0}
.lineup-grid.confirmed .lineup-side-role .lineup-role{margin:10px 0 18px;padding-top:19px;border-top:1px solid var(--line);font-size:clamp(13px,1.8vw,17px);letter-spacing:.035em;overflow-wrap:anywhere}
.lineup-side-role .artist-card{max-width:260px}
@media(max-width:720px){
 .hero{padding-top:28px;padding-bottom:38px}
 .hero .hero-kicker{margin-top:0}
 .event-overview .overview-edition{font-size:11px}
 .overview-genres{padding:15px;margin-top:10px}
 .overview-genres p{font-size:11px}
 .lineup-grid.confirmed .lineup-side-by-side{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .lineup-grid.confirmed .lineup-side-role .lineup-role{font-size:12px;letter-spacing:0;padding-top:12px;margin-top:0;margin-bottom:12px;min-height:31px}
 .lineup-side-role .artist-card{max-width:none}
 .lineup-side-role .artist-info h3{font-size:clamp(13px,3.3vw,17px);overflow-wrap:anywhere}
}


/* Small birthday annotations above only the named lineup artists. */
.lineup-grid.confirmed .artist-info .birthday-label{
  display:inline-block;
  margin-top:8px;
  padding:3px 7px;
  border:1px solid rgba(172,146,237,.52);
  border-radius:3px;
  color:#d9c6ff;
  background:rgba(118,78,190,.12);
  font-size:10px;
  font-weight:850;
  letter-spacing:.085em;
  line-height:1.5;
  white-space:nowrap;
}
.lineup-grid.confirmed .artist-info .birthday-label + h3{margin-top:6px}
@media(max-width:480px){
  .lineup-grid.confirmed .artist-info .birthday-label{font-size:9px;letter-spacing:.035em;padding:3px 5px}
}


/* Restore the slanted cyan genre ribbon between the hero and event details.
   All event dates, times and venues stay exclusively in EVENT INFORMATION. */
.genre-ticker{
  position:relative;
  z-index:3;
  margin-top:0;
  padding:13px 18px;
  transform:rotate(-1.1deg);
  width:calc(100% - 2px);
  margin-inline:1px;
  background:var(--acid,#19d3ef);
  color:#101012;
  text-align:center;
  overflow:hidden;
  box-shadow:0 3px 12px rgba(0,0,0,.23);
}
.genre-ticker .genre-ticker-desktop{display:block;line-height:1.5}
.genre-ticker .genre-ticker-desktop span{
  display:block;
  font-size:clamp(11px,1.4vw,17px);
  font-weight:950;
  letter-spacing:.045em;
  white-space:nowrap;
}
.genre-ticker .genre-ticker-mobile{display:none}
@media(max-width:720px){
  .genre-ticker{padding:7px 4px;transform:rotate(-1deg)}
  .genre-ticker .genre-ticker-desktop{display:none}
  .genre-ticker .genre-ticker-mobile{display:flex;flex-direction:column;align-items:center;gap:0;line-height:1.45}
  .genre-ticker .genre-ticker-mobile span{display:block;white-space:nowrap;font-size:clamp(9px,2.46vw,11px);font-weight:950;letter-spacing:-.035em;line-height:1.45}
}

/* Compact shisha price jump immediately above champagne reservation. */
.shisha-price-jump{
 display:flex;align-items:center;justify-content:space-between;gap:12px;
 width:100%;margin-top:19px;padding:10px 15px;min-height:47px;
 border:1px solid #343841;border-radius:6px;background:#17191d;
 color:#d6dce3;font-size:13px;line-height:1.5;
}
.shisha-price-jump:hover{border-color:#21b6d0;background:#19222a;color:#fff}
.shisha-price-jump-label{font-weight:720}
.shisha-price-jump-label strong{font-weight:900;color:#f8faff;margin-left:8px;font-size:14px}
.shisha-price-jump-guide{color:#8cdfee;white-space:nowrap;font-size:11px;font-weight:780}
.shisha-price-jump:focus-visible{outline:2px solid var(--acid);outline-offset:3px}
@media(max-width:720px){.shisha-price-jump{padding:9px 12px;min-height:44px;font-size:12px}.shisha-price-jump-label strong{font-size:13px}.shisha-price-jump-guide{font-size:10px}}
