:root {
  --bg: #050816;
  --bg-soft: #0b1020;
  --card-bg: #0f172a;
  --accent: #6366f1;
  --accent-soft: rgba(99, 102, 241, 0.15);
  --accent-strong: #4f46e5;
  --text: #e5e7eb;
  --text-soft: #9ca3af;
  --border-subtle: rgba(148, 163, 184, 0.3);
  --danger: #f97373;
  --radius-lg: 20px;
  --radius-md: 14px;
  --shadow-soft: 0 22px 40px rgba(15, 23, 42, 0.6);
  --shadow-card: 0 18px 35px rgba(15, 23, 42, 0.7);
  --modal-backdrop: rgba(2, 6, 23, 0.7);
  --container-max: 1120px;
  --container-pad: 24px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
  width: 100%;
}

[hidden] {
  display: none !important;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

body {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text",
    "Inter", sans-serif;
  background-color: #050816;
  background-image:
    radial-gradient(140% 112% at 30% 18%, rgba(76, 92, 255, 0.078) 0%, rgba(76, 92, 255, 0.048) 30%, rgba(76, 92, 255, 0.02) 44%, rgba(76, 92, 255, 0) 68%),
    radial-gradient(134% 110% at 78% 28%, rgba(128, 70, 255, 0.068) 0%, rgba(128, 70, 255, 0.042) 28%, rgba(128, 70, 255, 0.016) 44%, rgba(128, 70, 255, 0) 70%),
    radial-gradient(130% 106% at 18% 72%, rgba(31, 191, 155, 0.042) 0%, rgba(31, 191, 155, 0.025) 28%, rgba(31, 191, 155, 0.01) 42%, rgba(31, 191, 155, 0) 70%),
    linear-gradient(180deg, #050814 0%, #07101f 48%, #030611 100%);
  color: var(--text);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

@media (min-width: 1100px) {
  body {
    background-image:
      radial-gradient(140% 112% at 30% 18%, rgba(76, 92, 255, 0.078) 0%, rgba(76, 92, 255, 0.048) 30%, rgba(76, 92, 255, 0.02) 44%, rgba(76, 92, 255, 0) 68%),
      radial-gradient(134% 110% at 78% 28%, rgba(128, 70, 255, 0.068) 0%, rgba(128, 70, 255, 0.042) 28%, rgba(128, 70, 255, 0.016) 44%, rgba(128, 70, 255, 0) 70%),
      radial-gradient(130% 106% at 18% 72%, rgba(31, 191, 155, 0.042) 0%, rgba(31, 191, 155, 0.025) 28%, rgba(31, 191, 155, 0.01) 42%, rgba(31, 191, 155, 0) 70%),
      linear-gradient(180deg, #050814 0%, #07101f 48%, #030611 100%),
      repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.018) 0 1px, transparent 1px 3px),
      repeating-linear-gradient(90deg, rgba(148, 163, 184, 0.011) 0 1px, transparent 1px 4px);
  }
}

img,
picture,
video,
canvas {
  display: block;
  max-width: 100%;
  height: auto;
}

svg {
  max-width: 100%;
}

.container {
  width: 100%;
  max-width: calc(var(--container-max) + (var(--container-pad) * 2));
  margin: 0 auto;
  padding-left: var(--container-pad);
  padding-right: var(--container-pad);
}

.section {
  padding: 64px 0;
}

.section-accent {
  background: radial-gradient(circle at top left, #111827 0, #020617 55%);
}

.section-header {
  text-align: center;
  margin-bottom: 32px;
}

.section-header.left {
  text-align: left;
}

.section-header h2 {
  font-size: 28px;
  margin: 0 0 8px;
}

.section-header p {
  margin: 0;
  color: var(--text-soft);
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  backdrop-filter: blur(16px);
  background: linear-gradient(to bottom, rgba(2, 6, 23, 0.95), rgba(2, 6, 23, 0.8));
  border-bottom: 1px solid rgba(15, 23, 42, 0.9);
}

.nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 64px;
}

.logo {
  display: inline-flex;
  align-items: center;
  font-weight: 700;
  letter-spacing: 0.06em;
  font-size: 18px;
  color: var(--text);
  text-decoration: none;
}

.site-header .logo {
  gap: 12px;
  font-weight: 760;
  letter-spacing: 0.04em;
}

.site-header .logo::before {
  content: "";
  width: 48px;
  height: 48px;
  border-radius: 12px;
  flex: 0 0 48px;
  display: block;
  overflow: hidden;
  background: rgba(2, 6, 23, 0.5) url("/images/brand/account-avatar.svg") center / cover no-repeat;
  box-shadow: 0 14px 34px rgba(37, 99, 235, 0.24);
}

.logo:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.85);
  outline-offset: 3px;
  border-radius: 8px;
}

.nav-links {
  display: flex;
  gap: 20px;
  font-size: 14px;
}

.nav-links a {
  color: var(--text-soft);
  text-decoration: none;
  padding: 6px 0;
  position: relative;
}

.nav-links a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 0;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6366f1, #22d3ee);
  transition: width 0.2s ease;
}

.nav-links a:hover {
  color: #f9fafb;
}

.nav-links a:hover::after {
  width: 100%;
}

.nav-right {
  display: flex;
  align-items: center;
  gap: 12px;
}

.auth-trigger-btn {
  position: relative;
  isolation: isolate;
}

.auth-trigger-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.auth-trigger-badge {
  position: absolute;
  top: -7px;
  right: -7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  border: 1px solid rgba(56, 189, 248, 0.48);
  background: linear-gradient(135deg, rgba(30, 64, 175, 0.96), rgba(6, 182, 212, 0.9));
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.52);
  color: #e0f2fe;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.01em;
  pointer-events: none;
  z-index: 1;
}

.auth-trigger-btn.has-notifications {
  border-color: rgba(56, 189, 248, 0.5);
  color: #dbeafe;
}

.lang-switch {
  position: relative;
  z-index: 20;
}

.language-current {
  height: 38px;
  min-width: 72px;
  padding: 0 11px 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background:
    radial-gradient(circle at 100% 0, rgba(99, 91, 255, 0.22), transparent 48%),
    rgba(15, 23, 42, 0.56);
  color: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 12px;
  font-weight: 820;
  letter-spacing: 0.04em;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
  transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.language-current:hover,
.language-switcher.is-open .language-current,
.language-switcher[data-open="true"] .language-current {
  border-color: rgba(129, 140, 248, 0.62);
  background:
    radial-gradient(circle at 100% 0, rgba(99, 91, 255, 0.35), transparent 48%),
    rgba(21, 29, 63, 0.74);
  transform: translateY(-1px);
  box-shadow:
    0 14px 32px rgba(79, 70, 229, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.language-current:focus-visible {
  outline: 2px solid rgba(129, 140, 248, 0.78);
  outline-offset: 2px;
}

.language-current-code {
  display: inline-flex;
  min-width: 28px;
  height: 24px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: linear-gradient(135deg, #8b86ff, #5547e8);
  box-shadow: 0 8px 20px rgba(79, 70, 229, 0.32);
}

.language-chevron {
  width: 14px;
  height: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 0.75;
  transition: transform 0.34s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease;
}

.language-switcher.is-open .language-chevron,
.language-switcher[data-open="true"] .language-chevron {
  transform: rotate(180deg);
  opacity: 1;
}

.language-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  width: 156px;
  padding: 6px;
  border-radius: 17px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background:
    radial-gradient(circle at 100% 0, rgba(99, 91, 255, 0.24), transparent 48%),
    rgba(8, 13, 28, 0.94);
  box-shadow:
    0 22px 52px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-8px) scale(0.96);
  transform-origin: top right;
  transition:
    opacity 0.22s ease,
    visibility 0.22s ease,
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1);
}

.language-menu::before {
  content: none !important;
  display: none !important;
}

.language-switcher.is-open .language-menu,
.language-switcher[data-open="true"] .language-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.language-option {
  width: 100%;
  min-height: 36px;
  padding: 0 10px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: rgba(226, 232, 240, 0.76);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: 12px;
  font-weight: 740;
  text-align: left;
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.26s ease,
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.16s ease,
    color 0.16s ease;
}

.language-switcher.is-open .language-option,
.language-switcher[data-open="true"] .language-option {
  opacity: 1;
  transform: translateY(0);
}

.language-switcher.is-open .language-option:nth-child(1),
.language-switcher[data-open="true"] .language-option:nth-child(1) {
  transition-delay: 0.03s;
}

.language-switcher.is-open .language-option:nth-child(2),
.language-switcher[data-open="true"] .language-option:nth-child(2) {
  transition-delay: 0.06s;
}

.language-switcher.is-open .language-option:nth-child(3),
.language-switcher[data-open="true"] .language-option:nth-child(3) {
  transition-delay: 0.09s;
}

.language-switcher.is-open .language-option:nth-child(4),
.language-switcher[data-open="true"] .language-option:nth-child(4) {
  transition-delay: 0.12s;
}

.language-option:hover {
  background: rgba(99, 91, 255, 0.16);
  color: #fff;
  transform: translateX(2px);
}

.language-option:focus-visible {
  outline: 2px solid rgba(129, 140, 248, 0.72);
  outline-offset: 2px;
}

.language-option-code {
  width: 30px;
  height: 23px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background: rgba(15, 23, 42, 0.56);
  color: rgba(226, 232, 240, 0.84);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: 0.04em;
  flex: 0 0 auto;
  transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease;
}

.language-option:hover .language-option-code {
  border-color: rgba(129, 140, 248, 0.52);
  background: rgba(99, 91, 255, 0.28);
  color: #fff;
}

.language-option-name {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.language-option[hidden] {
  display: none !important;
}

@media (max-width: 760px) {
  .language-current {
    height: 28px;
    min-width: 50px;
    padding: 0 7px 0 8px;
    gap: 4px;
    font-size: 10px;
  }

  .language-current-code {
    min-width: 25px;
    height: 21px;
    font-size: 10px;
  }

  .language-chevron {
    width: 11px;
    height: 11px;
  }

  .language-menu {
    top: calc(100% + 6px);
    width: 132px;
    border-radius: 15px;
    padding: 5px;
  }

  .language-option {
    min-height: 33px;
    border-radius: 11px;
    padding: 0 8px;
    font-size: 11px;
  }

  .language-option-code {
    width: 27px;
    height: 21px;
    font-size: 9px;
  }
}

.hero {
  padding: 56px 0 40px;
}

.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2.3fr);
  gap: 32px;
  align-items: center;
}

.hero-text h1 {
  font-size: 38px;
  line-height: 1.1;
  margin: 12px 0 16px;
}

.hero-text p {
  max-width: 520px;
  color: var(--text-soft);
}

.pill {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  background: rgba(15, 23, 42, 0.9);
  border: 1px solid rgba(148, 163, 184, 0.5);
  color: var(--text-soft);
}

.hero-actions {
  display: flex;
  gap: 12px;
  margin: 20px 0 10px;
}

.hero-note {
  font-size: 12px;
  color: var(--text-soft);
}

.hero-disclosure {
  margin: 10px 0 0;
  max-width: 620px;
  font-size: 12px;
  line-height: 1.45;
  color: rgba(148, 163, 184, 0.94);
}

.hero-ticket-stage {
  position: relative;
  width: 470px;
  max-width: 100%;
  margin-left: auto;
  isolation: isolate;
}

.hero-card {
  --hero-card-accent: var(--accent);
  position: relative;
  z-index: 3;
  width: 100%;
  min-height: 272px;
  max-width: 100%;
  padding: 1px;
  border-radius: 30px;
  overflow: hidden;
  border: 0;
  background:
    linear-gradient(
      160deg,
      rgba(255, 255, 255, 0.15) 0%,
      rgba(151, 167, 226, 0.07) 34%,
      color-mix(in srgb, var(--hero-card-accent) 54%, transparent) 100%
    );
  box-shadow:
    0 24px 70px rgba(0, 0, 0, 0.32),
    0 0 46px color-mix(in srgb, var(--hero-card-accent) 12%, transparent);
  transition: box-shadow .3s ease;
}

.hero-card-inner {
  min-height: 270px;
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 29px;
  background: linear-gradient(180deg, rgba(25, 35, 76, 0.98), rgba(12, 18, 41, 0.99));
  position: relative;
  overflow: hidden;
}

.hero-card-inner::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 52px;
  bottom: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 78% 18%, color-mix(in srgb, var(--hero-card-accent) 42%, transparent), transparent 40%),
    radial-gradient(circle at 16% 105%, rgba(60, 155, 255, 0.18), transparent 46%),
    radial-gradient(circle at 52% 56%, rgba(111, 227, 255, 0.08), transparent 42%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.07), transparent 44%);
  opacity: 1;
}

.hero-card-inner::after {
  content: "";
  position: absolute;
  left: 20px;
  right: 20px;
  top: 52px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.42), var(--hero-card-accent), var(--accent-2), transparent);
  opacity: 0.88;
  pointer-events: none;
}

.hero-card-header {
  position: relative;
  z-index: 1;
  min-height: 52px;
  display: flex;
  align-items: center;
  padding: 0 20px;
  font-size: 12px;
  font-weight: 760;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #d0d7f0;
  border-bottom: 1px solid rgba(151, 167, 226, 0.12);
  background: rgba(9, 14, 34, 0.72);
}

.hero-card-body {
  position: relative;
  z-index: 1;
  flex: 1;
  padding: 20px;
  display: flex;
  flex-direction: column;
  min-height: 0;
  gap: 0;
  background: radial-gradient(circle at 88% 0%, rgba(116, 107, 255, 0.1), transparent 34%);
}

.hero-event-title {
  margin: 0;
  max-width: 360px;
  color: #f8faff;
  font-size: 22px;
  line-height: 1.12;
  letter-spacing: -0.035em;
  font-weight: 760;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.hero-next-empty .hero-event-title {
  font-size: 18px;
}

.hero-next-empty .hero-event-meta {
  font-size: 13px;
  color: var(--text-soft);
}

.hero-event-meta {
  margin-top: 9px;
  color: rgba(226, 232, 240, 0.82);
  font-size: 16.5px;
  font-weight: 550;
  line-height: 1.48;
}

.hero-event-price {
  margin-top: 18px;
  color: #f0f4ff;
  font-size: 17px;
  font-weight: 760;
}

.hero-event-price.is-request {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  min-height: 31px;
  padding: 0 12px;
  border-radius: 999px;
  color: #e8e2ff;
  background: rgba(168, 140, 255, 0.15);
  border: 1px solid rgba(168, 140, 255, 0.28);
  font-size: 13px;
  font-weight: 720;
  letter-spacing: 0.01em;
}

.hero-card-action-row {
  position: relative;
  z-index: 1;
  margin-top: auto;
  padding-top: 22px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  isolation: isolate;
}

.hero-card-action-row::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 22px;
  height: 43px;
  border-radius: 999px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--hero-card-accent) 52%, rgba(255, 255, 255, 0.08)), rgba(60, 155, 255, 0.26));
  opacity: 0;
  transform: scaleX(.72);
  transform-origin: center;
  transition:
    opacity .38s ease,
    transform .46s cubic-bezier(.16, 1, .3, 1),
    box-shadow .38s ease;
  z-index: -1;
  box-shadow: 0 16px 38px color-mix(in srgb, var(--hero-card-accent) 18%, transparent);
}

.hero-card-action-row:hover::before,
.hero-card-action-row:focus-within::before {
  opacity: 1;
  transform: scaleX(1);
}

.hero-main-btn {
  min-height: 43px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(160, 174, 220, 0.34);
  background: rgba(255, 255, 255, 0.045);
  color: #e7edff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 640;
  transition:
    border-color .36s ease,
    background .36s ease,
    color .36s ease,
    transform .46s cubic-bezier(.16, 1, .3, 1);
}

.hero-arrow-btn {
  width: 43px;
  height: 43px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid color-mix(in srgb, var(--hero-card-accent) 42%, rgba(255, 255, 255, 0.16));
  border-radius: 999px;
  color: #fff;
  background: color-mix(in srgb, var(--hero-card-accent) 44%, rgba(255, 255, 255, 0.05));
  cursor: pointer;
  font-size: 17px;
  text-decoration: none;
  box-shadow: 0 12px 30px color-mix(in srgb, var(--hero-card-accent) 18%, transparent);
  transition:
    border-color .36s ease,
    background .36s ease,
    transform .46s cubic-bezier(.16, 1, .3, 1),
    box-shadow .36s ease;
}

.hero-card-action-row:hover .hero-main-btn,
.hero-card-action-row:focus-within .hero-main-btn {
  border-color: transparent;
  background: transparent;
  color: #ffffff;
  transform: translateX(7px);
}

.hero-card-action-row:hover .hero-arrow-btn,
.hero-card-action-row:focus-within .hero-arrow-btn {
  border-color: transparent;
  background: transparent;
  transform: translateX(-7px);
  box-shadow: none;
}

@media (max-width: 520px) {
  .hero-card {
    width: 100%;
  }
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 18px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-size: 14px;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  transition: all 0.15s ease;
}

.btn-primary,
.btn-primary-gradient,
#events .card.event .btn:hover,
#all-events-view .card.event .btn:hover,
#events .card.event .btn:focus-visible,
#all-events-view .card.event .btn:focus-visible {
  background: linear-gradient(135deg, var(--accent), #4f46e5);
  color: #f9fafb;
  box-shadow: 0 10px 25px rgba(79, 70, 229, 0.4);
  border-color: transparent;
}

.btn-primary:hover,
.btn-primary-gradient:hover,
.btn-primary-gradient:focus-visible,
#events .card.event .btn:hover,
#all-events-view .card.event .btn:hover,
#events .card.event .btn:focus-visible,
#all-events-view .card.event .btn:focus-visible {
  transform: translateY(-1px);
  box-shadow: 0 14px 32px rgba(79, 70, 229, 0.5);
}

.btn-primary-gradient:focus-visible,
#events .card.event .btn:focus-visible,
#all-events-view .card.event .btn:focus-visible {
  outline: none;
}

.btn-outline {
  border-color: rgba(148, 163, 184, 0.6);
  color: var(--text-soft);
  background: rgba(15, 23, 42, 0.8);
}

.btn-outline:hover {
  border-color: var(--accent);
  color: #e5e7eb;
}

.btn-ghost {
  border-color: transparent;
  background: rgba(15, 23, 42, 0.65);
  color: var(--text-soft);
}

.btn-ghost:hover {
  border-color: rgba(148, 163, 184, 0.5);
  background: rgba(15, 23, 42, 0.9);
}

.full-width {
  width: 100%;
}

.grid {
  display: grid;
  gap: 20px;
}

.grid > *,
.hero-grid > *,
.transfer-grid > *,
.contact-grid > *,
.footer-grid > * {
  min-width: 0;
}

.grid-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.venues-slider {
  position: relative;
}

.venues-slider::before,
.venues-slider::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 48px;
  pointer-events: none;
  z-index: 2;
}

.venues-slider::before {
  left: 0;
  background: linear-gradient(to right, rgba(5, 8, 22, 0.95), rgba(5, 8, 22, 0));
}

.venues-slider::after {
  right: 0;
  background: linear-gradient(to left, rgba(5, 8, 22, 0.95), rgba(5, 8, 22, 0));
}

.venues-track {
  --venues-gap: 20px;
  display: flex;
  flex-wrap: nowrap;
  gap: var(--venues-gap);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding-bottom: 6px;
  scrollbar-width: thin;
  scrollbar-color: rgba(148, 163, 184, 0.35) transparent;
}

.venues-track::-webkit-scrollbar {
  height: 6px;
}

.venues-track::-webkit-scrollbar-track {
  background: transparent;
}

.venues-track::-webkit-scrollbar-thumb {
  background: rgba(148, 163, 184, 0.35);
  border-radius: 999px;
}

.venues-track .card {
  flex: 0 0 calc((100% - var(--venues-gap)) / 2);
  min-width: 0;
  scroll-snap-align: start;
}

#venues .venues-slider,
#events .venues-slider {
  overflow: hidden;
  --slider-edge-fade: 56px;
}

#venues .venues-track,
#events .venues-track {
  --venues-gap: 20px;
  display: flex;
  flex-wrap: nowrap;
  gap: var(--venues-gap);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: 0 56px 6px;
  width: 100%;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
}

#venues .venues-slider::before,
#venues .venues-slider::after,
#events .venues-slider::before,
#events .venues-slider::after {
  content: none;
  pointer-events: none;
}

#venues .venues-track {
  -webkit-mask-image: none;
  mask-image: none;
}

#venues .venues-track.has-right-fade {
  -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - var(--slider-edge-fade)), transparent 100%);
  mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - var(--slider-edge-fade)), transparent 100%);
}

#venues .venues-track.has-left-fade {
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 var(--slider-edge-fade), #000 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 var(--slider-edge-fade), #000 100%);
}

#venues .venues-track.has-left-fade.has-right-fade {
  -webkit-mask-image: linear-gradient(
    90deg,
    transparent 0,
    #000 var(--slider-edge-fade),
    #000 calc(100% - var(--slider-edge-fade)),
    transparent 100%
  );
  mask-image: linear-gradient(
    90deg,
    transparent 0,
    #000 var(--slider-edge-fade),
    #000 calc(100% - var(--slider-edge-fade)),
    transparent 100%
  );
}

@supports not ((-webkit-mask-image: linear-gradient(#000, #000)) or (mask-image: linear-gradient(#000, #000))) {
  #venues .venues-slider::before,
  #venues .venues-slider::after,
  #events .venues-slider::before,
  #events .venues-slider::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: var(--slider-edge-fade);
    pointer-events: none;
    z-index: 2;
  }

  #venues .venues-slider::before,
  #events .venues-slider::before {
    left: 0;
    background: linear-gradient(to right, rgba(5, 8, 22, 0.36), rgba(5, 8, 22, 0));
  }

  #venues .venues-slider::after,
  #events .venues-slider::after {
    right: 0;
    background: linear-gradient(to left, rgba(5, 8, 22, 0.36), rgba(5, 8, 22, 0));
  }

  #venues .venues-slider::before,
  #venues .venues-slider::after {
    opacity: 0;
    transition: opacity 0.2s ease;
  }

  #venues .venues-slider.has-left-fade::before {
    opacity: 1;
  }

  #venues .venues-slider.has-right-fade::after {
    opacity: 1;
  }
}

#venues .venues-track .card,
#events .venues-track .card {
  flex: 0 0 clamp(280px, calc((min(1120px, 100vw) - 112px - (var(--venues-gap) * 2)) / 3), 360px);
  scroll-snap-align: start;
}

.card {
  display: block;
  background: var(--card-bg);
  border-radius: 14px;
  padding: 18px 18px 20px;
  border: 1px solid rgba(30, 64, 175, 0.7);
  box-shadow: 0 18px 35px rgba(15, 23, 42, 0.7);
  max-width: 100%;
  min-width: 0;
}

#events .card.event,
#all-events-view .card.event {
  --card-accent: #7f90ff;
  position: relative;
  min-height: 286px;
  border-radius: 24px;
  padding: 1px;
  border: 0;
  overflow: hidden;
  background:
    linear-gradient(
      160deg,
      rgba(255, 255, 255, 0.13) 0%,
      rgba(151, 167, 226, 0.07) 38%,
      color-mix(in srgb, var(--card-accent) 42%, transparent) 100%
    );
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.28);
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    filter .16s ease;
}

#events .card.event:hover,
#all-events-view .card.event:hover {
  transform: translateY(-3px);
  box-shadow:
    0 30px 78px rgba(0, 0, 0, 0.36),
    0 0 34px color-mix(in srgb, var(--card-accent) 13%, transparent);
  filter: brightness(1.035);
}

#events .card.event.event-card--ballet,
#all-events-view .card.event.event-card--ballet {
  --card-accent: #7f90ff;
}

#events .card.event.event-card--opera,
#all-events-view .card.event.event-card--opera {
  --card-accent: #9f7dff;
}

#events .card.event.event-card--theatre,
#all-events-view .card.event.event-card--theatre {
  --card-accent: #8a7eff;
}

#events .card.event.event-card--football,
#all-events-view .card.event.event-card--football {
  --card-accent: #56a5ff;
}

#events .card.event .event-card-inner,
#all-events-view .card.event .event-card-inner {
  min-height: 284px;
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 23px;
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 86% 10%, color-mix(in srgb, var(--card-accent) 24%, transparent), transparent 34%),
    radial-gradient(circle at 18% 106%, rgba(60, 155, 255, 0.1), transparent 38%),
    linear-gradient(180deg, rgba(25, 35, 76, 0.98), rgba(12, 18, 41, 0.99));
}

#events .card.event .event-card-inner::before,
#all-events-view .card.event .event-card-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.07), transparent 40%),
    radial-gradient(circle at 82% 12%, color-mix(in srgb, var(--card-accent) 18%, transparent), transparent 28%);
  opacity: 0.9;
}

#events .card.event .event-card-inner::after,
#all-events-view .card.event .event-card-inner::after {
  content: "";
  position: absolute;
  left: 20px;
  right: 20px;
  top: 0;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, var(--card-accent), transparent);
  opacity: 0.78;
}

#events .card.event .poster-strip,
#all-events-view .card.event .poster-strip {
  position: relative;
  z-index: 1;
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 18px 20px 0;
}

#events .card.event .event-tag,
#all-events-view .card.event .event-tag {
  display: inline-flex;
  align-items: center;
  min-height: 27px;
  margin: 0;
  padding: 0 10px;
  border-radius: 999px;
  color: #dde2ff;
  background: color-mix(in srgb, var(--card-accent) 18%, rgba(255, 255, 255, 0.045));
  border: 1px solid color-mix(in srgb, var(--card-accent) 30%, rgba(255, 255, 255, 0.12));
  font-size: 11px;
  font-weight: 740;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

#events .card.event .event-tag.opera,
#all-events-view .card.event .event-tag.opera {
  color: #e2d9ff;
}

#events .card.event .card-content,
#all-events-view .card.event .card-content {
  position: relative;
  z-index: 1;
  padding: 22px 20px 0;
}

#events .card.event h3,
#all-events-view .card.event h3 {
  margin: 0;
  color: #f8faff;
  font-size: 22px;
  line-height: 1.1;
  letter-spacing: -0.035em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

#events .card.event .event-meta,
#all-events-view .card.event .event-meta {
  margin: 22px 0 0;
  color: rgba(226, 232, 240, 0.82);
  font-size: 16.5px;
  font-weight: 550;
  line-height: 1.48;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

#events .card.event .event-price,
#all-events-view .card.event .event-price {
  margin-top: 10px;
  color: #eef2ff;
  font-size: 16px;
  font-weight: 740;
}

#events .card.event .event-price.is-request,
#all-events-view .card.event .event-price.is-request {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  min-height: 31px;
  padding: 0 12px;
  border-radius: 999px;
  color: #e8e2ff;
  background: rgba(168, 140, 255, 0.15);
  border: 1px solid rgba(168, 140, 255, 0.28);
  font-size: 13px;
  font-weight: 720;
  letter-spacing: 0.01em;
}

#events .card.event .card-action-row,
#all-events-view .card.event .card-action-row {
  margin-top: auto;
  position: relative;
  z-index: 1;
  padding: 22px 20px 20px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  isolation: isolate;
}

#events .card.event .card-action-row::before,
#all-events-view .card.event .card-action-row::before {
  content: "";
  position: absolute;
  left: 20px;
  right: 20px;
  top: 22px;
  height: 43px;
  border-radius: 999px;
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--card-accent) 52%, rgba(255, 255, 255, 0.08)),
    rgba(60, 155, 255, 0.26)
  );
  opacity: 0;
  transform: scaleX(0.72);
  transform-origin: center;
  transition:
    opacity .24s ease,
    transform .28s cubic-bezier(0.2, 0.8, 0.2, 1);
  z-index: -1;
  box-shadow: 0 16px 38px color-mix(in srgb, var(--card-accent) 18%, transparent);
}

#events .card.event .card-action-row:hover::before,
#events .card.event .card-action-row:focus-within::before,
#all-events-view .card.event .card-action-row:hover::before,
#all-events-view .card.event .card-action-row:focus-within::before {
  opacity: 1;
  transform: scaleX(1);
}

#events .card.event .details-btn,
#all-events-view .card.event .details-btn {
  min-height: 43px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(160, 174, 220, 0.34);
  background: rgba(255, 255, 255, 0.045);
  color: #e7edff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 640;
  transition:
    border-color .22s ease,
    background .22s ease,
    color .22s ease,
    transform .22s ease;
}

#events .card.event .card-action-row:hover .details-btn,
#events .card.event .card-action-row:focus-within .details-btn,
#all-events-view .card.event .card-action-row:hover .details-btn,
#all-events-view .card.event .card-action-row:focus-within .details-btn {
  border-color: transparent;
  background: transparent;
  color: #ffffff;
  transform: translateX(8px);
}

#events .card.event .arrow-btn,
#all-events-view .card.event .arrow-btn {
  width: 43px;
  height: 43px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid color-mix(in srgb, var(--card-accent) 42%, rgba(255, 255, 255, 0.16));
  border-radius: 999px;
  color: #fff;
  background: color-mix(in srgb, var(--card-accent) 44%, rgba(255, 255, 255, 0.05));
  text-decoration: none;
  font-size: 17px;
  box-shadow: 0 12px 30px color-mix(in srgb, var(--card-accent) 18%, transparent);
  transition:
    border-color .22s ease,
    background .22s ease,
    transform .28s cubic-bezier(0.2, 0.8, 0.2, 1),
    box-shadow .22s ease;
}

#events .card.event .card-action-row:hover .arrow-btn,
#events .card.event .card-action-row:focus-within .arrow-btn,
#all-events-view .card.event .card-action-row:hover .arrow-btn,
#all-events-view .card.event .card-action-row:focus-within .arrow-btn {
  border-color: transparent;
  background: transparent;
  transform: translateX(-8px);
  box-shadow: none;
}

#events .card.event .card-action-row:hover .arrow-btn,
#all-events-view .card.event .card-action-row:hover .arrow-btn {
  animation: eventCardArrowNudge .7s ease both;
}

@keyframes eventCardArrowNudge {
  0% {
    transform: translateX(0);
  }
  45% {
    transform: translateX(-11px);
  }
  100% {
    transform: translateX(-8px);
  }
}

@media (max-width: 640px) {
  #events .card.event,
  #all-events-view .card.event {
    min-height: 268px;
    border-radius: 22px;
  }

  #events .card.event .event-card-inner,
  #all-events-view .card.event .event-card-inner {
    min-height: 266px;
    border-radius: 21px;
  }

  #events .card.event .poster-strip,
  #all-events-view .card.event .poster-strip {
    min-height: 52px;
    padding: 14px 16px 0;
  }

  #events .card.event .card-content,
  #all-events-view .card.event .card-content {
    padding: 18px 16px 0;
  }

  #events .card.event h3,
  #all-events-view .card.event h3 {
    font-size: 20px;
  }

  #events .card.event .event-meta,
  #all-events-view .card.event .event-meta {
    margin-top: 16px;
    font-size: 15.5px;
  }

  #events .card.event .card-action-row,
  #all-events-view .card.event .card-action-row {
    padding: 18px 16px 16px;
  }

  #events .card.event .card-action-row::before,
  #all-events-view .card.event .card-action-row::before {
    left: 16px;
    right: 16px;
    top: 18px;
  }
}

#events .card.event.event-card--ticket-tear {
  --event-ticket-tear-duration: 300ms;
  --event-ticket-flap-shift: 8px;
  --event-ticket-flap-tilt: -8deg;
  --event-ticket-contour-opacity: 0.72;
  position: relative;
}

#events .card.event.event-card--ticket-tear .event-ticket-stub {
  margin-top: auto;
  position: relative;
  perspective: 920px;
}

#events .card.event.event-card--ticket-tear .event-ticket-stub .btn {
  margin-top: 0;
  position: relative;
  overflow: hidden;
  isolation: isolate;
  transform-origin: 0% 50%;
  transform-style: preserve-3d;
  backface-visibility: hidden;
  will-change: transform, opacity, filter;
}

#events .card.event.event-card--ticket-tear .event-ticket-stub .btn::before {
  content: attr(data-ticket-label);
  position: absolute;
  inset: 0;
  border-radius: inherit;
  display: flex;
  align-items: center;
  justify-content: center;
  font: inherit;
  letter-spacing: inherit;
  color: inherit;
  white-space: nowrap;
  text-decoration: none;
  opacity: 0;
  pointer-events: none;
  z-index: 1;
  transform-origin: 0% 50%;
  clip-path: inset(0 100% 0 0 round 999px);
  transform: perspective(920px) rotateY(0deg) translate3d(0, 0, 0);
  background:
    linear-gradient(
      103deg,
      rgba(219, 236, 255, 0) 25%,
      rgba(219, 236, 255, 0.28) 47%,
      rgba(219, 236, 255, 0) 69%
    ),
    linear-gradient(135deg, var(--accent), #4f46e5);
  border: 1px solid transparent;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.14),
    0 0 0 1px rgba(15, 23, 42, 0.24),
    0 10px 25px rgba(79, 70, 229, 0.4);
}

#events .card.event.event-card--ticket-tear .event-ticket-stub .btn::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  border: 1px dashed rgba(219, 236, 255, 0.82);
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.12),
    0 0 12px rgba(79, 70, 229, 0.22);
  opacity: 0;
  pointer-events: none;
  clip-path: inset(0 100% 0 0 round 999px);
}

#events .card.event.event-card--ticket-tear.is-ticket-tearing .event-ticket-stub .btn {
  animation: eventTicketButtonBaseShift var(--event-ticket-tear-duration) cubic-bezier(0.22, 0.74, 0.24, 1) both;
}

#events .card.event.event-card--ticket-tear.is-ticket-tearing .event-ticket-stub .btn::before {
  animation: eventTicketFlapPeel var(--event-ticket-tear-duration) cubic-bezier(0.22, 0.74, 0.24, 1) both;
}

#events .card.event.event-card--ticket-tear.is-ticket-tearing .event-ticket-stub .btn::after {
  animation: eventTicketContourTrace var(--event-ticket-tear-duration) cubic-bezier(0.22, 0.74, 0.24, 1) both;
}

#events .card.event.event-card--ticket-tear.is-ticket-tearing .event-ticket-stub .btn {
  pointer-events: none;
}

@keyframes eventTicketButtonBaseShift {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
    filter: none;
  }
  55% {
    transform: translate3d(0, 0, 0);
    opacity: 0.98;
  }
  100% {
    transform: translate3d(calc(var(--event-ticket-flap-shift) * 0.08), 0, 0);
    opacity: 0.94;
    filter: drop-shadow(0 4px 8px rgba(2, 6, 23, 0.2));
  }
}

@keyframes eventTicketFlapPeel {
  0% {
    opacity: 0;
    clip-path: inset(0 100% 0 0 round 999px);
    transform: perspective(920px) rotateY(0deg) translate3d(0, 0, 0);
  }
  10% {
    opacity: 0.74;
    clip-path: inset(0 92% 0 0 round 999px);
    transform: perspective(920px) rotateY(-1deg) translate3d(0.6px, 0, 0);
  }
  34% {
    opacity: 0.88;
    clip-path: inset(0 66% 0 0 round 999px);
    transform: perspective(920px) rotateY(-4deg) translate3d(2.4px, 0, 0);
  }
  62% {
    opacity: 0.9;
    clip-path: inset(0 32% 0 0 round 999px);
    transform: perspective(920px) rotateY(var(--event-ticket-flap-tilt)) translate3d(5.2px, 0, 0);
    box-shadow: 0 6px 11px rgba(2, 6, 23, 0.24);
  }
  84% {
    opacity: 0.84;
    clip-path: inset(0 0% 0 0 round 999px);
    transform: perspective(920px) rotateY(calc(var(--event-ticket-flap-tilt) * 0.82)) translate3d(7.2px, 0, 0);
  }
  100% {
    opacity: 0.78;
    clip-path: inset(0 0% 0 0 round 999px);
    transform: perspective(920px) rotateY(calc(var(--event-ticket-flap-tilt) * 0.72)) translate3d(var(--event-ticket-flap-shift), 0, 0);
    box-shadow: 0 7px 13px rgba(2, 6, 23, 0.28);
  }
}

@keyframes eventTicketContourTrace {
  0%,
  22% {
    opacity: 0;
    clip-path: inset(0 100% 0 0 round 999px);
  }
  46% {
    opacity: 0.8;
    clip-path: inset(0 58% 0 0 round 999px);
  }
  74% {
    opacity: 0.88;
    clip-path: inset(0 18% 0 0 round 999px);
  }
  92% {
    opacity: 0.86;
    clip-path: inset(0 0% 0 0 round 999px);
  }
  100% {
    opacity: var(--event-ticket-contour-opacity);
    clip-path: inset(0 0% 0 0 round 999px);
  }
}

@keyframes eventTicketButtonFlapReduced {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(calc(var(--event-ticket-flap-shift) * 0.5), 0, 0);
    opacity: 0.9;
  }
}

@keyframes eventTicketContourTraceReduced {
  0% {
    opacity: 0;
    clip-path: inset(0 100% 0 0 round 999px);
  }
  100% {
    opacity: var(--event-ticket-contour-opacity);
    clip-path: inset(0 0% 0 0 round 999px);
  }
}

@media (max-width: 640px) {
  #events .card.event.event-card--ticket-tear {
    --event-ticket-tear-duration: 260ms;
    --event-ticket-flap-shift: 6px;
    --event-ticket-flap-tilt: -6deg;
    --event-ticket-contour-opacity: 0.68;
  }
}

@media (prefers-reduced-motion: reduce) {
  #events .card.event.event-card--ticket-tear {
    --event-ticket-tear-duration: 190ms;
    --event-ticket-flap-shift: 2px;
    --event-ticket-flap-tilt: 0deg;
    --event-ticket-contour-opacity: 0.64;
  }

  #events .card.event.event-card--ticket-tear.is-ticket-tearing .event-ticket-stub .btn {
    animation-name: eventTicketButtonFlapReduced;
  }

  #events .card.event.event-card--ticket-tear.is-ticket-tearing .event-ticket-stub .btn::before {
    animation: none;
    opacity: 0;
  }

  #events .card.event.event-card--ticket-tear.is-ticket-tearing .event-ticket-stub .btn::after {
    animation-name: eventTicketContourTraceReduced;
  }
}

.all-events-topbar {
  margin-bottom: 14px;
}

.all-events-header {
  margin-bottom: 16px;
}

#all-events-view .all-events-top-container {
  width: min(1440px, calc(100% - 48px));
  margin: 0 auto;
}

#all-events-view .all-events-cards-container {
  position: relative;
}

.all-events-controls-row {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
  flex-wrap: nowrap;
}

.all-events-filters {
  flex: 1 1 auto;
  margin-bottom: 0;
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap;
  min-width: 0;
}

.all-events-filters > * {
  min-height: 44px;
  min-width: 0;
}

.all-events-filters > .filter-field {
  flex: 1 1 0;
}

.all-events-request-btn {
  flex: 0 0 auto;
  height: 44px;
  min-height: 44px;
  padding: 10px 16px;
  font-size: 13px;
  line-height: 1.1;
  white-space: nowrap;
  align-self: stretch;
  margin: 0;
}

.all-events-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.home-link-hub {
  margin: 0 0 14px;
}

.home-link-hub-title {
  margin: 0 0 8px;
  color: var(--text-soft);
  font-size: 13px;
  letter-spacing: 0.03em;
}

.seo-breadcrumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 12px;
  font-size: 12px;
  color: var(--text-soft);
}

.seo-breadcrumbs__link {
  color: var(--text-soft);
  text-decoration: none;
  transition: color 0.15s ease;
}

.seo-breadcrumbs__link:hover {
  color: #f8fafc;
}

.seo-breadcrumbs__current {
  color: #dbeafe;
}

.seo-breadcrumbs__sep {
  opacity: 0.6;
}

.seo-breadcrumbs--modal {
  margin-top: 2px;
  margin-bottom: 0;
}

.related-links-block {
  margin-bottom: 14px;
}

.seo-content-block {
  margin-bottom: 14px;
  padding: 16px 18px;
}

.seo-content-block--city {
  margin-bottom: 12px;
}

.seo-content-block--event {
  margin-top: -2px;
}

.seo-content-title {
  margin: 0 0 8px;
  font-size: 16px;
  line-height: 1.3;
  color: #f8fafc;
}

.seo-content-paragraph {
  margin: 0 0 10px;
  color: var(--text-soft);
  font-size: 14px;
  line-height: 1.55;
}

.seo-content-paragraph:last-child {
  margin-bottom: 0;
}

.related-links-title {
  margin: 0 0 8px;
  color: var(--text-soft);
  font-size: 13px;
}

.related-links-block--compact .related-links-title {
  font-size: 12px;
  margin-bottom: 7px;
}

.event-address-text {
  margin: 0;
  color: #dbeafe;
  font-size: 13px;
  line-height: 1.5;
  white-space: pre-line;
  overflow-wrap: anywhere;
}

.link-chip-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.link-chip {
  display: inline-flex;
  align-items: center;
  padding: 6px 11px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.82);
  color: #dbeafe;
  text-decoration: none;
  font-size: 12px;
  line-height: 1.2;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.link-chip:hover {
  border-color: rgba(99, 102, 241, 0.7);
  background: rgba(30, 41, 59, 0.95);
  color: #f8fafc;
}

.home-link-hub .link-chip {
  min-height: 28px;
  padding: 4px 9px;
  font-size: 11px;
}


.card p {
  margin: 4px 0;
  color: var(--text-soft);
}

#categories .category-card {
  --category-card-accent: #746bff;
  position: relative;
  min-height: 128px;
  border-radius: 26px;
  padding: 1px;
  overflow: hidden;
  border: 0;
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.12) 0%,
      rgba(151, 167, 226, 0.07) 44%,
      rgba(116, 107, 255, 0.24) 100%
    );
  box-shadow:
    0 16px 42px rgba(0, 0, 0, 0.24),
    0 0 20px rgba(116, 107, 255, 0.06);
  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease,
    filter 0.18s ease;
}

#categories .category-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

#categories .category-card-link:hover {
  transform: translateY(-2px);
  filter: brightness(1.035);
  box-shadow:
    0 24px 62px rgba(0, 0, 0, 0.32),
    0 0 28px rgba(116, 107, 255, 0.12);
}

#categories .category-card-link:focus-visible {
  outline: 2px solid rgba(151, 167, 255, 0.86);
  outline-offset: 2px;
}

#categories .category-inner {
  min-height: 126px;
  height: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 25px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background:
    radial-gradient(circle at 86% 10%, rgba(116, 107, 255, 0.16), transparent 42%),
    radial-gradient(circle at 8% 106%, rgba(60, 155, 255, 0.055), transparent 44%),
    linear-gradient(180deg, rgba(18, 26, 58, 0.98), rgba(12, 18, 41, 0.99));
}

#categories .category-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.065), transparent 34%),
    linear-gradient(90deg, rgba(116, 107, 255, 0.055), transparent 45%);
}

#categories .category-inner::after {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  top: 0;
  height: 1px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.85), rgba(60, 155, 255, 0.45), transparent);
  opacity: 0.7;
}

#categories .category-top,
#categories .category-bottom {
  position: relative;
  z-index: 1;
}

#categories .category-title {
  margin: 0;
  color: #f8faff;
  font-size: 19px;
  line-height: 1.08;
  letter-spacing: -0.03em;
  font-weight: 760;
}

#categories .category-desc {
  margin: 12px 0 0;
  max-width: 190px;
  color: #a4aec9;
  font-size: 13px;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

#categories .category-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 14px;
  isolation: isolate;
}

#categories .category-bottom::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 29px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(116, 107, 255, 0.24), rgba(60, 155, 255, 0.13));
  opacity: 0;
  transform: scaleX(0.72);
  transform-origin: center;
  transition:
    opacity 0.34s ease,
    transform 0.44s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.34s ease;
  z-index: -1;
  box-shadow: 0 12px 28px rgba(116, 107, 255, 0.12);
}

#categories .category-card:hover .category-bottom::before,
#categories .category-card:focus-within .category-bottom::before {
  opacity: 1;
  transform: scaleX(1);
}

#categories .category-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 29px;
  padding: 0 10px;
  border-radius: 999px;
  color: #cfd6ff;
  background: rgba(116, 107, 255, 0.08);
  border: 1px solid rgba(151, 167, 255, 0.14);
  font-size: 11px;
  font-weight: 720;
  letter-spacing: 0.03em;
  transition:
    color 0.3s ease,
    transform 0.44s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}

#categories .category-arrow {
  width: 29px;
  height: 29px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #eef2ff;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: rgba(116, 107, 255, 0.11);
  transition:
    transform 0.44s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}

#categories .category-card:hover .category-count,
#categories .category-card:focus-within .category-count {
  color: #ffffff;
  transform: translateX(6px);
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

#categories .category-card:hover .category-arrow,
#categories .category-card:focus-within .category-arrow {
  transform: translateX(-6px);
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

@media (min-width: 1025px) {
  #categories [data-categories-list] {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
  }
}

.card h3,
.event-meta,
.venue-meta,
.venue-desc,
.category-desc,
.venue-view-head h2,
.venue-view-description,
.faq-question-text,
.faq-answer,
.request-flow-card h2,
.request-flow-card p,
.contact-info p,
.about-card p,
.footer-text,
.footer-disclosure {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.event-tag {
  display: inline-flex;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.event-tag.theatre {
  background: rgba(244, 114, 182, 0.18);
  color: #fb7185;
}

.event-tag.opera {
  background: rgba(129, 140, 248, 0.18);
  color: #a5b4fc;
}

.event-tag.football {
  background: rgba(52, 211, 153, 0.18);
  color: #6ee7b7;
}

.event-meta {
  font-size: 13px;
}


.event-price {
  font-weight: 600;
  margin-top: 10px;
}

.filters-row {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}

.events-controls-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 12px;
  row-gap: 10px;
  margin-bottom: 14px;
}

.events-controls-row .filters-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  min-width: 0;
  margin-bottom: 0;
}

.events-controls-row .filters-row > * {
  width: 100%;
  min-width: 0;
}

.filters-row .filter-field {
  position: relative;
  min-width: 0;
}

.filters-row .filter-field > select,
.filters-row .filter-field > input[type="date"],
.filters-row .filter-field > input[type="text"],
.filters-row .filter-field > input[type="number"] {
  width: 100%;
}

.events-all-link {
  flex: 0 0 auto;
  min-height: 44px;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}

.filters-row select,
.filters-row input[type="date"],
.filters-row input[type="text"],
.filters-row input[type="number"],
.filters-row .date-clear-btn {
  background: rgba(15, 23, 42, 0.9);
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.5);
  color: var(--text-soft);
  padding: 10px 14px;
  font-size: 14px;
  min-height: 44px;
  line-height: 1.1;
  color-scheme: dark;
}

.filters-row .date-clear-btn {
  cursor: pointer;
}

.filters-row select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding-right: 34px;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--text-soft) 50%),
    linear-gradient(135deg, var(--text-soft) 50%, transparent 50%);
  background-position:
    calc(100% - 18px) 50%,
    calc(100% - 13px) 50%;
  background-size: 5px 5px;
  background-repeat: no-repeat;
}

.filters-row .filter-field--clearable.filter-field--select > select {
  padding-right: 62px;
}

.filters-row .filter-field--clearable.filter-field--select > select {
  background-position:
    calc(100% - 18px) 50%,
    calc(100% - 13px) 50%;
}

.filters-row .filter-field--clearable.filter-field--date > input[type="text"] {
  padding-right: 44px;
}

.filters-row .filter-clear-btn {
  -webkit-appearance: none;
  appearance: none;
  position: absolute;
  top: 50%;
  right: 28px;
  z-index: 2;
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.06);
  color: rgba(255, 255, 255, 0.68);
  font-size: 15px;
  line-height: 1;
  transform: translateY(-50%);
  cursor: pointer;
  transition:
    border-color .16s ease,
    background .16s ease,
    color .16s ease;
}

.filters-row .filter-field--date .filter-clear-btn {
  right: 10px;
}

.filters-row .filter-clear-btn:hover {
  border-color: rgba(255, 255, 255, 0.24);
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}

.filters-row .filter-clear-btn[hidden] {
  display: none;
}

.filters-row input[type="date"],
.filters-row input[type="text"],
.filters-row input[type="number"] {
  color: var(--text);
}

/* Make the native date picker affordance larger (WebKit/Blink) */
.filters-row input[type="date"]::-webkit-calendar-picker-indicator {
  cursor: pointer;
  opacity: 0.85;
  padding: 6px;
  border-radius: 10px;
  background: rgba(99, 102, 241, 0.18);
}

.filters-row input[type="date"]::-webkit-calendar-picker-indicator:hover {
  opacity: 1;
  background: rgba(99, 102, 241, 0.28);
}

.filters-row input[type="date"]::-webkit-datetime-edit {
  padding: 0 2px;
}

#venue-view .filters-row select,
#venue-view .filters-row input {
  flex: 1 1 170px;
  min-width: 150px;
}

.date-input {
  cursor: pointer;
}

/* custom date picker (large + in site colors) */
.date-picker {
  position: fixed;
  z-index: 120;
  width: min(420px, calc(100vw - 24px));
  border-radius: 16px;
  background:
    radial-gradient(circle at 0% 0%, rgba(56, 189, 248, 0.18) 0, transparent 55%),
    radial-gradient(circle at 100% 0%, rgba(129, 140, 248, 0.22) 0, transparent 60%),
    rgba(2, 6, 23, 0.98);
  border: 1px solid rgba(148, 163, 184, 0.35);
  box-shadow: 0 30px 65px rgba(0, 0, 0, 0.55);
  padding: 14px;
}

.date-picker[hidden] {
  display: none !important;
}

.date-picker-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 4px 2px 12px;
}

.date-picker-controls {
  display: flex;
  gap: 8px;
}

.date-picker-title {
  font-weight: 650;
  letter-spacing: 0.02em;
  font-size: 14px;
  color: #f9fafb;
}

.date-picker-nav,
.date-picker-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.85);
  color: rgba(191, 203, 224, 0.82);
  cursor: pointer;
  transition: color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.date-picker-nav:hover,
.date-picker-btn:hover {
  color: rgba(224, 231, 255, 0.96);
  border-color: rgba(99, 102, 241, 0.65);
  box-shadow: 0 12px 30px rgba(79, 70, 229, 0.24);
  background: rgba(30, 41, 59, 0.9);
}

.date-picker-nav:focus-visible,
.date-picker-btn:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.85);
  outline-offset: 2px;
}

.date-picker-nav:disabled,
.date-picker-btn:disabled {
  color: rgba(148, 163, 184, 0.5);
  border-color: rgba(148, 163, 184, 0.2);
  background: rgba(15, 23, 42, 0.65);
  box-shadow: none;
  cursor: not-allowed;
  opacity: 0.65;
}

.date-picker-weekdays {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
  padding: 0 2px 8px;
  color: rgba(226, 232, 240, 0.7);
  font-size: 12px;
}

.date-picker-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}

.date-day {
  height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background: rgba(15, 23, 42, 0.55);
  color: rgba(229, 231, 235, 0.92);
  cursor: pointer;
  font-size: 14px;
}

.date-day:hover {
  border-color: rgba(99, 102, 241, 0.65);
  background: rgba(99, 102, 241, 0.12);
}

.date-day.is-muted {
  opacity: 0.45;
}

.date-day.is-today {
  border-color: rgba(34, 211, 238, 0.55);
  box-shadow: 0 0 0 1px rgba(34, 211, 238, 0.15);
}

.date-day.is-selected {
  border-color: rgba(99, 102, 241, 0.75);
  background: linear-gradient(135deg, rgba(99, 102, 241, 0.28), rgba(79, 70, 229, 0.18));
  color: #f9fafb;
  box-shadow: 0 12px 30px rgba(79, 70, 229, 0.26);
}

.events-status {
  margin: 12px 0 18px;
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.85);
  color: var(--text-soft);
  font-size: 13px;
}

.venue-meta {
  font-size: 13px;
  color: var(--text-soft);
  margin-top: 8px;
}

#venues .venue-card {
  --venue-card-accent: #3c9bff;
  position: relative;
  min-height: 250px;
  border-radius: 28px;
  padding: 1px;
  border: 0;
  overflow: hidden;
  background:
    linear-gradient(
      150deg,
      rgba(255, 255, 255, 0.14) 0%,
      rgba(151, 167, 226, 0.07) 42%,
      color-mix(in srgb, var(--venue-card-accent) 50%, transparent) 100%
    );
  box-shadow:
    0 22px 62px rgba(0, 0, 0, 0.32),
    0 0 30px color-mix(in srgb, var(--venue-card-accent) 8%, transparent);
  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease,
    filter 0.18s ease;
}

#venues .venue-card:is(.venue-card--hub, .venue-card--theatre) {
  --venue-card-accent: #d8b05d;
  background:
    linear-gradient(
      150deg,
      rgba(255, 255, 255, 0.14) 0%,
      rgba(151, 167, 226, 0.07) 44%,
      rgba(123, 148, 221, 0.28) 100%
    );
  box-shadow:
    0 22px 62px rgba(0, 0, 0, 0.32),
    0 0 30px rgba(123, 148, 221, 0.08);
}

#venues .venue-card:is(.venue-card--hub, .venue-card--theatre) .venue-card-inner {
  background:
    radial-gradient(
      circle at 88% 12%,
      rgba(255, 222, 151, 0.58) 0%,
      rgba(214, 174, 98, 0.3) 18%,
      rgba(214, 174, 98, 0.13) 36%,
      transparent 62%
    ),
    radial-gradient(
      ellipse at 100% 0%,
      rgba(214, 174, 98, 0.26) 0%,
      rgba(214, 174, 98, 0.12) 32%,
      transparent 68%
    ),
    radial-gradient(circle at 12% 18%, rgba(72, 123, 255, 0.18), transparent 42%),
    linear-gradient(180deg, rgba(22, 31, 68, 0.98), rgba(12, 18, 41, 0.99));
}

#venues .venue-card:is(.venue-card--hub, .venue-card--theatre) .venue-card-inner::before {
  background:
    radial-gradient(
      circle at 96% 2%,
      rgba(255, 229, 170, 0.34) 0%,
      rgba(214, 174, 98, 0.2) 24%,
      rgba(214, 174, 98, 0.08) 48%,
      transparent 74%
    ),
    linear-gradient(135deg, rgba(255, 255, 255, 0.08), transparent 34%);
}

#venues .venue-card:is(.venue-card--hub, .venue-card--theatre) .venue-card-inner::after {
  background:
    radial-gradient(ellipse at 100% 0%, rgba(255, 226, 166, 0.22), transparent 44%) top right / 68% 58% no-repeat,
    linear-gradient(90deg, transparent 0%, rgba(214, 174, 98, 0.34) 58%, rgba(255, 226, 166, 0.28) 100%) top right / 58% 1px no-repeat,
    linear-gradient(180deg, rgba(255, 226, 166, 0.26), rgba(214, 174, 98, 0.16), transparent 72%) top right / 1px 72% no-repeat;
  opacity: 0.88;
}

#venues .venue-card:is(.venue-card--san-siro, .venue-card--stadium) {
  --venue-card-accent: #38e59b;
  background:
    linear-gradient(
      150deg,
      rgba(255, 255, 255, 0.14) 0%,
      rgba(151, 167, 226, 0.07) 42%,
      rgba(56, 229, 155, 0.24) 100%
    );
  box-shadow:
    0 22px 62px rgba(0, 0, 0, 0.32),
    0 0 32px rgba(56, 229, 155, 0.12);
}

#venues .venue-card:is(.venue-card--san-siro, .venue-card--stadium) .venue-card-inner {
  isolation: isolate;
  background:
    radial-gradient(
      circle at 88% 12%,
      rgba(116, 255, 196, 0.6) 0%,
      rgba(56, 229, 155, 0.34) 18%,
      rgba(56, 229, 155, 0.14) 36%,
      transparent 62%
    ),
    radial-gradient(
      ellipse at 100% 0%,
      rgba(56, 229, 155, 0.3) 0%,
      rgba(56, 229, 155, 0.13) 32%,
      transparent 68%
    ),
    radial-gradient(
      ellipse at 74% 18%,
      rgba(40, 217, 255, 0.16) 0%,
      rgba(40, 217, 255, 0.07) 34%,
      transparent 72%
    ),
    radial-gradient(circle at 12% 18%, rgba(72, 123, 255, 0.18), transparent 42%),
    linear-gradient(180deg, rgba(18, 28, 65, 0.94), rgba(7, 12, 32, 0.96));
}

#venues .venue-card:is(.venue-card--san-siro, .venue-card--stadium) .venue-card-inner::before {
  inset: auto;
  top: -50%;
  right: -42%;
  width: 96%;
  height: 96%;
  border-radius: 50%;
  background:
    radial-gradient(
      circle at center,
      rgba(116, 255, 196, 0.3) 0%,
      rgba(56, 229, 155, 0.18) 30%,
      rgba(56, 229, 155, 0.08) 52%,
      transparent 78%
    );
  filter: blur(24px);
  opacity: 0.82;
  z-index: 0;
}

#venues .venue-card:is(.venue-card--san-siro, .venue-card--stadium) .venue-card-inner::after {
  inset: 0;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  height: auto;
  border-radius: inherit;
  background:
    radial-gradient(ellipse at 100% 0%, rgba(116, 255, 196, 0.2), transparent 52%) top right / 64% 54% no-repeat,
    linear-gradient(90deg, transparent 0%, transparent 48%, rgba(56, 229, 155, 0.28) 76%, rgba(116, 255, 196, 0.2) 100%) top right / 56% 1px no-repeat,
    linear-gradient(180deg, rgba(116, 255, 196, 0.24), rgba(56, 229, 155, 0.14), transparent 80%) top right / 1px 64% no-repeat;
  box-shadow: none;
  opacity: 0.78;
}

#venues .venue-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

#venues .venue-card-link:hover {
  transform: translateY(-3px);
  filter: brightness(1.035);
  box-shadow:
    0 30px 82px rgba(0, 0, 0, 0.38),
    0 0 42px color-mix(in srgb, var(--venue-card-accent) 15%, transparent);
}

#venues .venue-card-link:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--venue-card-accent) 72%, #ffffff);
  outline-offset: 2px;
}

#venues .venue-card-inner {
  min-height: 248px;
  height: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 27px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  background:
    radial-gradient(circle at 82% 8%, color-mix(in srgb, var(--venue-card-accent) 34%, transparent), transparent 36%),
    radial-gradient(circle at 12% 104%, rgba(60, 155, 255, 0.14), transparent 42%),
    linear-gradient(180deg, rgba(22, 31, 68, 0.98), rgba(12, 18, 41, 0.99));
}

#venues .venue-card-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.08), transparent 34%),
    linear-gradient(90deg, color-mix(in srgb, var(--venue-card-accent) 10%, transparent), transparent 42%);
}

#venues .venue-card-inner::after {
  content: "";
  position: absolute;
  left: 20px;
  right: 20px;
  top: 0;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, var(--venue-card-accent), #3c9bff, transparent);
  opacity: 0.82;
}

#venues .venue-top,
#venues .venue-content,
#venues .venue-action {
  position: relative;
  z-index: 1;
}

#venues .venue-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  min-height: 28px;
  margin: 0 0 32px;
}

#venues .venue-location-pills {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

#venues .venue-pill {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  color: #dbe2ff;
  background: rgba(255, 255, 255, 0.045);
  border: 1px solid rgba(151, 167, 226, 0.2);
  font-size: 11px;
  font-weight: 730;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

#venues .venue-pill.hub {
  color: #ffe7a8;
  background: rgba(216, 176, 93, 0.13);
  border-color: rgba(216, 176, 93, 0.34);
}

#venues .venue-type {
  margin: 0;
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: color-mix(in srgb, var(--venue-card-accent) 42%, #dbe2ff);
  font-size: 11px;
  font-weight: 780;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  opacity: 0.9;
  padding-top: 1px;
  white-space: nowrap;
}

#venues .venue-card:is(.venue-card--hub, .venue-card--theatre) .venue-type {
  color: rgba(255, 231, 168, 0.95);
  opacity: 0.98;
  text-shadow:
    0 0 10px rgba(214, 174, 98, 0.22),
    0 0 18px rgba(214, 174, 98, 0.1);
}

#venues .venue-card:is(.venue-card--san-siro, .venue-card--stadium) .venue-type {
  color: rgba(185, 255, 224, 0.95);
  opacity: 0.98;
  text-shadow:
    0 0 10px rgba(56, 229, 155, 0.22),
    0 0 18px rgba(40, 217, 255, 0.12);
}

#venues .venue-card h3 {
  margin: 0;
  max-width: 350px;
  color: #f8faff;
  font-size: 21px;
  line-height: 1.12;
  letter-spacing: -0.035em;
}

#venues .venue-description {
  margin: 7px 0 0;
  max-width: 350px;
  color: #a4aec9;
  font-size: 14px;
  line-height: 1.42;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

#venues .venue-action {
  margin-top: auto;
  padding-top: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

#venues .venue-action::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 16px;
  height: 38px;
  border-radius: 999px;
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--venue-card-accent) 42%, rgba(255, 255, 255, 0.06)),
    rgba(60, 155, 255, 0.18)
  );
  opacity: 0;
  transform: scaleX(0.72);
  transform-origin: center;
  transition:
    opacity 0.36s ease,
    transform 0.46s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.36s ease;
  z-index: -1;
  box-shadow: 0 14px 34px color-mix(in srgb, var(--venue-card-accent) 16%, transparent);
}

#venues .venue-card:hover .venue-action::before,
#venues .venue-card:focus-within .venue-action::before {
  opacity: 1;
  transform: scaleX(1);
}

#venues .venue-link {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  border-radius: 999px;
  color: #dfe6ff;
  font-size: 14px;
  font-weight: 650;
  opacity: 0.95;
  border: 1px solid color-mix(in srgb, var(--venue-card-accent) 32%, rgba(255, 255, 255, 0.18));
  background: color-mix(in srgb, var(--venue-card-accent) 12%, rgba(255, 255, 255, 0.04));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
  transition:
    color 0.34s ease,
    transform 0.46s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.34s ease,
    background 0.34s ease,
    box-shadow 0.34s ease;
}

#venues .venue-arrow {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  border: 1px solid color-mix(in srgb, var(--venue-card-accent) 40%, rgba(255, 255, 255, 0.16));
  background: color-mix(in srgb, var(--venue-card-accent) 34%, rgba(255, 255, 255, 0.05));
  box-shadow: 0 12px 28px color-mix(in srgb, var(--venue-card-accent) 16%, transparent);
  transition:
    transform 0.46s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.34s ease,
    border-color 0.34s ease,
    box-shadow 0.34s ease,
    color 0.34s ease;
}

#venues .venue-card:hover .venue-link,
#venues .venue-card:focus-within .venue-link {
  color: #ffffff;
  transform: translateX(7px);
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

#venues .venue-card:hover .venue-arrow,
#venues .venue-card:focus-within .venue-arrow {
  transform: translateX(-7px);
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

#venues .venue-card:is(.venue-card--hub, .venue-card--theatre) .venue-link,
#venues .venue-card:is(.venue-card--hub, .venue-card--theatre) .venue-arrow {
  color: #ffe7a8;
}

#venues .venue-card:is(.venue-card--hub, .venue-card--theatre):hover .venue-link,
#venues .venue-card:is(.venue-card--hub, .venue-card--theatre):focus-within .venue-link,
#venues .venue-card:is(.venue-card--hub, .venue-card--theatre):hover .venue-arrow,
#venues .venue-card:is(.venue-card--hub, .venue-card--theatre):focus-within .venue-arrow {
  color: #fff1bd;
}

.category-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  transition: transform 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.category-card-link:hover {
  transform: translateY(-2px);
  border-color: rgba(99, 102, 241, 0.75);
  box-shadow: 0 22px 38px rgba(15, 23, 42, 0.7);
}

.category-card-link:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.85);
  outline-offset: 2px;
}

.venue-view-head {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 20px;
}

.venue-view-topbar {
  display: flex;
  align-items: center;
  margin-bottom: 14px;
}

.venue-back-btn {
  align-self: flex-start;
}

.venue-view-type {
  align-self: flex-start;
  display: inline-flex;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.4);
  background: rgba(15, 23, 42, 0.85);
  color: var(--text-soft);
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.venue-view-head h2 {
  margin: 2px 0;
}

.venue-view-meta {
  margin: 0;
  color: var(--text-soft);
  font-size: 13px;
}

.venue-view-description {
  margin: 0;
  color: var(--text-soft);
  overflow-wrap: anywhere;
  word-break: break-word;
}

.venue-events-header {
  margin-top: 16px;
  margin-bottom: 12px;
}

.venue-filters {
  margin-bottom: 12px;
}

#venue-view.venue-view--football .venue-view-head,
#venue-view.venue-view--football [data-venue-seo-content],
#venue-view.venue-view--football [data-venue-related-links] {
  display: none !important;
}

.venue-events-subtitle {
  margin: 8px 0 0;
  color: var(--text-soft);
  font-size: 14px;
  line-height: 1.5;
}

#venue-view.venue-view--football .venue-events-header {
  margin-top: 28px;
  margin-bottom: 18px;
}

#venue-view.venue-view--football .venue-events-header.football-events-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 24px;
  row-gap: 8px;
  align-items: end;
}

#venue-view.venue-view--football .venue-events-header.football-events-section [data-football-events-kicker],
#venue-view.venue-view--football .venue-events-header.football-events-section h2,
#venue-view.venue-view--football .venue-events-header.football-events-section .venue-events-subtitle {
  grid-column: 1;
}

#venue-view.venue-view--football .venue-events-header.football-events-section h2 {
  margin: 0;
  font-size: clamp(28px, 3.2vw, 40px);
  line-height: 1.06;
  letter-spacing: -0.04em;
}

#venue-view.venue-view--football .venue-events-subtitle {
  margin-top: 0;
  max-width: 680px;
  color: rgba(226, 231, 255, 0.7);
}

#venue-view.venue-view--football .football-events-secondary-cta {
  grid-column: 2;
  grid-row: 1 / span 3;
  align-self: end;
  margin: 0;
}

.football-landing {
  display: grid;
  gap: 26px;
  margin-bottom: 22px;
}

.football-hero {
  padding-top: 4px;
}

.football-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr);
  gap: 34px;
  align-items: stretch;
}

.football-hero-copy {
  position: relative;
  padding: 34px;
  border: 1px solid rgba(112, 132, 255, 0.22);
  border-radius: 30px;
  background:
    linear-gradient(135deg, rgba(15, 25, 55, 0.85), rgba(9, 15, 34, 0.62)),
    radial-gradient(circle at 85% 18%, rgba(49, 214, 198, 0.11), transparent 38%);
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.42);
  overflow: hidden;
  isolation: isolate;
}

.football-hero-copy::after {
  content: "";
  position: absolute;
  right: -120px;
  bottom: -120px;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(109, 92, 255, 0.18), transparent 65%);
  pointer-events: none;
}

.football-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 18px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(214, 162, 30, 0.28);
  background: rgba(214, 162, 30, 0.075);
  color: #f4d47b;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.football-hero-title {
  position: relative;
  z-index: 1;
  margin: 0;
  max-width: 620px;
  font-size: clamp(31px, 3.4vw, 52px);
  line-height: 1.05;
  letter-spacing: -0.055em;
}

.football-hero-subtitle {
  position: relative;
  z-index: 1;
  max-width: 650px;
  margin: 24px 0 0;
  color: rgba(229, 234, 255, 0.78);
  font-size: 18px;
  line-height: 1.55;
}

.football-hero-actions {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}

.football-hero-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 30px;
}

.football-hero-badge {
  border: 1px solid rgba(143, 158, 255, 0.2);
  background: rgba(255, 255, 255, 0.045);
  border-radius: 999px;
  padding: 8px 11px;
  color: rgba(230, 235, 255, 0.72);
  font-size: 12px;
}

.football-hero-card {
  min-height: 452px;
  border: 1px solid rgba(118, 136, 255, 0.28);
  border-radius: 30px;
  background:
    radial-gradient(circle at 30% 20%, rgba(66, 211, 146, 0.11), transparent 34%),
    linear-gradient(145deg, rgba(16, 24, 50, 0.88), rgba(7, 12, 29, 0.76));
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.42);
  overflow: hidden;
  position: relative;
  padding: 24px;
  display: block;
}

.football-hero-stadium-scene {
  position: absolute;
  left: 24px;
  right: 24px;
  top: 76px;
  bottom: 72px;
  opacity: 0.98;
  pointer-events: none;
}

.football-hero-stadium-halo {
  position: absolute;
  inset: 0;
  border-radius: 44px;
  background:
    radial-gradient(circle at 50% 45%, rgba(109, 99, 255, 0.2), transparent 42%),
    radial-gradient(circle at 50% 78%, rgba(45, 212, 191, 0.13), transparent 38%);
  filter: blur(5px);
}

.football-hero-stadium-outline {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 96%;
  height: 88%;
  transform: translate(-50%, -50%);
  border-radius: 45% / 38%;
  border: 1px solid rgba(45, 212, 191, 0.16);
  box-shadow: inset 0 0 38px rgba(45, 212, 191, 0.07);
}

.football-hero-tribune-rings {
  position: absolute;
  inset: 0;
}

.football-hero-tribune-ring {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 45% / 38%;
  border: 1px solid rgba(45, 212, 191, 0.2);
  box-shadow: 0 0 18px rgba(45, 212, 191, 0.06);
  opacity: 0.58;
}

.football-hero-tribune-ring::before,
.football-hero-tribune-ring::after {
  content: none;
}

.football-hero-tribune-ring--1 {
  width: 110%;
  height: 92%;
}

.football-hero-tribune-ring--2 {
  width: 100%;
  height: 82%;
  opacity: 0.5;
}

.football-hero-tribune-ring--3 {
  width: 90%;
  height: 72%;
  opacity: 0.42;
}

.football-hero-tribune-ring--4 {
  width: 80%;
  height: 62%;
  opacity: 0.34;
}

.football-hero-tribune-glow {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(45, 212, 191, 0.28), transparent);
  filter: blur(4px);
  opacity: 0.42;
}

.football-hero-tribune-glow--top {
  top: 52px;
  width: 58%;
}

.football-hero-tribune-glow--bottom {
  bottom: 46px;
  width: 66%;
}

.football-hero-pitch {
  position: absolute;
  left: 50%;
  top: 54%;
  transform: translate(-50%, -50%);
  width: min(388px, 82%);
  aspect-ratio: 1.55 / 1;
  border-radius: 26px;
  border: 2px solid rgba(146, 160, 255, 0.44);
  background:
    linear-gradient(
      90deg,
      rgba(45, 212, 191, 0.092) 0 12.5%,
      transparent 12.5% 25%,
      rgba(45, 212, 191, 0.082) 25% 37.5%,
      transparent 37.5% 50%,
      rgba(45, 212, 191, 0.082) 50% 62.5%,
      transparent 62.5% 75%,
      rgba(45, 212, 191, 0.092) 75% 87.5%,
      transparent 87.5% 100%
    ),
    rgba(7, 20, 43, 0.78);
  box-shadow:
    0 0 0 20px rgba(109, 99, 255, 0.03),
    0 0 0 44px rgba(45, 212, 191, 0.02),
    inset 0 0 30px rgba(45, 212, 191, 0.08);
  overflow: hidden;
}

.football-hero-pitch-half-line {
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 2px;
  background: rgba(146, 160, 255, 0.38);
}

.football-hero-pitch-center-circle {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 82px;
  height: 82px;
  transform: translate(-50%, -50%);
  border: 2px solid rgba(146, 160, 255, 0.34);
  border-radius: 50%;
}

.football-hero-pitch-center-dot {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 5px;
  height: 5px;
  transform: translate(-50%, -50%);
  border-radius: 999px;
  background: rgba(146, 160, 255, 0.58);
}

.football-hero-pitch-penalty {
  position: absolute;
  top: 28%;
  width: 22%;
  height: 44%;
  border: 2px solid rgba(146, 160, 255, 0.32);
}

.football-hero-pitch-penalty--left {
  left: 0;
  border-left: 0;
  border-radius: 0 8px 8px 0;
}

.football-hero-pitch-penalty--right {
  right: 0;
  border-right: 0;
  border-radius: 8px 0 0 8px;
}

.football-hero-pitch-goal-box {
  position: absolute;
  top: 39%;
  width: 9%;
  height: 22%;
  border: 2px solid rgba(146, 160, 255, 0.28);
}

.football-hero-pitch-goal-box--left {
  left: 0;
  border-left: 0;
  border-radius: 0 6px 6px 0;
}

.football-hero-pitch-goal-box--right {
  right: 0;
  border-right: 0;
  border-radius: 6px 0 0 6px;
}

.football-hero-pitch-goal {
  position: absolute;
  top: 43%;
  width: 7px;
  height: 14%;
  border: 1px solid rgba(146, 160, 255, 0.28);
}

.football-hero-pitch-goal--left {
  left: -7px;
  border-right: 0;
  border-radius: 8px 0 0 8px;
}

.football-hero-pitch-goal--right {
  right: -7px;
  border-left: 0;
  border-radius: 0 8px 8px 0;
}

.football-hero-seat-arc {
  display: none;
  position: absolute;
  left: 50%;
  bottom: 50px;
  width: 76%;
  height: 84px;
  transform: translateX(-50%);
  border-bottom: 9px solid rgba(45, 212, 191, 0.2);
  border-radius: 0 0 50% 50%;
  filter: drop-shadow(0 0 18px rgba(45, 212, 191, 0.15));
  pointer-events: none;
}

.football-hero-content-layer {
  position: static;
  z-index: 3;
  min-height: 390px;
}

.football-ticket-card {
  position: relative;
  z-index: 4;
  margin-left: auto;
  width: min(356px, 79%);
  border: 1px solid rgba(146, 160, 255, 0.42);
  border-radius: 22px;
  padding: 14px 16px 12px;
  background:
    radial-gradient(circle at 0% 0%, rgba(255, 255, 255, 0.08), transparent 36%),
    linear-gradient(145deg, rgba(37, 43, 92, 0.92), rgba(16, 21, 48, 0.92));
  box-shadow:
    0 24px 64px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(14px);
}

.football-ticket-top {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 10px;
  color: rgba(226, 232, 240, 0.62);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-weight: 800;
}

.football-ticket-title {
  margin: 0 0 7px;
  max-width: 300px;
  font-size: clamp(21px, 2.4vw, 25px);
  line-height: 1.04;
  font-weight: 850;
  letter-spacing: -0.03em;
}

.football-ticket-meta {
  margin: 0;
  max-width: 292px;
  color: rgba(230, 235, 255, 0.68);
  font-size: 13px;
  line-height: 1.42;
}

.football-ticket-divider {
  margin: 12px 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(148, 163, 184, 0.34), transparent);
}

.football-ticket-price {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 18px;
}

.football-ticket-price span {
  color: rgba(226, 232, 240, 0.52);
  font-size: 11px;
  letter-spacing: 0.02em;
}

.football-ticket-price strong {
  font-size: 24px;
  line-height: 1;
  letter-spacing: -0.05em;
}

.football-hero-mini-grid {
  position: absolute;
  z-index: 5;
  left: 26px;
  right: 26px;
  top: auto;
  bottom: 30px;
  transform: none;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 0;
}

.football-hero-mini-card {
  min-height: 84px;
  border-radius: 16px;
  border: 1px solid rgba(126, 142, 255, 0.25);
  background: rgba(13, 18, 43, 0.76);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  padding: 11px;
  backdrop-filter: blur(12px);
}

.football-hero-mini-card small {
  display: block;
  margin-bottom: 8px;
  color: rgba(226, 232, 240, 0.44);
  text-transform: uppercase;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.14em;
}

.football-hero-mini-card b {
  display: block;
  color: rgba(255, 255, 255, 0.92);
  font-size: 13px;
  line-height: 1.18;
  letter-spacing: -0.02em;
}

.football-directions,
.football-destinations {
  border: 1px solid rgba(129, 146, 255, 0.24);
  border-radius: 26px;
  background: rgba(10, 17, 36, 0.65);
  padding: 24px;
}

.football-section-head {
  display: grid;
  gap: 8px;
  margin-bottom: 22px;
}

.football-section-kicker {
  margin: 0 0 2px;
  color: #8fded4;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 850;
}

.football-section-title {
  margin: 0;
  font-size: clamp(28px, 3.2vw, 40px);
  line-height: 1.06;
  letter-spacing: -0.04em;
}

.football-section-subtitle {
  margin: 0;
  max-width: 720px;
  color: rgba(226, 231, 255, 0.68);
  line-height: 1.55;
}

.football-spotlight-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.football-spotlight {
  min-height: 320px;
  position: relative;
  overflow: hidden;
  border-radius: 26px;
  border: 1px solid rgba(129, 146, 255, 0.24);
  background: rgba(11, 18, 38, 0.72);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.football-spotlight::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 74% 20%, var(--football-spotlight-glow), transparent 44%);
  pointer-events: none;
}

.football-spotlight > * {
  position: relative;
  z-index: 1;
}

.football-spotlight-label {
  display: inline-flex;
  width: fit-content;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.055);
  color: rgba(239, 242, 255, 0.76);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  font-weight: 800;
}

.football-spotlight h3 {
  margin: 20px 0 12px;
  font-size: 30px;
  letter-spacing: -0.04em;
  line-height: 1.05;
}

.football-spotlight p {
  margin: 0;
  color: rgba(228, 233, 255, 0.68);
  line-height: 1.55;
}

.football-mini-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  color: #fff;
  font-weight: 780;
  margin-top: 24px;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  text-decoration: none;
}

.football-mini-link::after {
  content: "→";
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.16);
}

.football-process {
  display: grid;
  grid-template-columns: 0.86fr 1.14fr;
  gap: 18px;
  align-items: stretch;
}

.football-process-intro {
  border: 1px solid rgba(129, 146, 255, 0.22);
  background:
    radial-gradient(circle at 20% 10%, rgba(49, 214, 198, 0.11), transparent 42%),
    rgba(10, 17, 36, 0.7);
  border-radius: 26px;
  padding: 28px;
}

.football-process-intro-text {
  margin: 16px 0 0;
  color: rgba(226, 231, 255, 0.68);
  line-height: 1.58;
}

.football-process-steps {
  display: grid;
  gap: 12px;
}

.football-step {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 16px;
  align-items: start;
  padding: 19px;
  border-radius: 22px;
  border: 1px solid rgba(129, 146, 255, 0.2);
  background: rgba(10, 17, 36, 0.62);
}

.football-step-number {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  color: #fff;
  font-weight: 900;
  background: linear-gradient(135deg, rgba(124, 105, 255, 0.9), rgba(47, 208, 197, 0.72));
  box-shadow: 0 12px 30px rgba(84, 67, 255, 0.26);
}

.football-step-copy h4 {
  margin: 0 0 6px;
  font-size: 19px;
}

.football-step-copy p {
  margin: 0;
  color: rgba(226, 231, 255, 0.66);
  line-height: 1.5;
}

#venue-view.venue-view--football .venue-filters {
  border: 1px solid rgba(129, 146, 255, 0.24);
  border-radius: 26px;
  background: rgba(10, 17, 36, 0.65);
  padding: 18px;
  margin-bottom: 18px;
  display: grid;
  grid-template-columns: minmax(180px, 1.15fr) repeat(4, minmax(0, 1fr));
  gap: 10px;
}

#venue-view.venue-view--football .venue-filters select,
#venue-view.venue-view--football .venue-filters input[type="text"],
#venue-view.venue-view--football .venue-filters input[type="number"] {
  min-height: 48px;
  color: rgba(235, 239, 255, 0.85);
  border: 1px solid rgba(151, 164, 255, 0.22);
  background: rgba(4, 8, 20, 0.55);
  border-radius: 999px;
  padding: 0 16px;
}

#venue-view.venue-view--football .events-slider {
  --slider-edge-fade: 0px;
  overflow: visible;
}

#venue-view.venue-view--football .events-slider::before,
#venue-view.venue-view--football .events-slider::after {
  content: none;
}

#venue-view.venue-view--football .events-track {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  padding: 0;
  overflow: visible;
  scroll-snap-type: none;
  -webkit-mask-image: none;
  mask-image: none;
}

#venue-view.venue-view--football .events-track .card.event {
  border: 1px solid rgba(129, 146, 255, 0.22);
  border-radius: 24px;
  background: linear-gradient(160deg, rgba(13, 21, 45, 0.9), rgba(7, 11, 27, 0.74));
  padding: 18px;
  min-height: 230px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

#venue-view.venue-view--football .events-track .card.event:hover {
  transform: translateY(-2px);
  border-color: rgba(129, 146, 255, 0.42);
  box-shadow: 0 20px 48px rgba(0, 0, 0, 0.28);
}

#venue-view.venue-view--football .events-track .card.event h3 {
  margin: 18px 0 10px;
  font-size: 20px;
  line-height: 1.16;
}

#venue-view.venue-view--football .events-track .card.event .event-meta {
  color: rgba(226, 232, 240, 0.79);
  font-size: 16px;
  font-weight: 550;
  line-height: 1.48;
}

#venue-view.venue-view--football .events-track .card.event .event-price {
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid rgba(145, 159, 255, 0.16);
}

#venue-view.venue-view--football .events-track .card.event .btn {
  margin-top: 10px;
  border-radius: 999px;
}

.football-destination-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.football-destination-card {
  position: relative;
  min-height: 150px;
  border-radius: 24px;
  border: 1px solid rgba(129, 146, 255, 0.2);
  background:
    radial-gradient(circle at 82% 10%, rgba(124, 105, 255, 0.18), transparent 42%),
    rgba(10, 17, 36, 0.66);
  padding: 18px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.football-destination-card::after {
  content: "";
  position: absolute;
  right: -24px;
  bottom: -22px;
  width: 96px;
  height: 96px;
  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  transform: rotate(14deg);
  background: rgba(255, 255, 255, 0.035);
}

.football-destination-city {
  position: relative;
  z-index: 1;
  margin: 0;
  font-size: 22px;
  letter-spacing: -0.025em;
  color: #fff;
  text-decoration: none;
}

.football-destination-city:hover {
  color: #f8fafc;
}

.football-destination-meta {
  margin: 0;
  color: rgba(226, 231, 255, 0.54);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 10px;
  font-weight: 850;
}

.football-destination-venue-link {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #bfdbfe;
  font-size: 12px;
  text-decoration: none;
}

.football-destination-venue-link:hover {
  color: #dbeafe;
}

.football-destination-cta {
  position: relative;
  z-index: 1;
  color: rgba(245, 247, 255, 0.86);
  font-size: 13px;
  font-weight: 750;
}

.football-destinations-empty {
  margin: 8px 0 0;
  color: var(--text-soft);
  font-size: 13px;
}

.football-disclaimer {
  border-radius: 28px;
  border: 1px solid rgba(214, 162, 30, 0.24);
  background:
    radial-gradient(circle at 12% 20%, rgba(214, 162, 30, 0.11), transparent 36%),
    rgba(14, 18, 34, 0.78);
  padding: 26px;
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 24px;
  align-items: start;
}

.football-disclaimer-title {
  font-size: 26px;
}

.football-disclaimer-text {
  margin: 0;
  color: rgba(228, 233, 255, 0.72);
  line-height: 1.62;
}

.football-events-request {
  margin-top: 14px;
  display: grid;
  gap: 10px;
  align-items: start;
}

.football-request-title {
  margin: 0;
  font-size: 20px;
}

.football-request-text {
  margin: 0;
  color: var(--text-soft);
  line-height: 1.5;
}

.football-events-request .btn {
  justify-self: start;
}

.football-seo-compact {
  margin-top: 12px;
}

.football-seo-compact .seo-content-title {
  margin-bottom: 6px;
}

@media (max-width: 1100px) {
  .football-hero-title {
    font-size: clamp(30px, 4.6vw, 44px);
    max-width: 560px;
  }

  .football-hero-visual {
    min-height: 536px;
  }

  .football-hero-stadium-scene {
    left: 24px;
    right: 24px;
    top: 94px;
    bottom: 98px;
  }

  .football-hero-grid,
  .football-process,
  .football-disclaimer {
    grid-template-columns: minmax(0, 1fr);
  }

  #venue-view.venue-view--football .venue-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #venue-view.venue-view--football .events-track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .football-destination-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .football-spotlight-grid,
  #venue-view.venue-view--football .events-track {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 768px) {
  .football-landing {
    gap: 18px;
  }

  .football-hero-copy,
  .football-hero-card,
  .football-directions,
  .football-destinations,
  .football-process-intro,
  .football-disclaimer {
    padding: 20px;
    border-radius: 22px;
  }

  .football-hero-title {
    font-size: clamp(30px, 9vw, 42px);
  }

  .football-hero-subtitle {
    font-size: 14px;
  }

  .football-hero-visual {
    min-height: 640px;
    padding: 18px;
  }

  .football-hero-stadium-scene {
    left: 20px;
    right: 20px;
    top: 136px;
    bottom: 164px;
  }

  .football-ticket-card {
    width: min(332px, 82%);
    padding: 14px 14px 12px;
  }

  .football-hero-content-layer {
    min-height: 604px;
  }

  .football-hero-actions .btn {
    width: 100%;
  }

  .football-destination-grid,
  #venue-view.venue-view--football .venue-filters {
    grid-template-columns: minmax(0, 1fr);
  }

  .football-hero-mini-grid {
    left: 14px;
    right: 14px;
    top: auto;
    bottom: 30px;
    transform: none;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .football-hero-mini-card {
    min-height: auto;
    padding: 10px 12px;
  }

  .football-mini-card small {
    margin-bottom: 8px;
  }

  .football-mini-card b {
    font-size: 13px;
  }

  .football-hero-seat-arc {
    bottom: 112px;
    width: 74%;
  }

  #venue-view.venue-view--football .venue-events-header.football-events-section {
    grid-template-columns: minmax(0, 1fr);
  }

  #venue-view.venue-view--football .football-events-secondary-cta {
    grid-column: 1;
    grid-row: auto;
    width: 100%;
  }
}

#venue-view.venue-view--opera .venue-view-head,
#venue-view.venue-view--opera [data-venue-seo-content],
#venue-view.venue-view--opera [data-venue-related-links] {
  display: none !important;
}

#venue-view.venue-view--opera .venue-view-topbar {
  margin-bottom: 14px;
}

#venue-view.venue-view--opera .venue-back-btn {
  border-radius: 999px;
  border: 1px solid rgba(165, 176, 255, 0.28);
  color: rgba(245, 247, 255, 0.78);
  background: rgba(12, 18, 36, 0.5);
}

#venue-view.venue-view--opera .seo-breadcrumbs {
  margin-bottom: 18px;
  color: rgba(226, 231, 255, 0.58);
  font-size: 14px;
  gap: 8px;
}

#venue-view.venue-view--opera .seo-breadcrumbs__sep {
  color: rgba(226, 231, 255, 0.34);
}

.opera-category-landing {
  display: grid;
  gap: 26px;
  margin-bottom: 22px;
}

.opera-hero {
  padding-top: 2px;
}

.opera-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(340px, 0.9fr);
  gap: 20px;
  align-items: stretch;
}

.opera-hero-copy {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  border: 1px solid rgba(143, 158, 255, 0.28);
  background:
    linear-gradient(135deg, rgba(15, 24, 54, 0.88), rgba(8, 13, 31, 0.72)),
    radial-gradient(circle at 86% 20%, rgba(216, 93, 159, 0.12), transparent 42%),
    radial-gradient(circle at 14% 82%, rgba(217, 174, 76, 0.08), transparent 42%);
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.42);
  padding: 32px;
  min-height: 430px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.opera-hero-copy::after {
  content: "";
  position: absolute;
  right: -90px;
  bottom: -110px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(109, 92, 255, 0.17), transparent 66%);
  pointer-events: none;
}

.opera-hero-eyebrow {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  margin: 0 0 18px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(217, 174, 76, 0.32);
  background: rgba(217, 174, 76, 0.075);
  color: #f2d992;
  font-size: 12px;
  font-weight: 760;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

#venue-view.venue-view--opera .opera-hero-title {
  position: relative;
  z-index: 1;
  max-width: 760px;
  margin: 0;
  font-size: clamp(40px, 4.4vw, 62px);
  line-height: 0.96;
  letter-spacing: -0.055em;
}

.opera-hero-subtitle {
  position: relative;
  z-index: 1;
  max-width: 660px;
  margin: 24px 0 0;
  color: rgba(229, 234, 255, 0.76);
  font-size: 18px;
  line-height: 1.55;
}

.opera-hero-actions {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}

.opera-hero-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 30px;
}

.opera-hero-badge {
  border: 1px solid rgba(143, 158, 255, 0.2);
  background: rgba(255, 255, 255, 0.045);
  border-radius: 999px;
  padding: 8px 11px;
  font-size: 12px;
  color: rgba(230, 235, 255, 0.72);
}

.opera-hero-panel {
  position: relative;
  min-height: 430px;
  overflow: hidden;
  border-radius: 30px;
  border: 1px solid rgba(118, 136, 255, 0.28);
  background:
    radial-gradient(circle at 32% 20%, rgba(217, 174, 76, 0.12), transparent 34%),
    linear-gradient(145deg, rgba(16, 24, 50, 0.88), rgba(7, 12, 29, 0.78));
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.42);
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.opera-stage-art {
  position: absolute;
  inset: 18px;
  pointer-events: none;
  opacity: 0.46;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 24px;
}

.opera-stage-art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 48%;
  filter: saturate(1.04) contrast(1.08) brightness(0.48);
}

.opera-stage-art::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 54% 40%, rgba(109, 92, 255, 0.18), transparent 54%),
    linear-gradient(180deg, rgba(7, 12, 29, 0.36) 0%, rgba(7, 12, 29, 0.8) 78%, rgba(7, 12, 29, 0.92) 100%);
}

.opera-feature-ticket {
  position: relative;
  z-index: 1;
  margin-left: auto;
  width: min(100%, 360px);
  border: 1px solid rgba(170, 181, 255, 0.25);
  border-radius: 24px;
  padding: 20px;
  background:
    linear-gradient(160deg, rgba(38, 49, 98, 0.88), rgba(15, 21, 42, 0.76)),
    radial-gradient(circle at 92% 12%, rgba(217, 174, 76, 0.22), transparent 42%);
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.36);
  backdrop-filter: blur(12px);
}

.opera-nearest-event-card {
  display: grid;
  grid-template-rows: auto auto auto auto;
  gap: 0;
}

.opera-feature-ticket.is-empty {
  margin-top: auto;
}

.opera-ticket-top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: rgba(236, 240, 255, 0.58);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 800;
}

.opera-ticket-title {
  margin: 20px 0 10px;
  font-size: clamp(22px, 2.5vw, 28px);
  line-height: 1.08;
  font-weight: 850;
  letter-spacing: -0.03em;
}

.opera-ticket-meta {
  margin: 0;
  color: rgba(230, 235, 255, 0.68);
  font-size: 14px;
  line-height: 1.55;
}

.opera-nearest-event-meta {
  min-height: 44px;
}

.opera-nearest-event-footer {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px dashed rgba(168, 180, 255, 0.26);
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
}

.opera-nearest-event-footer.is-empty {
  margin-top: 12px;
  padding-top: 0;
  border-top: 0;
}

.opera-ticket-price {
  margin-top: 18px;
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 16px;
  padding-top: 18px;
  border-top: 1px dashed rgba(168, 180, 255, 0.25);
}

.opera-nearest-event-price {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
  display: grid;
  gap: 2px;
  align-items: start;
}

.opera-ticket-price span {
  color: rgba(230, 235, 255, 0.55);
  font-size: 12px;
}

.opera-ticket-price strong {
  font-size: 24px;
  letter-spacing: -0.04em;
}

.opera-nearest-event-price strong {
  font-size: 22px;
}

.opera-nearest-event-button {
  min-height: 38px;
  padding: 0 14px;
  border-radius: 999px;
  border-color: rgba(159, 172, 255, 0.36);
  background: rgba(255, 255, 255, 0.06);
  color: rgba(246, 248, 255, 0.92);
  font-size: 13px;
  font-weight: 760;
  white-space: nowrap;
}

.opera-nearest-event-button:hover {
  border-color: rgba(176, 186, 255, 0.62);
  background: rgba(109, 92, 255, 0.16);
}

.opera-hero-mini {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 22px;
}

.opera-hero-mini article {
  border: 1px solid rgba(137, 153, 255, 0.18);
  background: rgba(255, 255, 255, 0.04);
  border-radius: 16px;
  padding: 10px 11px;
  min-height: 82px;
}

.opera-hero-mini small {
  display: block;
  color: rgba(231, 235, 255, 0.5);
  text-transform: uppercase;
  font-size: 10px;
  letter-spacing: 0.08em;
  margin-bottom: 8px;
}

.opera-hero-mini b {
  font-size: 14px;
  line-height: 1.3;
}

.opera-directions {
  border: 1px solid rgba(129, 146, 255, 0.24);
  border-radius: 26px;
  background: rgba(10, 17, 36, 0.65);
  padding: 24px;
}

.opera-section-head {
  display: grid;
  gap: 8px;
  margin-bottom: 22px;
}

.opera-section-kicker {
  margin: 0 0 2px;
  color: #f2d992;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 850;
}

.opera-section-title {
  margin: 0;
  font-size: clamp(28px, 3.2vw, 42px);
  line-height: 1.05;
  letter-spacing: -0.045em;
}

.opera-section-subtitle {
  margin: 0;
  max-width: 720px;
  color: rgba(226, 231, 255, 0.68);
  line-height: 1.55;
}

.opera-spotlight-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.opera-spotlight {
  min-height: 310px;
  position: relative;
  overflow: hidden;
  border-radius: 26px;
  border: 1px solid rgba(129, 146, 255, 0.24);
  background: rgba(11, 18, 38, 0.72);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.opera-spotlight::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 74% 20%, var(--opera-spotlight-glow), transparent 44%);
  pointer-events: none;
}

.opera-spotlight > * {
  position: relative;
  z-index: 1;
}

.opera-spotlight-label {
  display: inline-flex;
  width: fit-content;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.055);
  color: rgba(239, 242, 255, 0.76);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  font-weight: 800;
}

.opera-spotlight h3 {
  margin: 20px 0 12px;
  font-size: 30px;
  letter-spacing: -0.04em;
  line-height: 1.05;
}

.opera-spotlight p {
  margin: 0;
  color: rgba(228, 233, 255, 0.68);
  line-height: 1.55;
}

.opera-mini-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  color: #fff;
  font-weight: 780;
  margin-top: 24px;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  text-decoration: none;
}

.opera-mini-link::after {
  content: "→";
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.16);
}

.opera-process {
  display: grid;
  grid-template-columns: 0.86fr 1.14fr;
  gap: 18px;
  align-items: stretch;
}

.opera-process-intro {
  border: 1px solid rgba(129, 146, 255, 0.22);
  background:
    radial-gradient(circle at 20% 10%, rgba(217, 174, 76, 0.11), transparent 42%),
    rgba(10, 17, 36, 0.7);
  border-radius: 26px;
  padding: 28px;
  min-height: 100%;
}

.opera-process-intro-text {
  margin: 16px 0 0;
  color: rgba(226, 231, 255, 0.68);
  line-height: 1.58;
}

.opera-process-steps {
  display: grid;
  gap: 12px;
}

.opera-step {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 16px;
  align-items: start;
  padding: 19px;
  border-radius: 22px;
  border: 1px solid rgba(129, 146, 255, 0.2);
  background: rgba(10, 17, 36, 0.62);
}

.opera-step-number {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  color: #fff;
  font-weight: 900;
  background: linear-gradient(135deg, rgba(124, 105, 255, 0.9), rgba(217, 174, 76, 0.72));
  box-shadow: 0 12px 30px rgba(84, 67, 255, 0.26);
}

.opera-step-copy h4 {
  margin: 0 0 6px;
  font-size: 19px;
}

.opera-step-copy p {
  margin: 0;
  color: rgba(226, 231, 255, 0.66);
  line-height: 1.5;
}

#venue-view.venue-view--opera .venue-events-header {
  margin-top: 28px;
  margin-bottom: 18px;
}

#venue-view.venue-view--opera .venue-events-header.opera-events-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 24px;
  row-gap: 8px;
  align-items: end;
}

#venue-view.venue-view--opera .venue-events-header.opera-events-section [data-opera-events-kicker],
#venue-view.venue-view--opera .venue-events-header.opera-events-section h2,
#venue-view.venue-view--opera .venue-events-header.opera-events-section .venue-events-subtitle {
  grid-column: 1;
}

#venue-view.venue-view--opera .venue-events-header.opera-events-section h2 {
  margin: 0;
  font-size: clamp(28px, 3.2vw, 42px);
  line-height: 1.05;
  letter-spacing: -0.045em;
}

#venue-view.venue-view--opera .venue-events-subtitle {
  margin-top: 0;
  max-width: 720px;
  color: rgba(226, 231, 255, 0.68);
}

#venue-view.venue-view--opera .opera-events-secondary-cta {
  grid-column: 2;
  grid-row: 1 / span 3;
  align-self: end;
  margin: 0;
}

#venue-view.venue-view--opera .venue-filters {
  border: 1px solid rgba(129, 146, 255, 0.24);
  border-radius: 26px;
  background: rgba(10, 17, 36, 0.65);
  padding: 18px;
  margin-bottom: 18px;
  display: grid;
  grid-template-columns: minmax(180px, 1.2fr) repeat(4, minmax(0, 1fr));
  gap: 10px;
}

#venue-view.venue-view--opera .venue-filters select,
#venue-view.venue-view--opera .venue-filters input[type="text"],
#venue-view.venue-view--opera .venue-filters input[type="number"] {
  min-height: 48px;
  color: rgba(235, 239, 255, 0.85);
  border: 1px solid rgba(151, 164, 255, 0.22);
  background: rgba(4, 8, 20, 0.55);
  border-radius: 999px;
  padding: 0 16px;
}

#venue-view.venue-view--opera .events-slider {
  --slider-edge-fade: 0px;
  overflow: visible;
}

#venue-view.venue-view--opera .events-slider::before,
#venue-view.venue-view--opera .events-slider::after {
  content: none;
}

#venue-view.venue-view--opera .events-track,
#venue-view.venue-view--opera .opera-events-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  padding: 0;
  overflow: visible;
  scroll-snap-type: none;
  -webkit-mask-image: none;
  mask-image: none;
}

#venue-view.venue-view--opera .events-track .card.event {
  border: 1px solid rgba(129, 146, 255, 0.22);
  border-radius: 24px;
  background: linear-gradient(160deg, rgba(13, 21, 45, 0.9), rgba(7, 11, 27, 0.74));
  padding: 20px;
  min-height: 230px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

#venue-view.venue-view--opera .events-track .card.event:hover {
  transform: translateY(-2px);
  border-color: rgba(129, 146, 255, 0.42);
  box-shadow: 0 20px 48px rgba(0, 0, 0, 0.28);
}

#venue-view.venue-view--opera .events-track .card.event h3 {
  margin: 20px 0 10px;
  font-size: 24px;
  line-height: 1.12;
  letter-spacing: -0.025em;
}

#venue-view.venue-view--opera .events-track .card.event .event-meta {
  color: rgba(226, 232, 240, 0.79);
  font-size: 16px;
  font-weight: 550;
  line-height: 1.48;
}

#venue-view.venue-view--opera .events-track .card.event .event-price {
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid rgba(145, 159, 255, 0.16);
}

#venue-view.venue-view--opera .events-track .card.event .event-price .amount {
  font-size: 20px;
}

#venue-view.venue-view--opera .events-track .card.event .btn {
  margin-top: 10px;
  border-radius: 999px;
}

@media (max-width: 1100px) {
  .opera-hero-grid,
  .opera-process {
    grid-template-columns: minmax(0, 1fr);
  }

  #venue-view.venue-view--opera .venue-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .opera-spotlight-grid,
  #venue-view.venue-view--opera .events-track,
  #venue-view.venue-view--opera .opera-events-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .opera-category-landing {
    gap: 18px;
  }

  .opera-hero-copy,
  .opera-hero-panel,
  .opera-directions,
  .opera-process-intro {
    padding: 20px;
    border-radius: 22px;
  }

  #venue-view.venue-view--opera .opera-hero-title {
    font-size: clamp(34px, 8.6vw, 44px);
  }

  .opera-hero-subtitle {
    font-size: 14px;
  }

  .opera-hero-mini,
  .opera-spotlight-grid,
  #venue-view.venue-view--opera .venue-filters,
  #venue-view.venue-view--opera .events-track,
  #venue-view.venue-view--opera .opera-events-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .opera-hero-actions .btn {
    width: 100%;
  }

  .opera-nearest-event-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .opera-nearest-event-price {
    width: 100%;
  }

  .opera-nearest-event-button {
    width: 100%;
    justify-content: center;
  }

  #venue-view.venue-view--opera .venue-events-header.opera-events-section {
    grid-template-columns: minmax(0, 1fr);
  }

  #venue-view.venue-view--opera .opera-events-secondary-cta {
    grid-column: 1;
    grid-row: auto;
    width: 100%;
  }
}

#venue-view.venue-view--formula .venue-view-head,
#venue-view.venue-view--formula [data-venue-seo-content],
#venue-view.venue-view--formula [data-venue-related-links] {
  display: none !important;
}

#venue-view.venue-view--formula .venue-view-topbar {
  margin-bottom: 20px;
}

#venue-view.venue-view--formula .venue-back-btn {
  min-height: 40px;
}

#venue-view.venue-view--formula .seo-breadcrumbs {
  margin: 0 0 20px;
}

.formula-category-landing {
  display: grid;
  gap: 28px;
  margin-bottom: 22px;
}

.formula-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(390px, .9fr);
  gap: 22px;
  align-items: stretch;
}

.formula-hero-copy,
.formula-hero-visual,
.formula-directions,
.formula-help-panel,
.formula-step-card,
.formula-weekend,
.formula-category-links,
#venue-view.venue-view--formula .venue-filters,
#venue-view.venue-view--formula .events-track .formula-event-card {
  border: 1px solid rgba(148, 163, 184, .24);
  background:
    radial-gradient(circle at 10% 0%, rgba(99, 102, 241, .12), transparent 35%),
    linear-gradient(180deg, rgba(15, 23, 42, .78), rgba(8, 13, 28, .9));
  box-shadow: 0 18px 42px rgba(0, 0, 0, .26);
}

.formula-hero-copy {
  min-height: 500px;
  border-radius: 26px;
  padding: 36px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

.formula-hero-copy::after {
  content: "";
  position: absolute;
  inset: auto -12% -24% 44%;
  height: 260px;
  background: radial-gradient(circle, rgba(239, 68, 68, .16), transparent 66%);
  pointer-events: none;
}

.formula-hero-eyebrow {
  width: fit-content;
  min-height: 34px;
  padding: 0 15px;
  margin: 0 0 24px;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  border: 1px solid rgba(239, 68, 68, .44);
  color: #fecaca;
  background: rgba(239, 68, 68, .08);
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 12px;
  font-weight: 850;
}

#venue-view.venue-view--formula .formula-hero-title {
  margin: 0;
  max-width: 680px;
  font-size: clamp(44px, 5.4vw, 74px);
  line-height: .98;
  letter-spacing: -0.06em;
}

.formula-hero-subtitle {
  max-width: 580px;
  margin: 28px 0 0;
  color: rgba(229, 231, 235, .76);
  font-size: 20px;
  line-height: 1.45;
}

.formula-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.formula-hero-actions .btn {
  min-height: 42px;
  padding: 0 20px;
  border-radius: 999px;
  font-weight: 650;
}

.formula-hero-btn-red,
.formula-hero-btn-red:hover {
  color: #fff;
}

.formula-hero-btn-red {
  border: 1px solid rgba(239, 68, 68, .52);
  background: linear-gradient(135deg, #ef4444, #7f1d1d);
  box-shadow: 0 18px 38px rgba(239, 68, 68, .22);
}

.formula-hero-btn-red:hover {
  border-color: rgba(248, 113, 113, .78);
  background: linear-gradient(135deg, #ff5b5b, #ef4444 48%, #991b1b);
  box-shadow: 0 22px 46px rgba(239, 68, 68, .38), 0 0 0 1px rgba(248, 113, 113, .16);
}

.formula-hero-btn-ghost {
  border: 1px solid rgba(248, 113, 113, .34);
  background: rgba(15, 23, 42, .62);
  color: rgba(229, 231, 235, .88);
  box-shadow: 0 12px 28px rgba(0, 0, 0, .22);
}

.formula-hero-btn-ghost:hover {
  border-color: rgba(248, 113, 113, .72);
  color: #fff;
  background: linear-gradient(135deg, rgba(239, 68, 68, .24), rgba(127, 29, 29, .34));
  box-shadow: 0 18px 38px rgba(239, 68, 68, .22), 0 0 0 1px rgba(248, 113, 113, .12);
}

.formula-hero-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 30px;
}

.formula-tag {
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, .24);
  background: rgba(15, 23, 42, .48);
  color: rgba(229, 231, 235, .72);
  font-size: 13px;
  display: inline-flex;
  align-items: center;
}

.formula-hero-visual {
  min-height: 500px;
  border-radius: 26px;
  padding: 26px;
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 72% 16%, rgba(239, 68, 68, .18), transparent 36%),
    radial-gradient(circle at 28% 72%, rgba(56, 189, 248, .12), transparent 35%),
    linear-gradient(180deg, rgba(15, 23, 42, .74), rgba(8, 13, 28, .92));
}

.formula-monza-track {
  position: absolute;
  inset: 88px -18px -44px;
  width: calc(100% + 36px);
  height: calc(100% - 44px);
  opacity: .52;
  filter: drop-shadow(0 0 26px rgba(239, 68, 68, .22));
  pointer-events: none;
}

.formula-monza-track .track-base {
  fill: none;
  stroke: rgba(199, 210, 254, .16);
  stroke-width: 15;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.formula-monza-track .track-line-main {
  fill: none;
  stroke: rgba(229, 231, 235, .34);
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.formula-monza-track .track-accent {
  fill: none;
  stroke: rgba(255, 56, 56, .98);
  stroke-width: 4.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 70 520;
  filter: drop-shadow(0 0 10px rgba(239, 68, 68, .75)) drop-shadow(0 0 22px rgba(239, 68, 68, .38));
  animation: formulaMonzaDash 4.8s linear infinite;
}

.formula-monza-track .start-line {
  fill: none;
  stroke: rgba(255, 255, 255, .52);
  stroke-width: 3;
  stroke-linecap: round;
}

.formula-speed-streaks {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  opacity: .55;
}

.formula-speed-streaks span {
  position: absolute;
  width: 160px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(239, 68, 68, .58), transparent);
  animation: formulaSpeedLine 3.6s linear infinite;
}

.formula-speed-streaks span:nth-child(1) {
  top: 96px;
  left: -160px;
  animation-delay: 0s;
}

.formula-speed-streaks span:nth-child(2) {
  top: 220px;
  left: -190px;
  animation-delay: 1.1s;
  background: linear-gradient(90deg, transparent, rgba(99, 102, 241, .58), transparent);
}

.formula-speed-streaks span:nth-child(3) {
  top: 340px;
  left: -140px;
  animation-delay: 2.2s;
}

.formula-floating-race {
  position: relative;
  z-index: 2;
  margin-left: auto;
  width: min(400px, 100%);
  border-radius: 22px;
  padding: 26px 24px 22px;
  border: 1px solid rgba(239, 68, 68, .42);
  background:
    radial-gradient(circle at 82% 12%, rgba(239, 68, 68, .22), transparent 42%),
    linear-gradient(180deg, rgba(31, 41, 75, .88), rgba(13, 20, 39, .96));
  box-shadow: 0 26px 70px rgba(0, 0, 0, .42);
  animation: formulaRaceCardFloat 5s ease-in-out infinite;
}

.formula-floating-top {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  color: rgba(229, 231, 235, .62);
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  font-weight: 850;
  margin-bottom: 24px;
}

.formula-floating-title {
  margin: 0;
  font-size: 32px;
  line-height: 1.05;
  letter-spacing: -0.04em;
}

.formula-floating-meta {
  margin: 14px 0 0;
  color: #9ca3af;
  font-size: 15px;
  line-height: 1.5;
}

.formula-floating-footer {
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px dashed rgba(148, 163, 184, .24);
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
}

.formula-floating-price small {
  display: block;
  color: rgba(156, 163, 175, .8);
  text-transform: uppercase;
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .12em;
  margin-bottom: 4px;
}

.formula-floating-price strong {
  font-size: 28px;
}

.formula-floating-link {
  min-height: 36px;
  padding: 0 16px;
}

.formula-visual-cards {
  position: absolute;
  left: 26px;
  right: 26px;
  bottom: 24px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.formula-mini-info {
  min-height: 88px;
  border-radius: 16px;
  padding: 14px;
  border: 1px solid rgba(148, 163, 184, .2);
  background: rgba(15, 23, 42, .64);
}

.formula-mini-info small {
  color: rgba(156, 163, 175, .72);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 10px;
  font-weight: 850;
}

.formula-mini-info strong {
  display: block;
  margin-top: 10px;
  font-size: 15px;
  line-height: 1.18;
}

.formula-directions {
  border-radius: 26px;
  padding: 26px;
}

.formula-section-head {
  display: grid;
  gap: 10px;
  margin-bottom: 22px;
}

.formula-section-kicker {
  margin: 0;
  color: #f5d38a;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  font-weight: 850;
}

.formula-section-title {
  margin: 0;
  font-size: clamp(34px, 3.8vw, 50px);
  line-height: 1.06;
  letter-spacing: -0.05em;
}

.formula-section-subtitle {
  max-width: 760px;
  margin: 0;
  color: #9ca3af;
  font-size: 17px;
  line-height: 1.45;
}

.formula-track-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.formula-track-card {
  min-height: 330px;
  border-radius: 24px;
  border: 1px solid rgba(148, 163, 184, .22);
  background:
    radial-gradient(circle at 78% 10%, rgba(239, 68, 68, .18), transparent 42%),
    radial-gradient(circle at 18% 0%, rgba(99, 102, 241, .08), transparent 38%),
    linear-gradient(180deg, rgba(15, 23, 42, .72), rgba(8, 13, 28, .92));
  padding: 26px;
  display: flex;
  flex-direction: column;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
  overflow: hidden;
  position: relative;
}

.formula-track-card::before {
  content: "";
  position: absolute;
  right: -44px;
  top: 38px;
  width: 140px;
  height: 74px;
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 999px;
  transform: rotate(-22deg);
}

.formula-track-card:hover {
  transform: translateY(-3px);
  border-color: rgba(239, 68, 68, .46);
  box-shadow:
    0 22px 50px rgba(239, 68, 68, .14),
    0 22px 50px rgba(0, 0, 0, .32);
}

.formula-country-pill {
  width: fit-content;
  padding: 8px 13px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, .26);
  background: rgba(15, 23, 42, .5);
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 11px;
  font-weight: 850;
  color: rgba(229, 231, 235, .7);
  margin-bottom: auto;
  position: relative;
  z-index: 1;
}

.formula-track-card h3 {
  margin: 28px 0 12px;
  font-size: 30px;
  line-height: 1.05;
  letter-spacing: -0.04em;
  position: relative;
  z-index: 1;
}

.formula-track-card p {
  margin: 0;
  color: #9ca3af;
  font-size: 16px;
  line-height: 1.45;
  position: relative;
  z-index: 1;
}

.formula-track-link {
  margin-top: auto;
  padding-top: 28px;
  color: rgba(229, 231, 235, .92);
  font-weight: 800;
  font-size: 14px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.formula-track-link span {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(239, 68, 68, .18);
  border: 1px solid rgba(239, 68, 68, .42);
  color: #fff;
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.formula-track-card:hover .formula-track-link span,
.formula-track-link:focus-visible span {
  background: rgba(239, 68, 68, .28);
  border-color: rgba(248, 113, 113, .62);
  box-shadow: 0 8px 20px rgba(239, 68, 68, .2);
}

.formula-process {
  display: grid;
  grid-template-columns: .86fr 1.14fr;
  gap: 22px;
}

.formula-help-panel {
  border-radius: 26px;
  padding: 28px;
  min-height: 400px;
}

.formula-help-panel .formula-section-title {
  margin-bottom: 22px;
  font-size: clamp(38px, 4vw, 52px);
  line-height: 1.02;
  letter-spacing: -0.055em;
}

.formula-help-text {
  margin: 0;
  color: #9ca3af;
  font-size: 17px;
  line-height: 1.55;
}

.formula-steps-list {
  display: grid;
  gap: 14px;
}

.formula-step-card {
  border-radius: 22px;
  padding: 22px;
  min-height: 126px;
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 22px;
  align-items: center;
}

.formula-step-num {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  color: #fff;
  font-weight: 850;
  font-size: 18px;
  background: linear-gradient(135deg, #ef4444, #8b5cf6);
  box-shadow: 0 16px 34px rgba(239, 68, 68, .22);
}

.formula-step-copy h4 {
  margin: 0 0 8px;
  font-size: 22px;
  letter-spacing: -0.025em;
}

.formula-step-copy p {
  margin: 0;
  color: #9ca3af;
  font-size: 16px;
  line-height: 1.45;
}

.formula-weekend {
  border-radius: 26px;
  padding: 28px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.formula-weekend-item {
  min-height: 150px;
  border-radius: 20px;
  padding: 18px;
  border: 1px solid rgba(148, 163, 184, .2);
  background: rgba(2, 6, 23, .32);
}

.formula-weekend-icon {
  width: 42px;
  height: 42px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(239, 68, 68, .28);
  background: rgba(239, 68, 68, .1);
  margin-bottom: 20px;
}

.formula-weekend-icon svg {
  width: 22px;
  height: 22px;
  stroke: #fecaca;
}

.formula-weekend-item h3 {
  margin: 0 0 8px;
  font-size: 20px;
  letter-spacing: -0.02em;
}

.formula-weekend-item p {
  margin: 0;
  color: #9ca3af;
  font-size: 14px;
  line-height: 1.45;
}

.formula-category-links {
  border-radius: 20px;
  padding: 18px 20px;
}

.formula-category-links h3 {
  margin: 0 0 12px;
  color: #9ca3af;
  font-size: 13px;
  font-weight: 650;
}

.formula-category-link-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

#venue-view.venue-view--formula .formula-category-link-row .btn,
#venue-view.venue-view--formula .formula-events-secondary-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, .34);
  background: rgba(15, 23, 42, .56);
  color: rgba(229, 231, 235, .84);
  font-size: 14px;
  font-weight: 650;
  text-decoration: none;
}

#venue-view.venue-view--formula .formula-category-link-row .btn:visited,
#venue-view.venue-view--formula .formula-events-secondary-cta:visited {
  color: rgba(229, 231, 235, .84);
}

#venue-view.venue-view--formula .formula-category-link-row .btn:hover,
#venue-view.venue-view--formula .formula-category-link-row .btn:focus-visible,
#venue-view.venue-view--formula .formula-events-secondary-cta:hover,
#venue-view.venue-view--formula .formula-events-secondary-cta:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(248, 113, 113, .72);
  color: #fff;
  background: linear-gradient(135deg, rgba(239, 68, 68, .22), rgba(127, 29, 29, .32));
  box-shadow: 0 14px 30px rgba(239, 68, 68, .18);
}

#venue-view.venue-view--formula .venue-events-header {
  margin-top: 0;
  margin-bottom: 16px;
}

#venue-view.venue-view--formula .venue-events-header.formula-events-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 24px;
  row-gap: 8px;
  align-items: end;
}

#venue-view.venue-view--formula .venue-events-header.formula-events-section [data-formula-events-kicker],
#venue-view.venue-view--formula .venue-events-header.formula-events-section h2,
#venue-view.venue-view--formula .venue-events-header.formula-events-section .venue-events-subtitle {
  grid-column: 1;
}

#venue-view.venue-view--formula .venue-events-header.formula-events-section h2 {
  margin: 0;
  font-size: clamp(38px, 4vw, 52px);
  line-height: 1.04;
  letter-spacing: -0.055em;
}

#venue-view.venue-view--formula .venue-events-subtitle {
  margin: 0;
  color: #9ca3af;
  font-size: 16px;
  line-height: 1.45;
}

#venue-view.venue-view--formula .formula-events-secondary-cta {
  grid-column: 2;
  grid-row: 1 / span 3;
  align-self: end;
}

#venue-view.venue-view--formula .venue-filters {
  border-radius: 18px;
  padding: 14px;
  margin-bottom: 18px;
  border-color: rgba(148, 163, 184, .18);
  background:
    radial-gradient(circle at 10% 0%, rgba(99, 102, 241, .08), transparent 34%),
    linear-gradient(180deg, rgba(15, 23, 42, .5), rgba(8, 13, 28, .72));
  box-shadow: 0 12px 30px rgba(0, 0, 0, .18);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

#venue-view.venue-view--formula .venue-filters [data-venue-filter-sort] {
  display: none !important;
}

#venue-view.venue-view--formula .venue-filters [data-venue-filter-min-price] {
  grid-column: 1;
  grid-row: 2;
}

#venue-view.venue-view--formula .venue-filters [data-venue-filter-max-price] {
  grid-column: 2;
  grid-row: 2;
}

#venue-view.venue-view--formula .venue-filters select,
#venue-view.venue-view--formula .venue-filters input[type="text"],
#venue-view.venue-view--formula .venue-filters input[type="number"] {
  min-height: 54px;
  border-radius: 17px;
  border: 1px solid rgba(148, 163, 184, .28);
  background: rgba(2, 6, 23, .36);
  color: rgba(229, 231, 235, .82);
  padding: 0 16px;
}

#venue-view.venue-view--formula .venue-filters select {
  padding-right: 36px;
}

#venue-view.venue-view--formula .events-slider {
  overflow: visible;
}

#venue-view.venue-view--formula .events-track,
#venue-view.venue-view--formula .formula-events-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  padding: 0;
}

#venue-view.venue-view--formula .events-track .formula-event-card {
  min-height: 285px;
  border-radius: 24px;
  padding: 20px 22px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  position: relative;
  background:
    radial-gradient(circle at 74% 0%, rgba(239, 68, 68, .16), transparent 34%),
    radial-gradient(circle at 20% 0%, rgba(99, 102, 241, .18), transparent 42%),
    linear-gradient(180deg, rgba(15, 23, 42, .76), rgba(8, 13, 28, .94));
}

#venue-view.venue-view--formula .events-track .formula-event-card::before {
  content: "";
  position: absolute;
  left: 22px;
  right: 22px;
  top: 12px;
  height: 12px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(239, 68, 68, .28), rgba(129, 140, 248, .12));
  opacity: .58;
  pointer-events: none;
}

#venue-view.venue-view--formula .events-track .formula-event-card .event-tag {
  position: relative;
  z-index: 1;
  width: fit-content;
  padding: 5px 11px;
  border-radius: 999px;
  border: 1px solid rgba(239, 68, 68, .32);
  color: #fecaca;
  background: rgba(8, 13, 28, .78);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 10px;
  font-weight: 850;
  margin-top: 20px;
  margin-bottom: 0;
}

#venue-view.venue-view--formula .events-track .formula-event-card h3 {
  margin: 20px 0 10px;
  font-size: 24px;
  line-height: 1.08;
  letter-spacing: -0.04em;
}

#venue-view.venue-view--formula .events-track .formula-event-card .event-meta {
  margin: 0;
  color: rgba(226, 232, 240, 0.79);
  font-size: 16px;
  font-weight: 550;
  line-height: 1.48;
}

#venue-view.venue-view--formula .events-track .formula-event-card .event-price {
  margin-top: 12px;
  font-size: 17px;
  font-weight: 850;
}

#venue-view.venue-view--formula .formula-event-actions {
  position: relative;
  z-index: 1;
  margin-top: auto;
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 999px;
  transition: gap .36s cubic-bezier(.22, 1, .36, 1), filter .36s ease;
}

#venue-view.venue-view--formula .formula-event-actions::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(99, 102, 241, .38), rgba(239, 68, 68, .62));
  border: 1px solid rgba(239, 68, 68, .52);
  transform: scaleX(.96);
  transform-origin: center;
  transition: opacity .34s ease, transform .36s cubic-bezier(.22, 1, .36, 1);
}

#venue-view.venue-view--formula .formula-event-main-btn,
#venue-view.venue-view--formula .formula-event-arrow {
  position: relative;
  z-index: 1;
  min-height: 44px;
  transition:
    border-radius .36s cubic-bezier(.22, 1, .36, 1),
    border-color .28s ease,
    background .34s ease,
    box-shadow .34s ease,
    transform .16s ease;
}

#venue-view.venue-view--formula .formula-event-main-btn {
  flex: 1;
  min-width: 0;
  border: 1px solid rgba(148, 163, 184, .34);
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(15, 23, 42, .72), rgba(30, 41, 59, .56));
  color: #fff;
  justify-content: center;
}

#venue-view.venue-view--formula .formula-event-arrow {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: #fff;
  border: 1px solid rgba(239, 68, 68, .42);
  background: linear-gradient(135deg, rgba(239, 68, 68, .2), rgba(239, 68, 68, .36));
  box-shadow: 0 12px 28px rgba(239, 68, 68, .16);
}

#venue-view.venue-view--formula .formula-event-actions:hover {
  gap: 0;
  filter: drop-shadow(0 16px 34px rgba(239, 68, 68, .18));
}

#venue-view.venue-view--formula .formula-event-actions:hover::before {
  opacity: 1;
  transform: scaleX(1);
}

#venue-view.venue-view--formula .formula-event-actions:hover .formula-event-main-btn {
  border-color: transparent;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  background: transparent;
  box-shadow: none;
  margin-right: -1px;
}

#venue-view.venue-view--formula .formula-event-actions:hover .formula-event-arrow {
  border-color: transparent;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  background: transparent;
  box-shadow: none;
  margin-left: -1px;
}

@keyframes formulaRaceCardFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

@keyframes formulaMonzaDash {
  0% { stroke-dashoffset: 0; }
  100% { stroke-dashoffset: -590; }
}

@keyframes formulaSpeedLine {
  0% {
    transform: translateX(0);
    opacity: 0;
  }
  12% {
    opacity: 1;
  }
  70% {
    opacity: 1;
  }
  100% {
    transform: translateX(780px);
    opacity: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .formula-floating-race,
  .formula-monza-track .track-accent,
  .formula-speed-streaks span {
    animation: none !important;
  }
}

@media (max-width: 1020px) {
  .formula-hero-grid,
  .formula-process {
    grid-template-columns: minmax(0, 1fr);
  }

  .formula-hero-copy,
  .formula-hero-visual {
    min-height: auto;
  }

  .formula-hero-visual {
    padding-bottom: 180px;
  }

  .formula-track-grid,
  .formula-weekend,
  #venue-view.venue-view--formula .events-track,
  #venue-view.venue-view--formula .formula-events-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #venue-view.venue-view--formula .venue-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #venue-view.venue-view--formula .venue-filters [data-venue-filter-category] {
    grid-column: 1;
    grid-row: 1;
  }

  #venue-view.venue-view--formula .venue-filters [data-venue-filter-city] {
    grid-column: 2;
    grid-row: 1;
  }

  #venue-view.venue-view--formula .venue-filters [data-venue-filter-date] {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  #venue-view.venue-view--formula .venue-filters [data-venue-filter-min-price] {
    grid-column: 1;
    grid-row: 3;
  }

  #venue-view.venue-view--formula .venue-filters [data-venue-filter-max-price] {
    grid-column: 2;
    grid-row: 3;
  }
}

@media (max-width: 640px) {
  .formula-hero-copy,
  .formula-directions,
  .formula-help-panel,
  .formula-weekend,
  .formula-category-links,
  #venue-view.venue-view--formula .venue-filters {
    padding: 22px;
  }

  #venue-view.venue-view--formula .formula-hero-title {
    font-size: 44px;
  }

  .formula-hero-subtitle {
    font-size: 17px;
  }

  .formula-visual-cards {
    grid-template-columns: minmax(0, 1fr);
  }

  .formula-hero-visual {
    padding-bottom: 320px;
  }

  .formula-floating-title {
    font-size: 26px;
  }

  .formula-step-card {
    grid-template-columns: minmax(0, 1fr);
  }

  #venue-view.venue-view--formula .venue-filters {
    grid-template-columns: minmax(0, 1fr);
  }

  #venue-view.venue-view--formula .venue-filters [data-venue-filter-category],
  #venue-view.venue-view--formula .venue-filters [data-venue-filter-city],
  #venue-view.venue-view--formula .venue-filters [data-venue-filter-date],
  #venue-view.venue-view--formula .venue-filters [data-venue-filter-min-price],
  #venue-view.venue-view--formula .venue-filters [data-venue-filter-max-price] {
    grid-column: 1;
    grid-row: auto;
  }

  #venue-view.venue-view--formula .venue-events-header.formula-events-section {
    grid-template-columns: minmax(0, 1fr);
  }

  #venue-view.venue-view--formula .formula-events-secondary-cta {
    grid-column: 1;
    grid-row: auto;
    width: 100%;
  }
}

.venue-load-more-wrap {
  display: flex;
  justify-content: center;
  margin-top: 14px;
}

.request-card {
  --request-accent: #625cff;
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  padding: 1px;
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.14) 0%,
      rgba(151, 167, 226, 0.07) 42%,
      rgba(116, 107, 255, 0.28) 100%
    );
  box-shadow:
    0 24px 72px rgba(0, 0, 0, 0.32),
    0 0 34px rgba(116, 107, 255, 0.08);
}

.request-inner {
  position: relative;
  overflow: hidden;
  min-height: 220px;
  border-radius: 29px;
  padding: 30px 32px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 250px;
  gap: 42px;
  align-items: center;
  background:
    radial-gradient(circle at 84% 20%, rgba(116, 107, 255, 0.18), transparent 38%),
    radial-gradient(circle at 10% 110%, rgba(60, 155, 255, 0.12), transparent 44%),
    linear-gradient(180deg, rgba(18, 26, 58, 0.98), rgba(12, 18, 41, 0.99));
}

.request-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.07), transparent 34%),
    linear-gradient(90deg, rgba(116, 107, 255, 0.06), transparent 45%);
}

.request-inner::after {
  content: "";
  position: absolute;
  left: 28px;
  right: 28px;
  top: 0;
  height: 1px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.9), rgba(60, 155, 255, 0.48), transparent);
  opacity: 0.76;
}

.request-copy,
.request-visual {
  position: relative;
  z-index: 1;
}

.request-copy {
  min-width: 0;
}

.request-title {
  margin: 0;
  color: #f8faff;
  font-size: 34px;
  line-height: 1.06;
  letter-spacing: -0.045em;
  max-width: 680px;
}

.request-text {
  margin: 13px 0 0;
  max-width: 720px;
  color: var(--text-soft);
  font-size: 16px;
  line-height: 1.48;
}

.request-action {
  margin-top: 24px;
  width: min(340px, 100%);
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 999px;
  transition: gap 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

.request-action:hover,
.request-action:focus-within,
.request-card:hover .request-action,
.request-card:focus-within .request-action {
  gap: 0;
}

.request-btn,
.request-arrow {
  color: #fff;
  background: #625cff;
  border: 1px solid rgba(151, 167, 255, 0.24);
  box-shadow:
    0 14px 30px rgba(116, 107, 255, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.request-btn {
  min-height: 44px;
  flex: 1 1 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 0 18px;
  text-decoration: none;
  font-size: 14px;
  font-weight: 700;
  transition:
    border-radius 0.42s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.28s ease,
    background 0.28s ease,
    box-shadow 0.28s ease,
    filter 0.28s ease,
    margin 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

.request-arrow {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-size: 18px;
  font-weight: 700;
  transition:
    border-radius 0.42s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.28s ease,
    background 0.28s ease,
    box-shadow 0.28s ease,
    filter 0.28s ease,
    margin 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

.request-action:hover .request-btn,
.request-action:focus-within .request-btn,
.request-card:hover .request-btn,
.request-card:focus-within .request-btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right-color: transparent;
  background: #625cff;
  box-shadow:
    0 16px 36px rgba(116, 107, 255, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
  filter: brightness(1.04);
  margin-right: -1px;
}

.request-action:hover .request-arrow,
.request-action:focus-within .request-arrow,
.request-card:hover .request-arrow,
.request-card:focus-within .request-arrow {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left-color: transparent;
  background: #625cff;
  box-shadow:
    0 16px 36px rgba(116, 107, 255, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
  filter: brightness(1.04);
  margin-left: -1px;
}

.request-note-row {
  margin-top: 22px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;
}

.request-note {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 11px;
  border-radius: 999px;
  color: #c7d0eb;
  border: 1px solid rgba(151, 167, 255, 0.14);
  background: rgba(255, 255, 255, 0.035);
  font-size: 12px;
}

.request-visual {
  min-height: 170px;
  display: grid;
  place-items: center;
  overflow: visible;
}

.request-pictogram {
  position: relative;
  width: 168px;
  height: 132px;
  border-radius: 28px;
  transform: translateX(0) rotate(-4deg) scale(1);
  transform-origin: center;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(116, 107, 255, 0.11)),
    rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(151, 167, 255, 0.22);
  box-shadow:
    0 24px 58px rgba(0, 0, 0, 0.26),
    0 0 34px rgba(116, 107, 255, 0.12);
  transition:
    transform 0.92s cubic-bezier(0.18, 0.86, 0.22, 1),
    box-shadow 0.62s ease,
    border-color 0.62s ease,
    background 0.62s ease;
}

.request-card:hover .request-pictogram,
.request-card:focus-within .request-pictogram {
  transform: translateX(-46px) rotate(0deg) scale(1.72);
  border-color: rgba(151, 167, 255, 0.34);
  box-shadow:
    0 34px 90px rgba(0, 0, 0, 0.36),
    0 0 58px rgba(116, 107, 255, 0.24);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.18), rgba(116, 107, 255, 0.16)),
    rgba(255, 255, 255, 0.045);
}

.request-pictogram::before {
  content: "";
  position: absolute;
  inset: 16px;
  border-radius: 20px;
  border: 1px dashed rgba(207, 214, 255, 0.22);
  background:
    radial-gradient(circle at 78% 20%, rgba(111, 227, 255, 0.16), transparent 28%),
    radial-gradient(circle at 20% 80%, rgba(116, 107, 255, 0.18), transparent 34%);
}

.request-pictogram::after {
  content: "?";
  position: absolute;
  right: -10px;
  top: -12px;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 24px;
  font-weight: 800;
  background: #625cff;
  box-shadow: 0 16px 34px rgba(116, 107, 255, 0.28);
  transition:
    transform 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.42s ease,
    background 0.42s ease;
}

.request-card:hover .request-pictogram::after,
.request-card:focus-within .request-pictogram::after {
  animation: requestQuestionToCheck 0.72s cubic-bezier(0.16, 1, 0.3, 1) 1.18s forwards;
}

@keyframes requestQuestionToCheck {
  0% {
    content: "?";
    transform: translate(-5px, 5px) scale(0.92) rotate(0deg);
    background: #625cff;
    box-shadow: 0 12px 28px rgba(116, 107, 255, 0.24);
  }
  44% {
    content: "?";
    transform: translate(-5px, 5px) scale(0.68) rotate(-8deg);
    background: #625cff;
    box-shadow: 0 10px 24px rgba(116, 107, 255, 0.18);
  }
  45% {
    content: "✓";
  }
  100% {
    content: "✓";
    transform: translate(-5px, 5px) scale(0.92) rotate(0deg);
    background: #31c48d;
    box-shadow:
      0 14px 32px rgba(49, 196, 141, 0.26),
      0 0 0 6px rgba(49, 196, 141, 0.1);
  }
}

.request-ticket-lines {
  position: absolute;
  left: 42px;
  top: 48px;
  width: 78px;
  display: grid;
  gap: 9px;
  transform: rotate(-4deg);
  transition:
    transform 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    left 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    top 0.62s cubic-bezier(0.16, 1, 0.3, 1);
}

.request-card:hover .request-ticket-lines,
.request-card:focus-within .request-ticket-lines {
  left: 44px;
  top: 46px;
  transform: rotate(0deg);
}

.request-ticket-lines span {
  height: 8px;
  border-radius: 999px;
  background: rgba(232, 238, 255, 0.72);
  opacity: 1;
  transform-origin: left center;
  transform: scaleX(1);
  box-shadow: 0 0 12px rgba(116, 107, 255, 0.22);
}

.request-ticket-lines span:nth-child(2) {
  width: 58px;
  background: rgba(116, 107, 255, 0.78);
  box-shadow: 0 0 14px rgba(116, 107, 255, 0.28);
}

.request-ticket-lines span:nth-child(3) {
  width: 40px;
  background: rgba(60, 155, 255, 0.72);
  box-shadow: 0 0 14px rgba(60, 155, 255, 0.24);
}

.request-card:hover .request-ticket-lines span,
.request-card:focus-within .request-ticket-lines span {
  opacity: 0;
  transform: scaleX(0);
  animation: requestLineReveal 0.36s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.request-card:hover .request-ticket-lines span:nth-child(1),
.request-card:focus-within .request-ticket-lines span:nth-child(1) {
  animation-delay: 0.56s;
}

.request-card:hover .request-ticket-lines span:nth-child(2),
.request-card:focus-within .request-ticket-lines span:nth-child(2) {
  animation-delay: 0.66s;
}

.request-card:hover .request-ticket-lines span:nth-child(3),
.request-card:focus-within .request-ticket-lines span:nth-child(3) {
  animation-delay: 0.76s;
}

@keyframes requestLineReveal {
  0% {
    opacity: 0;
    transform: scaleX(0);
  }
  100% {
    opacity: 1;
    transform: scaleX(1);
  }
}

.request-orbit-dot {
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(111, 227, 255, 0.75);
  box-shadow: 0 0 0 7px rgba(111, 227, 255, 0.08);
  transition: transform 0.62s cubic-bezier(0.16, 1, 0.3, 1);
}

.request-orbit-dot.one {
  left: 18px;
  bottom: 26px;
}

.request-orbit-dot.two {
  right: 32px;
  bottom: 14px;
  background: rgba(116, 107, 255, 0.75);
  box-shadow: 0 0 0 7px rgba(116, 107, 255, 0.08);
}

.request-card:hover .request-orbit-dot.one,
.request-card:focus-within .request-orbit-dot.one {
  transform: translate(6px, -4px) scale(1.12);
}

.request-card:hover .request-orbit-dot.two,
.request-card:focus-within .request-orbit-dot.two {
  transform: translate(-5px, -3px) scale(1.12);
}

.request-flow-card {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
  min-width: 0;
}

.request-flow-card h2,
.request-flow-card p {
  margin: 0;
}

.request-success-section {
  padding: clamp(36px, 7vh, 82px) 0 clamp(44px, 9vh, 96px);
}

.request-success-shell {
  min-height: clamp(300px, calc(100vh - 220px), 560px);
  min-height: clamp(300px, calc(100dvh - 220px), 560px);
  display: flex;
  align-items: center;
  justify-content: center;
}

.request-success-card {
  width: min(100%, 640px);
  gap: 18px;
  padding: clamp(22px, 3vw, 32px);
  border-color: rgba(99, 102, 241, 0.42);
  background:
    radial-gradient(circle at top right, rgba(99, 102, 241, 0.18), rgba(99, 102, 241, 0) 55%),
    rgba(15, 23, 42, 0.96);
}

.request-success-number {
  color: var(--text-soft);
  line-height: 1.5;
}

.request-success-number strong {
  color: var(--text);
  font-weight: 700;
}

.request-success-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.request-success-actions .request-flow-action {
  align-self: stretch;
  justify-content: center;
}

.request-form {
  gap: 14px;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid rgba(88, 119, 206, 0.44);
  background:
    radial-gradient(circle at 88% 8%, rgba(83, 130, 255, 0.14), rgba(83, 130, 255, 0) 42%),
    radial-gradient(circle at 10% 100%, rgba(47, 96, 255, 0.1), rgba(47, 96, 255, 0) 38%),
    linear-gradient(180deg, rgba(12, 21, 49, 0.97), rgba(8, 13, 33, 0.98));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 28px 56px rgba(1, 4, 18, 0.34);
  padding: 16px;
  transition: border-color 1.1s cubic-bezier(.22, 1, .36, 1), box-shadow 1.1s ease, background 1.1s ease;
}

.request-form > * {
  position: relative;
  z-index: 1;
}

.request-flow-head {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.request-flow-head-top {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, 1fr);
  gap: 14px;
  align-items: start;
}

.request-flow-head-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.request-flow-head-main h2 {
  margin: 0;
  font-size: clamp(26px, 2.2vw, 31px);
  line-height: 1.05;
  letter-spacing: -0.02em;
  color: #f3f6ff;
}

.request-flow-intro {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.request-flow-intro-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.request-flow-intro-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 11px;
  border-radius: 999px;
  border: 1px solid rgba(129, 152, 215, 0.36);
  background: rgba(18, 30, 63, 0.66);
  color: rgba(226, 234, 255, 0.9);
  font-size: 11px;
  font-weight: 620;
  line-height: 1.2;
  letter-spacing: 0.015em;
}

.request-flow-head-info {
  margin: 0;
  border-radius: 14px;
  border: 1px solid rgba(112, 136, 198, 0.34);
  background:
    radial-gradient(circle at 78% 8%, rgba(102, 112, 255, 0.16), rgba(102, 112, 255, 0) 56%),
    linear-gradient(180deg, rgba(21, 28, 66, 0.9), rgba(12, 18, 42, 0.94));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  padding: 12px 13px;
}

.request-flow-head-info h3 {
  margin: 0;
  color: #e8eeff;
  font-size: 14px;
  line-height: 1.25;
}

.request-flow-head-info p {
  margin: 7px 0 0;
  color: rgba(190, 203, 235, 0.84);
  font-size: 12px;
  line-height: 1.4;
}

.request-stepper {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.request-step-pill {
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid rgba(120, 141, 198, 0.28);
  background: rgba(16, 25, 52, 0.62);
  color: rgba(189, 201, 227, 0.92);
  border-radius: 12px;
  min-height: 40px;
  padding: 8px 11px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.2;
  cursor: pointer;
  transition: border-color 0.16s ease, background-color 0.16s ease, color 0.16s ease;
}

.request-step-pill:hover {
  border-color: rgba(120, 141, 198, 0.52);
  color: #eef3ff;
}

.request-step-pill.is-active {
  border-color: rgba(112, 139, 218, 0.74);
  background: rgba(59, 89, 176, 0.3);
  color: #f4f7ff;
}

.request-step-pill.is-complete {
  border-color: rgba(89, 161, 245, 0.52);
  background: rgba(40, 108, 193, 0.24);
  color: rgba(222, 239, 255, 0.96);
}

.request-step-index {
  width: 18px;
  height: 18px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(148, 163, 184, 0.22);
  color: inherit;
  font-size: 11px;
  font-weight: 700;
  flex-shrink: 0;
}

.request-flow-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(268px, 0.94fr);
  gap: 14px;
  align-items: start;
}

.request-flow-main {
  min-width: 0;
}

.request-step-section {
  border: 1px solid rgba(102, 127, 188, 0.3);
  border-radius: 16px;
  background:
    radial-gradient(circle at 90% 8%, rgba(86, 110, 242, 0.12), rgba(86, 110, 242, 0) 45%),
    linear-gradient(180deg, rgba(17, 26, 56, 0.74), rgba(12, 20, 44, 0.8));
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.request-step-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.request-step-head h3 {
  margin: 0;
  font-size: 20px;
  line-height: 1.16;
  letter-spacing: -0.01em;
  color: #f2f6ff;
}

.request-step-head p {
  margin: 0;
  font-size: 12px;
  color: var(--text-soft);
  line-height: 1.45;
}

.request-step-grid {
  display: grid;
  gap: 10px;
}

.request-step-grid--search {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.request-step-grid--params {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.request-step-grid--contact {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.request-field {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.request-field--full {
  grid-column: 1 / -1;
}

.request-field > span {
  color: rgba(182, 197, 232, 0.88);
  font-size: 12px;
  line-height: 1.2;
}

.request-summary-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 11px;
  border-radius: 16px;
  border: 1px solid rgba(102, 127, 188, 0.34);
  background:
    radial-gradient(circle at 82% 6%, rgba(86, 110, 242, 0.13), rgba(86, 110, 242, 0) 46%),
    linear-gradient(180deg, rgba(16, 25, 53, 0.86), rgba(10, 17, 39, 0.9));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  position: sticky;
  top: 88px;
  align-self: start;
  padding: 14px;
}

.request-summary-card h3 {
  margin: 0;
  font-size: 15px;
  line-height: 1.3;
}

.request-summary-toggle {
  display: none;
  align-self: flex-start;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.6);
  color: var(--text-soft);
  border-radius: 999px;
  min-height: 30px;
  padding: 5px 10px;
  font-size: 11px;
  line-height: 1;
  cursor: pointer;
}

.request-summary-card.is-collapsed-mobile .request-summary-list {
  display: none;
}

.request-summary-list {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.request-summary-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 3px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(120, 140, 192, 0.16);
}

.request-summary-row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.request-summary-row dt {
  margin: 0;
  color: rgba(164, 180, 217, 0.88);
  font-size: 10px;
  font-weight: 620;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.request-summary-row dd {
  margin: 0;
  color: #f1f5ff;
  font-size: 13px;
  line-height: 1.32;
  word-break: break-word;
}

.request-submit-note {
  margin: 2px 0 0;
  padding: 10px 11px;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.35);
  color: var(--text-soft);
  font-size: 12px;
  line-height: 1.45;
}

.request-flow-action {
  align-self: flex-start;
}

.request-flow-back {
  align-self: flex-start;
  min-height: 36px;
  padding: 0 14px;
  border-radius: 10px;
  font-size: 13px;
}

.request-form .request-city-badge {
  display: inline-flex;
  align-self: flex-start;
  margin-top: 8px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.75);
  color: var(--text-soft);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.request-form .form-error {
  margin: 4px 0 0;
}

.request-step-actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
}

.request-step-actions .btn {
  min-width: 0;
  width: 100%;
}

.request-mobile-actions-anchor {
  display: none;
}

.request-summary-actions {
  margin-top: 4px;
}

.request-step-actions:not([data-step="3"]) [data-request-submit] {
  display: none;
}

.request-step-actions[data-step="3"] [data-request-step-next] {
  display: none;
}

#requestForm .request-form input[type="text"],
#requestForm .request-form input[type="number"],
#requestForm .request-form select,
#requestForm .request-form textarea {
  width: 100%;
  margin-top: 0;
  min-height: 44px;
  background: rgba(10, 17, 39, 0.92);
  border-radius: 12px;
  border: 1px solid rgba(112, 134, 191, 0.46);
  padding: 10px 12px;
  color: #eff3ff;
  font-size: 13px;
  line-height: 1.3;
  color-scheme: dark;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease, color 0.16s ease;
}

#requestForm .request-form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding-right: 36px;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(191, 203, 224, 0.82) 50%),
    linear-gradient(135deg, rgba(191, 203, 224, 0.82) 50%, transparent 50%);
  background-position:
    calc(100% - 18px) 50%,
    calc(100% - 13px) 50%;
  background-size: 5px 5px;
  background-repeat: no-repeat;
}

#requestForm .request-form textarea[data-request-event-query] {
  min-height: 98px;
  resize: vertical;
}

#requestForm .request-form input[type="number"]::-webkit-outer-spin-button,
#requestForm .request-form input[type="number"]::-webkit-inner-spin-button {
  opacity: 0.75;
}

#requestForm .request-form input[type="text"]:hover,
#requestForm .request-form input[type="number"]:hover,
#requestForm .request-form select:hover,
#requestForm .request-form textarea:hover {
  border-color: rgba(121, 146, 224, 0.7);
  background: rgba(13, 21, 47, 0.95);
}

#requestForm .request-form input[type="text"]:focus-visible,
#requestForm .request-form input[type="number"]:focus-visible,
#requestForm .request-form select:focus-visible,
#requestForm .request-form textarea:focus-visible {
  outline: none;
  border-color: rgba(129, 157, 238, 0.88);
  background: rgba(16, 26, 57, 0.95);
  box-shadow: 0 0 0 2px rgba(99, 116, 255, 0.24);
}

#requestForm .request-form input[type="text"]:disabled,
#requestForm .request-form input[type="number"]:disabled,
#requestForm .request-form select:disabled,
#requestForm .request-form textarea:disabled {
  opacity: 0.58;
  cursor: not-allowed;
  background: rgba(15, 23, 42, 0.7);
}

#requestForm .request-form select option {
  background: #0f172a;
  color: #e2e8f0;
}

.recommendation-slider {
  position: relative;
  width: 100%;
  min-height: 114px;
  margin-top: 2px;
}

.recommendation-rotator {
  position: absolute;
  inset: 0;
  animation: recommendationRotatorExit .45s cubic-bezier(.2, .9, .3, 1) 8.95s forwards;
}

.recommendation-slide {
  position: absolute;
  inset: 0;
  border-radius: 13px;
  border: 1px solid rgba(104, 131, 198, 0.34);
  background:
    radial-gradient(circle at 90% 12%, rgba(110, 128, 255, 0.13), rgba(110, 128, 255, 0) 56%),
    linear-gradient(180deg, rgba(17, 28, 58, 0.9), rgba(13, 21, 44, 0.92));
  padding: 12px 13px;
  opacity: 0;
  transform: translateY(7px) scale(.992);
  will-change: opacity, transform;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 14px 26px rgba(4, 8, 25, 0.22);
  transition: border-color 0.38s ease, background 0.38s ease, box-shadow 0.38s ease;
}

.recommendation-slide h4 {
  margin: 0;
  color: #eef3ff;
  font-size: 14px;
  line-height: 1.25;
}

.recommendation-slide p {
  margin: 6px 0 0;
  color: rgba(188, 202, 233, 0.86);
  font-size: 12px;
  line-height: 1.45;
}

.recommendation-slide.is-one {
  animation: recommendationSlideOne 3.05s ease both;
}

.recommendation-slide.is-two {
  animation: recommendationSlideTwo 3.05s ease 3s both;
}

.recommendation-slide.is-three {
  animation: recommendationSlideThree 3.05s ease 6s both;
}

@keyframes recommendationSlideOne {
  0% { opacity: 0; transform: translateY(8px) scale(.992); }
  8% { opacity: 1; transform: translateY(0) scale(1); }
  77% { opacity: 1; transform: translateY(0) scale(1); }
  100% { opacity: 0; transform: translateY(-3px) scale(.996); }
}

@keyframes recommendationSlideTwo {
  0% { opacity: 0; transform: translateY(8px) scale(.992); }
  8% { opacity: 1; transform: translateY(0) scale(1); }
  77% { opacity: 1; transform: translateY(0) scale(1); }
  100% { opacity: 0; transform: translateY(-3px) scale(.996); }
}

@keyframes recommendationSlideThree {
  0% { opacity: 0; transform: translateY(8px) scale(.992); }
  8% { opacity: 1; transform: translateY(0) scale(1); }
  74% { opacity: 1; transform: translateY(0) scale(1); }
  100% { opacity: 0; transform: translateY(2px) scale(.996); }
}

@keyframes recommendationRotatorExit {
  from { opacity: 1; visibility: visible; }
  to { opacity: 0; visibility: hidden; pointer-events: none; }
}

.recommendation-final-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  opacity: 0;
  transform: translateY(7px) scale(.992);
  animation: finalRecommendationsIn .56s cubic-bezier(.2, .9, .3, 1) 9.06s forwards;
}

.recommendation-final-card {
  border-radius: 13px;
  border: 1px solid rgba(104, 131, 198, 0.34);
  background:
    radial-gradient(circle at 90% 12%, rgba(110, 128, 255, 0.13), rgba(110, 128, 255, 0) 56%),
    linear-gradient(180deg, rgba(17, 28, 58, 0.9), rgba(13, 21, 44, 0.92));
  padding: 11px 11px 12px;
  min-height: 110px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 14px 26px rgba(4, 8, 25, 0.22);
  opacity: 0;
  transform: translateY(6px) scale(.992);
  animation: finalCardSettle .52s cubic-bezier(.2, .9, .3, 1) forwards;
  transition: border-color 0.38s ease, background 0.38s ease, box-shadow 0.38s ease;
}

.recommendation-final-card:nth-child(1) { animation-delay: 9.12s; }
.recommendation-final-card:nth-child(2) { animation-delay: 9.2s; }
.recommendation-final-card:nth-child(3) { animation-delay: 9.28s; }

.recommendation-final-card h4 {
  margin: 0;
  color: #eef3ff;
  font-size: 13px;
  line-height: 1.25;
}

.recommendation-final-card p {
  margin: 5px 0 0;
  color: rgba(188, 202, 233, 0.86);
  font-size: 11px;
  line-height: 1.4;
}

@keyframes finalRecommendationsIn {
  from { opacity: 0; transform: translateY(8px) scale(.992); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes finalCardSettle {
  0% { opacity: 0; transform: translateY(8px) scale(.992); }
  72% { opacity: 1; transform: translateY(-2px) scale(1.008); }
  100% { opacity: 1; transform: translateY(0) scale(1); }
}

@media (prefers-reduced-motion: reduce) {
  .recommendation-rotator,
  .recommendation-slide,
  .recommendation-final-grid,
  .recommendation-final-card {
    animation: none !important;
    transition: none !important;
  }

  .recommendation-rotator {
    display: none;
  }

  .recommendation-final-grid,
  .recommendation-final-card {
    opacity: 1;
    transform: none;
  }

}

.venue-group {
  grid-column: 1 / -1;
  margin: 8px 0 0;
}

.venue-group h3 {
  margin: 0;
  font-size: 16px;
  color: var(--text);
}

.venues-empty {
  grid-column: 1 / -1;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.65);
  color: var(--text-soft);
  font-size: 13px;
}

.venue .venue-text p {
  margin: 0 0 10px;
}

.venue .venue-text p:last-child {
  margin-bottom: 0;
}

.venue.is-collapsed .venue-text {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.venue .venue-toggle {
  margin-top: 10px;
  align-self: flex-start;
}

.transfer-grid {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2.5fr);
  gap: 24px;
  align-items: start;
}

.transfer-list {
  margin: 14px 0 0;
  padding-left: 18px;
  color: var(--text-soft);
}

.form label {
  display: block;
  font-size: 13px;
  margin-bottom: 10px;
}

.form input,
.form textarea,
.form select {
  width: 100%;
  margin-top: 4px;
  background: rgba(15, 23, 42, 0.9);
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.6);
  padding: 8px 10px;
  color: var(--text);
  font-size: 13px;
}

.form select {
  appearance: none;
  padding-right: 34px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg width='16' height='10' viewBox='0 0 16 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 2L8 8L14 2' stroke='%23c7d2fe' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 14px 8px;
}

.password-input-wrap {
  position: relative;
  display: block;
  width: 100%;
  margin-top: 4px;
}

.form .password-input-wrap > input {
  margin-top: 0;
  padding-right: 44px;
}

.password-toggle-btn {
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border: 0;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 8px;
  background: rgba(15, 23, 42, 0.45);
  color: rgba(203, 213, 225, 0.95);
  cursor: pointer;
  padding: 0;
  line-height: 0;
  touch-action: manipulation;
}

.password-toggle-btn:hover {
  background: rgba(30, 41, 59, 0.65);
}

.password-toggle-btn:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.7);
  outline-offset: 1px;
}

.password-toggle-icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.password-toggle-icon svg {
  width: 18px;
  height: 18px;
}

.password-toggle-icon--hide {
  display: none;
}

.password-toggle-btn.is-visible .password-toggle-icon--show {
  display: none;
}

.password-toggle-btn.is-visible .password-toggle-icon--hide {
  display: inline-flex;
}

.modal-dialog .form .password-input-wrap > input {
  padding-right: 48px;
}

.password-input-wrap input[type="password"]::-ms-reveal,
.password-input-wrap input[type="password"]::-ms-clear {
  display: none;
}

@media (max-width: 640px) {
  .password-toggle-btn {
    width: 34px;
    height: 34px;
    right: 6px;
  }

  .form .password-input-wrap > input {
    padding-right: 54px;
  }
}

.form input:focus,
.form textarea:focus,
.form select:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.5);
}

.form input.is-invalid,
.form textarea.is-invalid,
.form select.is-invalid {
  border-color: rgba(248, 113, 113, 0.9);
  box-shadow: 0 0 0 1px rgba(248, 113, 113, 0.35);
}

.form-error {
  margin-top: 6px;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid rgba(248, 113, 113, 0.35);
  background: rgba(127, 29, 29, 0.25);
  color: var(--danger);
  font-size: 12px;
  line-height: 1.35;
}

.form-field-error {
  margin: 6px 0 0;
  color: var(--danger);
  font-size: 12px;
  line-height: 1.3;
}

.form-note {
  font-size: 11px;
  color: var(--text-soft);
  margin-top: 8px;
}

.auth-modal {
  width: min(100%, 520px);
  margin: 0 auto;
}

.auth-modal-header {
  padding: 2px 2px 10px;
}

.auth-modal-header .modal-title {
  margin-bottom: 0;
  font-size: clamp(24px, 2.2vw, 28px);
}

.auth-panel {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 2px;
}

.auth-panel[hidden] {
  display: none !important;
}

.auth-forgot-link {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin-top: 8px;
  color: #c7d2fe;
  font-size: 12px;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  transition: color 0.16s ease;
}

.auth-forgot-link:hover {
  color: #e2e8f0;
}

.auth-forgot-btn {
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
  font: inherit;
  text-align: left;
}

.auth-forgot-text {
  margin: 0 0 2px;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.5;
}

.auth-forgot-success {
  color: rgba(187, 247, 208, 0.92);
}

.auth-panel-foot {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.2);
  display: grid;
  gap: 10px;
}

.auth-panel-foot .form-note {
  margin-top: 0;
}

.auth-panel-foot--split {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  column-gap: 18px;
  row-gap: 8px;
}

.auth-panel-foot--split .auth-forgot-link {
  margin-top: 2px;
}

.auth-switch-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.auth-switch-col {
  display: grid;
  justify-items: end;
  text-align: right;
  gap: 8px;
}

.auth-switch-label {
  font-size: 12px;
  line-height: 1.35;
  color: var(--text-soft);
}

.auth-switch-cta {
  min-height: 40px;
  padding: 9px 16px;
  width: 220px;
  max-width: 100%;
  font-size: 14px;
}

.auth-switch-btn {
  border: 0;
  background: transparent;
  padding: 0;
  color: #c7d2fe;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  cursor: pointer;
  transition: color 0.16s ease;
}

.auth-switch-btn:hover {
  color: #e2e8f0;
}

.auth-switch-btn:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.72);
  outline-offset: 3px;
  border-radius: 6px;
}

.modal-dialog--auth {
  width: min(600px, calc(100vw - 40px));
}

.modal-dialog--auth .modal-top {
  border-bottom-color: rgba(148, 163, 184, 0.05);
  background: linear-gradient(180deg, rgba(2, 6, 23, 0.38) 0%, rgba(2, 6, 23, 0.2) 100%);
}

.modal-dialog--auth .modal-body {
  padding: 24px 28px 28px;
  padding-right: 18px;
}

@media (max-width: 960px) {
  .modal-dialog--auth .modal-body {
    padding: 18px 18px 20px;
    padding-right: 12px;
  }

  .auth-modal {
    width: min(100%, 500px);
  }
}

@media (max-width: 768px) {
  .modal-dialog--auth {
    width: calc(100vw - 12px);
    max-height: calc(100dvh - 12px);
  }

  .modal-dialog--auth .modal-body {
    padding: 12px 12px calc(16px + env(safe-area-inset-bottom));
    padding-right: 8px;
  }

  .auth-modal {
    width: min(100%, 460px);
  }

  .auth-panel-foot {
    margin-top: 10px;
    padding-top: 10px;
  }

  .auth-panel-foot--split {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 10px;
  }

  .auth-switch-col {
    justify-items: start;
    text-align: left;
  }

  .auth-switch-cta {
    width: 100%;
  }

  .auth-panel-foot--split .auth-forgot-btn {
    justify-self: start;
  }
}

.auth-verify-pending-head {
  display: grid;
  gap: 8px;
}

.auth-verify-note {
  margin-top: 0;
}

.auth-verify-status {
  margin-top: 0;
  color: var(--text-soft);
}

.auth-verify-error {
  margin-top: 0;
}

.auth-verify-actions {
  justify-content: space-between;
}

#faq .section-header {
  margin-bottom: 28px;
}

#faq .faq-layout {
  display: grid;
  grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

#faq .faq-side {
  position: sticky;
  top: 24px;
  border-radius: 28px;
  padding: 1px;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.16), rgba(151, 167, 226, 0.09), rgba(116, 107, 255, 0.34));
  box-shadow: 0 24px 66px rgba(0, 0, 0, 0.32), 0 0 38px rgba(116, 107, 255, 0.13);
  overflow: hidden;
}

#faq .faq-side-inner {
  min-height: 256px;
  border-radius: 27px;
  padding: 22px;
  background:
    radial-gradient(circle at 76% 12%, rgba(98, 92, 255, 0.26), transparent 38%),
    radial-gradient(circle at 14% 96%, rgba(60, 155, 255, 0.12), transparent 42%),
    linear-gradient(180deg, rgba(22, 32, 72, 0.98), rgba(12, 18, 41, 0.99));
  position: relative;
  overflow: hidden;
}

#faq .faq-side-inner::after {
  content: "";
  position: absolute;
  left: 20px;
  right: 20px;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.8), transparent);
}

#faq .faq-mini-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 28px;
  padding: 0 11px;
  border-radius: 999px;
  color: #e1e6ff;
  background: rgba(98, 92, 255, 0.18);
  border: 1px solid rgba(151, 167, 255, 0.24);
  font-size: 11px;
  font-weight: 760;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

#faq .faq-mini-label::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #625cff;
  box-shadow: 0 0 0 5px rgba(98, 92, 255, 0.1);
}

#faq .faq-side-title {
  margin: 24px 0 0;
  font-size: 24px;
  line-height: 1.08;
  letter-spacing: -0.04em;
}

#faq .faq-side-text {
  margin: 12px 0 0;
  color: #a6b0cb;
  font-size: 14px;
  line-height: 1.48;
}

#faq .faq-side-pills {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

#faq .faq-side-pill {
  min-height: 29px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  border-radius: 999px;
  color: #c7d0eb;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(151, 167, 255, 0.13);
  font-size: 12px;
}

#faq .faq-list-wrap {
  min-width: 0;
}

#faq .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

#faq .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(151, 167, 226, 0.075), rgba(98, 92, 255, 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 22px rgba(98, 92, 255, 0.05);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

#faq .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(98, 92, 255, 0.12);
}

#faq .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.14), transparent 32%), rgba(16, 24, 55, 0.96);
  overflow: hidden;
}

#faq .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.16), transparent 34%), rgba(16, 24, 55, 0.96);
}

#faq .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

#faq .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(131, 141, 255, 0.46);
}

#faq .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

#faq .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(98, 92, 255, 0.22);
  border: 1px solid rgba(151, 167, 255, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(98, 92, 255, 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

#faq .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: #625cff;
  border-color: rgba(255, 255, 255, 0.16);
}

#faq .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#faq .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

#faq .faq-answer-inner {
  overflow: hidden;
}

#faq .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#faq .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-list-wrap {
  min-width: 0;
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(151, 167, 226, 0.075), rgba(98, 92, 255, 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 22px rgba(98, 92, 255, 0.05);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(98, 92, 255, 0.12);
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.14), transparent 32%), rgba(16, 24, 55, 0.96);
  overflow: hidden;
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.16), transparent 34%), rgba(16, 24, 55, 0.96);
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(131, 141, 255, 0.46);
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(98, 92, 255, 0.22);
  border: 1px solid rgba(151, 167, 255, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(98, 92, 255, 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: #625cff;
  border-color: rgba(255, 255, 255, 0.16);
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-answer-inner {
  overflow: hidden;
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-new-york-venue-hub-root] :is(#metropolitan-opera-house-faq, #david-h-koch-theater-faq) .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

#san-siro-faq {
  --venue-faq-accent-rgb: 56, 229, 155;
  --venue-faq-cyan-rgb: 88, 214, 255;
  --venue-faq-accent: #38e59b;
}

#san-siro-faq .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

#san-siro-faq .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(var(--venue-faq-cyan-rgb), 0.08), rgba(var(--venue-faq-accent-rgb), 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 24px rgba(var(--venue-faq-accent-rgb), 0.06);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

#san-siro-faq .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(var(--venue-faq-accent-rgb), 0.14);
}

#san-siro-faq .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(var(--venue-faq-accent-rgb), 0.14), transparent 32%), rgba(8, 20, 50, 0.96);
  overflow: hidden;
}

#san-siro-faq .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(var(--venue-faq-accent-rgb), 0.16), transparent 34%), rgba(8, 20, 50, 0.96);
}

#san-siro-faq .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

#san-siro-faq .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(var(--venue-faq-accent-rgb), 0.46);
}

#san-siro-faq .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

#san-siro-faq .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(var(--venue-faq-accent-rgb), 0.2);
  border: 1px solid rgba(var(--venue-faq-cyan-rgb), 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(var(--venue-faq-accent-rgb), 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

#san-siro-faq .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: var(--venue-faq-accent);
  border-color: rgba(255, 255, 255, 0.16);
}

#san-siro-faq .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#san-siro-faq .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

#san-siro-faq .faq-answer-inner {
  overflow: hidden;
}

#san-siro-faq .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(var(--venue-faq-cyan-rgb), 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#san-siro-faq .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

#ernst-happel-faq {
  --venue-faq-accent-rgb: 56, 229, 155;
  --venue-faq-cyan-rgb: 88, 214, 255;
  --venue-faq-accent: #38e59b;
}

#ernst-happel-faq .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

#ernst-happel-faq .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(var(--venue-faq-cyan-rgb), 0.08), rgba(var(--venue-faq-accent-rgb), 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 24px rgba(var(--venue-faq-accent-rgb), 0.06);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

#ernst-happel-faq .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(var(--venue-faq-accent-rgb), 0.14);
}

#ernst-happel-faq .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(var(--venue-faq-accent-rgb), 0.14), transparent 32%), rgba(8, 20, 50, 0.96);
  overflow: hidden;
}

#ernst-happel-faq .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(var(--venue-faq-accent-rgb), 0.16), transparent 34%), rgba(8, 20, 50, 0.96);
}

#ernst-happel-faq .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

#ernst-happel-faq .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(var(--venue-faq-accent-rgb), 0.46);
}

#ernst-happel-faq .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

#ernst-happel-faq .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(var(--venue-faq-accent-rgb), 0.2);
  border: 1px solid rgba(var(--venue-faq-cyan-rgb), 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(var(--venue-faq-accent-rgb), 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

#ernst-happel-faq .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: var(--venue-faq-accent);
  border-color: rgba(255, 255, 255, 0.16);
}

#ernst-happel-faq .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#ernst-happel-faq .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

#ernst-happel-faq .faq-answer-inner {
  overflow: hidden;
}

#ernst-happel-faq .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(var(--venue-faq-cyan-rgb), 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#ernst-happel-faq .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

#camp-nou-faq {
  --venue-faq-accent-rgb: 56, 229, 155;
  --venue-faq-cyan-rgb: 88, 214, 255;
  --venue-faq-accent: #38e59b;
}

#camp-nou-faq .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

#camp-nou-faq .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(var(--venue-faq-cyan-rgb), 0.08), rgba(var(--venue-faq-accent-rgb), 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 24px rgba(var(--venue-faq-accent-rgb), 0.06);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

#camp-nou-faq .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(var(--venue-faq-accent-rgb), 0.14);
}

#camp-nou-faq .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(var(--venue-faq-accent-rgb), 0.14), transparent 32%), rgba(8, 20, 50, 0.96);
  overflow: hidden;
}

#camp-nou-faq .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(var(--venue-faq-accent-rgb), 0.16), transparent 34%), rgba(8, 20, 50, 0.96);
}

#camp-nou-faq .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

#camp-nou-faq .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(var(--venue-faq-accent-rgb), 0.46);
}

#camp-nou-faq .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

#camp-nou-faq .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(var(--venue-faq-accent-rgb), 0.2);
  border: 1px solid rgba(var(--venue-faq-cyan-rgb), 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(var(--venue-faq-accent-rgb), 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

#camp-nou-faq .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: var(--venue-faq-accent);
  border-color: rgba(255, 255, 255, 0.16);
}

#camp-nou-faq .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#camp-nou-faq .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

#camp-nou-faq .faq-answer-inner {
  overflow: hidden;
}

#camp-nou-faq .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(var(--venue-faq-cyan-rgb), 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#camp-nou-faq .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

#allianz-stadium-faq {
  --venue-faq-accent-rgb: 56, 229, 155;
  --venue-faq-cyan-rgb: 88, 214, 255;
  --venue-faq-accent: #38e59b;
}

#allianz-stadium-faq .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

#allianz-stadium-faq .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(var(--venue-faq-cyan-rgb), 0.08), rgba(var(--venue-faq-accent-rgb), 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 24px rgba(var(--venue-faq-accent-rgb), 0.06);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

#allianz-stadium-faq .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(var(--venue-faq-accent-rgb), 0.14);
}

#allianz-stadium-faq .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(var(--venue-faq-accent-rgb), 0.14), transparent 32%), rgba(8, 20, 50, 0.96);
  overflow: hidden;
}

#allianz-stadium-faq .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(var(--venue-faq-accent-rgb), 0.16), transparent 34%), rgba(8, 20, 50, 0.96);
}

#allianz-stadium-faq .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

#allianz-stadium-faq .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(var(--venue-faq-accent-rgb), 0.46);
}

#allianz-stadium-faq .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

#allianz-stadium-faq .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(var(--venue-faq-accent-rgb), 0.2);
  border: 1px solid rgba(var(--venue-faq-cyan-rgb), 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(var(--venue-faq-accent-rgb), 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

#allianz-stadium-faq .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: var(--venue-faq-accent);
  border-color: rgba(255, 255, 255, 0.16);
}

#allianz-stadium-faq .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#allianz-stadium-faq .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

#allianz-stadium-faq .faq-answer-inner {
  overflow: hidden;
}

#allianz-stadium-faq .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(var(--venue-faq-cyan-rgb), 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#allianz-stadium-faq .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(151, 167, 226, 0.075), rgba(98, 92, 255, 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 22px rgba(98, 92, 255, 0.05);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(98, 92, 255, 0.12);
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.14), transparent 32%), rgba(16, 24, 55, 0.96);
  overflow: hidden;
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.16), transparent 34%), rgba(16, 24, 55, 0.96);
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(131, 141, 255, 0.46);
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(98, 92, 255, 0.22);
  border: 1px solid rgba(151, 167, 255, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(98, 92, 255, 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: #625cff;
  border-color: rgba(255, 255, 255, 0.16);
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-answer-inner {
  overflow: hidden;
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(151, 167, 226, 0.075), rgba(98, 92, 255, 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 22px rgba(98, 92, 255, 0.05);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(98, 92, 255, 0.12);
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.14), transparent 32%), rgba(16, 24, 55, 0.96);
  overflow: hidden;
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.16), transparent 34%), rgba(16, 24, 55, 0.96);
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(131, 141, 255, 0.46);
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(98, 92, 255, 0.22);
  border: 1px solid rgba(151, 167, 255, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(98, 92, 255, 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: #625cff;
  border-color: rgba(255, 255, 255, 0.16);
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-answer-inner {
  overflow: hidden;
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-opera-bastille-hub-root] #opera-bastille-faq .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(151, 167, 226, 0.075), rgba(98, 92, 255, 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 22px rgba(98, 92, 255, 0.05);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(98, 92, 255, 0.12);
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.14), transparent 32%), rgba(16, 24, 55, 0.96);
  overflow: hidden;
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.16), transparent 34%), rgba(16, 24, 55, 0.96);
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(131, 141, 255, 0.46);
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(98, 92, 255, 0.22);
  border: 1px solid rgba(151, 167, 255, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(98, 92, 255, 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: #625cff;
  border-color: rgba(255, 255, 255, 0.16);
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-answer-inner {
  overflow: hidden;
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-palais-garnier-hub-root] #palais-garnier-faq .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(151, 167, 226, 0.075), rgba(98, 92, 255, 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 22px rgba(98, 92, 255, 0.05);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(98, 92, 255, 0.12);
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.14), transparent 32%), rgba(16, 24, 55, 0.96);
  overflow: hidden;
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.16), transparent 34%), rgba(16, 24, 55, 0.96);
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(131, 141, 255, 0.46);
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(98, 92, 255, 0.22);
  border: 1px solid rgba(151, 167, 255, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(98, 92, 255, 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: #625cff;
  border-color: rgba(255, 255, 255, 0.16);
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-answer-inner {
  overflow: hidden;
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(151, 167, 226, 0.075), rgba(98, 92, 255, 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 22px rgba(98, 92, 255, 0.05);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(98, 92, 255, 0.12);
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.14), transparent 32%), rgba(16, 24, 55, 0.96);
  overflow: hidden;
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.16), transparent 34%), rgba(16, 24, 55, 0.96);
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(131, 141, 255, 0.46);
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(98, 92, 255, 0.22);
  border: 1px solid rgba(151, 167, 255, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(98, 92, 255, 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: #625cff;
  border-color: rgba(255, 255, 255, 0.16);
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-answer-inner {
  overflow: hidden;
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-list {
  width: 100%;
  margin: 0;
  display: grid;
  gap: 10px;
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-item {
  position: relative;
  width: 100%;
  min-width: 0;
  border-radius: 22px;
  padding: 1px;
  margin: 0;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14), rgba(151, 167, 226, 0.075), rgba(98, 92, 255, 0.24));
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), 0 0 22px rgba(98, 92, 255, 0.05);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28), 0 0 34px rgba(98, 92, 255, 0.12);
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-card {
  border-radius: 21px;
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.14), transparent 32%), rgba(16, 24, 55, 0.96);
  overflow: hidden;
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-item.is-open .faq-card {
  background: radial-gradient(circle at 94% 0%, rgba(98, 92, 255, 0.16), transparent 34%), rgba(16, 24, 55, 0.96);
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-question {
  width: 100%;
  min-height: 62px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 18px;
  border: 0;
  background: transparent;
  color: #eef2ff;
  text-align: left;
  cursor: pointer;
  font: inherit;
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-question:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(131, 141, 255, 0.46);
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-question-text {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 670;
  letter-spacing: -0.01em;
  color: #f4f6ff;
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-toggle {
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(98, 92, 255, 0.22);
  border: 1px solid rgba(151, 167, 255, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 10px 24px rgba(98, 92, 255, 0.12);
  transition:
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.24s ease,
    border-color 0.24s ease;
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-item.is-open .faq-toggle {
  transform: rotate(45deg);
  background: #625cff;
  border-color: rgba(255, 255, 255, 0.16);
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-answer-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-item.is-open .faq-answer-wrap {
  grid-template-rows: 1fr;
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-answer-inner {
  overflow: hidden;
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-answer {
  margin: 0 16px 16px;
  padding: 15px 16px;
  border-radius: 17px;
  color: #c0c9e6;
  line-height: 1.48;
  font-size: 14px;
  white-space: pre-line;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.034));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-5px);
  transition:
    opacity 0.32s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-item.is-open .faq-answer {
  opacity: 1;
  transform: translateY(0);
}

#faq .faq-empty {
  margin: 8px 0 0;
  color: var(--text-soft);
  font-size: 14px;
}

@media (max-width: 900px) {
  #faq .faq-layout {
    grid-template-columns: 1fr;
  }

  #faq .faq-side {
    position: relative;
    top: 0;
  }
}

@media (max-width: 640px) {
  #faq .section-header {
    margin-bottom: 20px;
  }

  #faq .faq-layout {
    gap: 14px;
  }

  #faq .faq-side-inner {
    min-height: 0;
    padding: 20px;
  }

  #faq .faq-side-title {
    margin-top: 18px;
    font-size: 22px;
  }

  #faq .faq-side-text {
    font-size: 13px;
  }

  #faq .faq-question {
    min-height: 58px;
    padding: 0 14px 0 14px;
    gap: 12px;
  }

  #faq .faq-question-text {
    font-size: 14px;
  }

  #faq .faq-toggle {
    width: 34px;
    height: 34px;
  }

  #faq .faq-answer {
    margin: 0 12px 12px;
    padding: 12px 13px;
    font-size: 13px;
  }

  #san-siro-faq .faq-question {
    min-height: 58px;
    padding: 0 14px;
    gap: 12px;
  }

  #san-siro-faq .faq-question-text {
    font-size: 14px;
  }

  #san-siro-faq .faq-toggle {
    width: 34px;
    height: 34px;
  }

  #san-siro-faq .faq-answer {
    margin: 0 12px 12px;
    padding: 12px 13px;
    font-size: 13px;
  }

  #ernst-happel-faq .faq-question {
    min-height: 58px;
    padding: 0 14px;
    gap: 12px;
  }

  #ernst-happel-faq .faq-question-text {
    font-size: 14px;
  }

  #ernst-happel-faq .faq-toggle {
    width: 34px;
    height: 34px;
  }

  #ernst-happel-faq .faq-answer {
    margin: 0 12px 12px;
    padding: 12px 13px;
    font-size: 13px;
  }

  #camp-nou-faq .faq-question {
    min-height: 58px;
    padding: 0 14px;
    gap: 12px;
  }

  #camp-nou-faq .faq-question-text {
    font-size: 14px;
  }

  #camp-nou-faq .faq-toggle {
    width: 34px;
    height: 34px;
  }

  #camp-nou-faq .faq-answer {
    margin: 0 12px 12px;
    padding: 12px 13px;
    font-size: 13px;
  }

  #allianz-stadium-faq .faq-question {
    min-height: 58px;
    padding: 0 14px;
    gap: 12px;
  }

  #allianz-stadium-faq .faq-question-text {
    font-size: 14px;
  }

  #allianz-stadium-faq .faq-toggle {
    width: 34px;
    height: 34px;
  }

  #allianz-stadium-faq .faq-answer {
    margin: 0 12px 12px;
    padding: 12px 13px;
    font-size: 13px;
  }

  [data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-question {
    min-height: 58px;
    padding: 0 14px;
    gap: 12px;
  }

  [data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-question-text {
    font-size: 14px;
  }

  [data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-toggle {
    width: 34px;
    height: 34px;
  }

  [data-wiener-staatsoper-hub-root] #wiener-staatsoper-faq .faq-answer {
    margin: 0 12px 12px;
    padding: 12px 13px;
    font-size: 13px;
  }

  [data-opera-bastille-hub-root] #opera-bastille-faq .faq-question {
    min-height: 58px;
    padding: 0 14px;
    gap: 12px;
  }

  [data-opera-bastille-hub-root] #opera-bastille-faq .faq-question-text {
    font-size: 14px;
  }

  [data-opera-bastille-hub-root] #opera-bastille-faq .faq-toggle {
    width: 34px;
    height: 34px;
  }

  [data-opera-bastille-hub-root] #opera-bastille-faq .faq-answer {
    margin: 0 12px 12px;
    padding: 12px 13px;
    font-size: 13px;
  }

  [data-palais-garnier-hub-root] #palais-garnier-faq .faq-question {
    min-height: 58px;
    padding: 0 14px;
    gap: 12px;
  }

  [data-palais-garnier-hub-root] #palais-garnier-faq .faq-question-text {
    font-size: 14px;
  }

  [data-palais-garnier-hub-root] #palais-garnier-faq .faq-toggle {
    width: 34px;
    height: 34px;
  }

  [data-palais-garnier-hub-root] #palais-garnier-faq .faq-answer {
    margin: 0 12px 12px;
    padding: 12px 13px;
    font-size: 13px;
  }

  [data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-question {
    min-height: 58px;
    padding: 0 14px;
    gap: 12px;
  }

  [data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-question-text {
    font-size: 14px;
  }

  [data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-toggle {
    width: 34px;
    height: 34px;
  }

  [data-monte-carlo-opera-hub-root] #opera-de-monte-carlo-faq .faq-answer {
    margin: 0 12px 12px;
    padding: 12px 13px;
    font-size: 13px;
  }

  [data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-question {
    min-height: 58px;
    padding: 0 14px;
    gap: 12px;
  }

  [data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-question-text {
    font-size: 14px;
  }

  [data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-toggle {
    width: 34px;
    height: 34px;
  }

  [data-arena-di-verona-hub-root] #arena-di-verona-faq .faq-answer {
    margin: 0 12px 12px;
    padding: 12px 13px;
    font-size: 13px;
  }

  [data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-question {
    min-height: 58px;
    padding: 0 14px;
    gap: 12px;
  }

  [data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-question-text {
    font-size: 14px;
  }

  [data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-toggle {
    width: 34px;
    height: 34px;
  }

  [data-la-fenice-hub-root] #teatro-la-fenice-faq .faq-answer {
    margin: 0 12px 12px;
    padding: 12px 13px;
    font-size: 13px;
  }
}

.contact-grid {
  display: grid;
  grid-template-columns: 1.13fr 0.87fr;
  gap: 24px;
  align-items: start;
}

[data-categories-list] {
  width: 100%;
}

#contact .contact-form-card,
#contact .contact-info-card {
  border-radius: 26px;
  padding: 1px;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.14) 0%, rgba(151, 167, 226, 0.07) 44%, rgba(98, 92, 255, 0.26) 100%);
  box-shadow: 0 22px 64px rgba(0, 0, 0, 0.28), 0 0 30px rgba(116, 107, 255, 0.08);
  overflow: hidden;
}

#contact .contact-form-inner,
#contact .contact-info-inner {
  position: relative;
  overflow: hidden;
  border-radius: 25px;
  padding: 22px;
  background:
    radial-gradient(circle at 86% 0%, rgba(98, 92, 255, 0.14), transparent 36%),
    radial-gradient(circle at 8% 110%, rgba(60, 155, 255, 0.08), transparent 44%),
    linear-gradient(180deg, rgba(18, 26, 58, 0.98), rgba(12, 18, 41, 0.99));
}

#contact .contact-form-inner::after,
#contact .contact-info-inner::after {
  content: "";
  position: absolute;
  left: 22px;
  right: 22px;
  top: 0;
  height: 1px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.85), rgba(60, 155, 255, 0.45), transparent);
  opacity: 0.76;
}

#contact .contact-form {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 13px;
}

#contact .field {
  display: grid;
  gap: 7px;
}

#contact .field > span {
  color: #dbe2ff;
  font-size: 13px;
  font-weight: 650;
}

#contact .field input,
#contact .field textarea {
  width: 100%;
  border: 1px solid rgba(151, 167, 255, 0.22);
  background: rgba(5, 7, 22, 0.28);
  color: #f5f7ff;
  border-radius: 16px;
  outline: none;
  font: inherit;
  font-size: 14px;
  transition: border-color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease;
}

#contact .field input {
  min-height: 46px;
  padding: 0 14px;
}

#contact .field textarea {
  min-height: 114px;
  padding: 13px 14px;
  resize: vertical;
}

#contact .field input::placeholder,
#contact .field textarea::placeholder {
  color: #7f8aa6;
}

#contact .field input:focus,
#contact .field textarea:focus {
  border-color: rgba(151, 167, 255, 0.46);
  background: rgba(255, 255, 255, 0.04);
  box-shadow: 0 0 0 4px rgba(98, 92, 255, 0.12);
}

#contact .submit-row {
  display: flex;
  align-items: center;
  gap: 10px;
  transition: gap 0.42s cubic-bezier(0.16, 1, 0.3, 1);
  margin-top: 1px;
}

#contact .submit-row:hover,
#contact .submit-row:focus-within {
  gap: 0;
}

#contact .submit-btn,
#contact .submit-arrow {
  min-height: 46px;
  border: 1px solid rgba(151, 167, 255, 0.24);
  background: #625cff;
  color: #ffffff;
  box-shadow: 0 14px 30px rgba(116, 107, 255, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.12);
  transition:
    border-radius 0.42s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.28s ease,
    box-shadow 0.28s ease,
    filter 0.28s ease,
    margin 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#contact .submit-btn {
  flex: 1 1 auto;
  border-radius: 999px;
  font: inherit;
  font-size: 15px;
  font-weight: 720;
  cursor: pointer;
}

#contact .submit-arrow {
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  cursor: pointer;
}

#contact .submit-row:hover .submit-btn,
#contact .submit-row:focus-within .submit-btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right-color: transparent;
  filter: brightness(1.04);
  margin-right: -1px;
}

#contact .submit-row:hover .submit-arrow,
#contact .submit-row:focus-within .submit-arrow {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left-color: transparent;
  filter: brightness(1.04);
  margin-left: -1px;
}

#contact .submit-btn:disabled {
  opacity: 0.66;
  cursor: not-allowed;
}

#contact .form-note {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}

#contact .contact-open-messages-btn {
  margin-top: 2px;
}

#contact .contact-info-inner {
  min-height: 236px;
}

#contact .contact-info-content {
  position: relative;
  z-index: 1;
}

#contact .contact-info-title {
  margin: 0;
  font-size: 24px;
  line-height: 1.1;
  letter-spacing: -0.04em;
}

#contact .contact-email {
  margin: 12px 0 0;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #eef2ff;
  font-size: 16px;
  font-weight: 720;
}

#contact .contact-email-text {
  min-width: 0;
  overflow-wrap: anywhere;
}

#contact .copy-email-btn {
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(151, 167, 255, 0.22);
  background: rgba(98, 92, 255, 0.12);
  color: #dfe6ff;
  cursor: pointer;
  transition: transform 0.18s ease, background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

#contact .copy-email-btn::before,
#contact .copy-email-btn::after {
  content: "";
  position: absolute;
  width: 10px;
  height: 12px;
  border-radius: 3px;
  border: 1.5px solid currentColor;
  background: rgba(10, 14, 32, 0.28);
}

#contact .copy-email-btn::before {
  transform: translate(-2px, 2px);
  opacity: 0.72;
}

#contact .copy-email-btn::after {
  transform: translate(2px, -2px);
  opacity: 0.96;
}

#contact .copy-email-btn:hover {
  transform: translateY(-1px);
  background: rgba(98, 92, 255, 0.2);
  border-color: rgba(151, 167, 255, 0.34);
  box-shadow: 0 10px 22px rgba(98, 92, 255, 0.12);
}

#contact .copy-email-btn.is-copied {
  background: rgba(37, 211, 102, 0.22);
  border-color: rgba(37, 211, 102, 0.44);
  color: #f0fff5;
}

#contact .contact-divider {
  height: 1px;
  margin: 15px 0;
  background: linear-gradient(90deg, rgba(151, 167, 255, 0.2), transparent);
}

#contact .contact-info-grid {
  display: grid;
  grid-template-columns: minmax(190px, 220px) 1fr;
  gap: 18px;
  align-items: start;
}

#contact .contact-buttons {
  display: grid;
  gap: 10px;
}

#contact .contact-btn {
  min-height: 39px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 13px;
  text-decoration: none;
  color: #eef2ff;
  border: 1px solid rgba(151, 167, 255, 0.2);
  background: rgba(98, 92, 255, 0.18);
  font-size: 14px;
  font-weight: 650;
  transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

#contact .contact-btn:hover {
  transform: translateY(-1px);
  border-color: rgba(151, 167, 255, 0.34);
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.18);
}

#contact .contact-btn.whatsapp {
  background: rgba(37, 211, 102, 0.18);
  border-color: rgba(37, 211, 102, 0.34);
  color: #eafff1;
}

#contact .contact-btn.whatsapp:hover {
  background: #25d366;
  border-color: #25d366;
  color: #ffffff;
  box-shadow: 0 12px 26px rgba(37, 211, 102, 0.18);
  filter: brightness(1.04);
}

#contact .contact-btn.telegram {
  background: rgba(36, 161, 222, 0.18);
  border-color: rgba(36, 161, 222, 0.34);
  color: #eef9ff;
}

#contact .contact-btn.telegram:hover {
  background: #24a1de;
  border-color: #24a1de;
  color: #ffffff;
  box-shadow: 0 12px 26px rgba(36, 161, 222, 0.18);
  filter: brightness(1.04);
}

#contact .contact-copy {
  margin: 0;
  color: #a6b0cb;
  font-size: 16px;
  line-height: 1.45;
}

@media (max-width: 940px) {
  #contact .contact-info-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.social-row {
  display: flex;
  gap: 10px;
  font-size: 13px;
  color: var(--text-soft);
}

#about .section-header {
  text-align: center;
  margin-bottom: 30px;
}

#about .section-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 28px;
  padding: 0 11px;
  border-radius: 999px;
  color: #cfd6ff;
  background: rgba(98, 92, 255, 0.11);
  border: 1px solid rgba(151, 167, 255, 0.17);
  font-size: 11px;
  font-weight: 760;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 14px;
}

#about .section-eyebrow::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #625cff;
  box-shadow: 0 0 0 5px rgba(98, 92, 255, 0.1);
}

#about .about-card {
  border-radius: 30px;
  padding: 1px;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.15) 0%, rgba(151, 167, 226, 0.07) 44%, rgba(98, 92, 255, 0.28) 100%);
  box-shadow: 0 24px 72px rgba(0, 0, 0, 0.31), 0 0 34px rgba(116, 107, 255, 0.08);
  overflow: hidden;
}

#about .about-inner {
  position: relative;
  overflow: hidden;
  border-radius: 29px;
  padding: 28px;
  background:
    radial-gradient(circle at 84% 0%, rgba(98, 92, 255, 0.16), transparent 36%),
    radial-gradient(circle at 8% 110%, rgba(60, 155, 255, 0.1), transparent 44%),
    linear-gradient(180deg, rgba(18, 26, 58, 0.98), rgba(12, 18, 41, 0.99));
}

#about .about-inner::after {
  content: "";
  position: absolute;
  left: 28px;
  right: 28px;
  top: 0;
  height: 1px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.85), rgba(60, 155, 255, 0.45), transparent);
  opacity: 0.78;
}

#about .about-layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 32px;
  align-items: start;
}

#about .about-text {
  display: grid;
  gap: 16px;
}

#about .about-text p {
  margin: 0;
  color: #b9c3df;
  font-size: 17.5px;
  line-height: 1.56;
}

#about .about-text strong {
  color: #eef2ff;
  font-weight: 760;
}

#about .about-side {
  position: relative;
  width: 100%;
  height: 332px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  overflow: hidden;
}

#about .about-stat {
  flex: 0 0 63px;
  position: relative;
  width: 100%;
  z-index: 1;
  display: grid;
  grid-template-columns: 42px 1fr;
  align-items: center;
  gap: 12px;
  padding: 11px 14px;
  border-radius: 20px;
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(31, 42, 88, 0.96), rgba(18, 26, 58, 0.98));
  border: 1px solid rgba(151, 167, 255, 0.2);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.065), 0 12px 26px rgba(0, 0, 0, 0.16);
  overflow: hidden;
  transition:
    flex-basis 0.44s cubic-bezier(0.16, 1, 0.3, 1),
    padding 0.44s cubic-bezier(0.16, 1, 0.3, 1),
    opacity 0.26s ease,
    background 0.24s ease,
    border-color 0.24s ease,
    box-shadow 0.24s ease;
}

#about .about-side:hover .about-stat {
  flex-basis: 46px;
  padding-top: 7px;
  padding-bottom: 7px;
  opacity: 0.72;
}

#about .about-side .about-stat:hover,
#about .about-side .about-stat:focus-within {
  flex-basis: 135px;
  align-items: start;
  opacity: 1;
  padding-top: 12px;
  padding-bottom: 12px;
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.22), transparent 36%),
    radial-gradient(circle at 12% 100%, rgba(60, 155, 255, 0.1), transparent 42%),
    linear-gradient(180deg, rgba(33, 45, 94, 0.98), rgba(18, 26, 58, 0.99));
  border-color: rgba(151, 167, 255, 0.32);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.24), 0 0 26px rgba(98, 92, 255, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

#about .about-side.auto-running .about-stat {
  flex-basis: 54px;
  padding-top: 8px;
  padding-bottom: 8px;
  opacity: 0.9;
}

#about .about-side.auto-running .about-stat.is-active {
  flex-basis: 135px;
  align-items: start;
  opacity: 1;
  padding-top: 12px;
  padding-bottom: 12px;
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.22), transparent 36%),
    radial-gradient(circle at 12% 100%, rgba(60, 155, 255, 0.1), transparent 42%),
    linear-gradient(180deg, rgba(33, 45, 94, 0.98), rgba(18, 26, 58, 0.99));
  border-color: rgba(151, 167, 255, 0.32);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.24), 0 0 26px rgba(98, 92, 255, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

#about .stat-icon {
  width: 36px;
  height: 36px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  color: #ffffff;
  background: #625cff;
  font-size: 14px;
  font-weight: 800;
  box-shadow: 0 12px 28px rgba(116, 107, 255, 0.2);
  transition:
    width 0.44s cubic-bezier(0.16, 1, 0.3, 1),
    height 0.44s cubic-bezier(0.16, 1, 0.3, 1),
    border-radius 0.44s cubic-bezier(0.16, 1, 0.3, 1),
    font-size 0.26s ease,
    transform 0.22s ease;
}

#about .about-side:hover .about-stat:not(:hover):not(:focus-within) .stat-icon {
  width: 30px;
  height: 30px;
  border-radius: 12px;
  font-size: 12px;
}

#about .about-side.auto-running .about-stat:not(.is-active) .stat-icon {
  width: 36px;
  height: 36px;
  border-radius: 14px;
  font-size: 14px;
}

#about .about-stat:hover .stat-icon,
#about .about-stat:focus-within .stat-icon,
#about .about-side.auto-running .about-stat.is-active .stat-icon {
  transform: scale(1.03);
}

#about .about-stat:nth-child(2) .stat-icon {
  background: #3c9bff;
  box-shadow: 0 12px 28px rgba(60, 155, 255, 0.18);
}

#about .about-stat:nth-child(3) .stat-icon {
  background: #31c48d;
  box-shadow: 0 12px 28px rgba(49, 196, 141, 0.16);
}

#about .stat-title {
  color: #eef2ff;
  font-size: 14px;
  font-weight: 780;
  line-height: 1.16;
  transition: font-size 0.26s ease;
}

#about .about-side:hover .about-stat:not(:hover):not(:focus-within) .stat-title {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 13.4px;
}

#about .about-side.auto-running .about-stat:not(.is-active) .stat-title {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  font-size: 14px;
}

#about .stat-text {
  max-height: 0;
  margin-top: 0;
  color: #c2cae8;
  font-size: 12.2px;
  line-height: 1.28;
  opacity: 0;
  transform: translateY(-4px);
  overflow: hidden;
  transition:
    max-height 0.44s cubic-bezier(0.16, 1, 0.3, 1),
    opacity 0.26s ease,
    transform 0.34s cubic-bezier(0.16, 1, 0.3, 1),
    margin-top 0.34s cubic-bezier(0.16, 1, 0.3, 1);
}

#about .about-stat:hover .stat-text,
#about .about-stat:focus-within .stat-text,
#about .about-side.auto-running .about-stat.is-active .stat-text {
  max-height: 82px;
  margin-top: 6px;
  opacity: 1;
  transform: translateY(0);
}

#about .about-disclaimer {
  position: relative;
  z-index: 1;
  margin-top: 24px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 22px;
  color: #aeb8d4;
  background: rgba(5, 7, 22, 0.28);
  border: 1px solid rgba(151, 167, 255, 0.13);
  font-size: 13px;
  line-height: 1.45;
}

#about .disclaimer-dot {
  width: 10px;
  height: 10px;
  margin-top: 5px;
  flex: 0 0 10px;
  border-radius: 999px;
  background: #625cff;
  box-shadow: 0 0 0 6px rgba(98, 92, 255, 0.1);
}

@media (max-width: 900px) {
  #about .about-layout {
    grid-template-columns: 1fr;
  }

  #about .section-header h2 {
    font-size: 30px;
  }

  #about .about-inner {
    padding: 22px;
  }
}

.site-footer {
  border-top: 1px solid rgba(15, 23, 42, 0.95);
  background: #020617;
  padding: 18px 0 20px;
}

.footer-grid {
  display: grid;
  grid-template-columns: minmax(0, 2.1fr) minmax(0, 1.3fr) minmax(0, 1.25fr) minmax(0, 1.9fr);
  gap: 20px;
  align-items: start;
}

.footer-text {
  font-size: 12px;
  color: var(--text-soft);
}

.footer-disclosure {
  margin: 8px 0 0;
  max-width: min(100%, 340px);
  font-size: 11px;
  line-height: 1.45;
  color: rgba(148, 163, 184, 0.9);
}

.footer-links {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 13px;
}

.footer-links a {
  color: var(--text-soft);
  text-decoration: none;
}

.footer-links a:hover {
  color: #e5e7eb;
}

.footer-whatsapp {
  display: grid;
  gap: 8px;
  align-content: start;
}

.footer-contact-actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: stretch;
  width: min(100%, 232px);
}

.footer-whatsapp-label {
  font-size: 12px;
  line-height: 1.35;
  letter-spacing: 0;
  text-transform: none;
  max-width: min(100%, 240px);
  color: rgba(148, 163, 184, 0.92);
}

.footer-whatsapp-btn,
.footer-telegram-btn,
.footer-email-btn {
  min-height: 36px;
  padding: 7px 14px;
  border-radius: 10px;
  width: 100%;
  justify-content: center;
  white-space: nowrap;
}

.footer-whatsapp-btn {
  border-color: rgba(52, 211, 153, 0.45);
  background: linear-gradient(135deg, rgba(8, 47, 32, 0.68), rgba(6, 78, 59, 0.44));
  color: #d1fae5;
}

.footer-whatsapp-btn:hover {
  border-color: rgba(74, 222, 128, 0.66);
  background: linear-gradient(135deg, rgba(8, 47, 32, 0.86), rgba(6, 95, 70, 0.62));
  color: #ecfdf5;
}

.footer-telegram-btn {
  border-color: rgba(56, 189, 248, 0.45);
  background: linear-gradient(135deg, rgba(8, 36, 63, 0.68), rgba(3, 105, 161, 0.44));
  color: #dbeafe;
}

.footer-telegram-btn:hover {
  border-color: rgba(56, 189, 248, 0.66);
  background: linear-gradient(135deg, rgba(7, 47, 84, 0.86), rgba(2, 132, 199, 0.62));
  color: #f0f9ff;
}

.footer-email-btn {
  border-color: rgba(129, 140, 248, 0.45);
  background: linear-gradient(135deg, rgba(30, 27, 75, 0.68), rgba(67, 56, 202, 0.42));
  color: #e0e7ff;
}

.footer-email-btn:hover {
  border-color: rgba(165, 180, 252, 0.68);
  background: linear-gradient(135deg, rgba(49, 46, 129, 0.84), rgba(79, 70, 229, 0.58));
  color: #eef2ff;
}

.concierge-page .site-header {
  position: sticky;
  top: 0;
  z-index: 30;
}

.concierge-hero {
  padding: 52px 0 28px;
}

.concierge-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  gap: 26px;
  align-items: start;
}

.concierge-hero-content h1 {
  margin: 12px 0 14px;
  font-size: clamp(34px, 4.2vw, 48px);
  line-height: 1.1;
}

.concierge-hero-content > p {
  margin: 0;
  max-width: 760px;
  color: var(--text-soft);
  line-height: 1.58;
}

.concierge-disclosure {
  margin-top: 16px;
  max-width: 760px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.26);
  background: rgba(15, 23, 42, 0.46);
  color: rgba(203, 213, 225, 0.95);
  font-size: 13px;
  line-height: 1.5;
}

.concierge-hero-actions {
  margin-top: 18px;
}

.concierge-aside-card {
  display: grid;
  gap: 14px;
  align-content: start;
  background:
    radial-gradient(circle at 12% 0%, rgba(56, 189, 248, 0.14) 0, transparent 48%),
    radial-gradient(circle at 88% 0%, rgba(129, 140, 248, 0.18) 0, transparent 52%),
    rgba(15, 23, 42, 0.72);
}

.concierge-aside-card h2 {
  margin: 0;
  font-size: 22px;
  line-height: 1.2;
}

.concierge-checklist {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.concierge-checklist li {
  position: relative;
  padding-left: 16px;
  color: var(--text-soft);
  line-height: 1.5;
}

.concierge-checklist li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.52em;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: rgba(99, 102, 241, 0.9);
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.14);
}

.concierge-section {
  padding-top: 26px;
  padding-bottom: 26px;
}

.concierge-how-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.concierge-how-card,
.concierge-service-card {
  display: grid;
  gap: 10px;
  align-content: start;
  min-height: 160px;
}

.concierge-how-card h3,
.concierge-service-card h3,
.concierge-cta-card h2 {
  margin: 0;
}

.concierge-how-card p,
.concierge-service-card p,
.concierge-cta-card p {
  margin: 0;
  color: var(--text-soft);
  line-height: 1.52;
}

.concierge-services-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.concierge-section--cta {
  padding-top: 30px;
  padding-bottom: 42px;
}

.concierge-cta-card {
  display: grid;
  gap: 14px;
  align-content: start;
  background:
    radial-gradient(circle at 8% 0%, rgba(56, 189, 248, 0.14) 0, transparent 42%),
    radial-gradient(circle at 92% 0%, rgba(129, 140, 248, 0.18) 0, transparent 48%),
    rgba(15, 23, 42, 0.72);
  border-color: rgba(99, 102, 241, 0.34);
  box-shadow: 0 18px 34px rgba(2, 6, 23, 0.26);
}

.concierge-cta-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.legal-doc-card {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-height: 420px;
}

.legal-doc-head {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.legal-doc-status,
.legal-doc-meta {
  margin: 0;
  color: var(--text-soft);
}

.legal-doc-content {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.legal-doc-actions {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 14px;
}

.legal-doc-frame {
  width: 100%;
  min-height: 72vh;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 22px;
  background: rgba(7, 12, 30, 0.72);
}

.legal-doc-html {
  display: flex;
  flex-direction: column;
  gap: 14px;
  line-height: 1.65;
}

.legal-doc-html h1,
.legal-doc-html h2,
.legal-doc-html h3 {
  margin: 10px 0 0;
}

.legal-doc-html p,
.legal-doc-html li {
  color: var(--text);
}

.legal-doc-html ul,
.legal-doc-html ol {
  padding-left: 20px;
}

.legal-doc-plain {
  white-space: pre-wrap;
  line-height: 1.7;
  color: var(--text);
  overflow-wrap: anywhere;
  word-break: break-word;
}

.footer-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 11px;
  color: var(--text-soft);
}

.footer-meta a {
  color: var(--text-soft);
  text-decoration: none;
}

.footer-meta a:hover {
  color: #e5e7eb;
}

@media (min-width: 901px) and (max-width: 1280px) {
  [data-categories-list] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #venues .venues-track .card,
  #events .venues-track .card {
    flex: 0 0 min(360px, calc((100% - (var(--venues-gap) * 2)) / 3));
  }
}

@media (min-width: 481px) and (max-width: 900px) {
  [data-categories-list] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #venues .venues-track,
  #events .venues-track {
    padding: 0 32px 6px;
  }

  #venues .venues-track .card,
  #events .venues-track .card {
    flex: 0 0 min(420px, calc((100% - var(--venues-gap)) / 2));
  }
}

@media (max-width: 1024px) {
  :root {
    --container-pad: 20px;
  }

  .section {
    padding: 60px 0;
  }

  .section-header h2 {
    font-size: 26px;
  }
}

@media (max-width: 960px) {
  .hero-grid,
  .transfer-grid,
  .contact-grid,
  .footer-grid,
  .concierge-hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .hero-grid {
    gap: 24px;
  }

  .concierge-how-grid,
  .concierge-services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .venues-track .card {
    flex: 0 0 calc((100% - var(--venues-gap)) / 2);
  }

  #venues .venues-track,
  #events .venues-track {
    padding: 0 44px 6px;
  }

  .modal-step--event .session-group-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .nav-links {
    display: none;
  }

  .request-flow-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .request-summary-card {
    position: static;
    order: 2;
  }

  .request-step-grid--params,
  .request-step-grid--contact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .concierge-hero-content h1 {
    font-size: clamp(28px, 8vw, 34px);
  }

  .concierge-how-grid,
  .concierge-services-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .concierge-cta-actions .btn {
    width: 100%;
  }
}

@media (max-width: 768px) {
  :root {
    --container-pad: 16px;
  }

  .section {
    padding: 52px 0;
  }

  .section-header {
    margin-bottom: 22px;
  }

  .section-header h2 {
    font-size: 24px;
  }

  .section-header p {
    font-size: 14px;
  }

  .nav {
    height: 56px;
    padding: 6px 0;
    flex-wrap: nowrap;
    gap: 8px;
  }

  .nav-right {
    width: auto;
    justify-content: flex-end;
    flex-wrap: nowrap;
    gap: 8px;
  }

  .lang-switch {
    max-width: none;
    padding: 0;
    border: 0;
    background: none;
    overflow: visible;
  }

  .auth-trigger-badge {
    top: -6px;
    right: -6px;
    min-width: 17px;
    height: 17px;
    padding: 0 4px;
    font-size: 9px;
  }

  .hero {
    padding-top: 32px;
  }

  .hero-text h1 {
    font-size: 28px;
  }

  .hero-text p {
    font-size: 15px;
  }

  .hero-actions {
    flex-wrap: wrap;
    gap: 10px;
  }

  .hero-card-body {
    padding: 16px;
    min-height: 220px;
  }

  .hero-event-title {
    font-size: 18px;
  }

.hero-event-meta {
    font-size: 15.5px;
  }

  .card {
    padding: 16px;
  }

  .btn {
    min-height: 44px;
    font-size: 15px;
    line-height: 1.2;
  }

  .filters-row {
    flex-direction: column;
    align-items: stretch;
  }

  .request-form {
    gap: 14px;
  }

  .request-success-section {
    padding: 34px 0 44px;
  }

  .request-success-shell {
    min-height: clamp(250px, calc(100vh - 182px), 420px);
    min-height: clamp(250px, calc(100dvh - 182px), 420px);
  }

  .request-stepper {
    grid-template-columns: minmax(0, 1fr);
  }

  .request-step-pill {
    justify-content: flex-start;
    min-height: 40px;
    font-size: 12px;
  }

  .request-step-section {
    padding: 12px;
    gap: 9px;
  }

  .request-step-grid--search,
  .request-step-grid--params,
  .request-step-grid--contact {
    grid-template-columns: minmax(0, 1fr);
  }

  .request-summary-card {
    gap: 8px;
    padding: 12px;
  }

  .request-step-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .request-step-actions .btn {
    width: 100%;
    min-width: 0;
  }

  .request-step-actions[data-step="1"] [data-request-step-prev] {
    display: none;
  }

  #requestForm .request-mobile-actions-anchor {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 10px;
  }

  #requestForm .request-mobile-actions-anchor:empty {
    display: none;
  }

  .home-link-hub {
    margin-bottom: 14px;
  }

  .seo-breadcrumbs {
    margin-bottom: 10px;
  }

  .related-links-block {
    margin-bottom: 12px;
  }

  .seo-content-block {
    margin-bottom: 12px;
    padding: 14px 15px;
  }

  .seo-content-title {
    font-size: 15px;
  }

  .seo-content-paragraph {
    font-size: 13px;
    line-height: 1.5;
  }

  .link-chip-list {
    gap: 6px;
  }

  .filters-row select,
  .filters-row input[type="date"],
  .filters-row input[type="text"],
  .filters-row input[type="number"],
  .filters-row .date-clear-btn {
    width: 100%;
  }

  #venue-view .venue-filters {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    margin-bottom: 16px;
  }

  #venue-view .venue-filters > * {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    flex: none;
  }

  #venue-view .venue-filters select,
  #venue-view .venue-filters input[type="text"],
  #venue-view .venue-filters input[type="number"] {
    min-height: 46px;
    padding: 8px 14px;
    border-radius: 18px;
    font-size: 15px;
    line-height: 1.2;
  }

  #venue-view .venue-filters select {
    padding-right: 38px;
    background-position:
      calc(100% - 18px) 50%,
      calc(100% - 13px) 50%;
  }

  #venues .venues-track,
  #events .venues-track {
    padding: 0 20px 6px;
  }

  .request-inner {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    padding: 24px 22px;
  }

  .request-title {
    font-size: 28px;
    max-width: 100%;
  }

  .request-text {
    font-size: 15px;
  }

  .request-action {
    width: min(100%, 360px);
  }

  .request-visual {
    min-height: 148px;
  }

  .request-pictogram {
    transform: rotate(-3deg) scale(1);
  }

  .request-card:hover .request-pictogram,
  .request-card:focus-within .request-pictogram {
    transform: translateX(-14px) rotate(0deg) scale(1.28);
  }

  .request-flow-action {
    width: 100%;
  }

  .legal-doc-card {
    min-height: auto;
    padding: 20px;
  }

  .legal-doc-frame {
    min-height: 62vh;
  }

  #venues .venues-track .card,
  #events .venues-track .card {
    flex: 0 0 min(88vw, 360px);
  }

  #venues .venues-slider,
  #events .venues-slider {
    --slider-edge-fade: 24px;
  }

  .modal {
    place-items: end center;
    padding: 8px;
    padding-bottom: max(8px, env(safe-area-inset-bottom));
  }

  .modal-dialog {
    width: calc(100vw - 16px);
    height: min(92dvh, calc(100dvh - 16px));
    max-height: calc(100dvh - 16px);
    border-radius: 18px;
  }

  .modal-dialog--compact {
    height: auto;
    max-height: calc(100dvh - 16px);
  }

  .modal-top {
    padding: 10px 12px;
    min-height: 56px;
  }

  .modal-close {
    width: 36px;
    height: 36px;
    font-size: 20px;
  }

  .stepper .step {
    padding: 8px 10px;
    font-size: 11px;
  }

  .modal-body {
    padding: 14px 14px calc(18px + env(safe-area-inset-bottom));
    padding-right: 10px;
  }

  .modal-body > div {
    gap: 12px;
  }

  .modal-title {
    font-size: 22px;
  }

  .modal-actions {
    flex-direction: column;
    gap: 10px;
    position: sticky;
    bottom: 0;
    background: linear-gradient(180deg, rgba(2, 6, 23, 0) 0%, rgba(2, 6, 23, 0.96) 20%, rgba(2, 6, 23, 0.96) 100%);
    padding-bottom: calc(10px + env(safe-area-inset-bottom));
    margin-top: 4px;
  }

  .modal-actions .btn {
    width: 100%;
  }

  .modal-dialog .form input,
  .modal-dialog .form textarea,
  .modal-dialog .form select {
    width: 100%;
  }

  .modal-grid {
    gap: 14px;
  }

}

@media (max-width: 640px) {
  .section {
    padding: 44px 0;
  }

  .hero {
    padding-top: 36px;
  }

  .hero-text h1 {
    font-size: 30px;
  }

  .venues-track .card {
    flex: 0 0 100%;
  }

  .modal-step--event .session-group-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .link-chip {
    padding: 5px 10px;
    font-size: 11px;
  }

  .contact-actions-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }

  .nav-right {
    gap: 8px;
  }

  .lang-switch {
    max-width: none;
    overflow: visible;
  }

  #categories [data-categories-list] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  #categories [data-categories-list] > .category-card {
    min-height: 118px;
    border-radius: 20px;
  }

  #categories [data-categories-list] > .category-card .category-inner {
    min-height: 116px;
    border-radius: 19px;
    padding: 13px 12px 12px;
  }

  #categories [data-categories-list] > .category-card .category-title {
    font-size: 16px;
    line-height: 1.08;
    margin: 0 0 7px;
  }

  #categories [data-categories-list] > .category-card .category-desc {
    margin-top: 0;
    font-size: 10.5px;
    line-height: 1.28;
    max-width: 112px;
    -webkit-line-clamp: 2;
  }

  #categories [data-categories-list] > .category-card .category-bottom {
    margin-top: 10px;
  }

  #categories [data-categories-list] > .category-card .category-count {
    min-height: 24px;
    padding: 0 9px;
    font-size: 9.5px;
  }

  #categories [data-categories-list] > .category-card .category-arrow {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
  }

  #categories [data-categories-list] > .category-card:nth-child(odd):last-child {
    grid-column: 1 / -1;
  }

  #categories [data-categories-list] > .category-card:nth-child(odd):last-child .category-desc {
    max-width: 245px;
    -webkit-line-clamp: 2;
  }
}

@media (max-width: 480px) {
  :root {
    --container-pad: 12px;
  }

  .request-inner {
    padding: 20px 16px;
    gap: 18px;
  }

  .request-title {
    font-size: 24px;
  }

  .request-text {
    font-size: 14px;
  }

  .request-note-row {
    gap: 7px;
  }

  .request-note {
    min-height: 28px;
    font-size: 11px;
  }

  .request-action {
    width: 100%;
  }

  .request-btn,
  .request-arrow {
    min-height: 42px;
    height: 42px;
  }

  .request-arrow {
    width: 42px;
    flex-basis: 42px;
    font-size: 17px;
  }

  .request-visual {
    min-height: 120px;
  }

  .request-pictogram {
    transform: rotate(-2deg) scale(0.94);
  }

  .request-card:hover .request-pictogram,
  .request-card:focus-within .request-pictogram {
    transform: translateX(0) rotate(0deg) scale(1.02);
  }

  .request-ticket-lines {
    left: 34px;
    top: 44px;
  }

  #categories [data-categories-list] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .faq-list,
  .contact-grid {
    gap: 14px;
  }

  .contact-actions-layout {
    margin-top: 2px;
    padding-top: 10px;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }

  .contact-messenger-actions {
    width: 100%;
    align-items: stretch;
  }

  .seo-breadcrumbs {
    font-size: 11px;
    gap: 5px;
  }

  .seo-content-block {
    padding: 13px 14px;
  }

  .seo-content-title {
    font-size: 14px;
    margin-bottom: 7px;
  }

  .seo-content-paragraph {
    font-size: 12px;
    line-height: 1.45;
    margin-bottom: 8px;
  }

  .faq-item {
    padding: 12px 14px;
  }

  .faq-item[open] summary {
    margin-bottom: 10px;
  }

  .faq-item p {
    padding: 9px 11px;
  }

  #venues .venues-track,
  #events .venues-track {
    padding: 0 14px 6px;
  }

  #venues .venues-track .card,
  #events .venues-track .card {
    flex: 0 0 calc(100% - 2px);
    max-width: 100%;
  }

  #venues .venues-slider,
  #events .venues-slider {
    --slider-edge-fade: 14px;
  }

  .request-flow-card .btn,
  .contact-grid .btn,
  .hero-card .btn {
    width: 100%;
  }

  .legal-doc-card {
    gap: 14px;
    padding: 16px;
  }

  .legal-doc-frame {
    min-height: 56vh;
    border-radius: 18px;
  }

  .legal-doc-actions {
    justify-content: stretch;
  }

  .legal-doc-actions .btn {
    width: 100%;
  }

  #venue-view .venue-filters {
    gap: 10px;
    margin-bottom: 14px;
  }

  #venue-view .venue-filters select,
  #venue-view .venue-filters input[type="text"],
  #venue-view .venue-filters input[type="number"] {
    min-height: 44px;
    padding: 8px 12px;
    border-radius: 16px;
    font-size: 14px;
    line-height: 1.15;
  }

  #venue-view .venue-filters select {
    padding-right: 34px;
    background-position:
      calc(100% - 16px) 50%,
      calc(100% - 11px) 50%;
  }

  .modal-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    position: relative;
  }

  .modal {
    padding: 6px;
    padding-bottom: max(6px, env(safe-area-inset-bottom));
  }

  .modal-dialog {
    width: calc(100vw - 12px);
    height: calc(100dvh - 12px);
    max-height: calc(100dvh - 12px);
    border-radius: 18px;
  }

  .modal-dialog--compact {
    width: calc(100vw - 12px);
    max-height: calc(100dvh - 12px);
  }

  .stepper {
    display: none !important;
  }

  .modal-close {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }

  .modal-body {
    padding: 12px 12px calc(16px + env(safe-area-inset-bottom));
    padding-right: 8px;
  }

  .modal-dialog .card {
    padding: 16px;
  }

  .modal-header {
    padding: 2px 2px 14px;
  }

  .modal-title {
    font-size: 20px;
  }

  .modal-subtitle {
    font-size: 14px;
    line-height: 1.35;
  }

  .modal-dialog .form label {
    font-size: 13px;
    margin-bottom: 10px;
  }

  .modal-dialog .form input,
  .modal-dialog .form textarea,
  .modal-dialog .form select {
    min-height: 44px;
    padding: 10px 12px;
    font-size: 14px;
  }

  .transfer-details {
    padding: 10px 12px;
  }

  .summary-row {
    padding: 10px 12px;
    align-items: flex-start;
  }

  .summary-row strong {
    font-size: 16px;
  }

  .checkout-consents {
    margin-top: 14px;
    gap: 12px;
  }

  .consent-row {
    gap: 10px;
    font-size: 13px;
    line-height: 1.4;
  }

  .modal-mobile-header {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 0;
  }

  .modal-mobile-title {
    position: static;
    transform: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.35);
    background: rgba(15, 23, 42, 0.7);
    font-size: 13px;
    line-height: 1;
    font-weight: 600;
    max-width: 100%;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
  }

  .modal-mobile-back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 34px;
    padding: 0 10px;
    border-radius: 12px;
    border: 1px solid rgba(148, 163, 184, 0.35);
    background: rgba(15, 23, 42, 0.7);
    color: var(--text);
    font-size: 13px;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
  }

  .modal-mobile-back:disabled {
    opacity: 0.55;
    cursor: not-allowed;
  }

  .modal-mobile-spacer {
    display: none;
  }

  .modal.is-mobile-step .modal-header .modal-title {
    display: none;
  }

  .nav {
    height: 52px;
    padding: 6px 0;
    gap: 6px;
  }

  .logo {
    font-size: 16px;
  }

  .site-header .logo {
    gap: 8px;
  }

  .site-header .logo::before {
    width: 36px;
    height: 36px;
    flex-basis: 36px;
    border-radius: 10px;
    box-shadow: 0 10px 24px rgba(37, 99, 235, 0.22);
  }

  .nav-right {
    gap: 6px;
  }

  .lang-switch {
    max-width: none;
  }

  .nav-right .btn {
    padding: 6px 10px;
    font-size: 13px;
    min-height: 32px;
  }

  .auth-trigger-badge {
    top: -5px;
    right: -5px;
    min-width: 16px;
    height: 16px;
    font-size: 9px;
  }

  .container {
    padding: 0 14px;
  }

  .section {
    padding: 44px 0;
  }

  .hero-text h1 {
    font-size: 26px;
  }

  .hero-text p {
    font-size: 14px;
  }

  .hero-card-body {
    padding: 14px;
    min-height: 220px;
  }

  .modal-step--event .session-group-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
  }

  .modal-step--event .session-chip {
    min-height: 52px;
    padding: 8px 9px;
    border-radius: 10px;
  }

  #venues .venues-track,
  #events .venues-track {
    padding: 0 16px 6px;
  }

  #venues .venues-track .card,
  #events .venues-track .card {
    flex: 0 0 92vw;
  }

  #venues .venues-slider,
  #events .venues-slider {
    --slider-edge-fade: 16px;
  }

  .modal {
    padding: 10px;
  }

  .modal-title {
    font-size: 20px;
  }
}

@media (max-width: 380px) {
  #categories [data-categories-list] {
    gap: 8px;
  }

  #categories [data-categories-list] > .category-card {
    min-height: 112px;
    border-radius: 18px;
  }

  #categories [data-categories-list] > .category-card .category-inner {
    min-height: 110px;
    border-radius: 17px;
    padding: 12px 10px 10px;
  }

  #categories [data-categories-list] > .category-card:nth-child(odd):last-child {
    min-height: 108px;
  }

  #categories [data-categories-list] > .category-card .category-title {
    font-size: 15px;
  }

  #categories [data-categories-list] > .category-card .category-desc {
    font-size: 10px;
    max-width: 104px;
  }

  #categories [data-categories-list] > .category-card:nth-child(odd):last-child .category-desc {
    max-width: 235px;
  }

  #categories [data-categories-list] > .category-card .category-count {
    min-height: 23px;
    padding: 0 8px;
    font-size: 9px;
  }

  #categories [data-categories-list] > .category-card .category-arrow {
    width: 27px;
    height: 27px;
    flex: 0 0 27px;
  }
}

@media (max-width: 1180px) {
  .all-events-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .all-events-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #requestForm.section {
    padding: 34px 0 38px;
  }

  #requestForm .request-form {
    gap: 12px;
    padding: 14px;
  }

  #requestForm .request-flow-head {
    gap: 8px;
  }

  #requestForm .request-flow-head-top {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }

  #requestForm .request-flow-intro {
    gap: 6px;
  }

  #requestForm .request-flow-intro-pills {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 6px;
    padding-bottom: 2px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  #requestForm .request-flow-intro-pills::-webkit-scrollbar {
    height: 0;
  }

  #requestForm .request-flow-intro-pill {
    flex: 0 0 auto;
    padding: 5px 8px;
    font-size: 11px;
  }

  #requestForm .request-stepper {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }

  #requestForm .request-step-pill {
    min-height: 34px;
    padding: 6px 8px;
    font-size: 11px;
    gap: 6px;
  }

  #requestForm .request-step-index {
    width: 16px;
    height: 16px;
    font-size: 10px;
  }

  #requestForm .request-flow-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }

  #requestForm .request-step-section {
    padding: 11px;
    gap: 8px;
  }

  #requestForm .request-step-head h3 {
    font-size: 15px;
  }

  #requestForm .request-step-grid--search {
    grid-template-columns: minmax(0, 1fr);
  }

  #requestForm .request-step-actions {
    gap: 8px;
  }

  #requestForm .request-step-actions .btn {
    min-height: 40px;
  }

  #requestForm .request-flow-back {
    align-self: flex-start;
    width: auto;
    min-width: 0;
    min-height: 34px;
    padding: 0 12px;
    font-size: 13px;
    border-radius: 10px;
  }

  #requestForm .request-summary-card {
    order: 2;
    padding: 10px 11px;
    gap: 7px;
  }

  #requestForm .request-summary-actions {
    margin-top: 6px;
  }

  #requestForm .recommendation-slider {
    min-height: 282px;
  }

  #requestForm .recommendation-final-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #requestForm .recommendation-final-card {
    min-height: 0;
  }

  #requestForm .request-summary-toggle {
    display: none !important;
  }

  #requestForm .request-summary-card h3 {
    font-size: 13px;
  }

  #requestForm .request-summary-list {
    gap: 6px;
  }

  #requestForm .request-summary-row {
    gap: 1px;
    padding-bottom: 6px;
  }

  #requestForm .request-summary-row dt {
    font-size: 10px;
  }

  #requestForm .request-summary-row dd {
    font-size: 12px;
    line-height: 1.3;
  }

  .all-events-controls-row {
    align-items: stretch;
    flex-wrap: wrap;
  }

  .all-events-filters {
    flex: 1 1 100%;
    flex-wrap: wrap;
  }

  .all-events-request-btn {
    width: 100%;
    height: auto;
    min-height: 44px;
    white-space: normal;
  }

  .events-controls-row {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 10px;
  }

  .events-controls-row .filters-row {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    flex: 1 1 100%;
    gap: 10px;
  }

  .events-all-link {
    width: 100%;
  }
}

@media (max-width: 640px) {
  #venues .section-header {
    margin-bottom: 14px;
  }

  #venues .venues-slider {
    --slider-edge-fade: 0px;
  }

  #venues .venues-track {
    --venues-gap: 10px;
    gap: var(--venues-gap);
    padding: 0 2px 6px;
    scroll-padding-inline: 2px;
    -webkit-mask-image: none;
    mask-image: none;
  }

  #venues .venues-track .card {
    flex: 0 0 calc(100% - 2px);
    max-width: calc(100% - 2px);
    scroll-snap-align: start;
  }

  #all-events-view.section {
    padding-top: 26px;
  }

  #all-events-view .all-events-topbar {
    margin-bottom: 8px;
  }

  #all-events-view .all-events-top-container {
    width: calc(100% - 32px);
  }

  #all-events-view .all-events-header {
    margin-bottom: 10px;
  }

  #all-events-view .all-events-controls-row {
    gap: 8px;
    margin-bottom: 12px;
  }

  #all-events-view .all-events-filters {
    gap: 8px;
  }

  #all-events-view .all-events-filters > .filter-field > select,
  #all-events-view .all-events-filters > .filter-field > input[type="text"] {
    min-height: 40px;
    padding: 8px 12px;
    font-size: 14px;
  }

  #all-events-view .all-events-filters > .filter-field--select > select {
    padding-right: 32px;
    background-position:
      calc(100% - 16px) 50%,
      calc(100% - 11px) 50%;
  }

  #all-events-view .all-events-filters > .filter-field--clearable.filter-field--select > select {
    padding-right: 56px;
    background-position:
      calc(100% - 16px) 50%,
      calc(100% - 11px) 50%;
  }

  #all-events-view .all-events-filters > .filter-field--date .filter-clear-btn {
    right: 10px;
  }

  #all-events-view .all-events-filters > .filter-field--select .filter-clear-btn {
    right: 28px;
  }

  #all-events-view .all-events-request-btn {
    min-height: 40px;
    height: auto;
    padding: 8px 12px;
    font-size: 14px;
    line-height: 1.25;
  }

  #events .events-controls-row:not(.event-filters-row) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 10px;
    align-items: stretch;
  }

  #events .events-controls-row:not(.event-filters-row) .filters-row {
    display: contents;
  }

  #events .events-controls-row:not(.event-filters-row) .filters-row > :nth-child(1) {
    grid-column: 1;
    grid-row: 1;
  }

  #events .events-controls-row:not(.event-filters-row) .filters-row > :nth-child(2) {
    grid-column: 2;
    grid-row: 1;
  }

  #events .events-controls-row:not(.event-filters-row) .filters-row > :nth-child(3) {
    grid-column: 1;
    grid-row: 2;
  }

  #events .events-controls-row:not(.event-filters-row) .filters-row > * {
    width: 100%;
    min-width: 0;
  }

  #events .events-controls-row:not(.event-filters-row) .filters-row > .filter-field > select,
  #events .events-controls-row:not(.event-filters-row) .filters-row > .filter-field > input[type="text"],
  #events .events-controls-row:not(.event-filters-row) .events-all-link {
    width: 100%;
    min-width: 0;
    min-height: 40px;
    padding: 8px 12px;
    font-size: 14px;
  }

  #events .events-controls-row:not(.event-filters-row) .filters-row > .filter-field--select > select {
    padding-right: 32px;
    background-position:
      calc(100% - 16px) 50%,
      calc(100% - 11px) 50%;
  }

  #events .events-controls-row:not(.event-filters-row) .filters-row > .filter-field--clearable.filter-field--select > select {
    padding-right: 56px;
    background-position:
      calc(100% - 16px) 50%,
      calc(100% - 11px) 50%;
  }

  #events .events-controls-row:not(.event-filters-row) .filters-row > .filter-field--select .filter-clear-btn {
    right: 28px;
  }

  #events .events-controls-row:not(.event-filters-row) .filters-row > .filter-field--date .filter-clear-btn {
    right: 10px;
  }

  #events .events-controls-row:not(.event-filters-row) .events-all-link {
    grid-column: 2;
    grid-row: 2;
    justify-content: center;
    white-space: nowrap;
    min-height: 44px;
    padding: 10px 14px;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.01em;
    color: #e8ecff;
    border-color: rgba(99, 102, 241, 0.68);
    background:
      linear-gradient(135deg, rgba(44, 63, 117, 0.56), rgba(23, 35, 70, 0.86)),
      rgba(15, 23, 42, 0.9);
    box-shadow:
      0 8px 18px rgba(37, 99, 235, 0.18),
      inset 0 0 0 1px rgba(99, 102, 241, 0.2);
  }

  #events .events-controls-row:not(.event-filters-row) .events-all-link:active {
    box-shadow:
      0 4px 10px rgba(37, 99, 235, 0.16),
      inset 0 0 0 1px rgba(99, 102, 241, 0.2);
  }

  #events .home-link-hub {
    margin-bottom: 10px;
  }
}

@media (max-width: 560px) {
  .all-events-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
  }
}

/* Home upcoming events composition */
#events.section {
  padding-bottom: 76px;
}

#events .section-header {
  margin-bottom: 24px;
}

#events .events-controls-row {
  margin-bottom: 14px;
}

#events .events-slider {
  --slider-edge-fade: 0px;
}

#events .events-track {
  padding: 0;
  -webkit-mask-image: none;
  mask-image: none;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

#events .events-track::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}

#venues .venues-track {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

#venues .venues-track::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}

#events [data-upcoming-events-row],
#venues [data-venues-scroll-row],
#venues .venues-track {
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-inline: contain;
  overscroll-behavior-block: auto;
  overscroll-behavior-x: contain;
  overscroll-behavior-y: auto;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-x pan-y;
}

#events .events-track .card {
  flex: 0 0 min(360px, calc((100% - (var(--venues-gap) * 2)) / 3));
}

.connected-scroll-line {
  --progress: 0.08;
  position: relative;
  height: 14px;
  margin-top: 6px;
  width: 100%;
  user-select: none;
  contain: layout paint;
}

.connected-scroll-line::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 6px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(129, 140, 248, 0.34), rgba(129, 140, 248, 0.08));
}

.connected-scroll-line-fill {
  position: absolute;
  left: 0;
  top: 4px;
  width: 100%;
  height: 6px;
  border-radius: 0 999px 999px 0;
  background: linear-gradient(90deg, #8b86ff 0%, #635bff 62%, #22d3ee 100%);
  box-shadow: 0 0 18px rgba(99, 91, 255, 0.42);
  transform: scaleX(var(--progress));
  transform-origin: left center;
  will-change: transform;
}

@media (max-width: 900px) {
  #events .events-track .card {
    flex: 0 0 min(420px, calc((100% - var(--venues-gap)) / 2));
  }
}

@media (max-width: 640px) {
  #events.section {
    padding-bottom: 56px;
  }

  #events .events-track .card {
    flex: 0 0 calc(100% - 2px);
  }

  .connected-scroll-line {
    margin: 6px 12px 0;
    width: calc(100% - 24px);
    height: 12px;
  }

  .connected-scroll-line::before {
    top: 5px;
  }

  .connected-scroll-line-fill {
    top: 4px;
    height: 4px;
  }
}

@media (max-width: 380px) {
  .connected-scroll-line {
    margin-left: 10px;
    margin-right: 10px;
    width: calc(100% - 20px);
  }
}

@media (hover: none), (pointer: coarse) {
  #events [data-upcoming-events-row] .card.event:hover,
  #events [data-upcoming-events-row] .card.event:active {
    transform: none;
    filter: none;
    box-shadow: 0 22px 60px rgba(0, 0, 0, 0.28);
  }

  #venues [data-venues-scroll-row] .venue-card-link:hover,
  #venues [data-venues-scroll-row] .venue-card-link:active {
    transform: none;
    filter: none;
    box-shadow: none;
  }
}

/* micro-interactions (match your real classes) */
.btn,
.card,
.faq-item,
.filters-row select,
.filters-row input[type="date"],
.form input,
.form textarea,
.form select {
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    border-color .18s ease,
    background .18s ease,
    color .18s ease,
    opacity .18s ease;
}

.btn:hover {
  transform: translateY(-1px);
}

.btn:active {
  transform: translateY(1px) scale(.99);
}

.card:hover,
.faq-item:hover {
  transform: translateY(-2px);
  border-color: rgba(99, 102, 241, 0.7);
  box-shadow: 0 22px 45px rgba(15, 23, 42, 0.75);
}

.filters-row select:hover,
.filters-row input[type="date"]:hover,
.filters-row .date-clear-btn:hover,
.form input:hover,
.form textarea:hover,
.form select:hover {
  border-color: rgba(99, 102, 241, 0.65);
}

/* reveal on scroll */
.reveal {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .35s ease, transform .35s ease;
  will-change: opacity, transform;
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* page fade-in */
body {
  opacity: 0;
  transition: opacity .22s ease;
}

body.is-loaded {
  opacity: 1;
}

/* nice-to-have */
html { scroll-behavior: smooth; }

/* modal (purchase flow) */
body.modal-open {
  overflow: hidden;
  overscroll-behavior: none;
}

.account-body {
  min-height: 100dvh;
  overflow: hidden;
}

.account-page {
  padding: 14px 0 22px;
  min-height: calc(100dvh - 64px);
  height: calc(100dvh - 64px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.account-page .container {
  max-width: min(100%, 1360px);
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding-left: clamp(12px, 1.6vw, 24px);
  padding-right: clamp(12px, 1.6vw, 24px);
}

.account-page-head {
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.account-page-head h1 {
  margin: 0;
}

.account-page-shell {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
}

.account-page-shell--offer {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
}

.account-body--offer {
  overflow: auto;
  min-height: auto;
}

.account-page--offer {
  height: auto;
  min-height: calc(100dvh - 64px);
  overflow: visible;
  padding: 18px 0 30px;
}

.account-page--offer .container {
  height: auto;
  min-height: 0;
  max-width: min(100%, 1540px);
  padding-left: clamp(16px, 2.4vw, 38px);
  padding-right: clamp(16px, 2.4vw, 38px);
}

.account-auth-required {
  max-width: 700px;
  margin: 0 auto;
  padding: 18px;
  display: grid;
  gap: 10px;
}

.account-auth-required h3,
.account-auth-required p {
  margin: 0;
}

.account-auth-error {
  margin: 2px 0;
}

.account-layout {
  width: 100%;
  min-height: 0;
  height: 100%;
  display: grid;
  grid-template-columns: 212px minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
}

.account-menu {
  min-height: 0;
  display: flex;
  flex-direction: column;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  background:
    radial-gradient(circle at 0 0, rgba(56, 189, 248, 0.08) 0, transparent 52%),
    rgba(2, 6, 23, 0.52);
  padding: 8px;
}

.account-menu-main {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.account-menu-footer {
  margin-top: auto;
  padding-top: 8px;
  border-top: 1px solid rgba(148, 163, 184, 0.18);
}

.account-menu-back-home {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  color: rgba(203, 213, 225, 0.72);
  text-decoration: none;
  font-size: 13px;
  line-height: 1.2;
  padding: 4px 8px;
  border-radius: 10px;
  transition: color 160ms ease, background-color 160ms ease;
}

.account-menu-back-home:hover {
  color: rgba(226, 232, 240, 0.98);
  background: rgba(30, 41, 59, 0.5);
}

.account-tab {
  width: 100%;
  min-height: 40px;
  display: flex;
  align-items: center;
  border-radius: 10px;
  border: 1px solid transparent;
  background: transparent;
  color: rgba(203, 213, 225, 0.78);
  font-weight: 600;
  font-size: 14px;
  line-height: 1.2;
  cursor: pointer;
  padding: 8px 10px;
  text-align: left;
  text-decoration: none;
  transition: border-color 140ms ease, background-color 140ms ease, color 140ms ease;
}

.account-tab--with-badge {
  justify-content: space-between;
  gap: 8px;
}

.account-tab-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-tab-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 6px;
  border-radius: 999px;
  border: 1px solid rgba(34, 211, 238, 0.4);
  background: rgba(8, 145, 178, 0.28);
  color: #e0f2fe;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

.account-tab:hover {
  color: var(--text);
  border-color: rgba(71, 85, 105, 0.46);
  background: rgba(30, 41, 59, 0.56);
}

.account-tab.is-active {
  color: #eff6ff;
  border-color: rgba(56, 189, 248, 0.48);
  background: rgba(8, 145, 178, 0.2);
}

.account-header-logout {
  border-color: rgba(248, 113, 113, 0.42);
  color: #fecaca;
  background: rgba(127, 29, 29, 0.2);
}

.account-header-logout:hover {
  border-color: rgba(248, 113, 113, 0.62);
  color: #fee2e2;
  background: rgba(127, 29, 29, 0.28);
}

.account-content {
  min-width: 0;
  min-height: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
  overflow: visible;
}

.account-content--offer {
  width: 100%;
  height: auto;
  min-height: 0;
  overflow: visible;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.account-content--offer .account-panel {
  overflow: visible;
  padding-right: 0;
}

.account-panel--offer {
  width: 100%;
  max-width: min(100%, 1420px);
  margin: 0 auto;
}

.account-mobile-panel-head {
  display: none;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.account-mobile-panel-title {
  margin: 0;
  font-size: 18px;
}

.account-mobile-back {
  min-height: 34px;
  padding: 6px 10px;
  border-radius: 10px;
  font-size: 13px;
}

[data-account-panel][hidden] {
  display: none !important;
}

.account-panel {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  padding-right: 0;
  overscroll-behavior: contain;
}

.account-state {
  margin: 0;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.45;
}

.account-status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 22px;
  padding: 3px 9px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.34);
  background: rgba(30, 41, 59, 0.58);
  color: rgba(226, 232, 240, 0.94);
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.account-status-pill--type {
  border-color: rgba(34, 211, 238, 0.44);
  background: rgba(8, 145, 178, 0.2);
}

.account-status-pill--status {
  border-color: rgba(129, 140, 248, 0.4);
  background: rgba(79, 70, 229, 0.2);
}

.account-status-pill--status.is-open {
  border-color: rgba(74, 222, 128, 0.48);
  background: rgba(21, 128, 61, 0.22);
  color: #bbf7d0;
}

.account-overview {
  display: grid;
  gap: 12px;
}

.account-overview-state {
  margin-bottom: 2px;
}

.account-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: 12px;
}

.account-overview-highlight,
.account-overview-stat,
.account-overview-address-card,
.account-overview-actions-card {
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.62);
}

.account-overview-highlight {
  padding: 14px;
  display: grid;
  gap: 6px;
}

.account-overview-label {
  color: rgba(148, 163, 184, 0.95);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.account-overview-highlight h3 {
  margin: 0;
  font-size: 22px;
  line-height: 1.25;
}

.account-overview-highlight-meta,
.account-overview-highlight-secondary {
  margin: 0;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.4;
}

.account-overview-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.account-overview-stat {
  padding: 12px;
  display: grid;
  gap: 6px;
}

.account-overview-stat span {
  color: var(--text-soft);
  font-size: 12px;
}

.account-overview-stat strong {
  font-size: 26px;
  line-height: 1;
  color: #f8fafc;
}

.account-overview-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
}

.account-overview-address-card,
.account-overview-actions-card {
  padding: 12px 14px;
}

.account-overview-address-card {
  display: grid;
  gap: 8px;
}

.account-overview-address-card p {
  margin: 0;
  color: var(--text-soft);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.account-overview-link-btn {
  justify-self: start;
  min-height: 34px;
  padding: 6px 12px;
  border-radius: 10px;
  font-size: 13px;
}

.account-overview-actions-card h4 {
  margin: 0 0 10px;
  font-size: 16px;
}

.account-overview-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.account-overview-actions .btn {
  min-height: 36px;
  padding: 8px 12px;
  font-size: 13px;
  border-radius: 10px;
}

.account-ticket-list {
  display: grid;
  gap: 14px;
}

.account-ticket-group {
  display: grid;
  gap: 11px;
}

.account-ticket-group-title {
  margin: 0;
  font-size: 16px;
  line-height: 1.3;
}

.account-ticket-group.is-past {
  margin-top: 8px;
  padding-top: 18px;
  border-top: 1px solid rgba(148, 163, 184, 0.28);
}

.account-ticket-group.is-past .account-ticket-group-title {
  color: rgba(226, 232, 240, 0.95);
  letter-spacing: 0.01em;
}

.account-ticket-group-list {
  display: grid;
  gap: 10px;
}

.account-ticket-group.is-past .account-ticket-group-list {
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: 12px;
  background: rgba(2, 6, 23, 0.34);
  padding: 10px;
}

.account-ticket-card {
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.62);
  padding: 12px;
  display: grid;
  gap: 9px;
}

.account-ticket-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.account-ticket-card-top strong {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 15px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.account-ticket-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  margin-left: auto;
}

.account-status-pill--request {
  border-color: rgba(34, 211, 238, 0.45);
  background: rgba(8, 145, 178, 0.2);
  color: rgba(207, 250, 254, 0.98);
}

.account-ticket-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 12px;
}

.account-ticket-meta {
  font-size: 12px;
  color: var(--text-soft);
  line-height: 1.42;
}

.account-ticket-meta--delivery {
  grid-column: 1 / -1;
}

.account-ticket-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding-top: 2px;
}

.account-ticket-open.btn {
  min-height: 34px;
  padding: 6px 12px;
  border-radius: 10px;
  font-size: 13px;
}

.account-ticket-open.btn:disabled {
  opacity: 0.52;
  cursor: not-allowed;
}

.account-ticket-unavailable {
  font-size: 12px;
  color: var(--text-soft);
}

.account-profile-grid {
  display: grid;
  grid-template-columns: minmax(300px, 360px) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  min-height: 0;
}

.account-profile-form,
.account-password-form {
  display: grid;
  gap: 14px;
  padding: 12px;
}

.account-profile-main,
.account-password-card {
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.62);
}

.account-profile-main {
  padding: 14px;
  display: grid;
  gap: 12px;
}

.account-profile-main-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
}

.account-profile-main-grid-full {
  grid-column: 1 / -1;
}

.account-profile-main-footer {
  display: grid;
  gap: 8px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.18);
}

.account-profile-main-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}

.account-profile-main-actions .btn {
  min-height: 38px;
  padding: 8px 14px;
}

.account-panel[data-account-panel="profile"] .profile-layout {
  max-width: min(100%, 1220px);
  margin: 0 auto;
  width: 100%;
}

.account-panel[data-account-panel="profile"] .account-profile-card,
.account-panel[data-account-panel="profile"] .account-recipient-card {
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: 28px;
  background:
    radial-gradient(circle at 0% 0%, rgba(34, 211, 238, 0.1), transparent 34%),
    rgba(7, 12, 27, 0.82);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.34);
  overflow: hidden;
}

.account-panel[data-account-panel="profile"] .account-profile-card {
  position: sticky;
  top: 24px;
}

.account-panel[data-account-panel="profile"] .card-head {
  padding: 20px 22px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.12);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.account-panel[data-account-panel="profile"] .card-head h2 {
  margin: 0;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.account-panel[data-account-panel="profile"] .card-head p {
  margin: 4px 0 0;
  color: rgba(148, 163, 184, 0.92);
  font-size: 13px;
  line-height: 1.45;
}

.account-panel[data-account-panel="profile"] .chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  background: rgba(15, 23, 42, 0.62);
  color: #cbd5e1;
  font-size: 12px;
  white-space: nowrap;
}

.account-panel[data-account-panel="profile"] .chip.green {
  color: #bbf7d0;
  background: rgba(22, 163, 74, 0.13);
  border-color: rgba(74, 222, 128, 0.24);
}

.account-panel[data-account-panel="profile"] .account-card-body {
  padding: 22px;
  display: grid;
  gap: 18px;
}

.account-panel[data-account-panel="profile"] .info-list {
  display: grid;
  gap: 0;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  background: rgba(2, 6, 23, 0.24);
}

.account-panel[data-account-panel="profile"] .info-row {
  min-width: 0;
  padding: 14px 15px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.1);
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 14px;
  color: rgba(148, 163, 184, 0.92);
  font-size: 14px;
  line-height: 1.45;
}

.account-panel[data-account-panel="profile"] .info-row:last-child {
  border-bottom: 0;
}

.account-panel[data-account-panel="profile"] .info-row b {
  color: #f1f5f9;
  font-weight: 750;
}

.account-panel[data-account-panel="profile"] .info-row span {
  min-width: 0;
  overflow-wrap: anywhere;
  color: #cbd5e1;
}

.account-profile-edit-btn {
  min-height: 44px;
  border-radius: 15px;
  padding: 0 16px;
  justify-self: stretch;
}

.account-panel[data-account-panel="profile"] .account-profile-right-col {
  min-width: 0;
  display: grid;
  gap: 18px;
}

.account-recipient-cards-wrap {
  min-height: 0;
  padding: 20px 22px;
  display: grid;
  gap: 12px;
}

.account-saved-recipient-controls {
  grid-column: 1 / -1;
  gap: 12px;
  padding: 14px 16px;
  min-width: 0;
}

.account-saved-recipient-state {
  margin: 0;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.62);
  padding: 12px 13px;
  width: 100%;
}

.account-recipient-empty {
  min-height: 88px;
  border-radius: 22px;
  border: 1px dashed rgba(148, 163, 184, 0.22);
  background:
    radial-gradient(circle at 0% 0%, rgba(34, 211, 238, 0.08), transparent 35%),
    rgba(2, 6, 23, 0.22);
  padding: 18px;
  display: grid;
  align-content: center;
  gap: 5px;
}

.account-recipient-empty strong {
  font-size: 15px;
  line-height: 1.3;
  color: #f8fafc;
}

.account-recipient-empty span {
  color: rgba(148, 163, 184, 0.92);
  font-size: 13px;
  line-height: 1.45;
}

.account-panel[data-account-panel="profile"] .account-profile-note {
  border: 1px solid rgba(34, 211, 238, 0.16);
  border-radius: 22px;
  background:
    radial-gradient(circle at 0% 0%, rgba(34, 211, 238, 0.08), transparent 38%),
    rgba(6, 10, 24, 0.7);
  padding: 18px 20px;
  color: rgba(148, 163, 184, 0.92);
  line-height: 1.55;
  font-size: 14px;
}

.account-panel[data-account-panel="profile"] .account-profile-note strong {
  display: block;
  color: #f8fafc;
  margin-bottom: 5px;
  font-size: 15px;
  line-height: 1.3;
}

.account-profile-info-list {
  margin: 0;
  display: grid;
  gap: 9px;
}

.account-profile-info-list div {
  display: grid;
  gap: 3px;
}

.account-profile-info-list dt {
  font-size: 12px;
  color: var(--text-soft);
}

.account-profile-info-list dd {
  margin: 0;
  font-size: 14px;
}

.account-saved-recipient-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.account-saved-recipient-head-texts {
  display: grid;
  gap: 6px;
}

.account-saved-recipient-head-texts h4 {
  margin: 0;
  font-size: 17px;
}

.account-saved-recipient-head-texts p {
  margin: 0;
  color: var(--text-soft);
  font-size: 12px;
  line-height: 1.45;
  max-width: 78ch;
}

.account-saved-recipient-toggle {
  min-height: 36px;
  padding: 7px 12px;
  border-radius: 10px;
  font-size: 13px;
  flex: 0 0 auto;
}

.account-saved-recipient-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  width: 100%;
}

.account-saved-recipient-item {
  border-radius: 18px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  background: rgba(2, 6, 23, 0.36);
  padding: 14px 15px;
  display: grid;
  gap: 10px;
  align-content: start;
  min-height: 0;
  width: 100%;
}

.account-saved-recipient-item--draft {
  border-color: rgba(148, 163, 184, 0.24);
  background: rgba(2, 6, 23, 0.42);
}

.account-saved-recipient-item-head {
  min-width: 0;
}

.account-saved-recipient-item-name {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.account-saved-recipient-info-list {
  display: grid;
  gap: 9px;
}

.account-saved-recipient-info-list div {
  display: grid;
  gap: 3px;
}

.account-saved-recipient-info-list dt {
  font-size: 12px;
  color: var(--text-soft);
}

.account-saved-recipient-info-list dd {
  margin: 0;
  font-size: 14px;
  color: var(--text);
  overflow-wrap: anywhere;
}

.account-saved-recipient-inline-form {
  display: grid;
  gap: 10px;
  min-height: 0;
  align-content: start;
}

.account-saved-recipient-draft-name {
  display: flex;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
}

.account-saved-recipient-draft-name-input {
  min-width: 0;
  flex: 1 1 50%;
  border: 0;
  border-bottom: 1px solid rgba(148, 163, 184, 0.35);
  background: transparent;
  color: var(--text);
  font-size: 16px;
  line-height: 1.3;
  font-weight: 600;
  padding: 0 0 2px;
}

.account-saved-recipient-draft-name-input::placeholder {
  color: rgba(148, 163, 184, 0.88);
}

.account-saved-recipient-draft-value {
  width: 100%;
  min-height: 28px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 8px;
  background: rgba(15, 23, 42, 0.42);
  color: var(--text);
  padding: 4px 8px;
  font-size: 14px;
  line-height: 1.3;
}

.account-saved-recipient-draft-value::placeholder {
  color: rgba(148, 163, 184, 0.82);
}

.account-saved-recipient-draft-name-input:focus,
.account-saved-recipient-draft-value:focus {
  outline: none;
  border-color: rgba(99, 102, 241, 0.72);
  box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.28);
}

.account-saved-recipient-draft-name-input:disabled,
.account-saved-recipient-draft-value:disabled {
  opacity: 0.58;
  cursor: not-allowed;
}

.account-saved-recipient-draft-error {
  margin-top: 0;
}

.account-saved-recipient-draft-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: auto;
  padding-top: 8px;
  border-top: 1px solid rgba(148, 163, 184, 0.16);
}

.account-saved-recipient-draft-actions .btn {
  min-height: 34px;
  padding: 6px 12px;
  border-radius: 10px;
  font-size: 12px;
}

.account-saved-recipient-item-actions {
  margin-top: auto;
  display: flex;
  justify-content: flex-end;
}

.account-saved-recipient-delete {
  min-height: 34px;
  padding: 6px 12px;
  border-radius: 10px;
  border: 1px solid rgba(248, 113, 113, 0.48);
  background: rgba(127, 29, 29, 0.18);
  color: #fca5a5;
  font-size: 13px;
  box-shadow: none;
}

.account-saved-recipient-delete:hover:not(:disabled) {
  border-color: rgba(248, 113, 113, 0.72);
  background: rgba(153, 27, 27, 0.28);
  color: #fecaca;
}

.account-saved-recipient-delete:focus-visible {
  outline: 2px solid rgba(248, 113, 113, 0.65);
  outline-offset: 1px;
}

.account-saved-recipient-delete:disabled {
  opacity: 0.58;
  cursor: not-allowed;
}

.account-saved-recipient-confirm {
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.2);
  display: grid;
  gap: 8px;
}

.account-saved-recipient-confirm-text {
  margin: 0;
  font-size: 13px;
  line-height: 1.4;
  color: #f8fafc;
}

.account-saved-recipient-confirm-hint {
  margin: 0;
  font-size: 11px;
  line-height: 1.45;
  color: rgba(148, 163, 184, 0.95);
}

.account-saved-recipient-confirm-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.account-saved-recipient-confirm-actions .btn {
  min-height: 34px;
  padding: 6px 12px;
  border-radius: 10px;
  font-size: 12px;
}

.account-saved-recipient-confirm-confirm {
  border: 1px solid rgba(248, 113, 113, 0.48);
  background: rgba(127, 29, 29, 0.18);
  color: #fca5a5;
  box-shadow: none;
}

.account-saved-recipient-confirm-confirm:hover:not(:disabled) {
  border-color: rgba(248, 113, 113, 0.72);
  background: rgba(153, 27, 27, 0.28);
  color: #fecaca;
}

.account-saved-recipient-confirm-confirm:focus-visible {
  outline: 2px solid rgba(248, 113, 113, 0.65);
  outline-offset: 1px;
}

.account-saved-recipient-confirm-confirm:disabled {
  opacity: 0.58;
  cursor: not-allowed;
}

@media (min-width: 1181px) {
  .account-profile-edit-form {
    max-width: min(100%, 980px);
    margin: 0 auto;
  }
}

.account-profile-edit-head {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.2);
}

.account-profile-edit-head-texts {
  display: grid;
  gap: 5px;
}

.account-profile-edit-head-texts h4 {
  margin: 0;
  font-size: 17px;
}

.account-profile-edit-head-texts p {
  margin: 0;
  color: var(--text-soft);
  font-size: 12px;
  line-height: 1.45;
}

.account-profile-edit-back {
  min-height: 34px;
  padding: 6px 10px;
  border-radius: 10px;
  font-size: 13px;
}

.account-password-card {
  padding: 14px;
}

.account-password-screen-head {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.2);
}

.account-password-screen-texts {
  display: grid;
  gap: 5px;
}

.account-password-back-btn {
  min-height: 34px;
  padding: 6px 10px;
  border-radius: 10px;
  font-size: 13px;
}

.account-password-card-title {
  margin: 0;
  font-size: 17px;
}

.account-password-card-text {
  margin: 0;
  color: var(--text-soft);
  font-size: 12px;
}

.account-password-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
  padding-top: 10px;
}

.account-password-grid label:last-child {
  grid-column: 1 / -1;
}

.account-password-footer {
  display: grid;
  gap: 8px;
  padding-top: 10px;
  margin-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.18);
}

.account-password-footer .btn {
  min-height: 38px;
  padding: 8px 14px;
  justify-self: end;
}

.account-addresses-grid {
  display: grid;
  grid-template-columns: minmax(280px, 330px) minmax(0, 1fr);
  gap: 12px;
  min-height: 0;
  height: 100%;
}

.account-addresses-grid.is-address-editor-open {
  grid-template-columns: minmax(280px, 330px) minmax(0, 1fr);
}

.account-addresses-list-wrap,
.account-address-editor-wrap {
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.account-addresses-list-wrap {
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.58);
  padding: 9px;
  gap: 8px;
}

.account-address-list {
  display: grid;
  gap: 8px;
  min-height: 0;
  overflow: auto;
  padding-right: 2px;
}

.account-address-item {
  width: 100%;
  text-align: left;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.72);
  color: var(--text);
  padding: 9px 10px;
  display: grid;
  gap: 5px;
  cursor: pointer;
}

.account-address-item:hover {
  border-color: rgba(56, 189, 248, 0.4);
}

.account-address-item.is-active {
  border-color: rgba(56, 189, 248, 0.52);
  background: rgba(8, 145, 178, 0.2);
}

.account-address-item-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.account-address-item-title {
  font-size: 13px;
  font-weight: 600;
}

.account-address-item-edit {
  font-size: 11px;
  color: var(--text-soft);
}

.account-address-item-subtitle {
  font-size: 11px;
  color: rgba(148, 163, 184, 0.96);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.account-address-item-preview {
  font-size: 12px;
  color: var(--text-soft);
  line-height: 1.4;
}

.account-address-mobile-head {
  display: none;
  margin-bottom: 8px;
}

.account-address-mobile-back {
  min-height: 34px;
  padding: 6px 10px;
  border-radius: 10px;
}

.account-address-form {
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

.account-address-form[hidden] {
  display: none !important;
}

.account-addresses-grid--single {
  display: block;
  max-width: min(100%, 800px);
  height: auto;
}

.account-profile-address {
  margin: 0;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background:
    radial-gradient(circle at 10% 0%, rgba(56, 189, 248, 0.08) 0, transparent 42%),
    radial-gradient(circle at 88% 4%, rgba(129, 140, 248, 0.1) 0, transparent 48%),
    rgba(15, 23, 42, 0.62);
  box-shadow: 0 10px 22px rgba(2, 6, 23, 0.24);
  padding: 14px;
}

.account-profile-address .checkout-delivery-card-head {
  gap: 6px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.18);
}

.account-profile-address .checkout-delivery-card-title {
  font-size: 16px;
}

.account-profile-address .checkout-delivery-card-text {
  font-size: 12px;
  color: var(--text-soft);
}

.account-profile-address .checkout-delivery-grid {
  gap: 10px 12px;
}

.account-profile-address .checkout-delivery-grid textarea {
  min-height: 88px;
}

.account-address-view {
  padding-top: 10px;
}

.account-address-view-grid {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
}

.account-address-view-grid div {
  display: grid;
  gap: 3px;
}

.account-address-view-grid dt {
  font-size: 12px;
  color: var(--text-soft);
}

.account-address-view-grid dd {
  margin: 0;
  font-size: 14px;
  line-height: 1.42;
  color: var(--text);
  overflow-wrap: anywhere;
}

.account-address-view-item-full {
  grid-column: 1 / -1;
}

.account-address-view-value.is-empty {
  color: var(--text-soft);
}

.account-profile-address-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.18);
}

.account-profile-address-footer .form-error,
.account-profile-address-footer .form-note {
  flex: 0 0 100%;
  margin: 0;
}

.account-profile-address-footer .btn {
  min-height: 36px;
  padding: 7px 14px;
}

.account-profile-address-footer--view {
  margin-top: 10px;
}

.account-requests-section {
  display: grid;
  gap: 18px;
  padding-top: 8px;
}

.account-requests-section-head {
  display: grid;
  gap: 8px;
}

.account-requests-section-head h2 {
  margin: 0;
  font-size: 34px;
  line-height: 1.05;
  letter-spacing: -0.04em;
}

.account-requests-section-head p {
  margin: 0;
  max-width: 760px;
  color: var(--text-soft);
  font-size: 15px;
  line-height: 1.55;
}

.account-requests-panel {
  padding: 0;
  border-radius: 28px;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background:
    radial-gradient(circle at 0% 0%, rgba(34, 211, 238, 0.1), transparent 34%),
    rgba(6, 10, 24, 0.84);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.36);
  transform: none;
  transition: none;
}

.account-requests-panel.card:hover,
.account-requests-panel:hover {
  transform: none;
  border-color: rgba(148, 163, 184, 0.24);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.36);
  background:
    radial-gradient(circle at 0% 0%, rgba(34, 211, 238, 0.1), transparent 34%),
    rgba(6, 10, 24, 0.84);
}

.account-requests-toolbar {
  min-height: 82px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 24px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.14);
}

.account-requests-toolbar-copy h3 {
  margin: 0;
  font-size: 20px;
  letter-spacing: -0.02em;
}

.account-requests-toolbar-copy p {
  margin: 4px 0 0;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.5;
}

.account-requests-filters {
  display: flex;
  gap: 6px;
  padding: 4px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  background: rgba(15, 23, 42, 0.62);
  flex-shrink: 0;
}

.account-requests-filter {
  border: 0;
  border-radius: 999px;
  min-height: 34px;
  padding: 0 12px;
  color: var(--text-soft);
  background: transparent;
  cursor: pointer;
  transition: transform 0.18s ease, box-shadow 0.18s ease, color 0.18s ease, background 0.18s ease;
  white-space: nowrap;
  font-size: 12px;
}

.account-requests-filter:hover,
.account-requests-filter.is-active {
  transform: translateY(-1px);
  color: #fff;
  background: rgba(34, 211, 238, 0.1);
  box-shadow: inset 0 0 0 1px rgba(34, 211, 238, 0.2), 0 10px 22px rgba(34, 211, 238, 0.14);
}

.account-requests-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-height: 0;
}

.account-requests-list-wrap,
.account-request-view {
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.account-requests-list-wrap {
  padding: 16px;
  border-right: 0;
  background: transparent;
  gap: 14px;
}

.account-request-list {
  flex: 1 1 auto;
  min-height: 0;
  overflow: visible;
  display: grid;
  align-content: start;
  gap: 14px;
  padding-right: 0;
}

.account-request-item {
  width: 100%;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 22px;
  background:
    radial-gradient(circle at 8% 18%, rgba(124, 58, 237, 0.1), transparent 30%),
    linear-gradient(110deg, rgba(9, 22, 44, 0.9), rgba(10, 13, 31, 0.84));
  color: var(--text);
  cursor: pointer;
  text-align: left;
  padding: 22px;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
  align-items: start;
  gap: 22px;
  min-height: 0;
  overflow: visible;
}

.account-request-item:hover,
.account-request-item.is-active {
  transform: translateY(-1px);
  border-color: rgba(34, 211, 238, 0.3);
  box-shadow: 0 18px 42px rgba(34, 211, 238, 0.08);
}

.account-request-item:focus-visible {
  outline: 2px solid rgba(96, 165, 250, 0.64);
  outline-offset: 3px;
}

.account-request-main {
  min-width: 0;
  display: grid;
  gap: 18px;
}

.account-request-card-top {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 13px;
}

.account-request-dot {
  width: 12px;
  height: 12px;
  margin-top: 7px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: #22d3ee;
  box-shadow: 0 0 0 5px rgba(34, 211, 238, 0.12);
}

.account-request-dot.is-no-price {
  background: #8b5cf6;
  box-shadow: 0 0 0 5px rgba(139, 92, 246, 0.16);
}

.account-request-dot.is-muted {
  background: #94a3b8;
  box-shadow: 0 0 0 5px rgba(148, 163, 184, 0.11);
}

.account-request-title-wrap {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.account-request-item-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.account-request-name {
  min-width: 0;
  margin: 0;
  font-size: 22px;
  font-weight: 850;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #f8fafc;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
}

.account-request-item-meta {
  display: grid;
  gap: 4px;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.35;
}

.account-request-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(170px, 1fr));
  gap: 11px;
  max-width: 720px;
}

.account-request-meta-tile {
  position: relative;
  min-width: 0;
  min-height: 50px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(129, 140, 248, 0.13);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(226, 232, 240, 0.72);
  display: grid;
  align-content: center;
  gap: 4px;
}

.account-request-meta-tile.is-number {
  background: rgba(37, 99, 235, 0.08);
  border-color: rgba(96, 165, 250, 0.18);
  padding-right: 48px;
}

.account-request-meta-tile.is-request {
  background: rgba(8, 145, 178, 0.11);
  border-color: rgba(34, 211, 238, 0.19);
}

.account-request-meta-tile.is-no-price {
  background: rgba(124, 58, 237, 0.13);
  border-color: rgba(167, 139, 250, 0.24);
}

.account-request-meta-tile.is-offer,
.account-request-meta-tile.is-progress {
  background: rgba(217, 119, 6, 0.1);
  border-color: rgba(251, 191, 36, 0.2);
}

.account-request-meta-tile.is-success {
  background: rgba(34, 197, 94, 0.08);
  border-color: rgba(74, 222, 128, 0.18);
}

.account-request-meta-tile.is-neutral {
  background: rgba(15, 23, 42, 0.42);
  border-color: rgba(148, 163, 184, 0.16);
}

.account-request-meta-label {
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: rgba(199, 210, 254, 0.58);
}

.account-request-meta-value {
  min-width: 0;
  color: rgba(248, 250, 252, 0.96);
  font-size: 14px;
  line-height: 1.25;
  font-weight: 790;
  overflow-wrap: anywhere;
}

.account-request-copy-btn--tile {
  position: absolute;
  top: 10px;
  right: 10px;
}

.account-request-side {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 12px;
}

.account-request-status-box {
  display: grid;
  gap: 5px;
  min-height: 62px;
  align-content: center;
  padding: 13px 15px;
  border-radius: 16px;
  border: 1px solid rgba(148, 163, 184, 0.11);
  background: rgba(4, 8, 18, 0.45);
  color: rgba(226, 232, 240, 0.56);
  font-size: 13px;
}

.account-request-side-status {
  color: rgba(248, 250, 252, 0.96);
  font-size: 15px;
  font-weight: 850;
}

.account-request-side-status.is-new {
  color: #ddd6fe;
}

.account-request-side-status.is-progress {
  color: #fde68a;
}

.account-request-side-status.is-done {
  color: #bbf7d0;
}

.account-request-side .account-request-actions {
  display: grid;
  gap: 10px;
}

.account-request-side .account-request-actions .account-request-action.btn {
  width: 100%;
  min-width: 0;
  min-height: 46px;
  border-radius: 15px;
  font-size: 14px;
  font-weight: 830;
}

.account-request-side .account-request-actions .account-request-action.btn:disabled {
  cursor: not-allowed;
  opacity: 0.54;
  box-shadow: none;
}

.account-request-item-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.account-request-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1.2;
  white-space: nowrap;
  border: 1px solid rgba(148, 163, 184, 0.18);
  background: rgba(15, 23, 42, 0.62);
  color: #cbd5e1;
}

.account-request-chip.is-new {
  color: #ddd6fe;
  background: rgba(124, 58, 237, 0.15);
  border-color: rgba(167, 139, 250, 0.26);
}

.account-request-chip.is-progress {
  color: #fde68a;
  background: rgba(217, 119, 6, 0.13);
  border-color: rgba(251, 191, 36, 0.24);
}

.account-request-chip.is-done {
  color: #bbf7d0;
  background: rgba(22, 163, 74, 0.14);
  border-color: rgba(34, 197, 94, 0.24);
}

.account-request-chip.is-neutral {
  color: #cbd5e1;
  background: rgba(15, 23, 42, 0.62);
  border-color: rgba(148, 163, 184, 0.24);
}

.account-request-chip--request,
.account-request-chip--type {
  color: #cffafe;
  background: rgba(8, 145, 178, 0.14);
  border-color: rgba(34, 211, 238, 0.24);
}

.account-request-chip--offer {
  color: #fde68a;
  background: rgba(217, 119, 6, 0.13);
  border-color: rgba(251, 191, 36, 0.24);
}

.account-request-number-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  padding: 5px 7px 5px 10px;
  border-radius: 999px;
  color: #dbeafe;
  background: rgba(37, 99, 235, 0.14);
  border: 1px solid rgba(96, 165, 250, 0.24);
  font-size: 12.5px;
  line-height: 1.2;
}

.account-request-copy-btn {
  width: 26px;
  height: 26px;
  border: 1px solid rgba(96, 165, 250, 0.24);
  border-radius: 999px;
  color: #bfdbfe;
  background: rgba(15, 23, 42, 0.58);
  cursor: pointer;
  display: inline-grid;
  place-items: center;
  padding: 0;
  transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease, color 0.18s ease;
}

.account-request-copy-btn:hover {
  transform: translateY(-1px);
  color: #fff;
  border-color: rgba(34, 211, 238, 0.42);
  background: rgba(34, 211, 238, 0.1);
}

.account-request-copy-btn.is-copied {
  border-color: rgba(52, 211, 153, 0.4);
  background: rgba(16, 185, 129, 0.12);
  color: #bbf7d0;
}

.account-request-view {
  min-width: 0;
  background:
    radial-gradient(circle at 100% 0%, rgba(139, 92, 246, 0.1), transparent 34%),
    rgba(9, 13, 29, 0.5);
  padding: 22px 24px 22px;
  overflow: auto;
  transform: none;
  transition: none;
}

.account-request-view[hidden] {
  display: none !important;
}

.account-request-view:hover {
  transform: none;
}

.account-request-details {
  display: grid;
  gap: 16px;
  transition: none;
}

.account-request-details:hover {
  transform: none;
}

.account-request-details-head {
  padding: 0 0 16px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.12);
  display: grid;
  gap: 12px;
}

.account-request-details-badges {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.account-request-details h4 {
  margin: 0;
  font-size: 26px;
  line-height: 1.14;
  letter-spacing: -0.035em;
  overflow-wrap: anywhere;
}

.account-request-details-subline {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  color: var(--text-soft);
  font-size: 13px;
}

.account-request-info-grid {
  display: grid;
  gap: 0;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  background: rgba(2, 6, 23, 0.24);
}

.account-request-info-row {
  min-width: 0;
  padding: 13px 15px;
  color: var(--text-soft);
  font-size: 14px;
  line-height: 1.45;
  border-bottom: 1px solid rgba(148, 163, 184, 0.1);
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 14px;
}

.account-request-info-row:last-child {
  border-bottom: 0;
}

.account-request-info-row b {
  color: #f1f5f9;
  font-weight: 750;
}

.account-request-comment-box {
  border-radius: 18px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  background: rgba(2, 6, 23, 0.24);
  padding: 15px;
}

.account-request-comment-box h5 {
  margin: 0 0 8px;
  font-size: 14px;
  line-height: 1.4;
}

.account-request-comment-box p {
  margin: 0;
  color: var(--text-soft);
  font-size: 14px;
  line-height: 1.55;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.account-request-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.account-request-actions[hidden] {
  display: none !important;
}

.account-request-actions .btn {
  flex: 0 1 auto;
  min-width: 170px;
}

.account-offer-sheet {
  display: grid;
  gap: 14px;
}

.account-panel[data-account-panel="request-offer"] {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding-right: 0;
}

.account-panel[data-account-panel="request-offer-payment"] {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding-right: 0;
}

.account-offer-page-head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 2px;
}

.account-offer-back-btn {
  flex: 0 0 auto;
  min-height: 36px;
  padding: 7px 13px;
  border-radius: 10px;
}

.account-offer-page-head-texts {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.account-offer-page-title {
  margin: 0;
  font-size: clamp(24px, 2.15vw, 34px);
  line-height: 1.2;
  color: var(--text);
}

.account-offer-page-subtitle {
  margin: 0;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.4;
}

.account-offer-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.account-offer-payment-sheet {
  display: grid;
  gap: 16px;
}

.account-offer-payment-topbar {
  margin: 0;
}

.account-offer-payment-stepper .step {
  min-width: 0;
}

.account-offer-payment-layout {
  min-width: 0;
}

.account-offer-payment-layout .checkout-final-summary-card,
.account-offer-payment-layout .checkout-payment-panel {
  margin: 0;
}

.account-offer-payment-panel {
  min-width: 0;
}

.account-offer-payment-request-label {
  margin-top: -2px;
}

.account-offer-payment-status {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: var(--text-soft);
}

.account-offer-payment-status.is-error {
  color: #fecaca;
}

.account-offer-payment-status.is-success {
  color: #bbf7d0;
}

.account-offer-content {
  display: grid;
  gap: 12px;
  max-width: 100%;
  margin-right: auto;
  min-width: 0;
}

.account-offer-content .account-offer-summary,
.account-offer-content .account-request-section {
  width: 100%;
}

.account-offer-summary {
  display: grid;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  background: rgba(2, 6, 23, 0.4);
  padding: 10px 11px;
}

.account-offer-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
}

.account-offer-grid p {
  margin: 0;
  font-size: 13px;
  color: var(--text-soft);
  line-height: 1.45;
}

.account-offer-grid strong {
  color: var(--text);
}

.account-offer-grid span {
  color: var(--text);
}

.account-offer-content .account-offer-grid p {
  font-size: 14px;
  line-height: 1.52;
}

.account-offer-content .account-offer-grid span {
  font-size: 14px;
}

.account-offer-content .account-request-section h5 {
  font-size: 13px;
  line-height: 1.4;
}

.account-offer-content .account-request-section p {
  font-size: 14px;
  line-height: 1.55;
}

.account-offer-extras {
  display: grid;
  gap: 10px;
  margin-top: 8px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  background: rgba(2, 6, 23, 0.4);
  padding: 10px 11px;
}

.account-offer-extras h5 {
  margin: 0;
  color: var(--text);
  font-size: 15px;
  line-height: 1.35;
}

.account-offer-extra-card {
  width: 100%;
  cursor: pointer;
}

.account-offer-extra-toggle {
  cursor: pointer;
}

.account-offer-extra-status {
  margin: 0;
  align-self: start;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  row-gap: 2px;
  width: fit-content;
  max-width: 100%;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  background: rgba(15, 23, 42, 0.62);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.account-offer-extra-status-label {
  color: rgba(148, 163, 184, 0.92);
  font-size: 11.5px;
  line-height: 1.2;
}

.account-offer-extra-status-value {
  color: var(--text);
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.01em;
}

.account-offer-extras-note {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--text-soft);
  overflow-wrap: anywhere;
}

.account-offer-side {
  display: grid;
  gap: 12px;
  align-content: start;
  margin: 0;
  padding: 16px;
  border-radius: 14px;
  border: 1px solid rgba(99, 102, 241, 0.34);
  background:
    radial-gradient(circle at 14% 0%, rgba(56, 189, 248, 0.12) 0, transparent 48%),
    radial-gradient(circle at 88% 8%, rgba(129, 140, 248, 0.16) 0, transparent 52%),
    rgba(2, 6, 23, 0.76);
  box-shadow: 0 16px 28px rgba(2, 6, 23, 0.34);
}

.account-offer-side-head {
  display: grid;
  gap: 4px;
}

.account-offer-side-kicker {
  margin: 0;
  font-size: 11px;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: rgba(148, 163, 184, 0.84);
}

.account-offer-side-title {
  margin: 0;
  font-size: 20px;
  line-height: 1.2;
  color: var(--text);
}

.account-offer-side-list {
  margin: 0;
  display: grid;
  gap: 8px;
}

.account-offer-side-row {
  margin: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  padding: 9px 10px;
  border-radius: 11px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  background: rgba(15, 23, 42, 0.52);
}

.account-offer-side-row dt {
  margin: 0;
  color: var(--text-soft);
  font-size: 12px;
  line-height: 1.4;
}

.account-offer-side-row dd {
  margin: 0;
  color: var(--text);
  font-size: 13px;
  font-weight: 600;
  text-align: right;
  max-width: 230px;
  overflow-wrap: anywhere;
}

.account-offer-side-row.is-long {
  grid-template-columns: 1fr;
  gap: 6px;
}

.account-offer-side-row.is-long dd {
  max-width: none;
  text-align: left;
  font-weight: 500;
  color: var(--text-soft);
}

.account-offer-side-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 2px;
  padding: 12px 13px;
  border-radius: 12px;
  border: 1px solid rgba(99, 102, 241, 0.46);
  background: linear-gradient(135deg, rgba(99, 102, 241, 0.18) 0%, rgba(15, 23, 42, 0.78) 100%);
  color: var(--text);
}

.account-offer-side-total span {
  font-size: 14px;
  font-weight: 600;
}

.account-offer-side-total strong {
  font-size: 20px;
  line-height: 1.1;
  overflow-wrap: anywhere;
  text-align: right;
}

.account-offer-side-cta {
  display: grid;
  gap: 8px;
  margin-top: 2px;
}

.account-offer-side-cta .btn {
  width: 100%;
  justify-content: center;
}

.account-offer-side-cta p {
  margin: 0;
  color: var(--text-soft);
  font-size: 12px;
  line-height: 1.45;
}

@media (min-width: 960px) {
  .account-offer-layout {
    grid-template-columns: minmax(0, 1fr) minmax(400px, 460px);
    gap: 18px;
  }

  .account-offer-content {
    width: 100%;
    max-width: none;
    margin-right: 0;
  }

  .account-offer-side {
    align-self: start;
    margin-top: 0;
    position: sticky;
    top: 92px;
  }
}

.account-panel[data-account-panel="messages"] {
  overflow: hidden;
  padding-right: 0;
}

.account-messages-grid {
  display: grid;
  grid-template-columns: minmax(280px, 332px) minmax(0, 1fr);
  gap: 0;
  min-height: 0;
  height: 100%;
  border-radius: 16px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  background:
    radial-gradient(circle at 14% 12%, rgba(56, 189, 248, 0.06) 0, transparent 34%),
    linear-gradient(180deg, rgba(2, 6, 23, 0.56) 0%, rgba(2, 6, 23, 0.46) 100%);
  overflow: hidden;
}

.account-messages-grid.is-thread-collapsed {
  grid-template-columns: minmax(0, 1fr);
}

.account-threads,
.account-thread-view {
  border-radius: 0;
  border: 0;
  background: transparent;
  min-height: 0;
}

.account-threads {
  padding: 13px 10px 12px 13px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  border-right: 1px solid rgba(148, 163, 184, 0.1);
}

.account-thread-list {
  min-height: 0;
  overflow: auto;
  display: grid;
  gap: 8px;
  padding-right: 2px;
}

.account-thread-item {
  width: 100%;
  text-align: left;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.44);
  color: var(--text);
  padding: 10px 12px;
  display: grid;
  gap: 6px;
  transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.account-thread-item:hover {
  border-color: rgba(148, 163, 184, 0.2);
  background: rgba(30, 41, 59, 0.44);
  transform: translateY(-1px);
}

.account-thread-item.is-active {
  border-color: rgba(56, 189, 248, 0.36);
  background:
    linear-gradient(160deg, rgba(8, 145, 178, 0.24) 0%, rgba(15, 23, 42, 0.38) 100%);
  box-shadow: 0 10px 22px rgba(2, 6, 23, 0.25);
}

.account-thread-item.is-unread {
  border-color: rgba(129, 140, 248, 0.38);
  background:
    linear-gradient(160deg, rgba(79, 70, 229, 0.2) 0%, rgba(15, 23, 42, 0.34) 100%);
  box-shadow: inset 3px 0 0 rgba(96, 165, 250, 0.85), 0 8px 18px rgba(15, 23, 42, 0.2);
}

.account-thread-item.is-unread .account-thread-subject {
  color: #e6edff;
  font-weight: 700;
}

.account-thread-item.is-unread .account-thread-preview,
.account-thread-item.is-unread .account-thread-meta {
  color: rgba(191, 219, 254, 0.96);
}

.account-thread-item.is-unread.is-active {
  border-color: rgba(56, 189, 248, 0.45);
  background:
    linear-gradient(160deg, rgba(8, 145, 178, 0.28) 0%, rgba(30, 58, 138, 0.3) 100%);
  box-shadow: inset 3px 0 0 rgba(103, 232, 249, 0.9), 0 10px 22px rgba(2, 6, 23, 0.25);
}

.account-thread-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.account-thread-subject {
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.account-thread-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 20px;
  padding: 2px 7px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background: rgba(15, 23, 42, 0.42);
  color: var(--text-soft);
  font-size: 11px;
}

.account-thread-status.is-open {
  border-color: rgba(74, 222, 128, 0.34);
  background: rgba(21, 128, 61, 0.14);
  color: #bbf7d0;
}

.account-thread-preview {
  font-size: 12px;
  line-height: 1.4;
  color: var(--text-soft);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.account-thread-meta-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
}

.account-thread-meta {
  font-size: 11px;
  color: rgba(148, 163, 184, 0.98);
}

.account-thread-unread {
  display: inline-flex;
  align-items: center;
  min-height: 18px;
  padding: 0 6px;
  border-radius: 999px;
  border: 1px solid rgba(34, 211, 238, 0.36);
  background: rgba(8, 145, 178, 0.22);
  color: #dbeafe;
  font-size: 10px;
  font-weight: 700;
}

.account-thread-view {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 13px 15px;
  overflow: hidden;
}

.account-thread-mobile-head {
  display: none;
  align-items: center;
  gap: 8px;
}

.account-thread-mobile-back {
  min-height: 34px;
  padding: 6px 10px;
  border-radius: 10px;
  flex: 0 0 auto;
}

.account-thread-mobile-head-text {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.account-thread-mobile-title {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.account-thread-mobile-status {
  min-height: 20px;
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  font-size: 11px;
  color: var(--text-soft);
}

.account-thread-mobile-status.is-open {
  border-color: rgba(74, 222, 128, 0.5);
  color: #bbf7d0;
}

.account-chat-head,
.account-thread-header {
  border-radius: 0;
  border: 0;
  background: transparent;
  padding: 0;
}

.account-chat-head {
  display: grid;
  gap: 6px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.12);
}

.account-chat-head-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.account-chat-head h4 {
  margin: 0;
  font-size: 16px;
}

.account-chat-head p {
  margin: 0;
  color: rgba(148, 163, 184, 0.96);
  font-size: 12px;
}

.account-thread-header {
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.12);
  background: rgba(15, 23, 42, 0.32);
}

.account-thread-header-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 14px;
}

.account-thread-header-item {
  margin: 0;
  font-size: 12px;
  color: var(--text-soft);
}

.account-thread-header-item strong {
  color: rgba(226, 232, 240, 0.98);
}

.account-message-list {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.1);
  background:
    linear-gradient(180deg, rgba(15, 23, 42, 0.38) 0%, rgba(2, 6, 23, 0.3) 100%);
  padding: 13px;
  display: flex;
  flex-direction: column;
  gap: 9px;
}

.account-message-item {
  max-width: 80%;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.12);
  background: rgba(30, 41, 59, 0.46);
  padding: 9px 12px;
  display: grid;
  gap: 5px;
}

.account-message-item.is-user {
  align-self: flex-end;
  border-color: rgba(56, 189, 248, 0.26);
  background: rgba(8, 145, 178, 0.18);
}

.account-message-item.is-admin {
  align-self: flex-start;
}

.account-message-body {
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 13px;
  line-height: 1.45;
}

.account-message-meta {
  font-size: 11px;
  color: rgba(148, 163, 184, 0.86);
}

.account-message-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: stretch;
  padding: 8px;
  border-radius: 13px;
  border: 1px solid rgba(148, 163, 184, 0.12);
  background: rgba(2, 6, 23, 0.4);
}

.account-message-form textarea {
  min-height: 48px;
  height: 48px;
  max-height: 48px;
  resize: none;
  border-radius: 10px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  background: rgba(15, 23, 42, 0.62);
  color: var(--text);
  padding: 11px 12px;
  font-size: 13px;
  transition: border-color 160ms ease, background-color 160ms ease;
}

.account-message-form textarea:focus {
  border-color: rgba(56, 189, 248, 0.42);
  background: rgba(15, 23, 42, 0.78);
  box-shadow: 0 0 0 1px rgba(56, 189, 248, 0.2);
  outline: none;
}

.account-message-form textarea::placeholder {
  color: rgba(148, 163, 184, 0.84);
}

.account-message-form .btn {
  min-height: 48px;
  min-width: 136px;
  border-radius: 11px;
  padding: 10px 16px;
  align-self: stretch;
}

@media (max-width: 1180px) {
  .account-overview-grid,
  .account-overview-bottom,
  .account-profile-grid {
    grid-template-columns: 1fr;
  }

  .account-panel[data-account-panel="profile"] .account-profile-card {
    position: static;
  }

  .account-addresses-grid {
    grid-template-columns: minmax(250px, 300px) minmax(0, 1fr);
  }

  .account-requests-layout {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 900px) {
  .account-body {
    overflow: auto;
    min-height: auto;
  }

  .account-page {
    height: auto;
    min-height: calc(100dvh - 64px);
    overflow: visible;
  }

  .account-page .container {
    height: auto;
    min-height: 0;
  }

  .account-layout {
    grid-template-columns: 1fr;
    height: auto;
  }

  .account-content {
    height: auto;
    min-height: 0;
  }

  .account-panel {
    overflow: visible;
    padding-right: 0;
  }

  .account-request-item {
    min-height: 0;
  }

  .account-message-form {
    grid-template-columns: 1fr;
  }

  .account-message-form .btn {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 768px) {
  .account-layout {
    gap: 10px;
  }

  .account-layout.is-mobile-menu-view .account-content {
    display: none !important;
  }

  .account-layout.is-mobile-section-view .account-menu {
    display: none !important;
  }

  .account-layout.is-mobile-section-view .account-content {
    display: flex;
  }

  .account-mobile-panel-head {
    display: flex;
  }

  .account-mobile-panel-head[hidden] {
    display: none !important;
  }

  .account-tab {
    min-height: 50px;
    font-size: 17px;
    line-height: 1.35;
    padding: 11px 13px;
    border-radius: 11px;
  }

  .account-menu-footer {
    margin-top: 12px;
    padding-top: 10px;
  }

  .account-menu-back-home {
    display: flex;
    width: 100%;
    justify-content: center;
    min-height: 42px;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
    padding: 8px 12px;
    border-radius: 12px;
    border: 1px solid rgba(148, 163, 184, 0.34);
    background: rgba(15, 23, 42, 0.52);
    color: rgba(226, 232, 240, 0.92);
  }

  .account-menu-back-home:hover {
    border-color: rgba(148, 163, 184, 0.48);
    background: rgba(30, 41, 59, 0.58);
  }

  .account-content {
    padding: 0;
  }

  .account-content--offer {
    padding: 0;
  }

  .account-content.account-content--requests-mobile {
    border: 0;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    overflow: visible;
  }

  .account-content.account-content--requests-mobile .account-panel[data-account-panel="requests"] {
    padding: 0;
  }

  .account-content.account-content--requests-mobile .account-mobile-panel-head {
    margin-bottom: 8px;
  }

  .account-profile-main-grid,
  .account-password-grid,
  .account-address-view-grid,
  .account-offer-grid,
  .account-overview-stats,
  .account-overview-actions {
    grid-template-columns: 1fr;
  }

  .account-offer-layout {
    grid-template-columns: 1fr;
  }

  .account-offer-page-head {
    gap: 10px;
    align-items: stretch;
  }

  .account-offer-page-title {
    font-size: 22px;
  }

  .account-offer-back-btn {
    width: fit-content;
  }

  .account-offer-content {
    max-width: 100%;
  }

  .account-offer-side {
    padding: 13px 12px;
  }

  .account-offer-side-row {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .account-offer-side-row dd {
    max-width: none;
    text-align: left;
  }

  .account-saved-recipient-list {
    grid-template-columns: 1fr;
  }

  .account-ticket-group {
    gap: 9px;
  }

  .account-ticket-group.is-past {
    margin-top: 10px;
    padding-top: 14px;
  }

  .account-ticket-group-list {
    gap: 8px;
  }

  .account-ticket-group.is-past .account-ticket-group-list {
    padding: 8px;
  }

  .account-ticket-meta-grid {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .account-ticket-card-top {
    flex-direction: column;
    align-items: stretch;
  }

  .account-ticket-badges {
    justify-content: flex-start;
    margin-left: 0;
  }

  .account-profile-main-actions {
    flex-direction: column;
  }

  .account-panel[data-account-panel="profile"] .card-head,
  .account-panel[data-account-panel="profile"] .account-recipient-cards-wrap,
  .account-panel[data-account-panel="profile"] .account-card-body {
    padding: 18px 16px;
  }

  .account-panel[data-account-panel="profile"] .info-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .account-panel[data-account-panel="profile"] .card-head {
    display: grid;
    align-items: start;
  }

  .account-profile-edit-btn {
    width: 100%;
    justify-self: stretch;
  }

  .account-saved-recipient-head {
    flex-direction: column;
    align-items: stretch;
  }

  .account-saved-recipient-toggle {
    width: 100%;
  }

  .account-saved-recipient-draft-actions {
    flex-direction: column;
  }

  .account-saved-recipient-draft-actions .btn {
    width: 100%;
    justify-self: stretch;
  }

  .account-saved-recipient-confirm-actions {
    flex-direction: column;
  }

  .account-saved-recipient-confirm-actions .btn,
  .account-saved-recipient-item-actions .btn {
    width: 100%;
    justify-self: stretch;
  }

  .account-profile-main-actions .btn,
  .account-password-footer .btn,
  .account-profile-address-footer .btn {
    width: 100%;
    justify-self: stretch;
  }

  .account-addresses-grid,
  .account-messages-grid {
    grid-template-columns: 1fr;
    height: auto;
    border: 0;
    background: transparent;
    border-radius: 0;
    overflow: visible;
    gap: 10px;
  }

  .account-panel[data-account-panel="requests"] {
    width: 100%;
    padding-right: 0;
    padding-left: 0;
  }

  .account-requests-layout {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
  }

  .account-requests-list-wrap {
    width: 100%;
    max-width: 100%;
    border-right: 0;
    border-bottom: 1px solid rgba(148, 163, 184, 0.12);
    padding: 12px;
    gap: 8px;
    align-items: stretch;
  }

  .account-request-list {
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
    padding-right: 0;
    gap: 8px;
    justify-items: stretch;
    align-content: start;
    overflow: visible;
    margin: 0 auto;
  }

  .account-request-item {
    width: 100%;
    max-width: none;
    margin: 0;
    justify-self: stretch;
    grid-template-columns: 1fr;
    padding: 15px;
    gap: 15px;
  }

  .account-request-name {
    font-size: 18px;
  }

  .account-request-meta-grid,
  .account-request-side,
  .account-request-side .account-request-actions {
    grid-template-columns: 1fr;
  }

  .account-requests-toolbar {
    display: grid;
    align-items: start;
  }

  .account-requests-filters {
    overflow-x: auto;
    max-width: 100%;
  }

  .account-request-view {
    padding: 14px 12px 16px;
  }

  .account-request-info-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .account-request-actions {
    display: grid;
  }

  .account-request-actions .btn {
    width: 100%;
    min-width: 0;
  }

  .account-request-details h4 {
    font-size: 22px;
  }

  .account-requests-section-head h2 {
    font-size: clamp(30px, 9vw, 34px);
  }

  .account-address-mobile-head {
    display: flex;
  }

  .account-address-mobile-head[hidden] {
    display: none !important;
  }

  .account-panel[data-account-panel="messages"] .account-thread-mobile-head {
    display: none !important;
  }

  .account-messages-grid.is-mobile-thread-open .account-thread-view {
    min-height: calc(100dvh - 230px);
  }

  .account-threads,
  .account-thread-view {
    border-radius: 0;
    border: 0;
    background: transparent;
  }

  .account-threads {
    border-right: 0;
    padding: 6px 2px 0;
  }

  .account-thread-view {
    padding: 6px 2px 0;
    gap: 10px;
  }

  .account-thread-mobile-head {
    padding: 0 0 8px;
    border-bottom: 1px solid rgba(148, 163, 184, 0.12);
  }

  .account-chat-head {
    padding-top: 0;
  }

  .account-thread-header {
    padding: 9px 10px;
  }

  .account-thread-header-grid {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .account-message-list {
    min-height: clamp(250px, 45vh, 400px);
    padding: 10px;
  }

  .account-message-item {
    max-width: 92%;
  }

  .account-message-form {
    padding: 8px;
  }

  .account-message-form .btn {
    width: 100%;
    min-width: 0;
  }
}

.modal-backdrop,
.modal {
  display: none;
}

body.modal-open .modal-backdrop,
body.modal-open .modal {
  display: grid;
}

.modal[hidden],
.modal-backdrop[hidden] {
  display: none !important;
}

.modal-backdrop {
  position: fixed;
  inset: 0;
  background: var(--modal-backdrop);
  backdrop-filter: blur(6px);
  z-index: 60;
}

.modal {
  position: fixed;
  inset: 0;
  z-index: 70;
  display: grid;
  place-items: center;
  padding: 24px;
  overflow: hidden;
  overscroll-behavior: contain;
}

.modal-dialog {
  width: min(920px, calc(100vw - 48px));
  height: min(860px, calc(100dvh - 48px));
  max-height: calc(100dvh - 48px);
  overflow: hidden;
  max-width: 100%;
  overflow-x: hidden;
  border-radius: 16px;
  padding: 0;
  background:
    radial-gradient(circle at 0% 0%, rgba(56, 189, 248, 0.2) 0, transparent 55%),
    radial-gradient(circle at 100% 0%, rgba(129, 140, 248, 0.25) 0, transparent 60%),
    rgba(2, 6, 23, 0.98);
  border: 1px solid rgba(148, 163, 184, 0.35);
  box-shadow: 0 30px 65px rgba(0, 0, 0, 0.55);
  position: relative;
  font-size: 16px;
  line-height: 1.35;
  display: flex;
  flex-direction: column;
  overscroll-behavior: contain;
}

.modal-dialog--compact {
  width: min(520px, calc(100vw - 48px));
  height: auto;
  max-height: calc(100dvh - 48px);
}

.modal-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  min-height: 68px;
  padding: 12px 18px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.08);
  background: linear-gradient(180deg, rgba(2, 6, 23, 0.5) 0%, rgba(2, 6, 23, 0.34) 100%);
  backdrop-filter: blur(14px);
  position: sticky;
  top: 0;
  z-index: 24;
  flex-shrink: 0;
}

.modal-mobile-header {
  display: none;
}

.modal-close {
  order: 2;
  margin-left: auto;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.85);
  color: var(--text);
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}

.modal-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable both-edges;
  padding: 20px 22px 24px;
  padding-right: 12px;
}

.modal-dialog--compact .modal-body {
  padding: 24px 26px 26px;
}

.modal-dialog--compact .modal-top {
  min-height: auto;
  padding: 10px 12px 0;
  border-bottom: 0;
}

.modal-body > div {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
  width: 100%;
  padding-bottom: 2px;
}

.modal-dialog--compact .modal-body > div {
  min-height: auto;
}

.modal-body .modal-actions {
  margin-top: auto;
}

.modal-header {
  padding: 6px 4px 18px;
}

.modal-body > div > .modal-header:first-child {
  position: sticky;
  top: 0;
  z-index: 16;
  background: linear-gradient(180deg, rgba(2, 6, 23, 0.18) 0%, rgba(2, 6, 23, 0.1) 62%, rgba(2, 6, 23, 0) 100%);
  backdrop-filter: blur(10px);
}

.modal-body > div > .modal-header:first-child::after {
  content: none;
}

.modal-title {
  margin: 0 0 6px;
  font-size: 28px;
}

.modal-subtitle {
  margin: 0;
  color: var(--text-soft);
  font-size: 15px;
}

.modal-actions {
  display: flex;
  gap: 12px;
  padding-top: 18px;
  flex-wrap: wrap;
  align-items: stretch;
}

.event-modal-title {
  margin: 0 0 8px;
  font-size: 18px;
  overflow-wrap: anywhere;
  word-break: break-word;
  hyphens: auto;
}

.modal-subtitle,
.modal-dialog [data-event-meta],
.modal-dialog [data-event-description] {
  overflow-wrap: anywhere;
  word-break: break-word;
  hyphens: auto;
  white-space: normal;
}

.modal-dialog .card.subtle {
  min-width: 0;
  max-width: 100%;
}

.session-picker {
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

@keyframes required-highlight-pulse {
  0% {
    box-shadow: 0 0 0 1px rgba(147, 197, 253, 0.36), 0 10px 22px rgba(30, 64, 175, 0.24);
  }
  50% {
    box-shadow: 0 0 0 1px rgba(191, 219, 254, 0.62), 0 0 0 5px rgba(59, 130, 246, 0.24), 0 20px 36px rgba(30, 64, 175, 0.38);
  }
  100% {
    box-shadow: 0 0 0 1px rgba(147, 197, 253, 0.42), 0 14px 30px rgba(30, 64, 175, 0.3);
  }
}

.session-picker.is-required-highlight {
  border-color: rgba(96, 165, 250, 0.96);
  background:
    radial-gradient(circle at 8% 0%, rgba(56, 189, 248, 0.26) 0, transparent 46%),
    radial-gradient(circle at 92% 0%, rgba(129, 140, 248, 0.3) 0, transparent 52%),
    rgba(15, 23, 42, 0.8);
  box-shadow: 0 0 0 1px rgba(147, 197, 253, 0.5), 0 0 0 4px rgba(59, 130, 246, 0.2), 0 20px 38px rgba(30, 64, 175, 0.38);
  animation: required-highlight-pulse 0.95s ease-in-out 2;
}

.checkout-delivery-card.is-required-highlight,
.checkout-transfer-card.is-required-highlight,
.checkout-ticket-recipients-card.is-required-highlight,
.checkout-seats-form.is-required-highlight {
  border-color: rgba(99, 102, 241, 0.78);
  background:
    radial-gradient(circle at 10% 0%, rgba(56, 189, 248, 0.16) 0, transparent 44%),
    radial-gradient(circle at 90% 0%, rgba(129, 140, 248, 0.22) 0, transparent 48%),
    rgba(15, 23, 42, 0.72);
  box-shadow: 0 0 0 1px rgba(129, 140, 248, 0.42), 0 14px 30px rgba(30, 64, 175, 0.32);
  animation: required-highlight-pulse 0.95s ease-in-out 1;
}

.event-flow-section {
  padding-top: 24px;
}

#tickets-page-view > .container,
#checkout-page-view > .container {
  max-width: none;
  padding-left: clamp(16px, 2.2vw, 40px);
  padding-right: clamp(16px, 2.2vw, 40px);
}

#tickets-page-view .tickets-route-layout,
#checkout-page-view .checkout-route-layout,
#tickets-page-view .tickets-route-shell,
#checkout-page-view .checkout-route-shell,
#tickets-page-view .checkout-seats-shell {
  width: 100%;
  max-width: none;
}

body.page-checkout-success {
  min-height: 100svh;
  display: flex;
  flex-direction: column;
}

body.page-checkout-success main {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

body.page-checkout-success #checkout-page-view {
  flex: 1 1 auto;
}

body.page-checkout-success #checkout-page-view > .container {
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

body.page-checkout-success #checkout-page-view [data-checkout-page-root] {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.event-route-layout,
.tickets-route-layout,
.checkout-route-layout {
  display: grid;
  gap: 14px;
}

.event-flow-topbar {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  min-width: 0;
}

.event-flow-topbar .cwt-back-merge {
  flex: 0 0 auto;
}

.event-flow-topbar .stepper {
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
  order: 2;
}

@media (max-width: 900px) {
  .event-flow-topbar {
    flex-wrap: wrap;
    align-items: stretch;
    gap: 10px;
  }

  .event-flow-topbar .stepper {
    flex-basis: 100%;
    order: 3;
  }

  .modal-step--event > .modal-actions [data-event-request-link] {
    display: none;
  }

  .modal-step--event > .event-request-mobile-fallback {
    display: flex;
    flex-direction: column;
    gap: 10px;
    order: 8;
    margin-top: 2px;
  }

  .modal-step--event > .event-request-mobile-fallback .btn {
    width: 100%;
  }
}

.cwt-back-merge {
  --merge-gap: 10px;
  --merge-ease: cubic-bezier(.16, 1, .3, 1);
  position: relative;
  isolation: isolate;
  display: inline-flex;
  align-items: stretch;
  justify-content: flex-start;
  gap: var(--merge-gap);
  min-height: 44px;
  max-width: 100%;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #f4f6ff;
  cursor: pointer;
  text-decoration: none;
  font: inherit;
  line-height: 1;
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: gap, transform;
  transition:
    gap .52s var(--merge-ease),
    transform .28s ease;
}

.cwt-back-merge::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 999px;
  background: linear-gradient(
    135deg,
    rgba(35, 211, 255, 0.22),
    rgba(102, 87, 255, 0.88) 52%,
    rgba(122, 92, 255, 0.94)
  );
  box-shadow:
    0 18px 38px rgba(92, 74, 255, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
  opacity: 0.08;
  transform: scaleX(0.987) translateZ(0);
  backface-visibility: hidden;
  will-change: opacity, transform;
  transition:
    opacity .48s ease,
    transform .52s var(--merge-ease);
  pointer-events: none;
}

.cwt-back-part {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  min-height: 44px;
  border: 1px solid rgba(128, 145, 255, 0.28);
  color: rgba(244, 246, 255, 0.9);
  background-color: rgba(13, 19, 44, 0.5);
  background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.025));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 12px 30px rgba(0, 0, 0, 0.16);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: border-color, background-color, box-shadow, transform;
  transition:
    color .34s ease,
    border-color .46s ease,
    background-color .46s ease,
    box-shadow .46s ease,
    border-radius .52s var(--merge-ease),
    transform .52s var(--merge-ease);
}

.cwt-back-icon {
  flex: 0 0 44px;
  width: 44px;
  border-radius: 999px;
  font-size: 21px;
  font-weight: 820;
}

.cwt-back-text {
  flex: 0 1 auto;
  min-width: 0;
  max-width: 24ch;
  padding: 0 18px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 760;
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cwt-back-merge:hover {
  gap: 0;
  transform: translateY(-1px);
}

.cwt-back-merge:hover::before {
  opacity: 1;
  transform: scaleX(1);
}

.cwt-back-merge:hover .cwt-back-part {
  color: #fff;
  border-color: transparent;
  background-color: rgba(255, 255, 255, 0.01);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0),
    0 8px 20px rgba(0, 0, 0, 0.02);
}

.cwt-back-merge:hover .cwt-back-icon {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  transform: translateX(1px);
}

.cwt-back-merge:hover .cwt-back-text {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.cwt-back-merge:focus-visible {
  outline: 2px solid rgba(145, 162, 255, 0.9);
  outline-offset: 3px;
}

.cwt-back-merge:active {
  transform: translateY(0) scale(0.99);
}

@media (max-width: 720px) {
  .cwt-back-merge {
    --merge-gap: 8px;
    min-height: 44px;
    max-width: min(100%, 180px);
  }

  .cwt-back-part {
    min-height: 44px;
  }

  .cwt-back-icon {
    flex-basis: 44px;
    width: 44px;
    font-size: 20px;
  }

  .cwt-back-text {
    max-width: 11ch;
    padding: 0 12px;
    font-size: 12px;
  }
}

.event-route-shell,
.tickets-route-shell,
.checkout-route-shell {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.event-route-shell > .modal-header,
.tickets-route-shell > .modal-header,
.checkout-route-shell > .modal-header {
  padding: 2px 2px 10px;
}

.event-route-shell > .modal-actions,
.checkout-route-shell > .modal-actions {
  margin-top: 0;
}

.event-request-mobile-fallback {
  display: none;
}

.event-request-mobile-fallback-hint {
  margin: 0;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.4;
}

.event-route-shell > .modal-header {
  margin: 0;
  padding: 4px 2px 14px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.2);
}

.event-route-shell > .modal-header .modal-title {
  margin: 0 0 8px;
  font-size: clamp(26px, 3vw, 34px);
  line-height: 1.12;
}

.event-route-shell > .modal-header .modal-subtitle {
  max-width: 78ch;
  margin: 0;
  color: rgba(203, 213, 225, 0.9);
  line-height: 1.55;
}

.event-service-disclosure,
.checkout-service-disclosure {
  margin: 8px 0 0;
  max-width: 76ch;
  color: rgba(148, 163, 184, 0.9);
  line-height: 1.5;
}

.event-route-shell > .event-description-card {
  background:
    radial-gradient(circle at 6% 0%, rgba(56, 189, 248, 0.12) 0, transparent 42%),
    linear-gradient(162deg, rgba(15, 23, 42, 0.76), rgba(15, 23, 42, 0.6));
  border-color: rgba(148, 163, 184, 0.16);
  box-shadow: 0 16px 28px rgba(2, 6, 23, 0.22);
}

.event-route-shell > .event-description-card p {
  margin: 0;
  color: rgba(203, 213, 225, 0.9);
  line-height: 1.7;
}

.session-title {
  margin: 0;
  font-size: 13px;
  line-height: 1.35;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(148, 163, 184, 0.92);
}

.session-picker {
  gap: 14px;
  border-color: rgba(148, 163, 184, 0.24);
  background:
    radial-gradient(circle at 4% 0%, rgba(56, 189, 248, 0.16) 0, transparent 44%),
    radial-gradient(circle at 86% 0%, rgba(129, 140, 248, 0.14) 0, transparent 48%),
    rgba(15, 23, 42, 0.68);
  box-shadow: 0 18px 30px rgba(2, 6, 23, 0.2);
}

.session-grid {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.session-grid.is-collapsed {
  position: relative;
  padding-bottom: 2px;
}

.session-grid.is-collapsed::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 26px;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(15, 23, 42, 0) 0%, rgba(15, 23, 42, 0.94) 100%);
}

.session-group {
  display: grid;
  gap: 8px;
}

.session-group-title {
  margin: 0;
  color: rgba(148, 163, 184, 0.86);
  font-size: 11.5px;
  line-height: 1.3;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.session-group-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 8px;
}

.session-chip {
  appearance: none;
  display: grid;
  gap: 3px;
  justify-items: start;
  min-height: 58px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.56);
  color: var(--text);
  border-radius: 12px;
  padding: 9px 10px;
  line-height: 1.25;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.session-chip-date {
  font-size: 13px;
  font-weight: 600;
  color: #e2e8f0;
}

.session-chip-time {
  font-size: 13px;
  color: rgba(203, 213, 225, 0.82);
}

.session-chip:hover {
  border-color: rgba(129, 140, 248, 0.56);
  background: rgba(30, 41, 59, 0.72);
  transform: translateY(-1px);
}

.session-chip.is-active {
  border-color: rgba(99, 102, 241, 0.78);
  background:
    linear-gradient(140deg, rgba(37, 99, 235, 0.22), rgba(79, 70, 229, 0.2)),
    rgba(15, 23, 42, 0.76);
  box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.28), 0 8px 18px rgba(30, 64, 175, 0.24);
}

.session-grid-toggle.btn {
  margin-top: 2px;
  align-self: flex-start;
  min-height: 34px;
  padding: 6px 12px;
  font-size: 12px;
  border-radius: 999px;
}

.event-route-shell > .modal-actions,
.modal-step--event > .modal-actions {
  margin-top: 2px;
  padding-top: 14px;
  padding-bottom: 12px;
  border-top: 1px solid rgba(148, 163, 184, 0.18);
  border-bottom: 1px solid rgba(148, 163, 184, 0.18);
}

.event-route-shell > .modal-actions .btn,
.modal-step--event > .modal-actions .btn {
  min-height: 44px;
}

.event-route-shell > .modal-actions [data-go-seats],
.modal-step--event > .modal-actions [data-go-seats] {
  min-height: 48px;
  padding: 11px 22px;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 700;
}

.event-route-shell > [data-event-internal-links],
.event-route-shell > [data-event-related-links] {
  margin: 0;
  border-color: rgba(148, 163, 184, 0.16);
  background:
    radial-gradient(circle at 7% 0%, rgba(56, 189, 248, 0.1) 0, transparent 44%),
    linear-gradient(160deg, rgba(15, 23, 42, 0.72), rgba(15, 23, 42, 0.58));
  box-shadow: 0 12px 24px rgba(2, 6, 23, 0.18);
}

.event-route-shell .related-links-title {
  margin-bottom: 9px;
  color: rgba(148, 163, 184, 0.94);
}

.event-route-shell > .event-address-block,
.modal-step--event > .event-address-block {
  margin: 0;
  padding: 12px 14px;
  border-color: rgba(148, 163, 184, 0.2);
  background:
    radial-gradient(circle at 10% 0%, rgba(56, 189, 248, 0.14) 0, transparent 46%),
    linear-gradient(160deg, rgba(15, 23, 42, 0.78), rgba(15, 23, 42, 0.62));
  box-shadow: 0 14px 26px rgba(2, 6, 23, 0.22);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "heading actions"
    "text actions";
  column-gap: 12px;
  row-gap: 4px;
}

.event-route-shell > .event-address-block .related-links-title,
.modal-step--event > .event-address-block .related-links-title {
  grid-area: heading;
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(148, 163, 184, 0.94);
}

.event-address-icon {
  width: 18px;
  height: 18px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  color: rgba(147, 197, 253, 0.95);
  background: rgba(30, 64, 175, 0.22);
  border: 1px solid rgba(99, 102, 241, 0.42);
}

.event-route-shell > .event-address-block .event-address-text,
.modal-step--event > .event-address-block .event-address-text {
  grid-area: text;
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: rgba(226, 232, 240, 0.92);
  white-space: pre-line;
}

.event-route-shell > .event-address-block .event-address-map-actions,
.modal-step--event > .event-address-block .event-address-map-actions {
  grid-area: actions;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  margin: 0;
  justify-self: end;
  align-self: start;
}

.event-route-shell > .event-address-block .event-address-map-btn,
.modal-step--event > .event-address-block .event-address-map-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  min-width: 108px;
  padding: 5px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.62);
  color: rgba(226, 232, 240, 0.92);
  text-decoration: none;
  font-size: 11px;
  line-height: 1.2;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.event-route-shell > .event-address-block .event-address-map-btn:hover,
.modal-step--event > .event-address-block .event-address-map-btn:hover {
  border-color: rgba(99, 102, 241, 0.58);
  background: rgba(30, 41, 59, 0.82);
  color: #f8fafc;
}

.event-route-shell > .event-address-block .event-address-map-btn:focus-visible,
.modal-step--event > .event-address-block .event-address-map-btn:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.7);
  outline-offset: 2px;
}

.event-route-shell .link-chip-list {
  gap: 7px;
}

.event-route-shell .link-chip {
  border-color: rgba(148, 163, 184, 0.22);
  background: rgba(15, 23, 42, 0.68);
  color: rgba(219, 234, 254, 0.92);
}

.event-route-shell .link-chip:hover {
  border-color: rgba(99, 102, 241, 0.58);
  background: rgba(30, 41, 59, 0.82);
}

.event-route-shell .card:not(.is-required-highlight):hover {
  transform: none;
  border-color: rgba(148, 163, 184, 0.24);
  box-shadow: 0 16px 28px rgba(2, 6, 23, 0.2);
}

.modal-actions .btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.modal-success {
  text-align: center;
  padding: 0 6px 8px;
}

.modal-success__actions {
  justify-content: center;
  margin-top: 18px;
}

.modal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.card.subtle {
  background: rgba(15, 23, 42, 0.65);
  border-color: rgba(148, 163, 184, 0.35);
}

.modal-dialog .card {
  padding: 22px 22px 24px;
}

.modal-dialog .card,
.modal-dialog .form,
.summary-row,
.checkout-consents,
.transfer-details {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.modal-dialog .form label {
  display: grid;
  gap: 8px;
  font-size: 14px;
  margin-bottom: 12px;
  min-width: 0;
}

.modal-dialog .form input,
.modal-dialog .form textarea,
.modal-dialog .form select {
  font-size: 15px;
  padding: 11px 12px;
  min-height: 44px;
}

.modal-dialog .form select {
  appearance: none;
  background:
    linear-gradient(135deg, rgba(99, 102, 241, 0.18), rgba(79, 70, 229, 0.12)),
    rgba(15, 23, 42, 0.9);
  color: var(--text);
  border-color: rgba(148, 163, 184, 0.6);
  padding-right: 36px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg width='16' height='10' viewBox='0 0 16 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 2L8 8L14 2' stroke='%23c7d2fe' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 14px 8px;
}

.country-field {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  position: relative;
}

.country-field select {
  flex: 1 1 auto;
  min-width: 0;
}

.phone-field {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
}

.phone-field select {
  flex: 0 0 45%;
  min-width: 0;
}

.phone-field input {
  flex: 1 1 auto;
  min-width: 0;
}

.info-btn {
  width: 18px;
  height: 18px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.5);
  background: rgba(15, 23, 42, 0.75);
  color: var(--text-soft);
  font-size: 12px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
}

.info-btn:hover {
  border-color: rgba(99, 102, 241, 0.8);
  color: var(--text);
}

.info-btn:focus-visible {
  outline: 2px solid rgba(99, 102, 241, 0.65);
  outline-offset: 2px;
}

.tooltip {
  position: absolute;
  right: 0;
  top: calc(100% + 6px);
  max-width: 240px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.35);
  background: rgba(15, 23, 42, 0.95);
  color: var(--text);
  font-size: 13px;
  line-height: 1.35;
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.6);
  z-index: 30;
  opacity: 0;
  transform: translateY(-4px);
  transition: opacity 0.15s ease, transform 0.15s ease;
  pointer-events: none;
}

.tooltip:not([hidden]) {
  opacity: 1;
  transform: translateY(0);
}

.modal-dialog .form-note {
  font-size: 12px;
}

.modal-dialog .btn {
  padding: 11px 20px;
  font-size: 15px;
  max-width: 100%;
  white-space: normal;
}

.venue-detail {
  display: grid;
  gap: 10px;
}

.venue-detail .venue-title {
  margin: 0;
  font-size: 16px;
}

.venue-detail .venue-text p {
  margin: 0 0 10px;
  color: var(--text-soft);
}

.venue-detail .venue-text p:last-child {
  margin-bottom: 0;
}

.venue-detail.is-collapsed .venue-text {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.venue-detail .venue-toggle {
  align-self: flex-start;
}

.stepper {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  flex: 1;
  width: 100%;
  overflow-x: auto;
  scrollbar-width: none;
  order: 1;
}

.stepper::-webkit-scrollbar {
  height: 0;
}

.stepper .step {
  flex: 1;
  min-width: 0;
  text-align: center;
  font-size: 12px;
  padding: 10px 12px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.7);
  border: 1px solid rgba(148, 163, 184, 0.28);
  color: var(--text-soft);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: border-color 0.16s ease, background-color 0.16s ease, color 0.16s ease, transform 0.16s ease;
}

.stepper .step.is-clickable {
  cursor: pointer;
}

.stepper .step.is-complete {
  border-color: rgba(16, 185, 129, 0.55);
  background: rgba(16, 185, 129, 0.17);
  color: #d1fae5;
}

.stepper .step.is-error {
  border-color: rgba(248, 113, 113, 0.76);
  background: rgba(127, 29, 29, 0.34);
  color: #fee2e2;
  box-shadow: 0 0 0 1px rgba(248, 113, 113, 0.28), 0 10px 20px rgba(127, 29, 29, 0.3);
}

.stepper .step.is-active {
  color: #f9fafb;
  border-color: rgba(99, 102, 241, 0.65);
  background: rgba(99, 102, 241, 0.18);
}

.event-hero-media {
  min-width: 0;
}

.event-hero-image-card {
  position: relative;
  width: 100%;
  min-height: 0;
  height: auto;
  aspect-ratio: 1 / 1;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, 0.26);
  background:
    radial-gradient(circle at 18% 20%, rgba(56, 189, 248, 0.22) 0, transparent 52%),
    radial-gradient(circle at 80% 14%, rgba(129, 140, 248, 0.28) 0, transparent 58%),
    rgba(2, 6, 23, 0.82);
  box-shadow: 0 20px 36px rgba(2, 6, 23, 0.46);
}

.event-hero-image {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.event-hero-fallback {
  position: absolute;
  inset: 0;
  padding: 18px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 4px;
  background:
    linear-gradient(180deg, rgba(2, 6, 23, 0.2) 0%, rgba(2, 6, 23, 0.75) 100%),
    radial-gradient(circle at 15% 20%, rgba(56, 189, 248, 0.25) 0, transparent 58%),
    radial-gradient(circle at 85% 10%, rgba(129, 140, 248, 0.35) 0, transparent 62%);
}

.event-hero-fallback-title {
  color: var(--text);
  font-size: 19px;
  line-height: 1.22;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.event-hero-fallback-subtitle {
  color: var(--text-soft);
  font-size: 12px;
}

.transfer-details {
  margin: 10px 0 14px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(15, 23, 42, 0.5);
  border: 1px solid rgba(148, 163, 184, 0.28);
}

.transfer-details summary {
  cursor: pointer;
  color: var(--text);
  font-size: 13px;
}

.checkout-transfer-card {
  margin: 0;
  padding: 14px 16px 12px;
  border: 1px solid rgba(99, 102, 241, 0.26);
  background:
    radial-gradient(circle at 12% 0%, rgba(56, 189, 248, 0.08) 0, transparent 42%),
    radial-gradient(circle at 88% 0%, rgba(129, 140, 248, 0.12) 0, transparent 46%),
    rgba(15, 23, 42, 0.58);
  box-shadow: 0 12px 24px rgba(2, 6, 23, 0.3);
  display: grid;
  gap: 10px;
  transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

.checkout-booking-protection-card {
  margin: 0;
  padding: 14px 16px 12px;
  border: 1px solid rgba(99, 102, 241, 0.24);
  background:
    radial-gradient(circle at 10% 0%, rgba(56, 189, 248, 0.08) 0, transparent 42%),
    radial-gradient(circle at 90% 0%, rgba(129, 140, 248, 0.1) 0, transparent 46%),
    rgba(15, 23, 42, 0.56);
  box-shadow: 0 10px 22px rgba(2, 6, 23, 0.28);
  display: grid;
  gap: 10px;
  transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

.checkout-booking-protection-card.is-enabled {
  border-color: rgba(99, 102, 241, 0.42);
  box-shadow: 0 14px 28px rgba(2, 6, 23, 0.35);
}

.checkout-booking-protection-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px;
}

.checkout-booking-protection-summary {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.checkout-booking-protection-title {
  margin: 0;
  font-size: 15px;
  color: var(--text);
  line-height: 1.3;
}

.checkout-booking-protection-text {
  margin: 0;
  color: rgba(203, 213, 225, 0.9);
  font-size: 12.5px;
  line-height: 1.45;
  max-width: 64ch;
}

.checkout-booking-protection-toggle-wrap {
  display: inline-flex;
  justify-self: end;
  align-self: start;
}

.checkout-booking-protection-price {
  margin: 0;
  align-self: start;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  row-gap: 2px;
  width: fit-content;
  max-width: 100%;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  background: rgba(15, 23, 42, 0.62);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.checkout-booking-protection-price-label {
  color: rgba(148, 163, 184, 0.92);
  font-size: 11.5px;
  line-height: 1.2;
}

.checkout-booking-protection-price-amount {
  color: var(--text);
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  letter-spacing: 0.01em;
}

.checkout-booking-protection-card.is-enabled .checkout-booking-protection-price {
  border-color: rgba(99, 102, 241, 0.44);
  background: rgba(30, 41, 59, 0.74);
}

.checkout-delivery-card {
  margin: 0;
  padding: 16px;
  border: 1px solid rgba(99, 102, 241, 0.24);
  background:
    radial-gradient(circle at 10% 0%, rgba(56, 189, 248, 0.08) 0, transparent 40%),
    radial-gradient(circle at 90% 4%, rgba(129, 140, 248, 0.1) 0, transparent 46%),
    rgba(15, 23, 42, 0.6);
  box-shadow: 0 10px 22px rgba(2, 6, 23, 0.28);
  display: grid;
  gap: 12px;
  transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

.checkout-delivery-card-head {
  display: grid;
  gap: 6px;
}

.checkout-delivery-card-title {
  margin: 0;
  font-size: 15px;
  line-height: 1.3;
  color: var(--text);
}

.checkout-delivery-card-text {
  margin: 0;
  font-size: 12.5px;
  line-height: 1.45;
  color: rgba(203, 213, 225, 0.88);
}

.checkout-delivery-price {
  margin: 0;
  align-self: start;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  row-gap: 2px;
  width: fit-content;
  max-width: 100%;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  background: rgba(15, 23, 42, 0.62);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.checkout-delivery-price-label {
  color: rgba(148, 163, 184, 0.92);
  font-size: 11.5px;
  line-height: 1.2;
}

.checkout-delivery-price-amount {
  color: var(--text);
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  letter-spacing: 0.01em;
}

.checkout-delivery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
}

.checkout-delivery-grid label {
  margin-bottom: 0;
}

.checkout-delivery-grid-full {
  grid-column: 1 / -1;
}

.checkout-delivery-save-wrap {
  grid-column: 2 / 3;
  display: grid;
  justify-items: end;
  align-content: end;
  gap: 6px;
}

.checkout-delivery-save-btn.btn {
  min-height: 36px;
  padding: 7px 14px;
  font-size: 13px;
}

.checkout-delivery-save-note {
  margin-top: 0;
  text-align: right;
}

.checkout-delivery-save-note.is-error {
  color: var(--danger);
}

.checkout-delivery-save-note.is-success {
  color: rgba(34, 197, 94, 0.95);
}

.checkout-delivery-grid textarea {
  min-height: 88px;
  resize: vertical;
}

.checkout-transfer-card.is-enabled {
  padding: 16px 16px 14px;
  gap: 12px;
  border-color: rgba(99, 102, 241, 0.42);
  box-shadow: 0 14px 28px rgba(2, 6, 23, 0.38);
}

.checkout-transfer-card-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px;
}

.checkout-transfer-summary {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.checkout-transfer-card-title {
  margin: 0;
  font-size: 15px;
  color: var(--text);
  line-height: 1.3;
}

.checkout-transfer-summary-text {
  margin: 0;
  color: rgba(203, 213, 225, 0.9);
  font-size: 12.5px;
  line-height: 1.45;
  max-width: 64ch;
}

.checkout-transfer-card-note {
  margin: 0;
  font-size: 12px;
  color: rgba(148, 163, 184, 0.9);
  line-height: 1.35;
}

.checkout-transfer-card.is-enabled .checkout-transfer-card-note {
  display: none;
}

.checkout-service-terms-link {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin-top: -2px;
  color: rgba(147, 197, 253, 0.98);
  font-size: 12px;
  line-height: 1.35;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  text-decoration-color: rgba(147, 197, 253, 0.58);
  transition: color 0.18s ease, text-decoration-color 0.18s ease;
}

.checkout-service-terms-link:hover,
.checkout-service-terms-link:focus-visible {
  color: rgba(191, 219, 254, 1);
  text-decoration-color: rgba(191, 219, 254, 0.9);
}

.checkout-transfer-toggle-wrap {
  display: inline-flex;
  align-items: center;
  gap: 0;
  padding: 0;
  border: 0;
  background: transparent;
  line-height: 0;
  justify-self: end;
  align-self: start;
}

.checkout-transfer-toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  height: 24px;
  gap: 0;
  cursor: pointer;
  user-select: none;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 0;
}

.checkout-transfer-toggle-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  white-space: nowrap;
}

.checkout-transfer-toggle input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.checkout-transfer-toggle-ui {
  display: block;
  flex: 0 0 auto;
  width: 42px;
  height: 24px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.5);
  background: rgba(15, 23, 42, 0.9);
  position: relative;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

.checkout-transfer-toggle-ui::after {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: rgba(226, 232, 240, 0.9);
  transition: transform 0.2s ease, background-color 0.2s ease;
}

.checkout-transfer-toggle input[type="checkbox"]:checked + .checkout-transfer-toggle-ui {
  border-color: rgba(99, 102, 241, 0.95);
  background: rgba(79, 70, 229, 0.3);
}

.checkout-transfer-toggle input[type="checkbox"]:checked + .checkout-transfer-toggle-ui::after {
  transform: translateX(18px);
  background: #f8fafc;
}

.checkout-transfer-toggle input[type="checkbox"]:focus-visible + .checkout-transfer-toggle-ui {
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.28);
}

.checkout-transfer-preview {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.checkout-transfer-preview-chip {
  display: inline-flex;
  align-items: center;
  height: 24px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.52);
  color: rgba(203, 213, 225, 0.92);
  font-size: 11px;
  letter-spacing: 0.01em;
  line-height: 1;
}

.checkout-transfer-card.is-enabled .checkout-transfer-preview {
  display: none;
}

.checkout-transfer-fields {
  margin-top: 4px;
}

.transfer-inline {
  margin-top: 10px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
}

.checkout-seats-shell {
  display: grid;
  gap: 18px;
}

.checkout-seats-left-col {
  min-width: 0;
  display: grid;
  gap: 14px;
  align-content: start;
}

.checkout-seats-form {
  margin: 0;
}

.checkout-seats-actions {
  display: grid;
  gap: 10px;
  margin: 0;
}

.modal-step--seats .checkout-seats-merge-cta {
  --checkout-seats-cta-gap: 9px;
  position: relative;
  width: 100%;
  min-height: 58px;
  height: 58px;
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
  color: #fff;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 58px;
  align-items: stretch;
  gap: var(--checkout-seats-cta-gap);
  border-radius: 999px;
  isolation: isolate;
  cursor: pointer;
  pointer-events: auto;
  text-decoration: none;
  transition:
    gap 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.28s ease,
    filter 0.28s ease;
}

.modal-step--seats .checkout-seats-merge-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, #6d5cff 0%, #573df8 52%, #7a5cff 100%);
  opacity: 0.08;
  transform: scaleX(0.96);
  transition:
    opacity 0.34s ease,
    transform 0.52s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
}

.modal-step--seats .checkout-seats-merge-cta__part {
  position: relative;
  z-index: 1;
  min-height: 58px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(129, 140, 248, 0.45);
  background: linear-gradient(135deg, rgba(129, 140, 248, 0.98), rgba(79, 70, 229, 0.98));
  box-shadow:
    0 18px 40px rgba(79, 70, 229, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
  transition:
    border-radius 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.24s ease,
    margin 0.52s cubic-bezier(0.16, 1, 0.3, 1);
}

.modal-step--seats .checkout-seats-merge-cta__label {
  min-width: 0;
  padding: 0 20px;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.05;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.modal-step--seats .checkout-seats-merge-cta__arrow {
  width: 58px;
  min-width: 58px;
  border-radius: 50%;
  font-size: 22px;
  line-height: 1;
}

.modal-step--seats .checkout-seats-merge-cta:hover,
.modal-step--seats .checkout-seats-merge-cta:focus-visible,
.modal-step--seats .checkout-seats-merge-cta:active {
  gap: 0;
}

.modal-step--seats .checkout-seats-merge-cta:hover::before,
.modal-step--seats .checkout-seats-merge-cta:focus-visible::before,
.modal-step--seats .checkout-seats-merge-cta:active::before {
  opacity: 1;
  transform: scaleX(1);
}

.modal-step--seats .checkout-seats-merge-cta:hover .checkout-seats-merge-cta__part,
.modal-step--seats .checkout-seats-merge-cta:focus-visible .checkout-seats-merge-cta__part,
.modal-step--seats .checkout-seats-merge-cta:active .checkout-seats-merge-cta__part {
  background: linear-gradient(135deg, #8b8cff 0%, #5b4cff 100%);
  border-color: rgba(165, 180, 252, 0.6);
  box-shadow:
    0 18px 42px rgba(79, 70, 229, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.15);
  color: #fff;
  opacity: 1;
  filter: brightness(1.04);
}

.modal-step--seats .checkout-seats-merge-cta:hover .checkout-seats-merge-cta__label,
.modal-step--seats .checkout-seats-merge-cta:focus-visible .checkout-seats-merge-cta__label,
.modal-step--seats .checkout-seats-merge-cta:active .checkout-seats-merge-cta__label {
  margin-right: -8px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.modal-step--seats .checkout-seats-merge-cta:hover .checkout-seats-merge-cta__arrow,
.modal-step--seats .checkout-seats-merge-cta:focus-visible .checkout-seats-merge-cta__arrow,
.modal-step--seats .checkout-seats-merge-cta:active .checkout-seats-merge-cta__arrow {
  margin-left: -8px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.modal-step--seats .checkout-seats-merge-cta:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.85);
  outline-offset: 2px;
}

.modal-step--seats .checkout-seats-merge-cta:active {
  transform: translateY(0) scale(0.992);
}

.modal-step--seats .checkout-seats-merge-cta:disabled,
.modal-step--seats .checkout-seats-merge-cta.is-disabled,
.modal-step--seats .checkout-seats-merge-cta[aria-disabled="true"] {
  cursor: not-allowed;
  gap: var(--checkout-seats-cta-gap);
  opacity: 0.76;
  transform: none;
  filter: saturate(0.86);
}

.modal-step--seats .checkout-seats-merge-cta:disabled::before,
.modal-step--seats .checkout-seats-merge-cta.is-disabled::before,
.modal-step--seats .checkout-seats-merge-cta[aria-disabled="true"]::before {
  opacity: 0;
}

.modal-step--seats .checkout-seats-merge-cta:disabled .checkout-seats-merge-cta__part,
.modal-step--seats .checkout-seats-merge-cta.is-disabled .checkout-seats-merge-cta__part,
.modal-step--seats .checkout-seats-merge-cta[aria-disabled="true"] .checkout-seats-merge-cta__part {
  border-color: rgba(148, 163, 184, 0.4);
  background: linear-gradient(135deg, rgba(71, 85, 105, 0.88), rgba(51, 65, 85, 0.88));
  box-shadow: none;
}

.modal-step--seats .checkout-seats-merge-cta:disabled:hover,
.modal-step--seats .checkout-seats-merge-cta:disabled:focus-visible,
.modal-step--seats .checkout-seats-merge-cta:disabled:active,
.modal-step--seats .checkout-seats-merge-cta.is-disabled:hover,
.modal-step--seats .checkout-seats-merge-cta.is-disabled:focus-visible,
.modal-step--seats .checkout-seats-merge-cta.is-disabled:active,
.modal-step--seats .checkout-seats-merge-cta[aria-disabled="true"]:hover,
.modal-step--seats .checkout-seats-merge-cta[aria-disabled="true"]:focus-visible,
.modal-step--seats .checkout-seats-merge-cta[aria-disabled="true"]:active {
  gap: var(--checkout-seats-cta-gap);
}

.checkout-seats-mobile-sticky {
  display: none;
}

.la-scala-hall-map {
  width: 100%;
  min-width: 0;
  display: grid;
  justify-items: center;
  gap: 10px;
}

.la-scala-hall-map__frame {
  position: relative;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 1 / 1;
  display: grid;
  padding: clamp(10px, 1.4vw, 16px);
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 24px;
  background:
    radial-gradient(circle at 50% 0%, rgba(226, 232, 240, 0.08) 0, transparent 46%),
    rgba(2, 6, 23, 0.58);
  box-shadow:
    0 24px 64px rgba(2, 6, 23, 0.36),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.la-scala-hall-map__image-wrap {
  width: 100%;
  height: 100%;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: clamp(8px, 1vw, 12px);
  border-radius: 18px;
  background:
    radial-gradient(circle at 50% 20%, rgba(99, 102, 241, 0.16), transparent 45%),
    #050816;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.16);
}

.la-scala-hall-map__svg-host,
.la-scala-hall-map__image {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
}

.la-scala-hall-map__image {
  object-fit: contain;
}

.venue-seat-map--external-event .la-scala-hall-map__frame {
  aspect-ratio: auto;
  min-height: clamp(260px, 44vw, 520px);
}

.venue-seat-map--external-event .la-scala-hall-map__image-wrap {
  padding: clamp(10px, 1.1vw, 14px);
}

.venue-seat-map--external-event .la-scala-hall-map__svg-host {
  display: flex;
  align-items: center;
  justify-content: center;
}

.venue-seat-map--spotify-camp-nou.venue-seat-map--static-image .la-scala-hall-map__frame {
  aspect-ratio: auto;
  min-height: clamp(300px, 46vw, 560px);
}

.venue-seat-map--spotify-camp-nou.venue-seat-map--static-image .la-scala-hall-map__svg-host {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
}

.venue-seat-map--spotify-camp-nou.venue-seat-map--static-image .venue-seat-map__static-image {
  width: 100%;
  height: 100%;
  min-height: 0;
  max-height: min(500px, 62vh);
  object-fit: contain;
  cursor: default;
  pointer-events: none;
}

.venue-seat-map--spotify-camp-nou.venue-seat-map--static-image .venue-seat-map__static-notice {
  margin: 0;
  color: rgba(226, 232, 240, 0.74);
  font-size: 12px;
  line-height: 1.45;
  text-align: center;
}

.external-event-map-image {
  width: 100%;
  height: 100%;
  max-height: min(520px, 68vh);
  object-fit: contain;
}

.external-event-map-file {
  width: min(100%, 460px);
  margin-inline: auto;
  display: grid;
  gap: 10px;
  padding: 14px;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background:
    radial-gradient(circle at 10% 0%, rgba(109, 99, 255, 0.12), transparent 44%),
    rgba(8, 13, 32, 0.62);
}

.external-event-map-file__title {
  margin: 0;
  color: rgba(244, 245, 251, 0.96);
  font-size: 15px;
  line-height: 1.3;
}

.external-event-map-file__text {
  margin: 0;
  color: rgba(203, 213, 225, 0.84);
  font-size: 13px;
  line-height: 1.45;
}

.external-event-map-file__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.16);
}

.external-event-map-file__open.btn {
  min-height: 34px;
  padding-inline: 14px;
}

.la-scala-hall-map__svg,
.la-scala-hall-map__image-wrap svg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: transparent;
}

.la-scala-hall-map__svg .scala-zone,
.la-scala-hall-map__svg [id^="zone-"] {
  cursor: pointer;
  transform-box: fill-box;
  transform-origin: center;
  transition:
    opacity 0.18s ease,
    filter 0.18s ease,
    transform 0.18s ease;
}

.la-scala-hall-map__svg .scala-zone:hover,
.la-scala-hall-map__svg .scala-zone:focus,
.la-scala-hall-map__svg .scala-zone.is-hovered,
.la-scala-hall-map__svg [id^="zone-"]:hover,
.la-scala-hall-map__svg [id^="zone-"].is-hovered {
  opacity: 1;
  filter: drop-shadow(0 0 12px rgba(99, 102, 241, 0.75));
}

.la-scala-hall-map__svg .scala-zone:focus,
.la-scala-hall-map__svg .scala-zone:focus-visible,
.la-scala-hall-map__svg [id^="zone-"]:focus,
.la-scala-hall-map__svg [id^="zone-"]:focus-visible,
.la-scala-hall-map__svg [data-zone-code]:focus,
.la-scala-hall-map__svg [data-zone-code]:focus-visible {
  outline: none !important;
}

.la-scala-hall-map__svg .scala-zone.is-selected,
.la-scala-hall-map__svg [id^="zone-"].is-selected {
  opacity: 1;
}

.la-scala-hall-map__svg :is(path, polygon, polyline, circle, ellipse, rect).is-selected,
.la-scala-hall-map__svg .scala-zone.is-selected :where(path, rect, circle, ellipse, polygon, polyline),
.la-scala-hall-map__svg [id^="zone-"].is-selected :where(path, rect, circle, ellipse, polygon, polyline) {
  stroke: rgba(248, 252, 255, 0.98) !important;
  stroke-width: 4px !important;
  stroke-opacity: 1 !important;
  stroke-linejoin: round;
  stroke-linecap: round;
  paint-order: stroke fill markers;
  vector-effect: non-scaling-stroke;
  filter:
    drop-shadow(0 0 8px rgba(255, 255, 255, 0.78))
    drop-shadow(0 0 18px rgba(129, 140, 248, 0.96))
    drop-shadow(0 0 28px rgba(34, 211, 238, 0.78));
}

.la-scala-hall-map__svg :is(path, polygon, polyline, circle, ellipse).is-pulsing {
  animation: cwt-zone-neon-pulse 1.5s ease-in-out both;
  transform: none !important;
  will-change: filter, opacity, stroke-opacity;
}

@keyframes cwt-zone-neon-pulse {
  0% {
    opacity: 0.92;
    stroke-opacity: 0.9;
    filter: drop-shadow(0 0 0 rgba(120, 110, 255, 0));
  }
  20% {
    opacity: 1;
    stroke-opacity: 1;
    filter:
      drop-shadow(0 0 12px rgba(130, 120, 255, 0.88))
      drop-shadow(0 0 24px rgba(36, 214, 255, 0.58));
  }
  45% {
    opacity: 0.96;
    stroke-opacity: 0.94;
    filter:
      drop-shadow(0 0 5px rgba(130, 120, 255, 0.48))
      drop-shadow(0 0 11px rgba(36, 214, 255, 0.28));
  }
  70% {
    opacity: 1;
    stroke-opacity: 1;
    filter:
      drop-shadow(0 0 16px rgba(130, 120, 255, 0.98))
      drop-shadow(0 0 30px rgba(36, 214, 255, 0.66));
  }
  100% {
    opacity: 1;
    stroke-opacity: 1;
    filter: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .la-scala-hall-map__svg :is(path, polygon, polyline, circle, ellipse).is-pulsing {
    animation: none !important;
  }
}

.venue-seat-map--opera-bastille .la-scala-hall-map__svg [id^="zone-"] {
  opacity: 0.9;
}

.venue-seat-map--opera-bastille .la-scala-hall-map__svg [id^="zone-"]:hover,
.venue-seat-map--opera-bastille .la-scala-hall-map__svg [id^="zone-"].is-hovered {
  opacity: 1;
  filter:
    drop-shadow(0 0 8px rgba(124, 92, 255, 0.58))
    drop-shadow(0 0 14px rgba(255, 255, 255, 0.2));
}

.venue-seat-map--opera-bastille .la-scala-hall-map__svg [id^="zone-"].is-selected {
  opacity: 1;
  filter:
    drop-shadow(0 0 8px rgba(255, 255, 255, 0.72))
    drop-shadow(0 0 16px rgba(124, 92, 255, 0.9))
    drop-shadow(0 0 24px rgba(34, 211, 238, 0.68));
  stroke: rgba(248, 252, 255, 0.98) !important;
  stroke-width: 3px !important;
  paint-order: stroke fill markers;
  vector-effect: non-scaling-stroke;
}

.venue-seat-map--opera-bastille .la-scala-hall-map__svg [id^="zone-"].is-selected :where(path, rect, circle, ellipse, polygon, polyline) {
  stroke: rgba(248, 252, 255, 0.98) !important;
  stroke-width: 3px !important;
  stroke-opacity: 1 !important;
  paint-order: stroke fill markers;
  vector-effect: non-scaling-stroke;
}

.venue-seat-map--opera-bastille .la-scala-hall-map__svg #Contours .st11,
.venue-seat-map--opera-bastille .la-scala-hall-map__svg #Contours .st13 {
  stroke: rgba(255, 255, 255, 0.72) !important;
}

.venue-seat-map--opera-bastille .la-scala-hall-map__svg #Contours :is(path, line, polyline, polygon, rect, ellipse, circle).st10,
.venue-seat-map--opera-bastille .la-scala-hall-map__svg #Contours :is(path, line, polyline, polygon, rect, ellipse, circle).st12 {
  stroke: rgba(255, 255, 255, 0.45) !important;
}

.venue-seat-map--palais-garnier .la-scala-hall-map__svg [data-zone-code] {
  opacity: 0.92;
  transition:
    opacity 0.18s ease,
    filter 0.18s ease;
}

.venue-seat-map--palais-garnier .la-scala-hall-map__svg [data-zone-code]:hover,
.venue-seat-map--palais-garnier .la-scala-hall-map__svg [data-zone-code].is-hovered {
  opacity: 1;
  filter:
    brightness(1.08)
    saturate(1.08)
    drop-shadow(0 0 8px rgba(109, 99, 255, 0.42))
    drop-shadow(0 0 14px rgba(34, 211, 238, 0.2));
}

.venue-seat-map--palais-garnier.has-selected .la-scala-hall-map__svg [data-zone-code] {
  opacity: 0.42;
}

.venue-seat-map--palais-garnier.has-selected .la-scala-hall-map__svg [data-zone-code]:hover:not(.is-selected):not([data-selected="true"]),
.venue-seat-map--palais-garnier.has-selected .la-scala-hall-map__svg [data-zone-code].is-hovered:not(.is-selected):not([data-selected="true"]) {
  opacity: 0.62;
}

.venue-seat-map--palais-garnier .la-scala-hall-map__svg [data-zone-code].is-selected,
.venue-seat-map--palais-garnier .la-scala-hall-map__svg [data-zone-code][data-selected="true"],
.venue-seat-map--palais-garnier .la-scala-hall-map__svg [data-zone-code].is-selected :where(path, polygon, rect, circle, ellipse, polyline),
.venue-seat-map--palais-garnier .la-scala-hall-map__svg [data-zone-code][data-selected="true"] :where(path, polygon, rect, circle, ellipse, polyline) {
  opacity: 1 !important;
  filter:
    brightness(1.35)
    saturate(1.25)
    drop-shadow(0 0 8px rgba(34, 211, 238, 0.45))
    drop-shadow(0 0 18px rgba(34, 211, 238, 0.22));
}

.venue-seat-map--palais-garnier .la-scala-hall-map__svg [data-zone-code].is-selected:where(path, polygon, rect, circle, ellipse, polyline),
.venue-seat-map--palais-garnier .la-scala-hall-map__svg [data-zone-code][data-selected="true"]:where(path, polygon, rect, circle, ellipse, polyline),
.venue-seat-map--palais-garnier .la-scala-hall-map__svg [data-zone-code].is-selected :where(path, polygon, rect, circle, ellipse, polyline),
.venue-seat-map--palais-garnier .la-scala-hall-map__svg [data-zone-code][data-selected="true"] :where(path, polygon, rect, circle, ellipse, polyline) {
  stroke: rgba(248, 252, 255, 0.98) !important;
  stroke-width: 3.1px !important;
  stroke-opacity: 1 !important;
  vector-effect: non-scaling-stroke;
  paint-order: stroke fill markers;
  filter:
    drop-shadow(0 0 6px rgba(255, 255, 255, 0.72))
    drop-shadow(0 0 14px rgba(34, 211, 238, 0.86));
}

.venue-seat-map--palais-garnier .la-scala-hall-map__svg .st7 {
  stroke: rgba(234, 240, 255, 0.72) !important;
}

.venue-seat-map--palais-garnier .la-scala-hall-map__svg .st8 {
  stroke: rgba(234, 240, 255, 0.48) !important;
}

.venue-seat-map--palais-garnier .la-scala-hall-map__svg #Légende,
.venue-seat-map--palais-garnier .la-scala-hall-map__svg #Legende,
.venue-seat-map--palais-garnier .la-scala-hall-map__svg [id*="Légende"],
.venue-seat-map--palais-garnier .la-scala-hall-map__svg [id*="Legende"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

.venue-seat-map--palais-garnier .la-scala-hall-map__svg #Textes g:not(#Légende) path {
  fill: rgba(248, 250, 252, 0.92) !important;
  stroke: none !important;
}

.venue-seat-map--palais-garnier .la-scala-hall-map__svg #Textes text,
.venue-seat-map--palais-garnier .la-scala-hall-map__svg #Textes tspan {
  fill: rgba(248, 250, 252, 0.92) !important;
  stroke: none !important;
}

.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .venue-zone {
  opacity: 1;
  transition:
    opacity 0.18s ease,
    filter 0.18s ease,
    transform 0.18s ease;
}

.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .venue-zone .venue-zone__shape {
  fill: var(--venue-zone-color, #6d63ff) !important;
  fill-opacity: 0.96 !important;
  stroke: rgba(7, 12, 28, 0.72);
  stroke-width: 2.8px;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
  paint-order: stroke fill markers;
}

.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg:has(.venue-zone.is-selected) .venue-zone:not(.is-selected) {
  opacity: 0.78;
  filter: saturate(0.96) brightness(1);
}

.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .venue-zone:hover,
.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .venue-zone.is-hovered {
  opacity: 1;
  filter:
    brightness(1.1)
    saturate(1.14)
    drop-shadow(0 0 7px rgba(255, 255, 255, 0.32))
    drop-shadow(0 0 15px var(--venue-zone-color, rgba(109, 99, 255, 0.7)));
}

.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg:has(.venue-zone.is-selected) .venue-zone.is-hovered:not(.is-selected) {
  opacity: 0.92;
}

.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .venue-zone.is-selected,
.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .venue-zone.is-selected .venue-zone__shape {
  opacity: 1 !important;
  filter:
    brightness(1.22)
    saturate(1.22)
    drop-shadow(0 0 8px rgba(255, 255, 255, 0.78))
    drop-shadow(0 0 18px var(--venue-zone-color, rgba(109, 99, 255, 0.92)))
    drop-shadow(0 0 28px rgba(34, 211, 238, 0.48));
}

.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .venue-zone.is-selected .venue-zone__shape,
.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .venue-zone.is-selected :where(path, rect, circle, ellipse, polygon, polyline) {
  stroke: rgba(255, 255, 255, 0.98) !important;
  stroke-width: 4px !important;
  stroke-opacity: 1 !important;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
  paint-order: stroke fill markers;
}

.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .camp-nou-map__pitch {
  fill: #176b45 !important;
  stroke: rgba(226, 232, 240, 0.56) !important;
  opacity: 0.96;
}

.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .camp-nou-map__pitch-line {
  stroke: rgba(226, 232, 240, 0.5) !important;
}

.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .camp-nou-map__bowl {
  fill: rgba(30, 41, 59, 0.24) !important;
  stroke: rgba(248, 250, 252, 0.28) !important;
}

.venue-seat-map--spotify-camp-nou .la-scala-hall-map__svg .camp-nou-map__tier-divider {
  stroke: rgba(248, 250, 252, 0.28) !important;
  stroke-width: 1.2px !important;
}

.la-scala-hall-map__fallback {
  width: 100%;
  height: 100%;
  margin: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  color: rgba(226, 232, 240, 0.86);
  text-align: center;
  font-size: 14px;
  line-height: 1.45;
}

.la-scala-hall-map__fallback[hidden] {
  display: none;
}

.la-scala-hall-map__note {
  width: min(100%, 980px);
  max-width: 62ch;
  margin: 0;
  justify-self: center;
  color: rgba(203, 213, 225, 0.86);
  text-align: center;
  font-size: 12.5px;
  line-height: 1.45;
}

.la-scala-hall-map__comment {
  width: min(100%, 980px);
  margin: 0;
  padding: clamp(14px, 1.8vw, 18px);
  border-radius: 18px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  background:
    radial-gradient(circle at 12% 0%, rgba(99, 102, 241, 0.12) 0, transparent 42%),
    rgba(2, 6, 23, 0.54);
  box-shadow:
    0 18px 42px rgba(2, 6, 23, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
  display: grid;
  gap: 10px;
}

.la-scala-hall-map__comment-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.la-scala-hall-map__comment-title {
  margin: 0;
  font-size: 16px;
  line-height: 1.25;
  color: rgba(244, 245, 251, 0.96);
}

.la-scala-hall-map__comment-counter {
  font-size: 12px;
  line-height: 1;
  color: rgba(148, 163, 184, 0.9);
  font-variant-numeric: tabular-nums;
}

.la-scala-hall-map__comment-helper {
  margin: 0;
  color: rgba(203, 213, 225, 0.86);
  font-size: 12.5px;
  line-height: 1.45;
}

.la-scala-hall-map__comment-input {
  width: 100%;
  min-height: 120px;
  max-height: 260px;
  resize: vertical;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.26);
  background: rgba(8, 13, 32, 0.68);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
  color: rgba(241, 245, 249, 0.94);
  font-size: 13px;
  line-height: 1.48;
  padding: 12px 13px;
}

.la-scala-hall-map__comment-input::placeholder {
  color: rgba(148, 163, 184, 0.82);
}

.la-scala-hall-map__comment-input:focus-visible {
  outline: 2px solid rgba(109, 99, 255, 0.48);
  outline-offset: 1px;
  border-color: rgba(109, 99, 255, 0.52);
}

@media (max-width: 768px) {
  .la-scala-hall-map__comment {
    padding: 12px;
    gap: 8px;
  }

  .la-scala-hall-map__comment-title {
    font-size: 15px;
  }

  .la-scala-hall-map__comment-input {
    min-height: 112px;
    font-size: 14px;
  }
}

.checkout-ticket-recipients-card {
  margin: 0;
  display: grid;
  gap: 12px;
}

.checkout-ticket-recipients-head {
  display: grid;
  gap: 6px;
}

.checkout-ticket-recipients-title {
  margin: 0;
  font-size: 18px;
  line-height: 1.25;
  color: var(--text);
}

.checkout-ticket-recipients-text {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  color: var(--text-soft);
}

.checkout-ticket-recipients-state {
  margin: 0;
}

.checkout-ticket-recipients-state.is-error {
  color: #fda4af;
}

.checkout-ticket-recipients-state.is-success {
  color: #86efac;
}

.checkout-ticket-recipients-list {
  display: grid;
  gap: 10px;
}

.checkout-ticket-recipient-item {
  display: grid;
  gap: 10px;
  padding: 12px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.48);
}

.checkout-ticket-recipient-item-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.checkout-ticket-recipient-label {
  font-size: 13px;
  font-weight: 700;
  color: var(--text);
}

.checkout-ticket-recipient-item select,
.checkout-ticket-recipient-draft input:not([type="checkbox"]),
.checkout-ticket-recipient-draft select {
  width: 100%;
  min-height: 42px;
}

.checkout-ticket-recipient-item select.is-locked {
  opacity: 1;
  cursor: not-allowed;
  color: rgba(226, 232, 240, 0.92);
  border-color: rgba(148, 163, 184, 0.34);
  background: rgba(30, 41, 59, 0.74);
}

.checkout-ticket-recipient-locked-note {
  margin: -4px 0 0;
  font-size: 12px;
  line-height: 1.35;
  color: rgba(148, 163, 184, 0.96);
}

.checkout-ticket-recipient-draft {
  display: grid;
  gap: 10px;
  margin-top: 2px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.2);
}

.checkout-ticket-recipient-draft-title {
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--text);
}

.checkout-ticket-recipient-draft-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.checkout-ticket-recipient-draft-grid label {
  margin: 0;
}

.checkout-ticket-recipient-draft-grid label > span {
  font-size: 12px;
  color: var(--text-soft);
}

.checkout-ticket-recipient-draft-grid .checkout-ticket-recipient-draft-full {
  grid-column: 1 / -1;
}

.checkout-ticket-recipient-draft-save {
  margin-top: 4px;
  margin-bottom: 0;
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
  gap: 14px;
  min-height: 30px;
  padding: 2px 0;
  border: 0;
  background: transparent;
}

.checkout-ticket-recipient-draft-save input[type="checkbox"] {
  -webkit-appearance: none;
  appearance: none;
  width: 19px;
  height: 19px;
  min-width: 19px;
  min-height: 19px;
  margin: 0;
  margin-left: auto;
  flex: 0 0 19px;
  border-radius: 5px;
  border: 1px solid rgba(148, 163, 184, 0.72);
  background: rgba(15, 23, 42, 0.92);
  display: inline-grid;
  place-items: center;
  cursor: pointer;
  transition: border-color 0.16s ease, background-color 0.16s ease, box-shadow 0.16s ease;
}

.checkout-ticket-recipient-draft-save input[type="checkbox"]::before {
  content: "";
  width: 5px;
  height: 9px;
  border-right: 2px solid rgba(226, 232, 240, 0.98);
  border-bottom: 2px solid rgba(226, 232, 240, 0.98);
  transform: translateY(-0.5px) rotate(45deg) scale(0);
  transform-origin: center;
  opacity: 0;
  transition: transform 0.12s ease, opacity 0.12s ease;
}

.checkout-ticket-recipient-draft-save input[type="checkbox"]:checked {
  border-color: rgba(99, 102, 241, 0.86);
  background: linear-gradient(135deg, rgba(79, 70, 229, 0.88), rgba(56, 189, 248, 0.74));
}

.checkout-ticket-recipient-draft-save input[type="checkbox"]:checked::before {
  transform: translateY(-0.5px) rotate(45deg) scale(1);
  opacity: 1;
}

.checkout-ticket-recipient-draft-save input[type="checkbox"]:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.28);
}

.checkout-ticket-recipient-draft-save input[type="checkbox"]:disabled {
  opacity: 0.62;
  cursor: not-allowed;
}

.checkout-ticket-recipient-draft-save > span {
  font-size: 12.5px;
  line-height: 1.38;
  color: rgba(191, 203, 224, 0.96);
  margin: 0;
  padding-right: 8px;
  flex: 1 1 auto;
}

.checkout-ticket-recipient-draft-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
}

.checkout-ticket-recipient-draft-actions .btn {
  min-height: 36px;
}

.checkout-ticket-recipient-draft-note {
  margin: 0;
}

.checkout-order-row--ticket-recipients strong {
  display: grid;
  gap: 2px;
  text-align: right;
  white-space: normal;
}

.checkout-ticket-summary-line {
  display: block;
  max-width: 270px;
  overflow-wrap: anywhere;
}

.checkout-seats-form-group {
  display: grid;
  gap: 10px;
}

.checkout-flow--seat-map .checkout-tier-card-control {
  position: relative;
  display: grid;
  gap: 12px;
}

.checkout-flow--seat-map .checkout-tier-card-control__title {
  margin: 0;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.03em;
  color: rgba(244, 245, 251, 0.96);
}

.checkout-flow--seat-map .checkout-tier-native-select {
  position: absolute;
  width: 1px !important;
  height: 1px !important;
  min-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: 0;
  pointer-events: none;
  clip-path: inset(50%);
}

.checkout-flow--seat-map .checkout-tier-option-list {
  display: grid;
  gap: 10px;
}

.checkout-flow--seat-map .checkout-tier-option-card {
  --zone-color: #6d63ff;
  --zone-color-rgb: 109,99,255;
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 54px;
  margin: 0;
  padding: 0 14px;
  border: 1px solid rgba(126, 142, 255, 0.18);
  border-radius: 14px;
  background:
    linear-gradient(
      90deg,
      rgba(var(--zone-color-rgb), 0.42) 0%,
      rgba(var(--zone-color-rgb), 0.24) 28%,
      rgba(109, 99, 255, 0.16) 55%,
      rgba(8, 13, 32, 0.72) 100%
    );
  color: var(--text);
  text-align: left;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
  transition:
    border-color 0.22s ease,
    background 0.28s ease,
    box-shadow 0.28s ease;
}

.checkout-flow--seat-map .checkout-tier-option-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.07), transparent 34%);
  opacity: 0.42;
  pointer-events: none;
}

.checkout-flow--seat-map .checkout-tier-option-card::after {
  content: "";
  position: absolute;
  inset: -1px;
  background:
    radial-gradient(circle at 18% 50%, rgba(var(--zone-color-rgb), 0.54), transparent 36%),
    linear-gradient(
      90deg,
      rgba(var(--zone-color-rgb), 0.58) 0%,
      rgba(var(--zone-color-rgb), 0.34) 36%,
      rgba(109, 99, 255, 0.28) 64%,
      transparent 100%
    );
  opacity: 0;
  transform: translateX(-16%) scaleX(0.82);
  transform-origin: left center;
  transition: opacity 0.34s ease, transform 0.34s ease;
  pointer-events: none;
}

.checkout-flow--seat-map .checkout-tier-option-card > * {
  position: relative;
  z-index: 1;
}

.checkout-flow--seat-map .checkout-tier-option-card:hover,
.checkout-flow--seat-map .checkout-tier-option-card:focus-visible,
.checkout-flow--seat-map .checkout-tier-option-card.is-zone-hovered {
  outline: none;
  border-color: rgba(var(--zone-color-rgb), 0.48);
  background:
    linear-gradient(
      90deg,
      rgba(var(--zone-color-rgb), 0.52) 0%,
      rgba(var(--zone-color-rgb), 0.28) 30%,
      rgba(109, 99, 255, 0.2) 58%,
      rgba(8, 13, 32, 0.8) 100%
    );
  box-shadow:
    0 0 0 1px rgba(var(--zone-color-rgb), 0.34),
    0 14px 30px rgba(0, 0, 0, 0.18),
    0 0 22px rgba(var(--zone-color-rgb), 0.14);
}

.checkout-flow--seat-map .checkout-tier-option-card:hover::after,
.checkout-flow--seat-map .checkout-tier-option-card:focus-visible::after,
.checkout-flow--seat-map .checkout-tier-option-card.is-zone-hovered::after {
  opacity: 0.32;
  transform: translateX(-6%) scaleX(0.94);
}

.checkout-flow--seat-map .checkout-tier-option-card.is-active,
.checkout-flow--seat-map .checkout-tier-option-card.active,
.checkout-flow--seat-map .checkout-tier-option-card.is-selected,
.checkout-flow--seat-map .category-card.is-selected,
.checkout-flow--seat-map .price-tier-card.is-selected {
  border-color: rgba(var(--zone-color-rgb), 0.7);
  background:
    linear-gradient(
      90deg,
      rgba(var(--zone-color-rgb), 0.68) 0%,
      rgba(var(--zone-color-rgb), 0.38) 30%,
      rgba(109, 99, 255, 0.26) 58%,
      rgba(8, 13, 32, 0.84) 100%
    );
  box-shadow:
    0 0 0 1px rgba(var(--zone-color-rgb), 0.5),
    0 16px 34px rgba(0, 0, 0, 0.2),
    0 0 26px rgba(var(--zone-color-rgb), 0.24);
}

.checkout-flow--seat-map .checkout-tier-option-card.is-active::after,
.checkout-flow--seat-map .checkout-tier-option-card.active::after,
.checkout-flow--seat-map .checkout-tier-option-card.is-selected::after,
.checkout-flow--seat-map .category-card.is-selected::after,
.checkout-flow--seat-map .price-tier-card.is-selected::after {
  opacity: 0.86;
  transform: translateX(0) scaleX(1);
}

.checkout-flow--seat-map .checkout-tier-option-card__label-wrap {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.checkout-flow--seat-map .checkout-tier-option-card__swatch {
  flex: 0 0 auto;
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: var(--zone-color, #6d63ff);
  border: 1px solid rgba(15, 23, 42, 0.24);
  box-shadow: 0 0 18px var(--zone-color, #6d63ff);
}

.checkout-flow--seat-map .checkout-tier-option-card__swatch.is-light {
  border-color: #94a3b8;
  box-shadow:
    0 0 0 1px rgba(15, 23, 42, 0.28),
    inset 0 0 0 1px rgba(148, 163, 184, 0.32);
}

.checkout-flow--seat-map .checkout-tier-option-card__label {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 750;
  color: rgba(241, 245, 249, 0.96);
}

.checkout-flow--seat-map .checkout-tier-option-card__price {
  font-size: 14px;
  line-height: 1.2;
  font-weight: 800;
  color: rgba(244, 245, 251, 0.92);
  font-variant-numeric: tabular-nums;
}

.checkout-flow--seat-map .checkout-tier-card-control.is-request-mode {
  gap: 10px;
}

.checkout-flow--seat-map .checkout-tier-request-helper {
  margin: 0;
  color: rgba(203, 213, 225, 0.82);
  font-size: 12.5px;
  line-height: 1.45;
}

.checkout-flow--seat-map .checkout-tier-request-state {
  margin: 0;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px dashed rgba(148, 163, 184, 0.34);
  background: rgba(8, 15, 32, 0.5);
  color: rgba(226, 232, 240, 0.88);
  font-size: 13px;
  line-height: 1.35;
}

.checkout-flow--seat-map .checkout-tier-request-state.is-selected {
  border-style: solid;
  border-color: rgba(109, 99, 255, 0.46);
  color: rgba(244, 245, 251, 0.95);
  box-shadow: inset 0 0 0 1px rgba(109, 99, 255, 0.18);
}

.checkout-flow--seat-map .checkout-tier-option-card.is-request-mode {
  grid-template-columns: auto minmax(0, 1fr);
  padding-right: 14px;
}

.checkout-flow--seat-map .checkout-tier-option-card.is-request-mode .checkout-tier-option-card__price {
  display: none;
}

.checkout-price-request-helper {
  margin: 8px 0 0;
  color: rgba(203, 213, 225, 0.84);
  font-size: 12.5px;
  line-height: 1.45;
}

.checkout-price-request-status {
  margin: 10px 0 0;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px dashed rgba(148, 163, 184, 0.32);
  background: rgba(8, 15, 32, 0.48);
  color: rgba(226, 232, 240, 0.9);
  font-size: 13px;
  line-height: 1.4;
}

.checkout-price-request-status.is-error {
  border-style: solid;
  border-color: rgba(248, 113, 113, 0.5);
  color: rgba(254, 226, 226, 0.94);
}

.checkout-price-request-status.is-success {
  border-style: solid;
  border-color: rgba(52, 211, 153, 0.52);
  color: rgba(209, 250, 229, 0.94);
}

.checkout-flow--seat-map .checkout-recipient-details-controls {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 12px;
  background: rgba(15, 23, 42, 0.36);
}

.checkout-flow--seat-map .checkout-recipient-details-controls label {
  display: grid;
  gap: 8px;
  margin: 0;
}

.checkout-flow--seat-map .checkout-recipient-details-controls label > span {
  margin: 0;
  font-size: 13px;
  line-height: 1.35;
  color: var(--text-soft);
}

.checkout-flow--seat-map .checkout-recipient-details-controls label > select {
  width: 100%;
  margin-top: 0;
  min-height: 44px;
  font-size: 14px;
  color: var(--text);
  border: 1px solid rgba(148, 163, 184, 0.5);
  border-radius: 12px;
  padding: 10px 42px 10px 12px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: rgba(8, 15, 32, 0.94);
  background-image:
    linear-gradient(135deg, rgba(99, 102, 241, 0.2), rgba(79, 70, 229, 0.12)),
    url("data:image/svg+xml;charset=UTF-8,%3Csvg width='16' height='10' viewBox='0 0 16 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 2L8 8L14 2' stroke='%23cbd5ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat, no-repeat;
  background-size: 100% 100%, 14px 8px;
  background-position: 0 0, right 12px center;
  box-shadow: inset 0 1px 0 rgba(148, 163, 184, 0.12);
}

.checkout-flow--seat-map .checkout-recipient-details-controls label > select:hover {
  border-color: rgba(129, 140, 248, 0.68);
  background-color: rgba(10, 18, 38, 0.96);
}

.checkout-flow--seat-map .checkout-recipient-details-controls label > select:focus-visible {
  outline: none;
  border-color: rgba(129, 140, 248, 0.88);
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.2);
}

.checkout-flow--seat-map .checkout-recipient-details-controls__delivery > select:disabled {
  padding-right: 12px;
  cursor: default;
  background-image:
    linear-gradient(135deg, rgba(99, 102, 241, 0.2), rgba(79, 70, 229, 0.12));
  background-size: 100% 100%;
  background-position: 0 0;
}

.checkout-flow--seat-map .checkout-recipient-details-controls label > select option {
  color: #e2e8f0;
  background: #0f172a;
}

.checkout-flow--seat-map .checkout-recipient-details-controls .checkout-qty-control {
  margin-top: 0;
}

.tickets-route-shell.modal-step--seats [data-seats-left-col] {
  font-size: 15px;
}

.tickets-route-shell.modal-step--seats .checkout-seats-form-group > label > span {
  margin: 0;
  font-size: 15px;
  line-height: 1.4;
  color: var(--text-soft);
}

.tickets-route-shell.modal-step--seats .checkout-seats-form-group > label > select {
  width: 100%;
  margin-top: 4px;
  min-height: 46px;
  font-size: 15px;
  color: var(--text);
  border: 1px solid rgba(148, 163, 184, 0.56);
  border-radius: 12px;
  padding: 10px 42px 10px 12px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: rgba(8, 15, 32, 0.94);
  background-image:
    linear-gradient(135deg, rgba(99, 102, 241, 0.22), rgba(79, 70, 229, 0.14)),
    url("data:image/svg+xml;charset=UTF-8,%3Csvg width='16' height='10' viewBox='0 0 16 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 2L8 8L14 2' stroke='%23cbd5ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat, no-repeat;
  background-size: 100% 100%, 14px 8px;
  background-position: 0 0, right 12px center;
  box-shadow: inset 0 1px 0 rgba(148, 163, 184, 0.12);
}

.tickets-route-shell.modal-step--seats .checkout-seats-form-group > label > select:hover {
  border-color: rgba(129, 140, 248, 0.72);
  background-color: rgba(10, 18, 38, 0.96);
}

.tickets-route-shell.modal-step--seats .checkout-seats-form-group > label > select:focus-visible {
  outline: none;
  border-color: rgba(129, 140, 248, 0.9);
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.22);
}

.tickets-route-shell.modal-step--seats .checkout-seats-form-group > label > select:disabled {
  opacity: 0.62;
  cursor: not-allowed;
}

.tickets-route-shell.modal-step--seats .checkout-seats-form-group > label > select option {
  color: #e2e8f0;
  background: #0f172a;
}

.checkout-qty-control {
  --qty-btn-size: 36px;
  display: inline-grid;
  grid-template-columns: var(--qty-btn-size) minmax(54px, 64px) var(--qty-btn-size);
  align-items: center;
  width: fit-content;
  max-width: 100%;
  border: 1px solid rgba(148, 163, 184, 0.34);
  border-radius: 12px;
  background: rgba(8, 15, 32, 0.9);
  box-shadow: inset 0 1px 0 rgba(148, 163, 184, 0.14);
  overflow: hidden;
}

.checkout-qty-btn {
  min-width: var(--qty-btn-size);
  width: var(--qty-btn-size);
  min-height: var(--qty-btn-size);
  height: var(--qty-btn-size);
  margin: 0;
  border: 0;
  padding: 0;
  background: rgba(30, 41, 59, 0.64);
  color: var(--text);
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.18s ease, color 0.18s ease;
}

.checkout-qty-btn[data-qty-decrease] {
  border-right: 1px solid rgba(148, 163, 184, 0.24);
}

.checkout-qty-btn[data-qty-increase] {
  border-left: 1px solid rgba(148, 163, 184, 0.24);
}

.checkout-qty-btn:hover:not(:disabled),
.checkout-qty-btn:focus-visible:not(:disabled) {
  background: rgba(79, 70, 229, 0.36);
  color: #f8fafc;
}

.checkout-qty-btn:disabled {
  opacity: 0.48;
  cursor: not-allowed;
}

.checkout-qty-input {
  margin: 0;
  border: 0 !important;
  border-radius: 0 !important;
  min-height: var(--qty-btn-size) !important;
  height: var(--qty-btn-size);
  width: 100%;
  padding: 0 8px !important;
  text-align: center;
  font-weight: 700;
  font-size: 15px;
  font-variant-numeric: tabular-nums;
  background: transparent !important;
  color: var(--text);
  -webkit-text-fill-color: var(--text);
  caret-color: #e2e8f0;
  box-shadow: none !important;
  appearance: textfield;
  -moz-appearance: textfield;
}

.checkout-qty-input:focus-visible {
  outline: none;
}

.checkout-qty-input::-webkit-inner-spin-button,
.checkout-qty-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.modal-step--seats .checkout-seats-left-col input[type="number"]:not(.checkout-qty-input) {
  color-scheme: dark;
  color: var(--text);
  -webkit-text-fill-color: var(--text);
  caret-color: #e2e8f0;
  padding-right: 42px;
}

.modal-step--seats .checkout-seats-left-col input[type="number"]:not(.checkout-qty-input)::-webkit-inner-spin-button,
.modal-step--seats .checkout-seats-left-col input[type="number"]:not(.checkout-qty-input)::-webkit-outer-spin-button {
  opacity: 1;
  filter: invert(1) brightness(2.6) contrast(1.24);
}

.modal-step--seats .checkout-seats-left-col input[type="number"]:not(.checkout-qty-input):hover::-webkit-inner-spin-button,
.modal-step--seats .checkout-seats-left-col input[type="number"]:not(.checkout-qty-input):hover::-webkit-outer-spin-button,
.modal-step--seats .checkout-seats-left-col input[type="number"]:not(.checkout-qty-input):focus-visible::-webkit-inner-spin-button,
.modal-step--seats .checkout-seats-left-col input[type="number"]:not(.checkout-qty-input):focus-visible::-webkit-outer-spin-button {
  filter: invert(1) brightness(3) contrast(1.34);
}

.modal-step--seats .checkout-seats-left-col input[type="number"]:not(.checkout-qty-input):disabled {
  color: rgba(226, 232, 240, 0.62);
  -webkit-text-fill-color: rgba(226, 232, 240, 0.62);
}

@media (max-width: 640px) {
  #tickets-page-view .event-flow-topbar {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    min-width: 0;
  }

  #tickets-page-view .event-flow-topbar::-webkit-scrollbar {
    display: none;
  }

  #tickets-page-view .event-flow-topbar .cwt-back-merge {
    flex: 0 0 auto;
    max-width: none;
    min-height: 36px;
    align-self: center;
  }

  #tickets-page-view .event-flow-topbar .cwt-back-part {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    min-height: 36px;
    line-height: 1;
    box-sizing: border-box;
    padding-top: 0;
    padding-bottom: 0;
  }

  #tickets-page-view .event-flow-topbar .cwt-back-icon {
    width: 36px;
    flex: 0 0 36px;
    font-size: 18px;
    font-weight: 820;
  }

  #tickets-page-view .event-flow-topbar .cwt-back-text {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    min-height: 36px;
    max-width: none;
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
    line-height: 1;
    padding: 0 14px;
    font-size: 13px;
    font-weight: 850;
  }

  #tickets-page-view .event-flow-topbar .stepper {
    display: flex !important;
    align-items: center;
    flex: 0 0 auto;
    width: max-content;
    min-width: max-content;
    gap: 6px;
    overflow: visible;
    order: 2;
  }

  #tickets-page-view .event-flow-topbar .stepper .step {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-width: max-content;
    height: 36px;
    min-height: 36px;
    padding: 0 10px;
    font-size: 12px;
    line-height: 1;
    font-weight: 820;
    box-sizing: border-box;
    vertical-align: middle;
    white-space: nowrap;
  }

  #tickets-page-view .tickets-route-shell.modal-step--seats > .modal-header .modal-title {
    font-size: 21px;
    line-height: 1.15;
    font-weight: 900;
  }

  #tickets-page-view .tickets-route-shell.modal-step--seats > .modal-header .modal-subtitle {
    font-size: 13px;
    line-height: 1.36;
  }

  #tickets-page-view .tickets-route-shell.modal-step--seats .checkout-service-disclosure {
    font-size: 13px;
    line-height: 1.5;
  }

  .modal-step--seats.checkout-flow--seat-map .la-scala-hall-map__note {
    font-size: 13.5px;
    line-height: 1.5;
  }

  .modal-step--seats.checkout-flow--seat-map .la-scala-hall-map__comment-title {
    font-size: 16px;
    font-weight: 900;
    line-height: 1.2;
  }

  .modal-step--seats.checkout-flow--seat-map .la-scala-hall-map__comment-counter {
    font-size: 12.5px;
  }

  .modal-step--seats.checkout-flow--seat-map .la-scala-hall-map__comment-helper {
    font-size: 13px;
    line-height: 1.52;
  }

  .modal-step--seats.checkout-flow--seat-map .la-scala-hall-map__comment-input,
  .modal-step--seats.checkout-flow--seat-map .la-scala-hall-map__comment-input::placeholder {
    font-size: 13px;
    line-height: 1.45;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-tier-card-control__title,
  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipients-title,
  .modal-step--seats.checkout-flow--seat-map .checkout-booking-protection-title,
  .modal-step--seats.checkout-flow--seat-map .checkout-delivery-card-title,
  .modal-step--seats.checkout-flow--seat-map .checkout-transfer-card-title {
    font-size: 16px;
    line-height: 1.2;
    font-weight: 900;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-booking-protection-text,
  .modal-step--seats.checkout-flow--seat-map .checkout-delivery-card-text,
  .modal-step--seats.checkout-flow--seat-map .checkout-transfer-summary-text,
  .modal-step--seats.checkout-flow--seat-map .checkout-tier-request-helper,
  .modal-step--seats.checkout-flow--seat-map .checkout-price-request-helper,
  .modal-step--seats.checkout-flow--seat-map .checkout-price-request-status,
  .modal-step--seats.checkout-flow--seat-map .checkout-tier-request-state {
    font-size: 13px;
    line-height: 1.5;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-booking-protection-price-label {
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-booking-protection-price-amount {
    font-size: 15px;
    line-height: 1.15;
    font-weight: 900;
  }

  .tickets-route-shell.modal-step--seats.checkout-flow--seat-map {
    min-height: 100vh;
    min-height: 100svh;
    min-height: 100dvh;
    padding-bottom: max(10px, env(safe-area-inset-bottom, 0px));
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-actions--seat-map {
    display: none;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky {
    position: sticky;
    bottom: 0;
    align-self: center;
    margin-top: auto;
    margin-inline: auto;
    width: min(390px, calc(100vw - 18px));
    z-index: 35;
    display: grid;
    gap: 9px;
    padding: 10px 0 calc(10px + env(safe-area-inset-bottom, 0px));
    background:
      linear-gradient(
        180deg,
        rgba(5, 8, 22, 0) 0%,
        rgba(5, 8, 22, 0.94) 24%,
        rgba(5, 8, 22, 0.99) 100%
      );
    border: 0;
    box-shadow: none;
    pointer-events: auto;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-zone {
    min-height: 60px;
    border-radius: 14px;
    padding: 0 14px;
    gap: 10px;
    pointer-events: auto;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-zone {
    grid-template-columns: minmax(0, 1fr) max-content;
    column-gap: 9px;
    min-width: 0;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-zone .checkout-tier-option-card__label-wrap {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    min-width: 0;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-zone .checkout-tier-option-card__label {
    font-size: 14px;
    line-height: 1.2;
    font-weight: 850;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-zone .checkout-tier-option-card__price {
    font-size: 19px;
    line-height: 1;
    font-weight: 900;
    min-width: max-content;
    white-space: nowrap;
    justify-self: end;
    text-align: right;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-zone.is-empty {
    border-color: rgba(148, 163, 184, 0.34);
    background:
      linear-gradient(
        90deg,
        rgba(71, 85, 105, 0.52) 0%,
        rgba(51, 65, 85, 0.34) 42%,
        rgba(8, 13, 32, 0.72) 100%
      );
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-zone.is-empty .checkout-tier-option-card__label {
    color: rgba(226, 232, 240, 0.86);
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-zone.is-empty .checkout-tier-option-card__price {
    color: rgba(191, 203, 224, 0.76);
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta {
    position: relative;
    width: 100%;
    min-height: 62px;
    height: 62px;
    border: 0;
    padding: 0;
    margin: 0;
    background: transparent;
    color: #fff;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 58px;
    align-items: stretch;
    gap: 9px;
    border-radius: 999px;
    isolation: isolate;
    cursor: pointer;
    pointer-events: auto;
    transition:
      gap 0.52s cubic-bezier(0.16, 1, 0.3, 1),
      transform 0.28s ease,
      filter 0.28s ease;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
    background: linear-gradient(135deg, #6d5cff 0%, #573df8 52%, #7a5cff 100%);
    opacity: 0;
    transform: scaleX(0.96);
    transition:
      opacity 0.34s ease,
      transform 0.52s cubic-bezier(0.16, 1, 0.3, 1);
    pointer-events: none;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta-part {
    position: relative;
    z-index: 1;
    min-height: 62px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(129, 140, 248, 0.45);
    background: linear-gradient(135deg, rgba(129, 140, 248, 0.98), rgba(79, 70, 229, 0.98));
    box-shadow:
      0 18px 40px rgba(79, 70, 229, 0.32),
      inset 0 1px 0 rgba(255, 255, 255, 0.12);
    transition:
      border-radius 0.52s cubic-bezier(0.16, 1, 0.3, 1),
      transform 0.52s cubic-bezier(0.16, 1, 0.3, 1),
      background 0.52s cubic-bezier(0.16, 1, 0.3, 1),
      border-color 0.52s cubic-bezier(0.16, 1, 0.3, 1),
      box-shadow 0.24s ease,
      margin 0.52s cubic-bezier(0.16, 1, 0.3, 1);
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta-text {
    min-width: 0;
    padding: 0 20px;
    border-radius: 999px;
    font-size: 14.5px;
    font-weight: 820;
    line-height: 1.12;
    text-align: center;
    white-space: normal;
    text-wrap: pretty;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta-icon {
    width: 58px;
    min-width: 58px;
    border-radius: 50%;
    font-size: 20px;
    line-height: 1;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:active,
  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:focus-visible {
    gap: 0;
    transform: translateY(0) scale(0.992);
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:active::before,
  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:focus-visible::before {
    opacity: 1;
    transform: scaleX(1);
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:active .checkout-seats-mobile-sticky-cta-part,
  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:focus-visible .checkout-seats-mobile-sticky-cta-part {
    background: linear-gradient(135deg, #8b8cff 0%, #5b4cff 100%);
    border-color: rgba(165, 180, 252, 0.6);
    box-shadow:
      0 18px 42px rgba(79, 70, 229, 0.38),
      inset 0 1px 0 rgba(255, 255, 255, 0.15);
    color: #fff;
    opacity: 1;
    filter: brightness(1.04);
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:active .checkout-seats-mobile-sticky-cta-text,
  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:focus-visible .checkout-seats-mobile-sticky-cta-text {
    margin-right: -8px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:active .checkout-seats-mobile-sticky-cta-icon,
  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:focus-visible .checkout-seats-mobile-sticky-cta-icon {
    margin-left: -8px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:disabled,
  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta.is-disabled {
    cursor: not-allowed;
    gap: 9px;
    opacity: 0.76;
    transform: none;
    filter: saturate(0.86);
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:disabled::before,
  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta.is-disabled::before {
    opacity: 0;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta:disabled .checkout-seats-mobile-sticky-cta-part,
  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta.is-disabled .checkout-seats-mobile-sticky-cta-part {
    border-color: rgba(148, 163, 184, 0.4);
    background: linear-gradient(135deg, rgba(71, 85, 105, 0.88), rgba(51, 65, 85, 0.88));
    box-shadow: none;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-tier-option-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-tier-option-card {
    grid-template-columns: minmax(0, 1fr) max-content;
    column-gap: 8px;
    min-height: 52px;
    padding: 0 10px;
    border-radius: 12px;
    gap: 8px;
    min-width: 0;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-tier-option-card__label-wrap {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 7px;
    min-width: 0;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-tier-option-card__swatch {
    width: 10px;
    height: 10px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-tier-option-card__label,
  .modal-step--seats.checkout-flow--seat-map .checkout-tier-option-card__price {
    font-size: 14px;
    line-height: 1.18;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-tier-option-card__label {
    font-weight: 860;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-tier-option-card__price {
    font-weight: 900;
    min-width: max-content;
    white-space: nowrap;
    justify-self: end;
    text-align: right;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipients-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: 10px;
    row-gap: 8px;
    align-items: end;
    justify-content: stretch;
    width: 100%;
    padding: 12px;
    border-radius: 16px;
    overflow: hidden;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipients-head {
    grid-column: 1 / -1;
    gap: 4px;
    margin-bottom: 2px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipients-title {
    margin: 0 0 10px;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 900;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipients-text,
  .modal-step--seats.checkout-flow--seat-map .ticket-recipients-help {
    display: none;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls {
    display: contents;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls .checkout-recipient-details-controls__qty,
  .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls .checkout-recipient-details-controls__delivery {
    display: grid;
    gap: 3px;
    min-width: 0;
    margin: 0;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls .checkout-recipient-details-controls__qty {
    grid-column: 1;
    grid-row: 2;
    align-self: end;
    width: 100%;
    max-width: 100%;
    justify-self: stretch;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls .checkout-recipient-details-controls__delivery {
    grid-column: 1 / -1;
    grid-row: 3;
    width: 100%;
    max-width: 100%;
    justify-self: stretch;
    margin-top: 2px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls .checkout-recipient-details-controls__qty > span,
  .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls .checkout-recipient-details-controls__delivery > span {
    margin: 0;
    font-size: 10px;
    line-height: 1;
    letter-spacing: 0.05em;
    font-weight: 850;
    text-transform: uppercase;
    color: rgba(191, 203, 224, 0.9);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls .checkout-recipient-details-controls__qty .checkout-qty-control {
    --qty-btn-size: 28px;
    margin: 0;
    min-height: 34px;
    width: 92px;
    min-width: 0;
    max-width: 100%;
    grid-template-columns: 28px 36px 28px;
    justify-self: start;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipients-list {
    grid-column: 2;
    grid-row: 2;
    min-width: 0;
    width: 100%;
    max-width: none;
    display: grid;
    gap: 5px;
    align-self: end;
    justify-self: stretch;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipient-item {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    gap: 2px;
    min-width: 0;
    min-height: 0;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipient-item::before {
    content: attr(data-mobile-recipient-label);
    margin: 0;
    font-size: 10px;
    line-height: 1;
    letter-spacing: 0.05em;
    font-weight: 850;
    text-transform: uppercase;
    color: rgba(191, 203, 224, 0.9);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    margin-bottom: 3px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipient-item-head {
    display: none;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipient-item label {
    display: block;
    margin: 0;
    min-width: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    min-height: 0;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipient-item label > span {
    display: none;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipient-item select {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 34px;
    height: 34px;
    border-radius: 10px;
    padding: 0 30px 0 10px;
    font-size: 13px;
    line-height: 1;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-ticket-recipients-state {
    grid-column: 1 / -1;
    grid-row: 4;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls .checkout-recipient-details-controls__delivery > select {
    min-width: 0;
    width: 100%;
    max-width: 100%;
    min-height: 36px;
    height: 36px;
    padding: 0 30px 0 10px;
    border-radius: 10px;
    font-size: 13px;
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    background-size: 100% 100%, 12px 7px;
    background-position: 0 0, right 8px center;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls .checkout-recipient-details-controls__qty .checkout-qty-btn {
    width: 28px;
    min-width: 28px;
    height: 32px;
    min-height: 32px;
    font-size: 15px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls .checkout-recipient-details-controls__qty .checkout-qty-input {
    font-size: 13.5px;
    min-width: 36px;
    line-height: 1;
  }

  .tickets-route-shell.modal-step--seats [data-seats-left-col] {
    font-size: 15px;
  }

  .tickets-route-shell.modal-step--seats .checkout-seats-form-group > label > span,
  .tickets-route-shell.modal-step--seats .checkout-seats-form-group > label > select {
    font-size: 15px;
  }

  .tickets-route-shell.modal-step--seats .checkout-seats-form-group > label > span {
    font-weight: 800;
    line-height: 1.3;
  }

  .tickets-route-shell.modal-step--seats .checkout-qty-control {
    --qty-btn-size: 34px;
    grid-template-columns: var(--qty-btn-size) minmax(50px, 58px) var(--qty-btn-size);
  }

  .tickets-route-shell.modal-step--seats .checkout-qty-btn {
    font-size: 19px;
  }

  .tickets-route-shell.modal-step--seats .checkout-qty-input {
    font-size: 14px;
  }

  .checkout-ticket-recipient-draft-grid {
    grid-template-columns: 1fr;
  }

  .checkout-ticket-recipient-draft-actions {
    flex-wrap: wrap;
    justify-content: stretch;
  }

  .checkout-ticket-recipient-draft-actions .btn {
    flex: 1 1 auto;
  }
}

@media (max-width: 380px) {
  .tickets-route-shell.modal-step--seats.checkout-flow--seat-map {
    padding-bottom: max(8px, env(safe-area-inset-bottom, 0px));
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky {
    width: calc(100vw - 14px);
    gap: 8px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-zone {
    min-height: 56px;
    padding: 0 12px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-zone .checkout-tier-option-card__label {
    font-size: 13px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-zone .checkout-tier-option-card__price {
    font-size: 17px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta {
    min-height: 58px;
    height: 58px;
    grid-template-columns: minmax(0, 1fr) 56px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta-part {
    min-height: 58px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta-icon {
    width: 56px;
    min-width: 56px;
  }

  .modal-step--seats.checkout-flow--seat-map .checkout-seats-mobile-sticky-cta-text {
    font-size: 13.5px;
  }
}

@media (max-width: 360px) {
  .modal-step--seats.checkout-flow--seat-map .checkout-tier-option-list {
    grid-template-columns: minmax(0, 1fr);
  }
}

.checkout-order-panel {
  margin: 0;
  display: grid;
  gap: 14px;
  min-height: 560px;
  border: 1px solid rgba(99, 102, 241, 0.34);
  background:
    radial-gradient(circle at 18% 0%, rgba(56, 189, 248, 0.12) 0, transparent 42%),
    radial-gradient(circle at 82% 10%, rgba(129, 140, 248, 0.16) 0, transparent 50%),
    rgba(2, 6, 23, 0.76);
  box-shadow: 0 18px 32px rgba(2, 6, 23, 0.35);
}

.checkout-order-head {
  display: grid;
  gap: 6px;
}

.checkout-order-title {
  margin: 0;
  font-size: 20px;
  line-height: 1.2;
  color: var(--text);
}

.checkout-order-event {
  margin: 0;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.42;
}

.checkout-order-list {
  display: grid;
  gap: 8px;
}

.checkout-order-disclosure {
  margin: 0;
  color: rgba(148, 163, 184, 0.88);
  font-size: 12px;
  line-height: 1.45;
}

.checkout-order-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  background: rgba(15, 23, 42, 0.56);
  font-size: 13px;
  color: var(--text-soft);
}

.checkout-order-row strong {
  color: var(--text);
  font-weight: 700;
  text-align: right;
}

.checkout-order-row--delivery-address strong {
  max-width: 260px;
  overflow-wrap: anywhere;
}

.checkout-order-total {
  margin: 0;
  border-style: solid;
  border-color: rgba(99, 102, 241, 0.48);
  background: linear-gradient(135deg, rgba(99, 102, 241, 0.14) 0%, rgba(15, 23, 42, 0.7) 100%);
}

.checkout-order-total strong {
  font-size: 24px;
}

.checkout-consents {
  margin: 0;
  display: grid;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: 14px;
  background: rgba(15, 23, 42, 0.42);
  transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

.checkout-consents.is-required-highlight {
  border-color: rgba(96, 165, 250, 0.88);
  background:
    linear-gradient(145deg, rgba(30, 58, 138, 0.38) 0%, rgba(15, 23, 42, 0.66) 100%);
  box-shadow: 0 0 0 1px rgba(147, 197, 253, 0.46), 0 0 0 4px rgba(59, 130, 246, 0.16), 0 14px 30px rgba(30, 64, 175, 0.32);
  animation: required-highlight-pulse 0.95s ease-in-out 2;
}

.modal-step--seats [data-seats-submit].checkout-seats-merge-cta {
  min-height: 58px;
}

.modal-step--seats [data-seats-submit].checkout-seats-merge-cta.is-error {
  animation: required-highlight-pulse 0.8s ease-in-out 1;
}

.modal-step--seats [data-seats-submit].checkout-seats-merge-cta.is-error::before {
  opacity: 0;
}

.modal-step--seats [data-seats-submit].checkout-seats-merge-cta.is-error .checkout-seats-merge-cta__part {
  border-color: rgba(251, 113, 133, 0.56);
  background:
    linear-gradient(135deg, rgba(127, 29, 29, 0.72), rgba(76, 29, 149, 0.58));
  color: rgba(255, 241, 242, 0.96);
  box-shadow:
    0 0 0 1px rgba(251, 113, 133, 0.22),
    0 10px 20px rgba(76, 29, 149, 0.24);
}

.checkout-final-summary-card {
  margin: 0;
  padding: 26px;
  min-height: clamp(420px, 58vh, 640px);
  display: flex;
  flex-direction: column;
  background:
    radial-gradient(circle at 12% 0%, rgba(56, 189, 248, 0.14) 0, transparent 42%),
    radial-gradient(circle at 88% 10%, rgba(129, 140, 248, 0.2) 0, transparent 52%),
    rgba(2, 6, 23, 0.8);
  border-color: rgba(99, 102, 241, 0.38);
  box-shadow: 0 24px 40px rgba(2, 6, 23, 0.45);
}

.checkout-final-summary-card--seat-map {
  padding: 20px;
  min-height: 0;
  display: grid;
  gap: 14px;
  align-content: start;
  background:
    radial-gradient(circle at 18% 0%, rgba(56, 189, 248, 0.12) 0, transparent 42%),
    radial-gradient(circle at 82% 10%, rgba(129, 140, 248, 0.16) 0, transparent 50%),
    rgba(2, 6, 23, 0.76);
  border-color: rgba(99, 102, 241, 0.34);
  box-shadow: 0 18px 32px rgba(2, 6, 23, 0.35);
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-wrap {
  display: grid;
  gap: 14px;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-title {
  margin: 0;
  font-size: 24px;
  line-height: 1.14;
  letter-spacing: -0.03em;
  color: rgba(244, 245, 251, 0.96);
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-meta {
  margin: 0;
  color: rgba(226, 232, 240, 0.66);
  font-size: 13px;
  line-height: 1.45;
  text-align: right;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-list {
  display: grid;
  gap: 8px;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row {
  min-height: 45px;
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
  align-items: center;
  gap: 16px;
  padding: 11px 14px;
  border-radius: 13px;
  border: 1px solid rgba(126, 142, 255, 0.14);
  background: rgba(8, 13, 32, 0.46);
  color: rgba(226, 232, 240, 0.48);
  font-size: 13px;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row strong {
  color: rgba(244, 245, 251, 0.94);
  font-size: 14px;
  font-weight: 760;
  line-height: 1.35;
  text-align: right;
  overflow-wrap: anywhere;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row.checkout-order-row--ticket-recipients strong {
  display: block;
  white-space: normal;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total {
  margin-top: 4px;
  min-height: 62px;
  border-style: dashed;
  border-color: rgba(126, 142, 255, 0.34);
  background:
    radial-gradient(circle at 100% 50%, rgba(109, 99, 255, 0.13), transparent 36%),
    rgba(8, 13, 32, 0.58);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total span {
  color: rgba(244, 245, 251, 0.88);
  font-size: 16px;
  font-weight: 780;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total strong {
  color: rgba(244, 245, 251, 0.96);
  font-size: clamp(26px, 2vw, 31px);
  line-height: 1;
  letter-spacing: -0.04em;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-consents {
  margin-top: 2px;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-card {
  min-height: 76px;
  padding: 13px;
  border-radius: 15px;
  border: 1px dashed rgba(126, 142, 255, 0.3);
  background:
    radial-gradient(circle at 100% 0%, rgba(109, 99, 255, 0.1), transparent 42%),
    rgba(8, 13, 32, 0.34);
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-card strong {
  display: block;
  margin-bottom: 5px;
  color: rgba(244, 245, 251, 0.9);
  font-size: 13px;
  line-height: 1.24;
}

.checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-card span {
  display: block;
  color: rgba(226, 232, 240, 0.54);
  font-size: 12px;
  line-height: 1.35;
}

.checkout-final-summary-card.is-required-highlight {
  border-color: rgba(129, 140, 248, 0.82);
  box-shadow:
    0 0 0 1px rgba(129, 140, 248, 0.4),
    0 0 0 4px rgba(99, 102, 241, 0.16),
    0 20px 38px rgba(2, 6, 23, 0.5);
  animation: required-highlight-pulse 0.95s ease-in-out 1;
}

.checkout-final-summary-wrap {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-height: 100%;
}

.checkout-final-summary-head {
  display: grid;
  gap: 8px;
}

.checkout-final-summary-kicker {
  margin: 0;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(148, 163, 184, 0.84);
}

.checkout-final-summary-title {
  margin: 0;
  font-size: clamp(24px, 2.2vw, 34px);
  line-height: 1.15;
  color: var(--text);
  overflow-wrap: anywhere;
}

.checkout-final-summary-meta {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  color: var(--text-soft);
  overflow-wrap: anywhere;
}

.checkout-final-summary-list {
  display: grid;
  gap: 10px;
}

.checkout-final-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 14px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(15, 23, 42, 0.56);
  color: var(--text-soft);
  font-size: 13px;
}

.checkout-final-summary-row strong {
  color: var(--text);
  font-weight: 700;
  text-align: right;
  overflow-wrap: anywhere;
}

.checkout-final-summary-total {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid rgba(99, 102, 241, 0.56);
  border-radius: 14px;
  background: linear-gradient(130deg, rgba(99, 102, 241, 0.2) 0%, rgba(15, 23, 42, 0.84) 100%);
  padding: 14px 16px;
  color: var(--text);
}

.checkout-final-summary-total span {
  font-size: 16px;
  font-weight: 600;
}

.checkout-final-summary-total strong {
  font-size: clamp(28px, 2.2vw, 40px);
  line-height: 1;
}

.checkout-payment-panel {
  margin: 0;
  display: grid;
  gap: 12px;
  align-content: start;
  align-self: start;
  min-height: 0;
  padding: 0;
}

.checkout-payment-panel-head {
  display: grid;
  gap: 8px;
  padding: 2px 2px 0;
}

.checkout-payment-panel-badge {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(99, 102, 241, 0.44);
  background: rgba(79, 70, 229, 0.16);
  color: #c7d2fe;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 700;
}

.checkout-payment-panel-title {
  margin: 0;
  font-size: 22px;
  line-height: 1.2;
  color: var(--text);
}

.checkout-payment-panel-text {
  margin: 0;
  color: var(--text-soft);
  font-size: 14px;
  line-height: 1.45;
}

.checkout-payment-options {
  display: grid;
  gap: 14px;
}

.checkout-payment-option {
  display: grid;
  gap: 16px;
  min-width: 0;
  padding: 18px;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.72);
  box-shadow: 0 18px 44px rgba(2, 6, 23, 0.2);
}

@media (min-width: 1025px) {
  .checkout-route-shell:not(.account-offer-payment-layout) > [data-payment-form] .checkout-payment-options {
    grid-auto-rows: 1fr;
  }

  .checkout-route-shell:not(.account-offer-payment-layout) > [data-payment-form] .checkout-payment-option {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
    padding-block: 18px;
  }
}

.checkout-payment-option--primary {
  border-color: rgba(99, 102, 241, 0.48);
  background:
    radial-gradient(circle at 0% 0%, rgba(59, 130, 246, 0.14) 0, transparent 48%),
    rgba(15, 23, 42, 0.78);
}

.checkout-payment-card--stripe .checkout-payment-option-copy {
  gap: 7px;
}

.checkout-payment-method-logos {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
  margin: 18px 0 22px;
}

.checkout-payment-method-logo-slot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-width: 54px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.checkout-payment-method-logo {
  display: block;
  width: auto;
  height: auto;
  object-fit: contain;
}

.checkout-payment-method-logo--visa {
  width: 62px;
}

.checkout-payment-method-logo--mastercard {
  width: 46px;
}

.checkout-payment-method-logo--apple-pay {
  width: 54px;
}

.checkout-payment-method-logo--klarna {
  width: 76px;
}

.checkout-payment-option--secondary {
  border-color: rgba(148, 163, 184, 0.24);
  background:
    linear-gradient(135deg, rgba(20, 184, 166, 0.09), transparent 46%),
    rgba(15, 23, 42, 0.64);
}

.checkout-payment-card--revolut {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 12% 18%, rgba(71, 198, 255, 0.12) 0%, rgba(71, 198, 255, 0.04) 22%, transparent 42%),
    radial-gradient(circle at 88% 24%, rgba(141, 92, 255, 0.22) 0%, rgba(141, 92, 255, 0.12) 24%, rgba(141, 92, 255, 0.04) 46%, transparent 68%),
    radial-gradient(circle at 82% 88%, rgba(42, 112, 255, 0.16) 0%, rgba(42, 112, 255, 0.06) 24%, transparent 52%),
    linear-gradient(135deg, rgba(6, 18, 44, 0.96) 0%, rgba(10, 20, 56, 0.95) 42%, rgba(20, 20, 68, 0.94) 100%);
  border: 1px solid rgba(101, 122, 178, 0.34);
  box-shadow:
    0 10px 30px rgba(3, 8, 24, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    inset 0 -1px 0 rgba(121, 92, 255, 0.08);
}

.checkout-payment-card--revolut::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 78% 28%, rgba(173, 115, 255, 0.18) 0%, rgba(173, 115, 255, 0.10) 16%, transparent 40%),
    linear-gradient(125deg, transparent 0%, transparent 56%, rgba(115, 214, 255, 0.06) 68%, rgba(152, 111, 255, 0.10) 84%, transparent 100%);
  opacity: 0.95;
  z-index: 0;
}

.checkout-payment-card--revolut::after {
  content: "";
  position: absolute;
  right: -4%;
  top: 12%;
  width: 52%;
  height: 78%;
  pointer-events: none;
  z-index: 0;
  border-radius: 999px;
  background:
    conic-gradient(
      from 210deg at 62% 52%,
      transparent 0deg,
      transparent 18deg,
      rgba(76, 214, 255, 0.00) 34deg,
      rgba(76, 214, 255, 0.20) 58deg,
      rgba(131, 110, 255, 0.34) 84deg,
      rgba(180, 111, 255, 0.20) 104deg,
      rgba(180, 111, 255, 0.00) 128deg,
      transparent 150deg,
      transparent 360deg
    );
  filter: blur(10px);
  opacity: 0.88;
  transform: rotate(-8deg);
}

.checkout-payment-option-copy {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.checkout-payment-card--revolut > * {
  position: relative;
  z-index: 1;
}

.checkout-payment-option-provider {
  color: #a7f3d0;
  font-size: 11px;
  line-height: 1.25;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 700;
}

.checkout-payment-option--primary .checkout-payment-option-provider {
  color: #c7d2fe;
}

.checkout-payment-card--revolut .checkout-payment-card__eyebrow {
  color: rgba(141, 244, 233, 0.92);
  letter-spacing: 0.18em;
  font-weight: 700;
}

.checkout-payment-option h3,
.checkout-payment-option h5 {
  margin: 0;
  color: var(--text);
  font-size: 16px;
  line-height: 1.25;
}

.checkout-payment-option p {
  margin: 0;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.42;
}

.checkout-payment-card--revolut .checkout-payment-card__title {
  color: #f5f7ff;
}

.checkout-payment-card--revolut .checkout-payment-card__description {
  color: rgba(226, 232, 246, 0.78);
}

.checkout-payment-card--revolut .checkout-payment-card__button,
.checkout-payment-card--revolut .checkout-payment-action,
.checkout-payment-card--revolut .btn {
  background:
    linear-gradient(135deg, rgba(8, 18, 46, 0.94) 0%, rgba(13, 22, 56, 0.96) 52%, rgba(24, 24, 70, 0.97) 100%);
  border: 1px solid rgba(148, 165, 211, 0.32);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.05),
    0 0 0 1px rgba(89, 208, 255, 0.05),
    0 10px 24px rgba(7, 14, 36, 0.22);
  color: #f3f6ff;
}

.checkout-payment-card--revolut .checkout-payment-card__button:hover,
.checkout-payment-card--revolut .checkout-payment-action:hover,
.checkout-payment-card--revolut .btn:hover {
  border-color: rgba(173, 188, 230, 0.42);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.06),
    0 0 0 1px rgba(92, 216, 255, 0.10),
    0 12px 28px rgba(8, 16, 38, 0.28);
  transform: translateY(-1px);
}

.checkout-payment-panel .btn {
  min-height: 50px;
  font-size: 15px;
}

.checkout-payment-panel .checkout-owner-bypass-btn {
  justify-self: end;
  width: auto;
  min-height: 30px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.04em;
  color: rgba(148, 163, 184, 0.86);
  border-color: rgba(148, 163, 184, 0.3);
  background: rgba(15, 23, 42, 0.28);
}

.checkout-payment-panel .checkout-owner-bypass-btn:hover,
.checkout-payment-panel .checkout-owner-bypass-btn:focus-visible {
  border-color: rgba(99, 102, 241, 0.48);
  color: rgba(199, 210, 254, 0.96);
  background: rgba(79, 70, 229, 0.2);
}

.checkout-payment-panel .checkout-owner-bypass-btn:disabled {
  opacity: 0.65;
  cursor: not-allowed;
}

@media (max-width: 640px) {
  .checkout-route-shell,
  .modal-step--checkout {
    display: flex;
    flex-direction: column;
  }

  .checkout-route-shell > [data-payment-form],
  .modal-step--checkout > [data-payment-form],
  .checkout-route-shell > .checkout-payment-panel,
  .modal-step--checkout > .checkout-payment-panel {
    order: 1;
  }

  .checkout-route-shell > [data-order-summary],
  .modal-step--checkout > [data-order-summary],
  .checkout-route-shell > .checkout-final-summary-card,
  .modal-step--checkout > .checkout-final-summary-card {
    order: 2;
    width: 100%;
    max-width: 100%;
    margin-top: 12px;
  }

  .checkout-route-shell > [data-payment-form],
  .modal-step--checkout > [data-payment-form],
  .modal-dialog [data-payment-form].checkout-payment-panel,
  .checkout-payment-panel {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    align-self: stretch;
    justify-self: stretch;
  }

  .checkout-payment-options {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .checkout-payment-option,
  .checkout-payment-card--stripe,
  .checkout-payment-card--revolut {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    justify-self: stretch;
    align-self: stretch;
  }

  .checkout-payment-option [data-payment-provider],
  .checkout-payment-option .btn {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .checkout-payment-method-logos {
    max-width: 100%;
    gap: 10px;
    flex-wrap: wrap;
  }
}

.modal-dialog.modal-dialog--thanks-layout {
  width: min(760px, calc(100vw - 48px));
  height: auto;
  max-height: calc(100dvh - 48px);
  background: transparent;
  border: 0;
  box-shadow: none;
}

.modal-dialog.modal-dialog--thanks-layout .modal-top {
  min-height: 0;
  padding: 0 0 10px;
  border-bottom: 0;
  background: transparent;
  backdrop-filter: none;
  position: static;
}

.modal-dialog.modal-dialog--thanks-layout .modal-body {
  padding: 0;
  padding-right: 0;
  margin: 0;
  scrollbar-gutter: auto;
}

.modal-dialog.modal-dialog--thanks-layout .modal-close {
  background: rgba(15, 23, 42, 0.8);
  border-color: rgba(148, 163, 184, 0.32);
}

.modal-dialog.modal-dialog--thanks-layout .modal-body > div {
  min-height: auto;
  padding-bottom: 0;
}

.modal-dialog.modal-dialog--thanks-layout .modal-body > .modal-step--thanks {
  margin: 0;
  max-width: 100%;
  gap: 0;
}

.modal-body > .modal-step--thanks {
  min-height: auto;
  width: 100%;
  max-width: min(760px, 100%);
  margin: clamp(12px, 3.8vh, 48px) auto;
  gap: 14px;
  align-content: start;
}

.modal-step--thanks > .checkout-thanks-card {
  margin: 0;
  padding: 24px 26px;
  display: grid;
  gap: 16px;
  border-color: rgba(99, 102, 241, 0.34);
  background:
    radial-gradient(circle at 16% 0%, rgba(56, 189, 248, 0.14) 0, transparent 46%),
    radial-gradient(circle at 84% 6%, rgba(129, 140, 248, 0.2) 0, transparent 54%),
    rgba(2, 6, 23, 0.82);
  box-shadow: 0 20px 34px rgba(2, 6, 23, 0.42);
}

.checkout-thanks-header {
  padding: 0;
}

.checkout-thanks-header .modal-title {
  margin: 0 0 4px;
  font-size: clamp(28px, 2.4vw, 34px);
  line-height: 1.12;
}

.checkout-thanks-header .modal-subtitle {
  font-size: 15px;
  line-height: 1.45;
}

.checkout-thanks-summary {
  display: grid;
  gap: 10px;
}

.checkout-thanks-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 14px;
  border: 1px solid rgba(148, 163, 184, 0.25);
  border-radius: 12px;
  background: rgba(15, 23, 42, 0.56);
  font-size: 13px;
  color: var(--text-soft);
}

.checkout-thanks-row strong {
  color: var(--text);
  font-size: 15px;
  font-weight: 700;
  text-align: right;
  overflow-wrap: anywhere;
}

.checkout-thanks-text {
  margin: 0;
  color: var(--text-soft);
  font-size: 14px;
  line-height: 1.52;
}

.checkout-thanks-calendar {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  border-radius: 12px;
  background: rgba(15, 23, 42, 0.44);
}

.checkout-thanks-calendar-title {
  margin: 0;
  color: var(--text);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
}

.checkout-thanks-calendar-note {
  margin: 0;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.45;
}

.checkout-thanks-calendar-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.checkout-thanks-calendar-actions .btn {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  font-size: 13px;
  padding-inline: 10px;
}

.checkout-thanks-card > .checkout-thanks-actions {
  margin-top: 2px;
  justify-content: center;
  padding-top: 4px;
}

.checkout-thanks-card > .checkout-thanks-actions .btn {
  min-width: 172px;
}

.modal-dialog.modal-dialog--thanks-layout {
  width: min(980px, calc(100vw - 48px));
}

.modal-body > .modal-step--thanks {
  width: min(920px, 100%);
  max-width: min(920px, 100%);
}

body.page-checkout-success #checkout-page-view .modal-step--thanks {
  width: min(920px, 100%);
  max-width: min(920px, 100%);
  margin: clamp(18px, 3.2vh, 42px) auto clamp(26px, 4vh, 64px);
}

.modal-step--thanks > .checkout-thanks-shell {
  margin: 0;
  width: min(920px, 100%);
  max-width: 100%;
  padding: 28px;
  border-radius: 28px;
  border: 1px solid rgba(126, 142, 255, 0.24);
  background:
    radial-gradient(circle at 0% 0%, rgba(45, 212, 191, 0.12), transparent 32%),
    radial-gradient(circle at 88% 0%, rgba(109, 99, 255, 0.18), transparent 34%),
    rgba(10, 16, 37, 0.78);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.checkout-thanks-inner {
  display: grid;
  gap: 22px;
}

.checkout-thanks-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 22px;
  align-items: start;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(126, 142, 255, 0.14);
}

.checkout-thanks-title-row {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}

.checkout-thanks-icon {
  width: 54px;
  height: 54px;
  flex: 0 0 54px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  border: 1px solid rgba(45, 212, 191, 0.28);
  background:
    radial-gradient(circle at 30% 20%, rgba(45, 212, 191, 0.22), transparent 40%),
    rgba(45, 212, 191, 0.075);
  color: rgba(45, 212, 191, 0.96);
  font-size: 26px;
  box-shadow: 0 16px 36px rgba(45, 212, 191, 0.09);
}

.checkout-thanks-title {
  margin: 0;
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1.03;
  letter-spacing: -0.055em;
  color: rgba(244, 245, 251, 0.98);
}

.checkout-thanks-subtitle {
  margin: 9px 0 0;
  color: rgba(226, 232, 240, 0.68);
  font-size: 16px;
  line-height: 1.5;
}

.checkout-thanks-status-pill {
  margin: 0;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 0 13px;
  border-radius: 999px;
  border: 1px solid rgba(45, 212, 191, 0.26);
  background: rgba(45, 212, 191, 0.07);
  color: rgba(209, 250, 229, 0.92);
  font-size: 13px;
  font-weight: 760;
  white-space: nowrap;
}

.checkout-thanks-status-pill::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #34d399;
  box-shadow: 0 0 16px rgba(52, 211, 153, 0.38);
}

.checkout-thanks-status-pill.is-pending {
  border-color: rgba(244, 208, 63, 0.32);
  background: rgba(234, 179, 8, 0.12);
  color: rgba(254, 243, 199, 0.95);
}

.checkout-thanks-status-pill.is-pending::before {
  background: rgba(250, 204, 21, 0.98);
  box-shadow: 0 0 14px rgba(250, 204, 21, 0.32);
}

.checkout-thanks-status-pill.is-failed {
  border-color: rgba(251, 113, 133, 0.34);
  background: rgba(251, 113, 133, 0.12);
  color: rgba(254, 226, 226, 0.96);
}

.checkout-thanks-status-pill.is-failed::before {
  background: rgba(251, 113, 133, 0.98);
  box-shadow: 0 0 14px rgba(251, 113, 133, 0.34);
}

.checkout-thanks-order-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.checkout-thanks-order-row {
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr);
  align-items: center;
  gap: 16px;
  padding: 12px 16px;
  border-radius: 16px;
  border: 1px solid rgba(126, 142, 255, 0.14);
  background: rgba(8, 13, 32, 0.48);
}

.checkout-thanks-order-row span {
  color: rgba(226, 232, 240, 0.48);
  font-size: 13px;
}

.checkout-thanks-order-row strong {
  color: rgba(244, 245, 251, 0.95);
  font-size: 15px;
  font-weight: 760;
  text-align: right;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.checkout-thanks-order-row--full {
  grid-column: 1 / -1;
}

.checkout-thanks-next-message {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  padding: 18px;
  border-radius: 20px;
  border: 1px solid rgba(126, 142, 255, 0.18);
  background:
    radial-gradient(circle at 0% 0%, rgba(109, 99, 255, 0.1), transparent 34%),
    rgba(8, 13, 32, 0.42);
}

.checkout-thanks-next-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  border: 1px solid rgba(126, 142, 255, 0.22);
  background: rgba(109, 99, 255, 0.09);
  color: rgba(191, 219, 254, 0.9);
  font-size: 18px;
}

.checkout-thanks-next-message h4 {
  margin: 0 0 6px;
  font-size: 18px;
  line-height: 1.2;
  letter-spacing: -0.025em;
}

.checkout-thanks-next-message p {
  margin: 0;
  color: rgba(226, 232, 240, 0.68);
  font-size: 14px;
  line-height: 1.55;
}

.checkout-thanks-quick-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.checkout-thanks-calendar-card,
.checkout-thanks-address-card {
  min-height: 230px;
  padding: 18px;
  border-radius: 20px;
  border: 1px solid rgba(126, 142, 255, 0.18);
  background:
    radial-gradient(circle at 0% 0%, rgba(45, 212, 191, 0.09), transparent 34%),
    radial-gradient(circle at 100% 0%, rgba(109, 99, 255, 0.08), transparent 38%),
    rgba(8, 13, 32, 0.42);
  display: grid;
  align-content: space-between;
  gap: 16px;
}

.checkout-thanks-card-top h4,
.checkout-thanks-address-card h4 {
  margin: 0 0 6px;
  font-size: 18px;
  line-height: 1.2;
  letter-spacing: -0.025em;
}

.checkout-thanks-card-top p,
.checkout-thanks-address-text {
  margin: 0;
  color: rgba(226, 232, 240, 0.68);
  font-size: 14px;
  line-height: 1.5;
}

.checkout-thanks-address-main {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(126, 142, 255, 0.14);
}

.checkout-thanks-address-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  border: 1px solid rgba(45, 212, 191, 0.22);
  background: rgba(45, 212, 191, 0.08);
  color: rgba(45, 212, 191, 0.92);
  font-size: 18px;
}

.checkout-thanks-address-place {
  margin: 0 0 5px;
  color: rgba(244, 245, 251, 0.94);
  font-size: 16px;
  font-weight: 760;
  letter-spacing: -0.02em;
}

.checkout-thanks-address-text {
  white-space: pre-line;
}

.checkout-thanks-copy-address-btn {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(126, 142, 255, 0.24);
  background: rgba(8, 13, 32, 0.62);
  color: rgba(226, 232, 240, 0.72);
  cursor: pointer;
  font-size: 14px;
  transition: border-color 0.16s ease, background 0.16s ease, transform 0.16s ease;
}

.checkout-thanks-copy-address-btn:hover {
  transform: translateY(-1px);
  border-color: rgba(45, 212, 191, 0.38);
  background: rgba(45, 212, 191, 0.07);
  color: rgba(244, 245, 251, 0.92);
}

.checkout-thanks-copy-address-btn.is-copied {
  border-color: rgba(45, 212, 191, 0.48);
  color: rgba(45, 212, 191, 0.95);
}

.checkout-thanks-card-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding-top: 14px;
  border-top: 1px solid rgba(126, 142, 255, 0.14);
}

.checkout-thanks-card-actions .btn {
  min-height: 40px;
  padding: 0 16px;
  width: 100%;
  background: rgba(8, 13, 32, 0.52);
}

.checkout-thanks-info-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.checkout-thanks-info-item {
  min-height: 104px;
  padding: 15px;
  border-radius: 18px;
  border: 1px dashed rgba(126, 142, 255, 0.3);
  background:
    radial-gradient(circle at 100% 0%, rgba(109, 99, 255, 0.09), transparent 42%),
    rgba(8, 13, 32, 0.34);
}

.checkout-thanks-info-item strong {
  display: block;
  margin-bottom: 7px;
  color: rgba(244, 245, 251, 0.9);
  font-size: 14px;
  line-height: 1.25;
}

.checkout-thanks-info-item span {
  display: block;
  color: rgba(226, 232, 240, 0.54);
  font-size: 12px;
  line-height: 1.4;
}

.checkout-thanks-actions {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
  padding-top: 4px;
}

.checkout-thanks-actions .btn {
  min-width: 180px;
}

@media (max-width: 900px) {
  .checkout-thanks-head,
  .checkout-thanks-order-grid,
  .checkout-thanks-info-grid,
  .checkout-thanks-quick-grid {
    grid-template-columns: 1fr;
  }

  .checkout-thanks-status-pill {
    width: fit-content;
  }

  .checkout-thanks-order-row {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .checkout-thanks-order-row strong {
    text-align: left;
  }

  .checkout-thanks-card-actions {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .modal-dialog.modal-dialog--thanks-layout {
    width: calc(100vw - 16px);
  }

  .modal-body > .modal-step--thanks,
  body.page-checkout-success #checkout-page-view .modal-step--thanks {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
  }

  .modal-step--thanks > .checkout-thanks-shell {
    padding: 20px;
    border-radius: 24px;
  }

  .checkout-thanks-title-row {
    display: grid;
  }

  .checkout-thanks-actions .btn {
    width: 100%;
    min-width: 0;
  }

  .checkout-thanks-address-main {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .checkout-thanks-copy-address-btn {
    grid-column: 2;
    width: fit-content;
    padding: 0 13px;
  }
}

.consent-row {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.35;
  cursor: pointer;
  position: relative;
}

.consent-row input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  pointer-events: none;
}

.consent-box {
  width: 19px;
  height: 19px;
  border-radius: 4px;
  border: 1px solid rgba(148, 163, 184, 0.58);
  background: rgba(15, 23, 42, 0.84);
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.12s ease;
}

.consent-box::after {
  content: "";
  width: 5px;
  height: 9px;
  border-right: 2px solid #e2e8f0;
  border-bottom: 2px solid #e2e8f0;
  transform: rotate(45deg) scale(0);
  transform-origin: center;
  transition: transform 0.15s ease-out;
}

.consent-row input[type="checkbox"]:focus-visible + .consent-box {
  outline: 2px solid rgba(129, 140, 248, 0.9);
  outline-offset: 2px;
}

.consent-row input[type="checkbox"]:checked + .consent-box {
  border-color: rgba(99, 102, 241, 0.9);
  background: rgba(99, 102, 241, 0.24);
  box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.35);
}

.consent-row input[type="checkbox"]:checked + .consent-box::after {
  transform: rotate(45deg) scale(1);
}

.consent-row:hover .consent-box {
  border-color: rgba(148, 163, 184, 0.72);
}

.consent-text {
  min-width: 0;
  flex: 1 1 auto;
}

.consent-row a {
  color: var(--text);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.consent-row a:hover {
  color: #e2e8f0;
}

.form .btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  filter: saturate(0.8);
}

.transfer-arrival-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 112px;
  gap: 8px;
}

.transfer-arrival-row input {
  min-width: 0;
}

.transfer-arrival-row input[type="time"] {
  color-scheme: dark;
}

.summary-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px dashed rgba(148, 163, 184, 0.35);
  background: rgba(2, 6, 23, 0.65);
  margin-bottom: 12px;
}

.summary-row strong {
  font-size: 18px;
  margin-left: auto;
  min-width: 0;
  overflow-wrap: anywhere;
}

@media (max-width: 1024px) {
  .modal {
    padding: 16px;
  }

  .modal-dialog {
    width: min(92vw, 860px);
    height: min(92dvh, calc(100dvh - 32px));
    max-height: calc(100dvh - 32px);
  }

  .modal-dialog--compact {
    max-height: calc(100dvh - 32px);
  }
}

@media (max-width: 960px) {
  .event-hero-image-card {
    min-height: 0;
  }

  .checkout-transfer-card-top {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .checkout-booking-protection-head {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .checkout-transfer-toggle-wrap {
    justify-self: start;
  }

  .checkout-booking-protection-toggle-wrap {
    justify-self: start;
  }

  .checkout-delivery-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .checkout-delivery-save-wrap {
    grid-column: 1 / -1;
    justify-items: stretch;
  }

  .checkout-delivery-save-note {
    text-align: left;
  }

  .transfer-inline {
    grid-template-columns: minmax(0, 1fr);
  }

  .consent-row {
    font-size: 12px;
  }

  .transfer-arrival-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .modal-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .stepper {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .modal-dialog {
    width: min(92vw, 100%);
    height: min(92dvh, calc(100dvh - 32px));
    max-height: calc(100dvh - 32px);
    padding: 0;
  }

  .modal-title {
    font-size: 24px;
  }

  .modal-body {
    padding-right: 10px;
  }
}

@media (max-width: 768px) {
  .modal {
    place-items: end center;
    padding: 8px;
    padding-bottom: max(8px, env(safe-area-inset-bottom));
  }

  .modal-dialog {
    width: calc(100vw - 16px);
    height: min(92dvh, calc(100dvh - 16px));
    max-height: calc(100dvh - 16px);
    border-radius: 18px;
  }

  .modal-dialog--compact {
    max-height: calc(100dvh - 16px);
  }

  .modal-dialog.modal-dialog--thanks-layout {
    width: calc(100vw - 16px);
    height: auto;
    max-height: calc(100dvh - 16px);
  }

  .modal-top {
    padding: 10px 12px;
    min-height: 56px;
  }

  .modal-dialog.modal-dialog--thanks-layout .modal-top {
    padding: 0 0 8px;
    min-height: 0;
  }

  .modal-body {
    padding: 14px 14px calc(18px + env(safe-area-inset-bottom));
    padding-right: 10px;
  }

  .modal-dialog.modal-dialog--thanks-layout .modal-body {
    padding: 0;
    padding-right: 0;
  }

  .modal-dialog.modal-dialog--thanks-layout .modal-body > div {
    min-height: auto;
    padding-bottom: 0;
  }

  .modal-actions {
    flex-direction: column;
    gap: 10px;
    position: sticky;
    bottom: 0;
    background: linear-gradient(180deg, rgba(2, 6, 23, 0) 0%, rgba(2, 6, 23, 0.96) 20%, rgba(2, 6, 23, 0.96) 100%);
    padding-bottom: calc(10px + env(safe-area-inset-bottom));
    margin-top: 4px;
  }

  .modal-actions .btn {
    width: 100%;
  }

  .modal-body > .modal-step--thanks {
    max-width: 100%;
    margin: 0 auto;
    gap: 10px;
  }

  .modal-dialog.modal-dialog--thanks-layout .modal-body > .modal-step--thanks {
    gap: 0;
  }

  .modal-step--thanks > .checkout-thanks-card {
    padding: 18px 16px;
    gap: 12px;
  }

  .checkout-thanks-header .modal-title {
    font-size: 24px;
  }

  .checkout-thanks-row {
    padding: 10px 12px;
  }

  .checkout-thanks-calendar-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .checkout-thanks-card > .checkout-thanks-actions {
    position: static;
    background: transparent;
    padding: 2px 0 calc(4px + env(safe-area-inset-bottom));
    margin-top: 0;
    gap: 10px;
  }

  .checkout-thanks-card > .checkout-thanks-actions .btn {
    width: 100%;
    min-width: 0;
  }

  .checkout-thanks-calendar-actions .btn,
  .checkout-delivery-save-btn.btn {
    font-size: 14px;
    line-height: 1.25;
  }

  .checkout-seats-shell {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
  }
}

@media (max-width: 480px) {
  .modal-step--event > .modal-header {
    order: 1;
    position: static;
    padding: 0 2px 2px;
    background: transparent;
    backdrop-filter: none;
  }

  .modal-step--event > .modal-header .modal-title {
    display: none;
  }

  .modal-step--event > .modal-header .modal-subtitle {
    margin: 0;
    font-size: 12.5px;
    line-height: 1.45;
    color: var(--text-soft);
  }

  .modal-step--event > .event-hero-media {
    order: 2;
  }

  .modal-step--event > .event-description-card {
    order: 3;
  }

  .modal-step--event > .session-picker {
    order: 4;
  }

  .modal-step--event > .modal-actions {
    order: 5;
  }

  .modal-step--event > [data-event-venue-address] {
    order: 6;
  }

  .modal-step--event > [data-event-internal-links] {
    order: 7;
  }

  .modal-step--event > [data-event-related-links] {
    order: 8;
  }

  .modal-step--event > .event-request-mobile-fallback {
    order: 9;
  }

  .modal-step--event .event-hero-media {
    width: 100%;
  }

  .modal-step--event .event-hero-image-card {
    width: 100%;
    aspect-ratio: 1 / 1;
    min-height: 0;
    height: auto;
    border-radius: 14px;
  }

  .modal {
    padding: 6px;
    padding-bottom: max(6px, env(safe-area-inset-bottom));
  }

  .modal-dialog {
    width: calc(100vw - 12px);
    height: calc(100dvh - 12px);
    max-height: calc(100dvh - 12px);
    border-radius: 18px;
  }

  .modal-dialog--compact {
    width: calc(100vw - 12px);
    max-height: calc(100dvh - 12px);
  }

  .modal-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    position: relative;
    min-height: 52px;
    padding: 8px 10px;
  }

  .stepper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    flex: 1 1 auto;
    width: 100%;
    overflow: visible;
  }

  .stepper .step {
    min-height: 32px;
    padding: 6px 8px;
    font-size: 11px;
    line-height: 1;
  }

  .modal-close {
    width: 36px;
    height: 36px;
    font-size: 18px;
    border-radius: 10px;
  }

  .modal-body {
    padding: 12px 12px calc(16px + env(safe-area-inset-bottom));
    padding-right: 8px;
  }

  .modal-body > div {
    gap: 12px;
  }

  .modal-dialog .card {
    padding: 16px;
  }

  .modal-header {
    padding: 2px 2px 14px;
  }

  .modal-title {
    font-size: 20px;
  }

  .modal-subtitle {
    font-size: 14px;
    line-height: 1.35;
  }

  .modal-dialog .form label {
    font-size: 13px;
    margin-bottom: 10px;
  }

  .modal-dialog .form input,
  .modal-dialog .form textarea,
  .modal-dialog .form select {
    min-height: 42px;
    padding: 9px 11px;
    font-size: 14px;
  }

  .phone-field {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
  }

  .phone-field select,
  .phone-field input {
    flex: 1 1 auto;
    width: 100%;
  }

  .modal-dialog .btn {
    min-height: 42px;
    padding: 10px 14px;
    font-size: 15px;
  }

  .modal-dialog .form-note {
    font-size: 11px;
    line-height: 1.35;
  }

  .event-modal-title {
    margin-bottom: 6px;
    font-size: 16px;
  }

  .session-picker {
    gap: 10px;
  }

  .session-title {
    font-size: 12px;
  }

  .session-grid {
    gap: 10px;
  }

  .session-group {
    gap: 7px;
  }

  .session-group-title {
    font-size: 10.5px;
    letter-spacing: 0.06em;
  }

  .session-group-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
  }

  .session-chip {
    min-height: 50px;
    padding: 7px 8px;
    border-radius: 10px;
  }

  .session-chip-date,
  .session-chip-time {
    font-size: 12px;
  }

  .session-grid-toggle.btn {
    width: 100%;
    justify-content: center;
  }

  .modal-dialog [data-seats-form],
  .modal-dialog [data-payment-form] {
    display: grid;
    gap: 10px;
  }

  .modal-dialog [data-seats-form] label,
  .modal-dialog [data-payment-form] label {
    margin-bottom: 0;
  }

  .transfer-details {
    padding: 10px 12px;
    margin: 2px 0 4px;
  }

  .summary-row {
    padding: 10px 12px;
    align-items: flex-start;
    margin-bottom: 0;
  }

  .summary-row strong {
    font-size: 16px;
  }

  .checkout-order-panel {
    gap: 12px;
    min-height: 0;
  }

  .checkout-order-head {
    gap: 4px;
  }

  .checkout-order-title {
    font-size: 18px;
  }

  .checkout-order-row {
    padding: 9px 10px;
    font-size: 12px;
  }

  .checkout-order-total strong {
    font-size: 20px;
  }

  .checkout-order-panel .checkout-consents {
    gap: 8px;
    padding: 10px;
  }

  .consent-row {
    gap: 10px;
    font-size: 12px;
    line-height: 1.35;
  }

  .modal-mobile-header {
    display: none !important;
  }

  .modal-mobile-title {
    position: static;
    transform: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.35);
    background: rgba(15, 23, 42, 0.7);
    font-size: 13px;
    line-height: 1;
    font-weight: 600;
    max-width: 100%;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
  }

  .modal-mobile-back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 34px;
    padding: 0 10px;
    border-radius: 12px;
    border: 1px solid rgba(148, 163, 184, 0.35);
    background: rgba(15, 23, 42, 0.7);
    color: var(--text);
    font-size: 13px;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
  }

  .modal-mobile-back:disabled {
    opacity: 0.55;
    cursor: not-allowed;
  }

  .modal-mobile-spacer {
    display: none;
  }
}

@media (max-width: 380px) {
  .modal-top {
    gap: 6px;
    padding: 8px;
  }

  .stepper {
    gap: 4px;
  }

  .stepper .step {
    min-height: 30px;
    padding: 5px 6px;
    font-size: 10px;
  }

  .modal-body {
    padding: 10px 10px calc(14px + env(safe-area-inset-bottom));
    padding-right: 7px;
  }

  .modal-dialog .card {
    padding: 14px;
  }

  .modal-title {
    font-size: 18px;
  }

  .modal-dialog .form input,
  .modal-dialog .form textarea,
  .modal-dialog .form select,
  .modal-dialog .btn {
    font-size: 14px;
  }

  .summary-row,
  .transfer-details {
    padding: 9px 10px;
  }

  .checkout-order-panel {
    gap: 10px;
    min-height: 0;
  }
}

/* date picker sizing (bigger + more readable) */
.date-picker {
  width: min(520px, calc(100vw - 24px));
  padding: 18px;
}

.date-picker-title {
  font-size: 16px;
}

.date-picker-weekdays {
  font-size: 13px;
}

.date-day {
  height: 52px;
  font-size: 15px;
}

.date-picker.date-picker--compact {
  width: min(300px, calc(100vw - 24px));
  padding: 10px;
  border-radius: 14px;
}

.date-picker.date-picker--compact .date-picker-header {
  padding: 0 0 8px;
}

.date-picker.date-picker--compact .date-picker-title {
  font-size: 13px;
}

.date-picker.date-picker--compact .date-picker-controls {
  gap: 6px;
}

.date-picker.date-picker--compact .date-picker-nav {
  width: 32px;
  height: 32px;
  border-radius: 10px;
}

.date-picker.date-picker--compact .date-picker-weekdays {
  font-size: 11px;
  gap: 6px;
  padding: 0 0 6px;
}

.date-picker.date-picker--compact .date-picker-grid {
  gap: 6px;
}

.date-picker.date-picker--compact .date-day {
  height: 34px;
  font-size: 12px;
  border-radius: 10px;
}

/* fullscreen checkout shell (desktop/tablet) */
@media (min-width: 1025px) {
  .modal {
    padding: 12px;
    place-items: center;
  }

  .modal-dialog:not(.modal-dialog--compact) {
    width: min(1540px, calc(100vw - 24px));
    height: calc(100dvh - 24px);
    max-height: calc(100dvh - 24px);
    border-radius: 22px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-top {
    min-height: 74px;
    padding: 14px 24px;
    border-bottom-color: rgba(148, 163, 184, 0.14);
  }

  .modal-dialog:not(.modal-dialog--compact) .stepper {
    gap: 12px;
  }

  .modal-dialog:not(.modal-dialog--compact) .stepper .step {
    font-size: 13px;
    padding: 12px 14px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-body {
    padding: 28px 34px 30px;
    padding-right: 20px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-body > div {
    gap: 20px;
    max-width: 1360px;
    margin: 0 auto;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-body > .modal-step--seats,
  .modal-dialog:not(.modal-dialog--compact) .modal-body > .modal-step--checkout {
    width: 100%;
    max-width: none;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-body > .modal-step--thanks {
    max-width: min(920px, 100%);
    margin: clamp(6px, 3.6vh, 42px) auto;
    gap: 16px;
  }

  .modal-dialog:not(.modal-dialog--compact).modal-dialog--thanks-layout {
    width: min(980px, calc(100vw - 48px));
    height: auto;
    max-height: calc(100dvh - 48px);
  }

  .modal-dialog:not(.modal-dialog--compact).modal-dialog--thanks-layout .modal-top {
    min-height: 0;
    padding: 0 0 12px;
    border-bottom: 0;
    background: transparent;
    backdrop-filter: none;
  }

  .modal-dialog:not(.modal-dialog--compact).modal-dialog--thanks-layout .modal-body {
    padding: 0;
    padding-right: 0;
  }

  .modal-dialog:not(.modal-dialog--compact).modal-dialog--thanks-layout .modal-body > div {
    min-height: auto;
    padding-bottom: 0;
  }

  .modal-dialog:not(.modal-dialog--compact).modal-dialog--thanks-layout .modal-body > .modal-step--thanks {
    max-width: 100%;
    margin: 0;
    gap: 0;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-body > div > .modal-header:first-child {
    position: static;
    background: transparent;
    backdrop-filter: none;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-header {
    padding: 2px 2px 8px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-title {
    font-size: 32px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-subtitle {
    font-size: 16px;
  }

  .modal-dialog:not(.modal-dialog--compact) .card {
    padding: 24px;
  }

  .modal-dialog:not(.modal-dialog--compact) .form label {
    gap: 10px;
    margin-bottom: 14px;
  }

  .modal-dialog:not(.modal-dialog--compact) .form input,
  .modal-dialog:not(.modal-dialog--compact) .form textarea,
  .modal-dialog:not(.modal-dialog--compact) .form select {
    min-height: 46px;
    font-size: 15px;
  }

  .modal-dialog:not(.modal-dialog--compact) .session-group-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-actions {
    padding-top: 14px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats .checkout-seats-form-group {
    gap: 8px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats .checkout-seats-form-group > label {
    display: grid;
    grid-template-columns: minmax(190px, 0.9fr) minmax(260px, 1.1fr);
    align-items: center;
    gap: 14px;
    margin-bottom: 0;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats .checkout-seats-form-group > label > span {
    margin: 0;
    font-size: 14px;
    line-height: 1.35;
    color: var(--text-soft);
    overflow-wrap: anywhere;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats .checkout-seats-form-group > label > input,
  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats .checkout-seats-form-group > label > select {
    margin-top: 0;
    width: 100%;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats .checkout-seats-form-group > label > .checkout-qty-control {
    margin-top: 0;
    justify-self: start;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls label {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    margin-bottom: 0;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls label > select {
    margin-top: 0;
    min-height: 44px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats.checkout-flow--seat-map .checkout-recipient-details-controls label > .checkout-qty-control {
    margin-top: 0;
    justify-self: start;
  }
}

@media (min-width: 1280px) {
  .modal-dialog:not(.modal-dialog--compact) .modal-step--event {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-areas:
      "header header"
      "event image"
      "sessions image"
      "actions actions"
      "internal ."
      "related .";
    row-gap: 18px;
    column-gap: 24px;
    align-items: stretch;
    min-height: clamp(680px, calc(100dvh - 210px), 920px);
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event:not(.has-event-image) {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-areas:
      "header"
      "event"
      "sessions"
      "actions"
      "internal"
      "related";
    min-height: 0;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event > .modal-header {
    grid-area: header;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event > .event-description-card {
    grid-area: event;
    margin: 0;
    align-self: start;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event > .event-hero-media {
    grid-area: image;
    margin: 0;
    justify-self: end;
    align-self: start;
    width: min(100%, 360px);
    min-height: 0;
    height: auto;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event > .event-hero-media .event-hero-image-card {
    width: 100%;
    min-height: 0;
    height: auto;
    aspect-ratio: 1 / 1;
    max-height: 360px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event > .session-picker {
    grid-area: sessions;
    margin: 0;
    align-self: start;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event > .modal-actions {
    grid-area: actions;
    align-self: start;
    margin-top: 0;
    padding-top: 8px;
    padding-bottom: 10px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event > [data-event-internal-links] {
    grid-area: internal;
    margin: 0;
    width: min(100%, 520px);
    justify-self: start;
    align-self: start;
    padding: 12px 13px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event > [data-event-related-links] {
    grid-area: related;
    margin: 0;
    width: min(100%, 620px);
    justify-self: start;
    align-self: start;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event > [data-event-internal-links] .link-chip-list {
    gap: 6px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event > [data-event-internal-links] .link-chip {
    padding: 5px 9px;
    font-size: 11px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event.has-event-address {
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-areas:
      "header header"
      "event image"
      "sessions address"
      "actions actions"
      "internal ."
      "related .";
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event.has-event-address > [data-event-venue-address] {
    grid-area: address;
    margin: 0;
    width: min(100%, 360px);
    justify-self: end;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event.has-event-address:not(.has-event-image) {
    grid-template-rows: auto auto auto auto auto auto auto;
    grid-template-areas:
      "header"
      "event"
      "sessions"
      "actions"
      "address"
      "internal"
      "related";
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--event.has-event-address:not(.has-event-image) > [data-event-venue-address] {
    grid-area: address;
    width: min(100%, 620px);
    justify-self: start;
  }

  .event-route-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-areas:
      "header header"
      "event image"
      "sessions image"
      "actions actions"
      "internal ."
      "related .";
    row-gap: 18px;
    column-gap: 24px;
    align-items: stretch;
  }

  .event-route-shell:not(.has-event-image) {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-areas:
      "header"
      "event"
      "sessions"
      "actions"
      "internal"
      "related";
  }

  .event-route-shell > .modal-header {
    grid-area: header;
  }

  .event-route-shell > .event-description-card {
    grid-area: event;
    margin: 0;
    align-self: start;
  }

  .event-route-shell > .event-hero-media {
    grid-area: image;
    margin: 0;
    justify-self: end;
    align-self: start;
    width: min(100%, 360px);
  }

  .event-route-shell > .event-hero-media .event-hero-image-card {
    width: 100%;
    min-height: 0;
    height: auto;
    aspect-ratio: 1 / 1;
    max-height: 360px;
  }

  .event-route-shell > .session-picker {
    grid-area: sessions;
    margin: 0;
    align-self: start;
  }

  .event-route-shell > .modal-actions {
    grid-area: actions;
    align-self: start;
    margin-top: 0;
    padding-top: 8px;
    padding-bottom: 10px;
  }

  .event-route-shell > [data-event-internal-links] {
    grid-area: internal;
    margin: 0;
    width: min(100%, 520px);
    align-self: start;
    justify-self: start;
    padding: 12px 13px;
  }

  .event-route-shell.has-event-address {
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-areas:
      "header header"
      "event image"
      "sessions address"
      "actions actions"
      "internal ."
      "related .";
  }

  .event-route-shell.has-event-address > [data-event-venue-address] {
    grid-area: address;
    margin: 0;
    width: min(100%, 360px);
    align-self: start;
    justify-self: end;
  }

  .event-route-shell.has-event-address:not(.has-event-image) {
    grid-template-rows: auto auto auto auto auto auto auto;
    grid-template-areas:
      "header"
      "event"
      "sessions"
      "actions"
      "address"
      "internal"
      "related";
  }

  .event-route-shell.has-event-address:not(.has-event-image) > [data-event-venue-address] {
    grid-area: address;
    width: min(100%, 620px);
    justify-self: start;
  }

  .event-route-shell > [data-event-related-links] {
    grid-area: related;
    margin: 0;
    width: min(100%, 620px);
    align-self: start;
    justify-self: start;
  }

  .event-route-shell > [data-event-internal-links] .link-chip-list {
    gap: 6px;
  }

  .event-route-shell > [data-event-internal-links] .link-chip {
    padding: 5px 9px;
    font-size: 11px;
  }

  .tickets-route-shell {
    display: grid;
    grid-template-rows: auto 1fr;
    row-gap: 20px;
    align-items: start;
  }

  .tickets-route-shell > .checkout-seats-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 420px);
    column-gap: clamp(22px, 3vw, 48px);
    align-items: start;
  }

  .tickets-route-shell > .checkout-seats-shell > [data-seats-left-col] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
  }

  .tickets-route-shell > .checkout-seats-shell > [data-checkout-footer] {
    position: sticky;
    top: 104px;
    align-self: start;
  }

  .tickets-route-shell.checkout-flow--seat-map > .checkout-seats-shell {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 430px);
    column-gap: clamp(28px, 3.6vw, 64px);
  }

  .tickets-route-shell.checkout-flow--seat-map .la-scala-hall-map {
    grid-column: 1;
    display: grid;
    justify-items: center;
    align-self: start;
    max-width: 100%;
    min-height: 0;
    padding: 0;
  }

  .tickets-route-shell.checkout-flow--seat-map .la-scala-hall-map__frame {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
    min-height: 0;
  }

  .tickets-route-shell.checkout-flow--seat-map > .checkout-seats-shell > [data-seats-left-col] {
    grid-column: 2;
    width: 100%;
  }

  .checkout-route-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 0.82fr);
    grid-template-rows: auto auto auto;
    grid-template-areas:
      "header header"
      "summary payment"
      "actions actions";
    column-gap: 22px;
    row-gap: 16px;
    align-items: start;
  }

  .checkout-route-shell > .modal-header {
    grid-area: header;
  }

  .checkout-route-shell > [data-order-summary] {
    grid-area: summary;
    margin: 0;
  }

  .checkout-route-shell > [data-payment-form] {
    grid-area: payment;
    margin: 0;
    position: sticky;
    top: 104px;
  }

  .checkout-route-shell > .modal-actions {
    grid-area: actions;
    margin: 0;
    padding-top: 0;
  }

  .checkout-route-shell.checkout-flow--seat-map {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas:
      "header header"
      "payment summary"
      "actions actions";
  }

  .checkout-route-shell.checkout-flow--seat-map > [data-order-summary] {
    align-self: start;
  }

  .account-offer-payment-layout {
    grid-template-rows: auto auto;
    grid-template-areas:
      "header header"
      "summary payment";
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats {
    display: grid;
    grid-template-rows: auto 1fr;
    row-gap: 22px;
    align-items: start;
    min-height: clamp(560px, calc(100dvh - 280px), 780px);
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats > .modal-header {
    margin-bottom: 0;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats > .checkout-seats-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 420px);
    gap: clamp(24px, 3vw, 48px);
    align-items: start;
    min-height: 0;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats > .checkout-seats-shell > [data-seats-left-col] {
    margin: 0;
    min-width: 0;
    display: grid;
    gap: 14px;
    align-content: start;
    max-height: calc(100dvh - 260px);
    overflow: auto;
    padding-right: 6px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats > .checkout-seats-shell > [data-checkout-footer] {
    margin: 0;
    position: sticky;
    top: 10px;
    align-self: start;
    max-height: calc(100dvh - 260px);
    overflow: auto;
    padding: 20px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats.checkout-flow--seat-map > .checkout-seats-shell {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 430px);
    column-gap: clamp(28px, 3.6vw, 64px);
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats.checkout-flow--seat-map .la-scala-hall-map {
    grid-column: 1;
    display: grid;
    justify-items: center;
    align-self: start;
    max-width: 100%;
    min-height: 0;
    padding: 0;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats.checkout-flow--seat-map .la-scala-hall-map__frame {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
    min-height: 0;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats.checkout-flow--seat-map > .checkout-seats-shell > [data-seats-left-col] {
    grid-column: 2;
    width: 100%;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats .checkout-order-panel .checkout-consents {
    margin: 0;
    gap: 12px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout {
    display: grid;
    grid-template-columns: minmax(0, 1.34fr) minmax(320px, 0.66fr);
    grid-template-areas:
      "header header"
      "summary payment"
      "actions actions";
    row-gap: 22px;
    column-gap: 30px;
    align-items: start;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout > .modal-header {
    grid-area: header;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout > [data-order-summary] {
    grid-area: summary;
    margin: 0;
    align-self: stretch;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout > [data-payment-form] {
    grid-area: payment;
    margin: 0;
    position: sticky;
    top: 10px;
    align-self: start;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout > .modal-actions {
    grid-area: actions;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout.checkout-flow--seat-map {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas:
      "header header"
      "payment summary"
      "actions actions";
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout.checkout-flow--seat-map > [data-order-summary] {
    align-self: start;
  }
}

@media (min-width: 1025px) and (max-width: 1279px) {
  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats,
  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout {
    gap: 16px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats > .checkout-seats-shell {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.92fr);
    gap: 20px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats.checkout-flow--seat-map > .checkout-seats-shell {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 360px);
    column-gap: 28px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(300px, 0.8fr);
    grid-template-areas:
      "header header"
      "summary payment"
      "actions actions";
    row-gap: 18px;
    column-gap: 22px;
    align-items: start;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout > .modal-header {
    grid-area: header;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout > [data-order-summary] {
    grid-area: summary;
    min-height: clamp(380px, 54vh, 560px);
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout > [data-payment-form] {
    grid-area: payment;
    position: sticky;
    top: 8px;
    align-self: start;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout > .modal-actions {
    grid-area: actions;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--checkout.checkout-flow--seat-map {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas:
      "header header"
      "payment summary"
      "actions actions";
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats > .checkout-seats-shell > [data-seats-left-col] {
    max-height: calc(100dvh - 280px);
    overflow: auto;
    padding-right: 4px;
  }

  .modal-dialog:not(.modal-dialog--compact) .modal-step--seats > .checkout-seats-shell > [data-checkout-footer] {
    top: 8px;
    max-height: calc(100dvh - 280px);
    padding: 18px;
  }
}

@media (max-width: 1024px) {
  .checkout-final-summary-card {
    min-height: 0;
    padding: 18px;
  }

  .checkout-final-summary-title {
    font-size: 24px;
  }

  .checkout-final-summary-total strong {
    font-size: 30px;
  }

  .checkout-payment-panel {
    padding: 0;
  }

  .checkout-payment-option {
    padding: 14px;
  }

}

@media (max-width: 900px) {
  .checkout-payment-card--revolut::after {
    right: -12%;
    top: 18%;
    width: 68%;
    height: 64%;
    opacity: 0.72;
  }
}

@media (max-width: 720px) {
  .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-head {
    display: grid;
    gap: 6px;
  }

  .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-meta {
    text-align: left;
  }

  .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 5px;
  }

  .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row strong {
    text-align: left;
  }

  .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* compact notifications: keep desktop-like proportions and clean header surface */
.modal-dialog--compact .modal-body {
  flex: 0 1 auto;
}

.modal-dialog--compact .modal-body > div > .modal-header:first-child {
  position: static;
  top: auto;
  background: transparent;
  backdrop-filter: none;
}

.modal-dialog--compact .modal-body .modal-actions {
  margin-top: 0;
  position: static;
  background: transparent;
  padding-top: 10px;
  padding-bottom: 0;
}

@media (max-width: 768px) {
  .modal-dialog--compact {
    width: min(460px, calc(100vw - 20px));
    height: auto;
    max-height: min(78dvh, calc(100dvh - 20px));
    align-self: center;
  }

  .modal-dialog--compact .modal-top {
    min-height: 48px;
    padding: 8px 10px 2px;
  }

  .modal-dialog--compact .modal-body {
    padding: 12px 14px 14px;
    overflow: auto;
  }

  .modal-dialog--compact .modal-body > div {
    min-height: auto;
    gap: 10px;
    padding-bottom: 0;
  }

  .modal-dialog--compact .modal-success {
    padding: 0 2px 4px;
  }

  .modal-dialog--compact .modal-title {
    margin: 0 0 4px;
    font-size: 22px;
  }

  .modal-dialog--compact .modal-subtitle {
    font-size: 14px;
    line-height: 1.4;
  }

  .modal-dialog--compact .modal-success__actions {
    margin-top: 6px;
  }

  .modal-dialog--compact .modal-actions {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    padding: 0;
  }

  .modal-dialog--compact .modal-actions .btn {
    width: auto;
    min-width: 124px;
    min-height: 40px;
    padding: 9px 14px;
  }
}

@media (max-width: 480px) {
  .modal-dialog--compact {
    width: min(420px, calc(100vw - 16px));
    max-height: min(74dvh, calc(100dvh - 16px));
  }

  .modal-dialog--compact .modal-title {
    font-size: 20px;
  }

  .modal-dialog--compact .modal-subtitle {
    font-size: 13px;
  }
}

/* accessibility: reduce motion */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { transition: none; transform: none; opacity: 1; }
  .btn, .card, .faq-item { transition: none; }
  body { transition: none; opacity: 1; }
}

/* verify email page */
.verify-email-page .site-header {
  position: sticky;
  top: 0;
  z-index: 30;
}

.verify-email-main {
  min-height: calc(100dvh - 86px);
  display: flex;
  align-items: center;
}

.verify-email-card {
  max-width: 680px;
  margin: 0 auto;
  padding: clamp(20px, 3vw, 36px);
  display: grid;
  gap: 14px;
}

.verify-email-title {
  margin: 0;
  font-size: clamp(30px, 4.2vw, 40px);
}

.verify-email-text {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.verify-email-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  padding-top: 8px;
}

@media (max-width: 640px) {
  .verify-email-main {
    min-height: calc(100dvh - 72px);
    align-items: flex-start;
  }

  .verify-email-card {
    margin-top: 16px;
  }

  .verify-email-actions .btn {
    width: 100%;
  }
}

/* reset password page */
.reset-password-page .site-header {
  position: sticky;
  top: 0;
  z-index: 30;
}

.reset-password-main {
  min-height: calc(100dvh - 86px);
  display: flex;
  align-items: center;
}

.reset-password-card {
  max-width: 680px;
  margin: 0 auto;
  padding: clamp(20px, 3vw, 36px);
  display: grid;
  gap: 14px;
}

.reset-password-title {
  margin: 0;
  font-size: clamp(30px, 4.2vw, 40px);
}

.reset-password-text {
  margin: 0;
  color: var(--text-soft);
  line-height: 1.5;
}

.reset-password-form {
  display: grid;
  gap: 8px;
}

.reset-password-form .btn {
  width: fit-content;
  min-width: 190px;
  margin-top: 6px;
}

.reset-password-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding-top: 8px;
}

@media (max-width: 640px) {
  .reset-password-main {
    min-height: calc(100dvh - 72px);
    align-items: flex-start;
  }

  .reset-password-card {
    margin-top: 16px;
  }

  .reset-password-form .btn {
    width: 100%;
    min-width: 0;
  }

  .reset-password-actions .btn {
    width: 100%;
  }
}

/* iOS Safari: prevent auto-zoom on focus for small form controls */
@supports (-webkit-touch-callout: none) {
  @media (max-width: 900px) {
    input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="color"]):not([type="hidden"]),
    textarea,
    select {
      font-size: 16px !important;
      line-height: 1.25;
    }

    .filters-row select,
    .filters-row input[type="date"],
    .filters-row input[type="text"],
    .filters-row input[type="number"],
    #all-events-view .all-events-filters > select,
    #all-events-view .all-events-filters > input[type="text"],
    #events .events-controls-row .filters-row > *,
    .modal-dialog .form input,
    .modal-dialog .form textarea,
    .modal-dialog .form select {
      min-height: 44px;
    }
  }
}

/* SEO static cluster pages */
.seo-guide-page .site-header {
  position: sticky;
  top: 0;
  z-index: 40;
}

.seo-guide-hero {
  padding-top: 48px;
  padding-bottom: 28px;
}

.seo-guide-page--la-scala .seo-guide-hero {
  padding-top: 60px;
  padding-bottom: 52px;
  min-height: clamp(520px, calc(100svh - 76px), 860px);
  position: relative;
  display: flex;
  align-items: center;
  isolation: isolate;
  overflow: hidden;
}

.seo-guide-page--la-scala {
  --la-gold-rgb: 201, 173, 126;
  --la-gold-line: rgba(var(--la-gold-rgb), 0.4);
  --la-gold-soft: rgba(var(--la-gold-rgb), 0.16);
  --la-gold-glow: rgba(194, 165, 114, 0.24);
  --la-gold-text: #dec9a3;
}

.seo-guide-page--la-scala .seo-guide-hero > .container {
  position: relative;
  z-index: 3;
}

.seo-guide-page--la-scala .seo-guide-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 78% 21%, var(--la-gold-soft) 0%, rgba(var(--la-gold-rgb), 0.04) 28%, rgba(var(--la-gold-rgb), 0) 56%),
    radial-gradient(circle at 26% 44%, rgba(6, 12, 34, 0.08) 0%, rgba(6, 12, 34, 0.34) 62%, rgba(6, 12, 34, 0.56) 100%);
  pointer-events: none;
  z-index: 1;
}

.seo-guide-page--la-scala .seo-guide-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/assets/venues/la-scala-hero-pictogram.png") center center / contain no-repeat;
  opacity: 0.11;
  filter:
    blur(1.2px)
    saturate(0.88)
    brightness(0.84)
    sepia(0.06)
    hue-rotate(-8deg)
    drop-shadow(0 24px 54px rgba(50, 82, 170, 0.22))
    drop-shadow(0 22px 44px rgba(var(--la-gold-rgb), 0.15));
  pointer-events: none;
  z-index: 0;
}

.seo-guide-page--la-scala .seo-breadcrumbs__link {
  transition: color 0.2s ease;
}

.seo-guide-page--la-scala .seo-breadcrumbs__link:hover {
  color: var(--la-gold-text);
}

.seo-guide-page--la-scala .seo-breadcrumbs__current {
  color: #d7d4d8;
}

.seo-guide-page--la-scala .pill {
  border-color: var(--la-gold-line);
  color: #d7c8ab;
  background:
    radial-gradient(circle at 84% -18%, rgba(var(--la-gold-rgb), 0.16) 0%, rgba(var(--la-gold-rgb), 0) 58%),
    rgba(15, 23, 42, 0.9);
  box-shadow: inset 0 0 0 1px rgba(var(--la-gold-rgb), 0.12);
}

.seo-venue-back-row {
  margin-bottom: 10px;
}

.seo-venue-back-btn {
  min-height: 34px;
  padding: 6px 12px;
  font-size: 12px;
  line-height: 1.2;
}

.seo-guide-page--la-scala .seo-venue-back-btn {
  border-color: rgba(var(--la-gold-rgb), 0.42);
  color: #e6d4b3;
  background:
    radial-gradient(circle at 82% -18%, rgba(var(--la-gold-rgb), 0.16) 0%, rgba(var(--la-gold-rgb), 0) 56%),
    rgba(15, 23, 42, 0.86);
}

.seo-guide-page--la-scala .seo-venue-back-btn:hover {
  border-color: rgba(var(--la-gold-rgb), 0.62);
  color: #f3e4c8;
  background: rgba(42, 30, 14, 0.26);
}

.seo-guide-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  gap: 20px;
  align-items: start;
}

.seo-guide-hero-grid--single {
  grid-template-columns: minmax(0, 1fr);
}

.seo-venue-hero-grid {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
  gap: clamp(22px, 3.2vw, 42px);
  align-items: end;
}

.seo-venue-hero-main {
  max-width: 900px;
}

.seo-guide-hero-grid h1 {
  margin-top: 12px;
}

.seo-guide-page--la-scala .seo-guide-hero-grid h1 {
  margin-bottom: 12px;
  max-width: 19ch;
  line-height: 1.04;
}

.seo-guide-hero-actions {
  margin-top: 18px;
}

.seo-venue-hero-caption {
  margin: 12px 0 0;
  color: rgba(201, 218, 255, 0.78);
  font-size: 14px;
  line-height: 1.45;
  max-width: 66ch;
}

.seo-venue-facts-strip {
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.seo-venue-fact {
  border: 1px solid rgba(132, 175, 255, 0.32);
  border-radius: 12px;
  padding: 10px 12px;
  background: linear-gradient(165deg, rgba(11, 24, 60, 0.72), rgba(6, 15, 40, 0.5));
  box-shadow: inset 0 0 0 1px rgba(124, 164, 255, 0.08);
}

.seo-guide-page--la-scala .seo-venue-fact {
  border-color: rgba(141, 172, 237, 0.32);
  background:
    radial-gradient(circle at 108% -16%, rgba(var(--la-gold-rgb), 0.14) 0%, rgba(var(--la-gold-rgb), 0) 56%),
    linear-gradient(165deg, rgba(11, 24, 60, 0.72), rgba(6, 15, 40, 0.5));
  box-shadow:
    inset 0 0 0 1px rgba(124, 164, 255, 0.08),
    inset 0 0 0 2px rgba(var(--la-gold-rgb), 0.06);
}

.seo-venue-fact-label {
  display: block;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(176, 199, 255, 0.76);
  margin-bottom: 4px;
}

.seo-guide-page--la-scala .seo-venue-fact-label {
  color: rgba(var(--la-gold-rgb), 0.88);
}

.seo-venue-fact-value {
  display: block;
  color: #e8f0ff;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 600;
}

.seo-venue-hero-panel {
  align-self: stretch;
  border: 1px solid rgba(145, 184, 255, 0.42);
  border-radius: 18px;
  padding: clamp(16px, 1.8vw, 22px);
  background:
    radial-gradient(circle at 18% 16%, rgba(118, 156, 255, 0.24) 0%, rgba(118, 156, 255, 0) 56%),
    linear-gradient(165deg, rgba(10, 22, 56, 0.92), rgba(7, 15, 39, 0.9));
  box-shadow:
    inset 0 0 0 1px rgba(130, 172, 255, 0.16),
    0 22px 56px rgba(1, 8, 30, 0.42);
  display: grid;
  align-content: start;
  gap: 12px;
}

.seo-guide-page--la-scala .seo-venue-hero-panel {
  border-color: rgba(149, 177, 233, 0.42);
  background:
    radial-gradient(circle at 12% 12%, rgba(var(--la-gold-rgb), 0.2) 0%, rgba(var(--la-gold-rgb), 0) 44%),
    radial-gradient(circle at 18% 16%, rgba(118, 156, 255, 0.24) 0%, rgba(118, 156, 255, 0) 56%),
    linear-gradient(165deg, rgba(10, 22, 56, 0.92), rgba(7, 15, 39, 0.9));
  box-shadow:
    inset 0 0 0 1px rgba(var(--la-gold-rgb), 0.12),
    inset 0 0 0 2px rgba(130, 172, 255, 0.12),
    0 22px 56px rgba(1, 8, 30, 0.42);
}

.seo-guide-page--la-scala .seo-venue-hero-panel-list {
  gap: 12px;
  font-size: clamp(16px, 1vw, 18px);
  line-height: 1.55;
}

.seo-guide-page--la-scala .seo-venue-hero-panel-note {
  margin-top: 6px;
  padding-top: 16px;
  font-size: clamp(15px, 0.92vw, 17px);
  line-height: 1.55;
}

.seo-venue-hero-panel-kicker {
  margin: 0;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(184, 208, 255, 0.75);
}

.seo-guide-page--la-scala .seo-venue-hero-panel-kicker {
  color: rgba(var(--la-gold-rgb), 0.86);
}

.seo-venue-hero-panel h2 {
  margin: 0;
  font-size: clamp(24px, 2.4vw, 32px);
  line-height: 1.12;
  max-width: 15ch;
}

.seo-venue-hero-panel-list {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 8px;
  color: rgba(205, 220, 255, 0.82);
  font-size: 14px;
  line-height: 1.45;
}

.seo-venue-hero-panel-note {
  margin: 2px 0 0;
  padding-top: 10px;
  border-top: 1px dashed rgba(133, 171, 247, 0.34);
  color: rgba(186, 206, 248, 0.76);
  font-size: 13px;
  line-height: 1.5;
}

.seo-guide-page--la-scala .seo-venue-hero-panel-note {
  border-top-color: rgba(var(--la-gold-rgb), 0.34);
}

.seo-guide-aside {
  border: 1px solid rgba(132, 175, 255, 0.32);
}

.seo-guide-section {
  padding-top: 12px;
  padding-bottom: 12px;
}

.seo-guide-page--la-scala .seo-guide-section {
  padding-top: 28px;
  padding-bottom: 28px;
}

.seo-guide-page--la-scala .seo-guide-section + .seo-guide-section {
  margin-top: 8px;
}

.seo-guide-page--la-scala #la-scala-events {
  scroll-margin-top: 88px;
}

.seo-guide-section--compact {
  padding-top: 4px;
}

.seo-guide-page--la-scala .seo-guide-section--compact {
  padding-top: 18px;
  padding-bottom: 34px;
}

.seo-guide-page--la-scala .seo-guide-section--events-focus {
  padding-top: 34px;
  padding-bottom: 34px;
}

.seo-guide-page--la-scala .seo-guide-section--light {
  padding-top: 20px;
  padding-bottom: 20px;
}

.seo-guide-page--la-scala .seo-guide-section--faq-light {
  padding-top: 24px;
  padding-bottom: 22px;
}

.seo-guide-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.seo-guide-grid--two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.seo-guide-grid--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.seo-guide-grid--four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.seo-guide-card,
.seo-guide-mini-card {
  height: 100%;
}

.seo-venue-context-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 16px;
}

.seo-venue-context-card {
  border: 1px solid rgba(123, 165, 246, 0.3);
  border-radius: 16px;
  padding: clamp(16px, 1.8vw, 24px);
  background: linear-gradient(166deg, rgba(9, 21, 53, 0.72), rgba(5, 13, 36, 0.52));
}

.seo-guide-page--la-scala .seo-venue-context-card--about {
  position: relative;
  overflow: hidden;
}

.seo-guide-page--la-scala .seo-venue-context-card--about::before {
  content: "";
  position: absolute;
  left: 14px;
  right: 14px;
  top: -1px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(var(--la-gold-rgb), 0.05) 0%, rgba(var(--la-gold-rgb), 0.55) 48%, rgba(var(--la-gold-rgb), 0.08) 100%);
  pointer-events: none;
}

.seo-venue-context-card--why {
  background: linear-gradient(162deg, rgba(8, 20, 50, 0.86), rgba(6, 14, 38, 0.62));
  border-color: rgba(139, 178, 255, 0.42);
  box-shadow: inset 0 0 0 1px rgba(120, 163, 253, 0.14);
}

.seo-venue-context-card h2 {
  margin-bottom: 10px;
}

.seo-venue-events-header {
  gap: 8px;
}

.seo-guide-page--la-scala .seo-venue-events-header > p {
  color: rgba(var(--la-gold-rgb), 0.88);
}

.seo-venue-events-status-actions {
  margin: -4px 0 12px;
}

.seo-venue-section-kicker {
  display: inline-flex;
  width: fit-content;
  margin-bottom: 2px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(136, 175, 255, 0.42);
  background: rgba(14, 30, 68, 0.78);
  color: rgba(188, 211, 255, 0.88);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
}

.seo-guide-page--la-scala .seo-venue-section-kicker {
  border-color: rgba(var(--la-gold-rgb), 0.5);
  color: rgba(var(--la-gold-rgb), 0.9);
  background:
    radial-gradient(circle at 86% -18%, rgba(var(--la-gold-rgb), 0.16) 0%, rgba(var(--la-gold-rgb), 0) 56%),
    rgba(14, 30, 68, 0.78);
  box-shadow: inset 0 0 0 1px rgba(var(--la-gold-rgb), 0.1);
}

.seo-venue-events-shell {
  position: relative;
  margin-top: 12px;
  padding: clamp(14px, 1.9vw, 20px);
  border-radius: 18px;
  border: 1px solid rgba(139, 178, 255, 0.38);
  background:
    radial-gradient(circle at 16% 14%, rgba(110, 151, 252, 0.18) 0%, rgba(110, 151, 252, 0) 52%),
    linear-gradient(160deg, rgba(8, 19, 48, 0.84), rgba(6, 14, 37, 0.8));
  box-shadow:
    inset 0 0 0 1px rgba(120, 162, 248, 0.12),
    0 24px 48px rgba(2, 9, 28, 0.42);
}

.seo-guide-page--la-scala .seo-venue-events-shell {
  border-color: rgba(150, 180, 238, 0.34);
  background:
    radial-gradient(circle at 92% 10%, rgba(var(--la-gold-rgb), 0.16) 0%, rgba(var(--la-gold-rgb), 0) 52%),
    radial-gradient(circle at 16% 14%, rgba(110, 151, 252, 0.18) 0%, rgba(110, 151, 252, 0) 52%),
    linear-gradient(160deg, rgba(8, 19, 48, 0.84), rgba(6, 14, 37, 0.8));
  box-shadow:
    inset 0 0 0 1px rgba(var(--la-gold-rgb), 0.08),
    inset 0 0 0 2px rgba(120, 162, 248, 0.1),
    0 24px 48px rgba(2, 9, 28, 0.42);
}

.seo-venue-events-slider {
  overflow: hidden;
  --slider-edge-fade: 0px;
}

.seo-venue-events-slider::before,
.seo-venue-events-slider::after {
  content: none;
}

.seo-venue-events-track {
  --venues-gap: 20px;
  padding: 0 0 6px;
  -webkit-mask-image: none;
  mask-image: none;
}

.seo-guide-page--la-scala .seo-venue-events-track {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.seo-guide-page--la-scala .seo-venue-events-track::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}

.seo-venue-events-shell .lascala-connected-scroll-line {
  margin: 6px 0 0;
  width: 100%;
}

.seo-venue-events-track .card {
  flex: 0 0 min(360px, calc((100% - (var(--venues-gap) * 2)) / 3));
  scroll-snap-align: start;
}

.seo-venue-events-track .seo-venue-event-card {
  display: flex;
  flex-direction: column;
  padding: 16px;
  border: 1px solid rgba(130, 168, 241, 0.3);
  background: linear-gradient(170deg, rgba(10, 22, 56, 0.9), rgba(7, 16, 42, 0.8));
}

.seo-venue-events-track .seo-venue-event-card--featured {
  border-color: rgba(154, 193, 255, 0.62);
  background:
    radial-gradient(circle at 84% 10%, rgba(126, 166, 255, 0.24) 0%, rgba(126, 166, 255, 0) 48%),
    linear-gradient(168deg, rgba(13, 27, 63, 0.96), rgba(7, 15, 40, 0.88));
  box-shadow:
    inset 0 0 0 1px rgba(156, 194, 255, 0.24),
    0 20px 42px rgba(2, 10, 33, 0.44);
}

.seo-guide-page--la-scala .seo-venue-events-track .seo-venue-event-card--featured {
  border-color: rgba(var(--la-gold-rgb), 0.58);
  background:
    radial-gradient(circle at 84% 10%, rgba(var(--la-gold-rgb), 0.24) 0%, rgba(var(--la-gold-rgb), 0) 48%),
    radial-gradient(circle at 20% 0%, rgba(126, 166, 255, 0.14) 0%, rgba(126, 166, 255, 0) 44%),
    linear-gradient(168deg, rgba(13, 27, 63, 0.96), rgba(7, 15, 40, 0.88));
  box-shadow:
    inset 0 0 0 1px rgba(var(--la-gold-rgb), 0.22),
    0 20px 42px rgba(2, 10, 33, 0.44),
    0 0 30px var(--la-gold-glow);
}

.seo-guide-page--la-scala .seo-venue-events-track .seo-venue-event-card--featured .event-tag {
  background: rgba(var(--la-gold-rgb), 0.18);
  color: #e8d3ae;
}

.seo-guide-page--la-scala .seo-venue-events-track .seo-venue-event-card--featured .btn-outline {
  border-color: rgba(var(--la-gold-rgb), 0.46);
  color: #ecd8b7;
  background: rgba(27, 22, 13, 0.22);
}

.seo-guide-page--la-scala .seo-venue-events-track .seo-venue-event-card--featured .btn-outline:hover {
  border-color: rgba(var(--la-gold-rgb), 0.64);
  background: rgba(42, 30, 14, 0.34);
  color: #f5e6cb;
}

.seo-venue-events-track .seo-venue-event-card h3 {
  margin-bottom: 10px;
  font-size: 20px;
  line-height: 1.15;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.seo-venue-events-track .seo-venue-event-card .event-meta {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: rgba(226, 232, 240, 0.79);
  font-size: 16px;
  font-weight: 550;
  line-height: 1.48;
  margin-bottom: 0;
}

.seo-venue-events-track .seo-venue-event-card .event-price {
  margin-top: 8px;
  margin-bottom: 6px;
}

.seo-venue-events-track .seo-venue-event-card .btn {
  margin-top: auto;
}

@media (max-width: 900px) {
  .seo-venue-events-track .card {
    flex: 0 0 min(420px, calc((100% - var(--venues-gap)) / 2));
  }
}

@media (max-width: 640px) {
  .seo-venue-events-track .card {
    flex: 0 0 calc(100% - 2px);
    max-width: 100%;
  }

  .seo-venue-events-shell .lascala-connected-scroll-line {
    margin: 6px 0 0;
    width: 100%;
    height: 12px;
  }

  .seo-venue-events-shell .lascala-connected-scroll-line::before {
    top: 5px;
  }

  .seo-venue-events-shell .lascala-connected-scroll-line .connected-scroll-line-fill {
    top: 4px;
    height: 4px;
  }
}

.seo-guide-card h2,
.seo-guide-mini-card h3 {
  margin-bottom: 10px;
}

.seo-guide-page--attendance .seo-guide-grid--two {
  gap: 18px;
}

.seo-guide-page--attendance .seo-guide-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: clamp(18px, 1.9vw, 26px);
  min-height: 100%;
}

.seo-guide-page--attendance .seo-guide-card h2 {
  margin: 0;
  line-height: 1.2;
}

.seo-guide-page--attendance .seo-guide-card .seo-guide-list {
  width: 100%;
  margin: 0;
  gap: 9px;
}

.seo-guide-page--attendance .seo-guide-card .seo-guide-list li {
  line-height: 1.5;
}

.seo-guide-page--attendance .seo-guide-card > .btn {
  margin-top: auto;
  align-self: flex-start;
  min-height: 40px;
}

.seo-guide-list {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 8px;
  color: var(--muted);
}

.seo-guide-list a {
  color: var(--text);
  text-decoration: underline;
  text-decoration-color: rgba(130, 164, 255, 0.54);
  text-underline-offset: 3px;
}

.seo-guide-list a:hover {
  text-decoration-color: rgba(130, 164, 255, 0.92);
}

.seo-disclosure-note {
  margin-top: 12px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.5;
}

.seo-breadcrumbs--static {
  margin-bottom: 10px;
}

.seo-guide-cta-card {
  border: 1px solid rgba(132, 175, 255, 0.35);
}

.seo-guide-cta-card h2 {
  margin-bottom: 12px;
}

.seo-guide-page--la-scala .seo-guide-cta-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: clamp(16px, 1.7vw, 24px);
}

.seo-guide-page--la-scala .seo-guide-cta-card h2 {
  margin: 0;
  line-height: 1.14;
}

.seo-guide-page--la-scala .seo-guide-cta-card .link-chip-list {
  width: 100%;
  margin: 0;
  align-items: center;
  align-content: flex-start;
  justify-content: flex-start;
  gap: 9px 8px;
}

.seo-guide-page--la-scala .seo-guide-cta-card .link-chip {
  min-height: 30px;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  vertical-align: middle;
}

.seo-venue-practical-card {
  border: 1px solid rgba(120, 161, 240, 0.28);
  border-radius: 16px;
  padding: clamp(16px, 1.7vw, 24px);
  background: linear-gradient(165deg, rgba(8, 19, 48, 0.68), rgba(6, 15, 40, 0.48));
}

.seo-venue-practical-card h2 {
  margin-bottom: 4px;
}

.seo-venue-practical-subtitle {
  margin: 0 0 10px;
  color: rgba(188, 210, 251, 0.76);
  font-size: 14px;
}

.seo-venue-assistance-grid {
  gap: 12px;
}

.seo-venue-commercial-grid {
  margin-top: 12px;
  gap: 10px;
}

.seo-venue-step-card {
  border: 1px solid rgba(120, 161, 241, 0.26);
  border-radius: 14px;
  padding: 14px 15px;
  background: rgba(8, 18, 46, 0.5);
}

.seo-guide-page--la-scala .faq-list {
  max-width: 920px;
}

.seo-guide-page--la-scala .faq-item {
  background: rgba(10, 20, 49, 0.62);
  border-color: rgba(121, 159, 237, 0.3);
  padding: 12px 14px;
}

.seo-guide-page--la-scala .faq-item p {
  border-color: rgba(var(--la-gold-rgb), 0.28);
  background:
    radial-gradient(circle at 88% 6%, rgba(var(--la-gold-rgb), 0.09) 0%, rgba(var(--la-gold-rgb), 0) 56%),
    linear-gradient(170deg, rgba(12, 24, 56, 0.6), rgba(9, 17, 42, 0.5));
}

.seo-venue-disclaimer-card .seo-disclosure-note {
  margin: 0;
}

.seo-map-block {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(290px, 420px);
  gap: 22px;
  align-items: stretch;
}

.seo-map-block__content {
  display: grid;
  gap: 12px;
  align-content: center;
}

.seo-map-block__content h2,
.seo-map-block__content p {
  margin: 0;
}

.seo-map-block__content p {
  color: var(--text-soft);
}

.seo-map-block__address {
  font-weight: 600;
  color: var(--text);
  letter-spacing: 0.01em;
  line-height: 1.45;
}

.seo-map-block__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 4px;
}

.seo-map-block__cta {
  width: fit-content;
  margin-top: 0;
}

.seo-map-block__preview {
  position: relative;
  min-height: 240px;
  border-radius: 16px;
  border: 1px solid rgba(142, 182, 255, 0.34);
  background: linear-gradient(160deg, rgba(8, 18, 45, 0.98), rgba(5, 13, 36, 0.96));
  overflow: hidden;
  box-shadow:
    inset 0 0 0 1px rgba(112, 154, 255, 0.14),
    0 16px 34px rgba(2, 8, 28, 0.48);
}

.seo-guide-page--la-scala .seo-map-block__preview {
  border-color: rgba(146, 176, 234, 0.34);
  box-shadow:
    inset 0 0 0 1px rgba(112, 154, 255, 0.14),
    inset 0 0 0 2px rgba(var(--la-gold-rgb), 0.08),
    0 16px 34px rgba(2, 8, 28, 0.48);
}

.seo-map-block__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 52% 52%;
  transform: scale(1.02);
  filter: saturate(0.82) brightness(0.78) contrast(1.05);
}

.seo-map-block__preview::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(142deg, rgba(4, 10, 28, 0.6) 0%, rgba(4, 11, 30, 0.22) 46%, rgba(4, 10, 27, 0.58) 100%);
  z-index: 1;
}

.seo-map-block__preview::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 60% 46%, rgba(138, 178, 255, 0.16) 0%, rgba(138, 178, 255, 0.04) 26%, transparent 56%),
    radial-gradient(circle at 28% 74%, rgba(90, 146, 244, 0.12) 0%, rgba(90, 146, 244, 0.02) 34%, transparent 60%);
  mix-blend-mode: screen;
  opacity: 0.9;
  z-index: 1;
}

.seo-map-block__pin {
  position: absolute;
  left: 62%;
  top: 52%;
  transform: translate(-50%, -50%);
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 11px;
  border-radius: 999px;
  border: 1px solid rgba(151, 187, 255, 0.52);
  background: linear-gradient(160deg, rgba(9, 21, 52, 0.9), rgba(6, 14, 38, 0.9));
  box-shadow:
    0 10px 28px rgba(1, 8, 29, 0.52),
    inset 0 0 0 1px rgba(117, 159, 255, 0.2);
  color: #e7efff;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.01em;
  z-index: 4;
  isolation: isolate;
}

.seo-guide-page--la-scala .seo-map-block__pin {
  border-color: rgba(var(--la-gold-rgb), 0.52);
  background: linear-gradient(160deg, rgba(30, 23, 12, 0.56), rgba(8, 18, 46, 0.9));
  color: #efddbd;
  box-shadow:
    0 10px 28px rgba(1, 8, 29, 0.52),
    inset 0 0 0 1px rgba(var(--la-gold-rgb), 0.22);
}

.seo-map-block__pin::before {
  content: "";
  position: absolute;
  inset: -14px;
  border-radius: 999px;
  background: radial-gradient(circle at 50% 50%, rgba(132, 173, 255, 0.36) 0%, rgba(132, 173, 255, 0.08) 48%, transparent 74%);
  z-index: -1;
}

.seo-guide-page--la-scala .seo-map-block__pin::before {
  background: radial-gradient(circle at 50% 50%, rgba(var(--la-gold-rgb), 0.38) 0%, rgba(var(--la-gold-rgb), 0.1) 48%, transparent 74%);
}

.seo-map-block__pin-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 30%, #e6f0ff 0%, #9fc1ff 56%, #6c93f0 100%);
  box-shadow: 0 0 0 3px rgba(118, 159, 255, 0.24), 0 0 14px rgba(123, 163, 255, 0.48);
}

.seo-guide-page--la-scala .seo-map-block__pin-dot {
  background: radial-gradient(circle at 30% 30%, #fff4df 0%, #e8c99a 56%, #b8925a 100%);
  box-shadow: 0 0 0 3px rgba(var(--la-gold-rgb), 0.24), 0 0 14px rgba(var(--la-gold-rgb), 0.46);
}

.seo-guide-page--la-scala .seo-map-block__cta:hover {
  border-color: rgba(var(--la-gold-rgb), 0.62);
  color: #f3e4c8;
  background: rgba(42, 30, 14, 0.22);
}

.seo-guide-page--la-scala .link-chip:hover {
  border-color: rgba(var(--la-gold-rgb), 0.56);
  background: rgba(36, 28, 16, 0.26);
  color: #f0dfbe;
}

.seo-guide-page--san-siro {
  --ss-cyan-rgb: 88, 214, 255;
  --ss-blue-rgb: 82, 142, 255;
  --ss-field-rgb: 112, 198, 154;
  --ss-green-rgb: 56, 229, 155;
  --ss-cyan-text: #bceeff;
  --ss-green-text: #9df5ce;
  --ss-green-soft: rgba(56, 229, 155, 0.18);
  --ss-green-line: rgba(56, 229, 155, 0.34);
  --ss-green-glow: rgba(56, 229, 155, 0.22);
}

#venue-view[class*="venue-view--"][class*="-hub"] {
  padding-top: 0;
  padding-bottom: 0;
}

.seo-guide-page--san-siro .seo-guide-hero {
  padding-top: 58px;
  padding-bottom: 48px;
  min-height: clamp(500px, calc(100svh - 78px), 820px);
  position: relative;
  display: flex;
  align-items: center;
  isolation: isolate;
  overflow: hidden;
}

.seo-guide-page--san-siro .seo-guide-hero > .container {
  position: relative;
  z-index: 3;
}

.seo-guide-page--san-siro .seo-guide-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 82% 16%, rgba(var(--ss-cyan-rgb), 0.2) 0%, rgba(var(--ss-cyan-rgb), 0.025) 32%, rgba(var(--ss-cyan-rgb), 0) 62%),
    radial-gradient(circle at 20% 72%, rgba(var(--ss-field-rgb), 0.12) 0%, rgba(var(--ss-field-rgb), 0.015) 34%, transparent 62%),
    linear-gradient(156deg, rgba(5, 16, 46, 0.76), rgba(3, 9, 28, 0.9));
  pointer-events: none;
  z-index: 1;
}

.seo-guide-page--san-siro .seo-guide-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/assets/venues/san-siro-hero-pictogram.png") center 50% / min(88vw, 1080px) no-repeat;
  opacity: 0.42;
  filter:
    blur(0.72px)
    saturate(0.94)
    brightness(1.86)
    contrast(1.27)
    hue-rotate(-6deg)
    drop-shadow(0 0 14px rgba(120, 190, 255, 0.3))
    drop-shadow(0 0 34px rgba(40, 217, 255, 0.18));
  -webkit-mask-image: radial-gradient(ellipse at center, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 48%, rgba(0, 0, 0, 0.72) 66%, rgba(0, 0, 0, 0) 86%);
  mask-image: radial-gradient(ellipse at center, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 48%, rgba(0, 0, 0, 0.72) 66%, rgba(0, 0, 0, 0) 86%);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: min(96vw, 1220px) min(82vw, 980px);
  mask-size: min(96vw, 1220px) min(82vw, 980px);
  pointer-events: none;
  z-index: 0;
}

.seo-guide-page--san-siro .seo-breadcrumbs__link:hover {
  color: var(--ss-cyan-text);
}

.seo-guide-page--san-siro .seo-breadcrumbs__current {
  color: #dbe7ff;
}

.seo-guide-page--san-siro .pill {
  border-color: color-mix(in srgb, var(--ss-green-line) 56%, rgba(var(--ss-cyan-rgb), 0.46));
  color: color-mix(in srgb, var(--ss-green-text) 72%, #d8f3ff);
  background:
    radial-gradient(circle at 12% 12%, var(--ss-green-soft) 0%, rgba(var(--ss-green-rgb), 0) 54%),
    radial-gradient(circle at 84% -14%, rgba(var(--ss-cyan-rgb), 0.16) 0%, rgba(var(--ss-cyan-rgb), 0) 54%),
    rgba(10, 23, 55, 0.92);
  box-shadow:
    inset 0 0 0 1px rgba(var(--ss-cyan-rgb), 0.12),
    inset 0 0 0 2px rgba(var(--ss-green-rgb), 0.08),
    0 0 24px rgba(var(--ss-green-rgb), 0.1);
}

.seo-guide-page--san-siro .seo-venue-back-btn {
  border-color: rgba(var(--ss-cyan-rgb), 0.46);
  color: #c3eaff;
  background:
    radial-gradient(circle at 82% -18%, rgba(var(--ss-cyan-rgb), 0.16) 0%, rgba(var(--ss-cyan-rgb), 0) 56%),
    rgba(10, 22, 52, 0.88);
}

.seo-guide-page--san-siro .seo-venue-back-btn:hover {
  border-color: rgba(var(--ss-cyan-rgb), 0.7);
  color: #e8f7ff;
  background: rgba(10, 32, 70, 0.46);
}

.seo-guide-page--san-siro .seo-guide-hero-grid h1 {
  margin-bottom: 12px;
  max-width: 18ch;
  line-height: 1.04;
}

.seo-guide-page--san-siro .seo-venue-fact {
  position: relative;
  overflow: hidden;
  border-color: rgba(var(--ss-cyan-rgb), 0.3);
  background:
    radial-gradient(circle at 14% -14%, rgba(var(--ss-green-rgb), 0.18) 0%, rgba(var(--ss-green-rgb), 0) 54%),
    radial-gradient(circle at 108% -16%, rgba(var(--ss-blue-rgb), 0.18) 0%, rgba(var(--ss-blue-rgb), 0) 56%),
    linear-gradient(165deg, rgba(9, 23, 58, 0.78), rgba(5, 14, 40, 0.58));
  box-shadow:
    inset 0 0 0 1px rgba(120, 170, 255, 0.1),
    inset 0 0 0 2px rgba(var(--ss-field-rgb), 0.04),
    0 0 0 1px rgba(var(--ss-green-rgb), 0.08);
}

.seo-guide-page--san-siro .seo-venue-fact::before {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  top: -1px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(
    90deg,
    rgba(var(--ss-green-rgb), 0.08) 0%,
    rgba(var(--ss-green-rgb), 0.56) 36%,
    rgba(var(--ss-cyan-rgb), 0.52) 72%,
    rgba(var(--ss-cyan-rgb), 0.08) 100%
  );
  pointer-events: none;
}

.seo-guide-page--san-siro .seo-venue-fact-label {
  color: color-mix(in srgb, var(--ss-green-text) 64%, rgba(var(--ss-cyan-rgb), 0.88));
}

.seo-guide-page--san-siro .seo-venue-hero-panel {
  align-self: flex-start;
  padding: clamp(15px, 1.65vw, 21px);
  gap: 11px;
  border-color: color-mix(in srgb, var(--ss-green-line) 44%, rgba(var(--ss-cyan-rgb), 0.48));
  background:
    radial-gradient(circle at 6% 4%, rgba(var(--ss-green-rgb), 0.18) 0%, rgba(var(--ss-green-rgb), 0) 44%),
    radial-gradient(circle at 10% 12%, rgba(var(--ss-field-rgb), 0.16) 0%, rgba(var(--ss-field-rgb), 0) 44%),
    radial-gradient(circle at 18% 16%, rgba(var(--ss-blue-rgb), 0.28) 0%, rgba(var(--ss-blue-rgb), 0) 56%),
    linear-gradient(165deg, rgba(8, 23, 58, 0.94), rgba(5, 13, 37, 0.92));
  box-shadow:
    inset 0 0 0 1px rgba(var(--ss-cyan-rgb), 0.14),
    inset 0 0 0 2px rgba(var(--ss-green-rgb), 0.09),
    0 0 38px rgba(var(--ss-green-rgb), 0.08),
    0 22px 56px rgba(1, 8, 30, 0.42);
}

.seo-guide-page--san-siro .seo-venue-hero-panel h2 {
  font-size: clamp(22px, 2.15vw, 29px);
  line-height: 1.16;
  max-width: 16ch;
  text-wrap: balance;
}

.seo-guide-page--san-siro .seo-venue-hero-panel-kicker {
  color: color-mix(in srgb, var(--ss-green-text) 76%, rgba(var(--ss-cyan-rgb), 0.86));
}

.seo-guide-page--san-siro .seo-venue-hero-panel-list {
  gap: 10px;
  font-size: clamp(15px, 0.95vw, 17px);
  line-height: 1.52;
}

.seo-guide-page--san-siro .seo-venue-hero-panel-list li::marker {
  color: rgba(var(--ss-green-rgb), 0.9);
}

.seo-guide-page--san-siro .seo-venue-hero-panel-note {
  margin-top: 4px;
  padding-top: 14px;
  font-size: clamp(14px, 0.88vw, 16px);
  line-height: 1.52;
  border-top-color: color-mix(in srgb, var(--ss-green-line) 60%, rgba(var(--ss-cyan-rgb), 0.3));
  color: color-mix(in srgb, rgba(191, 225, 255, 0.78) 72%, var(--ss-green-text));
}

.seo-guide-page--san-siro .seo-guide-hero-actions .btn-primary {
  background: linear-gradient(135deg, #5a53f2 0%, #2bcf92 58%, #28d7ff 100%);
  box-shadow:
    0 12px 30px rgba(79, 70, 229, 0.34),
    0 0 30px rgba(var(--ss-green-rgb), 0.2);
}

.seo-guide-page--san-siro .seo-guide-hero-actions .btn-primary:hover,
.seo-guide-page--san-siro .seo-guide-hero-actions .btn-primary:focus-visible {
  box-shadow:
    0 14px 34px rgba(79, 70, 229, 0.42),
    0 0 38px rgba(var(--ss-green-rgb), 0.26);
}

.seo-guide-page--san-siro .seo-guide-section {
  padding-top: 26px;
  padding-bottom: 26px;
}

.seo-guide-page--san-siro .seo-guide-section + .seo-guide-section {
  margin-top: 8px;
}

.seo-guide-page--san-siro #san-siro-events {
  scroll-margin-top: 88px;
}

.seo-guide-page--san-siro .seo-guide-section--compact {
  padding-top: 18px;
  padding-bottom: 34px;
}

.seo-guide-page--san-siro .seo-guide-section--events-focus {
  padding-top: 34px;
  padding-bottom: 34px;
}

.seo-guide-page--san-siro .seo-guide-section--light {
  padding-top: 20px;
  padding-bottom: 20px;
}

.seo-guide-page--san-siro .seo-venue-context-card--about {
  position: relative;
  overflow: hidden;
}

.seo-guide-page--san-siro .seo-venue-context-card--about::before {
  content: "";
  position: absolute;
  left: 14px;
  right: 14px;
  top: -1px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(
    90deg,
    rgba(var(--ss-green-rgb), 0.08) 0%,
    rgba(var(--ss-green-rgb), 0.5) 36%,
    rgba(var(--ss-cyan-rgb), 0.56) 68%,
    rgba(var(--ss-cyan-rgb), 0.08) 100%
  );
  pointer-events: none;
}

.seo-guide-page--san-siro .seo-venue-events-header > p {
  color: color-mix(in srgb, var(--ss-green-text) 58%, rgba(var(--ss-cyan-rgb), 0.88));
}

.seo-guide-page--san-siro .seo-venue-events-shell {
  border-color: color-mix(in srgb, var(--ss-green-line) 48%, rgba(var(--ss-cyan-rgb), 0.34));
  background:
    radial-gradient(circle at 52% -18%, rgba(var(--ss-green-rgb), 0.16) 0%, rgba(var(--ss-green-rgb), 0) 56%),
    radial-gradient(circle at 88% 12%, rgba(var(--ss-cyan-rgb), 0.16) 0%, rgba(var(--ss-cyan-rgb), 0) 52%),
    radial-gradient(circle at 20% 76%, rgba(var(--ss-field-rgb), 0.12) 0%, rgba(var(--ss-field-rgb), 0) 48%),
    linear-gradient(160deg, rgba(7, 20, 50, 0.88), rgba(4, 12, 35, 0.84));
  box-shadow:
    inset 0 0 0 1px rgba(var(--ss-cyan-rgb), 0.1),
    inset 0 0 0 2px rgba(var(--ss-green-rgb), 0.07),
    0 0 36px rgba(var(--ss-green-rgb), 0.1),
    0 24px 48px rgba(2, 9, 28, 0.42);
}

.seo-venue-events-shell .san-siro-connected-scroll-line {
  margin: 6px 0 0;
  width: 100%;
}

.seo-guide-page--san-siro .seo-venue-events-track {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.seo-guide-page--san-siro .seo-venue-events-track::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}

.seo-guide-page--san-siro .seo-venue-events-track .seo-venue-event-card {
  border-color: color-mix(in srgb, var(--ss-green-line) 42%, rgba(var(--ss-cyan-rgb), 0.3));
  background:
    radial-gradient(circle at 12% -8%, rgba(var(--ss-green-rgb), 0.14) 0%, rgba(var(--ss-green-rgb), 0) 44%),
    radial-gradient(circle at 84% 10%, rgba(var(--ss-blue-rgb), 0.2) 0%, rgba(var(--ss-blue-rgb), 0) 52%),
    linear-gradient(170deg, rgba(8, 22, 55, 0.92), rgba(5, 15, 41, 0.86));
}

.seo-guide-page--san-siro .seo-venue-events-track .seo-venue-event-card .event-tag {
  background: rgba(var(--ss-green-rgb), 0.18);
  color: #c9f9e5;
}

.seo-guide-page--san-siro .seo-venue-events-track .seo-venue-event-card .btn-outline {
  border-color: rgba(var(--ss-green-rgb), 0.34);
  color: #d0fae8;
  background: rgba(14, 36, 45, 0.24);
}

.seo-guide-page--san-siro .seo-venue-events-track .seo-venue-event-card .btn-outline:hover {
  border-color: rgba(var(--ss-green-rgb), 0.56);
  background: rgba(18, 56, 60, 0.34);
  color: #ebfff6;
}

.seo-guide-page--san-siro .seo-venue-practical-card {
  border-color: rgba(var(--ss-cyan-rgb), 0.3);
  background:
    radial-gradient(circle at 92% 10%, rgba(var(--ss-field-rgb), 0.1) 0%, rgba(var(--ss-field-rgb), 0) 48%),
    linear-gradient(165deg, rgba(8, 20, 50, 0.7), rgba(5, 14, 39, 0.54));
}

.seo-guide-page--san-siro .seo-venue-step-card {
  border-color: rgba(var(--ss-cyan-rgb), 0.28);
  background:
    radial-gradient(circle at 90% 4%, rgba(var(--ss-blue-rgb), 0.14) 0%, rgba(var(--ss-blue-rgb), 0) 54%),
    rgba(8, 19, 47, 0.56);
}

.seo-guide-page--san-siro .seo-guide-cta-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: clamp(16px, 1.7vw, 24px);
}

.seo-guide-page--san-siro .seo-guide-cta-card h2 {
  margin: 0;
  line-height: 1.14;
}

.seo-guide-page--san-siro .seo-guide-cta-card .link-chip-list {
  width: 100%;
  margin: 0;
  align-items: center;
  align-content: flex-start;
  justify-content: flex-start;
  gap: 9px 8px;
}

.seo-guide-page--san-siro .seo-guide-cta-card .link-chip {
  min-height: 30px;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
  vertical-align: middle;
  border-color: color-mix(in srgb, rgba(var(--ss-cyan-rgb), 0.28) 58%, var(--ss-green-line));
  background:
    radial-gradient(circle at 88% -20%, rgba(var(--ss-green-rgb), 0.12) 0%, rgba(var(--ss-green-rgb), 0) 56%),
    rgba(9, 24, 49, 0.86);
}

.seo-guide-page--san-siro .seo-map-block__preview {
  border-color: color-mix(in srgb, var(--ss-green-line) 44%, rgba(var(--ss-cyan-rgb), 0.36));
  box-shadow:
    inset 0 0 0 1px rgba(var(--ss-cyan-rgb), 0.12),
    inset 0 0 0 2px rgba(var(--ss-green-rgb), 0.12),
    0 0 42px rgba(var(--ss-green-rgb), 0.1),
    0 16px 34px rgba(2, 8, 28, 0.48);
}

.seo-guide-page--san-siro .seo-map-block__preview--san-siro {
  background: linear-gradient(160deg, rgba(5, 17, 46, 0.98), rgba(3, 11, 30, 0.96));
}

.seo-guide-page--san-siro .seo-map-block__preview--san-siro .seo-map-block__image {
  object-position: center 56%;
  transform: scale(1.03);
  filter: saturate(1.08) contrast(1.06) brightness(0.9);
}

.seo-guide-page--san-siro .seo-map-block__preview--san-siro::before {
  background: linear-gradient(146deg, rgba(4, 10, 28, 0.56) 0%, rgba(4, 11, 30, 0.16) 44%, rgba(4, 10, 27, 0.48) 100%);
}

.seo-guide-page--san-siro .seo-map-block__preview--san-siro::after {
  background:
    radial-gradient(circle at 54% 63%, rgba(var(--ss-green-rgb), 0.24) 0%, rgba(var(--ss-green-rgb), 0.06) 24%, transparent 62%),
    radial-gradient(circle at 58% 58%, rgba(var(--ss-cyan-rgb), 0.16) 0%, rgba(var(--ss-cyan-rgb), 0.04) 26%, transparent 58%),
    radial-gradient(circle at 22% 26%, rgba(var(--ss-blue-rgb), 0.1) 0%, rgba(var(--ss-blue-rgb), 0.02) 30%, transparent 54%);
  opacity: 0.9;
  mix-blend-mode: screen;
}

.seo-guide-page--san-siro .seo-map-block__pin {
  left: 56%;
  top: 60%;
  border-color: color-mix(in srgb, rgba(var(--ss-cyan-rgb), 0.5) 58%, rgba(var(--ss-green-rgb), 0.62));
  background:
    radial-gradient(circle at 18% 18%, rgba(var(--ss-green-rgb), 0.18) 0%, rgba(var(--ss-green-rgb), 0) 48%),
    linear-gradient(160deg, rgba(7, 25, 60, 0.92), rgba(5, 15, 39, 0.9));
  color: #dafced;
  box-shadow:
    0 10px 28px rgba(1, 8, 29, 0.52),
    inset 0 0 0 1px rgba(var(--ss-green-rgb), 0.28);
}

#ernst-happel-location .seo-map-block__pin {
  left: 55%;
  top: 78%;
}

.seo-guide-page--san-siro .seo-map-block__pin::before {
  background: radial-gradient(circle at 50% 50%, rgba(var(--ss-green-rgb), 0.34) 0%, rgba(var(--ss-green-rgb), 0.12) 48%, transparent 74%);
}

.seo-guide-page--san-siro .seo-map-block__pin-dot {
  background: radial-gradient(circle at 30% 30%, #ecfff8 0%, #78f0be 56%, #2fa07f 100%);
  box-shadow: 0 0 0 3px rgba(var(--ss-green-rgb), 0.26), 0 0 14px rgba(var(--ss-green-rgb), 0.44);
}

.seo-guide-page--san-siro .seo-map-block__cta:hover {
  border-color: rgba(var(--ss-green-rgb), 0.56);
  color: #e7fff5;
  background: rgba(9, 43, 50, 0.24);
}

.seo-guide-page--san-siro .link-chip:hover {
  border-color: rgba(var(--ss-green-rgb), 0.56);
  background: rgba(10, 48, 48, 0.24);
  color: #e5fff4;
}

@media (max-width: 900px) {
  .seo-guide-page--san-siro .seo-guide-hero {
    padding-top: 36px;
    padding-bottom: 36px;
    min-height: clamp(420px, calc(100svh - 72px), 680px);
  }

  .seo-guide-page--san-siro .seo-guide-hero::after {
    background-size: min(108vw, 940px);
    background-position: center 45%;
    opacity: 0.29;
    -webkit-mask-size: min(124vw, 1050px) min(100vw, 820px);
    mask-size: min(124vw, 1050px) min(100vw, 820px);
  }

  .seo-guide-page--san-siro .seo-guide-section {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .seo-guide-page--san-siro .seo-guide-section + .seo-guide-section {
    margin-top: 6px;
  }

  .seo-guide-page--san-siro #san-siro-events {
    scroll-margin-top: 80px;
  }

  .seo-guide-page--san-siro .seo-guide-section--compact {
    padding-top: 14px;
    padding-bottom: 28px;
  }

  .seo-guide-page--san-siro .seo-guide-section--events-focus {
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .seo-guide-page--san-siro .seo-venue-hero-panel {
    align-self: stretch;
  }

  .seo-guide-page--san-siro .seo-venue-hero-panel-list {
    gap: 9px;
    font-size: 15px;
    line-height: 1.5;
  }

  .seo-guide-page--san-siro .seo-venue-hero-panel-note {
    margin-top: 4px;
    padding-top: 12px;
    font-size: 14px;
    line-height: 1.5;
  }

  .seo-guide-page--san-siro .seo-map-block__preview--san-siro .seo-map-block__image {
    object-position: center 58%;
  }

  .seo-guide-page--san-siro .seo-map-block__pin {
    left: 58%;
    top: 63%;
  }
}

@media (max-width: 640px) {
  .seo-guide-page--san-siro .seo-guide-hero {
    padding-top: 32px;
    padding-bottom: 30px;
    min-height: 0;
  }

  .seo-guide-page--san-siro .seo-guide-hero::after {
    background-size: min(132vw, 760px);
    background-position: center 34%;
    opacity: 0.24;
    filter:
      blur(0.9px)
      saturate(0.88)
      brightness(1.6)
      contrast(1.22)
      hue-rotate(-6deg)
      drop-shadow(0 0 12px rgba(120, 190, 255, 0.24))
      drop-shadow(0 0 26px rgba(40, 217, 255, 0.14));
    -webkit-mask-size: min(160vw, 900px) min(128vw, 760px);
    mask-size: min(160vw, 900px) min(128vw, 760px);
  }

  .seo-guide-page--san-siro .seo-guide-section {
    padding-top: 16px;
    padding-bottom: 16px;
  }

  .seo-guide-page--san-siro .seo-guide-section + .seo-guide-section {
    margin-top: 4px;
  }

  .seo-guide-page--san-siro #san-siro-events {
    scroll-margin-top: 74px;
  }

  .seo-guide-page--san-siro .seo-guide-section--compact {
    padding-top: 10px;
    padding-bottom: 22px;
  }

  .seo-guide-page--san-siro .seo-map-block__preview--san-siro .seo-map-block__image {
    object-position: center 60%;
    transform: scale(1.04);
    filter: saturate(1.06) contrast(1.05) brightness(0.88);
  }

  .seo-guide-page--san-siro .seo-map-block__pin {
    left: 60%;
    top: 64%;
  }

  .seo-venue-events-shell .san-siro-connected-scroll-line {
    margin: 6px 0 0;
    width: 100%;
    height: 12px;
  }

  .seo-venue-events-shell .san-siro-connected-scroll-line::before {
    top: 5px;
  }

  .seo-venue-events-shell .san-siro-connected-scroll-line .connected-scroll-line-fill {
    top: 4px;
    height: 4px;
  }

  .seo-guide-page--san-siro .seo-guide-cta-card {
    gap: 10px;
  }

  .seo-guide-page--san-siro .seo-guide-cta-card .link-chip-list {
    gap: 7px;
  }
}

.text-link {
  color: var(--text);
  text-decoration: underline;
  text-decoration-color: rgba(130, 164, 255, 0.52);
  text-underline-offset: 3px;
}

.text-link:hover {
  text-decoration-color: rgba(130, 164, 255, 0.9);
}

@media (max-width: 1100px) {
  .seo-guide-hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .seo-venue-facts-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .seo-venue-hero-panel h2 {
    max-width: none;
  }

  .seo-venue-context-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .seo-guide-page--la-scala .seo-guide-hero::after {
    opacity: 0.1;
  }
}

@media (max-width: 900px) {
  .seo-guide-grid,
  .seo-guide-grid--two,
  .seo-guide-grid--three,
  .seo-guide-grid--four {
    grid-template-columns: minmax(0, 1fr);
  }

  .seo-guide-page--attendance .seo-guide-grid--two {
    gap: 14px;
  }

  .seo-guide-hero {
    padding-top: 26px;
  }

  .seo-guide-page--la-scala .seo-guide-hero {
    padding-top: 36px;
    padding-bottom: 38px;
    min-height: clamp(430px, calc(100svh - 72px), 700px);
  }

  .seo-guide-page--la-scala .seo-guide-hero::after {
    opacity: 0.088;
    filter:
      blur(1.4px)
      saturate(0.84)
      brightness(0.8)
      sepia(0.06)
      hue-rotate(-8deg)
      drop-shadow(0 18px 44px rgba(50, 82, 170, 0.2))
      drop-shadow(0 16px 32px rgba(var(--la-gold-rgb), 0.14));
  }

  .seo-guide-page--la-scala .seo-guide-section {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .seo-guide-page--la-scala .seo-guide-section + .seo-guide-section {
    margin-top: 6px;
  }

  .seo-guide-page--la-scala #la-scala-events {
    scroll-margin-top: 80px;
  }

  .seo-guide-page--la-scala .seo-guide-section--compact {
    padding-top: 14px;
    padding-bottom: 28px;
  }

  .seo-guide-page--la-scala .seo-guide-section--events-focus {
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .seo-map-block {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }

  .seo-map-block__preview {
    min-height: 210px;
  }

  .seo-map-block__pin {
    left: 60%;
    top: 52%;
  }
}

@media (max-width: 640px) {
  .seo-guide-page--la-scala .seo-guide-hero {
    padding-top: 34px;
    padding-bottom: 32px;
    min-height: 0;
  }

  .seo-guide-page--la-scala .seo-guide-hero::after {
    content: none;
  }

  .seo-venue-facts-strip {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    margin-top: 14px;
  }

  .seo-venue-hero-caption {
    margin-top: 10px;
    font-size: 13px;
  }

  .seo-venue-hero-panel {
    border-radius: 14px;
    padding: 14px;
    gap: 10px;
  }

  .seo-venue-hero-panel-list {
    gap: 6px;
  }

  .seo-guide-page--la-scala .seo-venue-hero-panel-list {
    gap: 9px;
    font-size: 15px;
    line-height: 1.5;
  }

  .seo-guide-page--la-scala .seo-venue-hero-panel-note {
    margin-top: 4px;
    padding-top: 12px;
    font-size: 14px;
    line-height: 1.5;
  }

  .seo-guide-page--la-scala .seo-guide-section {
    padding-top: 16px;
    padding-bottom: 16px;
  }

  .seo-guide-page--la-scala .seo-guide-section + .seo-guide-section {
    margin-top: 4px;
  }

  .seo-guide-page--la-scala #la-scala-events {
    scroll-margin-top: 74px;
  }

  .seo-guide-page--la-scala .seo-guide-section--compact {
    padding-top: 10px;
    padding-bottom: 22px;
  }

  .seo-guide-page--attendance .seo-guide-card {
    gap: 10px;
    padding: 16px;
  }

  .seo-guide-page--attendance .seo-guide-card .seo-guide-list {
    gap: 8px;
  }

  .seo-guide-page--la-scala .seo-guide-cta-card {
    gap: 10px;
  }

  .seo-guide-page--la-scala .seo-guide-cta-card .link-chip-list {
    gap: 7px;
  }

  .seo-map-block__preview {
    min-height: 188px;
  }

  .seo-map-block__cta {
    width: 100%;
    justify-content: center;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .seo-guide-page--la-scala .seo-breadcrumbs--static,
  .seo-guide-page--la-scala .pill,
  .seo-guide-page--la-scala h1,
  .seo-guide-page--la-scala .seo-venue-hero-main > p[data-i18n="venue.hero.intro"],
  .seo-guide-page--la-scala .seo-venue-facts-strip,
  .seo-guide-page--la-scala .seo-guide-hero-actions,
  .seo-guide-page--la-scala .seo-venue-hero-caption,
  .seo-guide-page--la-scala .seo-venue-hero-panel {
    opacity: 0;
    transform: translate3d(0, 16px, 0);
    will-change: opacity, transform;
  }

  .seo-guide-page--la-scala.is-loaded .seo-breadcrumbs--static {
    animation: laScalaFadeUp 520ms cubic-bezier(0.2, 0.68, 0.2, 1) 80ms both;
  }

  .seo-guide-page--la-scala.is-loaded .pill {
    animation: laScalaFadeUp 560ms cubic-bezier(0.2, 0.68, 0.2, 1) 130ms both;
  }

  .seo-guide-page--la-scala.is-loaded h1 {
    animation: laScalaFadeUp 660ms cubic-bezier(0.2, 0.68, 0.2, 1) 180ms both;
  }

  .seo-guide-page--la-scala.is-loaded .seo-venue-hero-main > p[data-i18n="venue.hero.intro"] {
    animation: laScalaFadeUp 700ms cubic-bezier(0.2, 0.68, 0.2, 1) 250ms both;
  }

  .seo-guide-page--la-scala.is-loaded .seo-venue-facts-strip {
    animation: laScalaFadeUp 760ms cubic-bezier(0.2, 0.68, 0.2, 1) 320ms both;
  }

  .seo-guide-page--la-scala.is-loaded .seo-venue-facts-strip .seo-venue-fact {
    opacity: 0;
    transform: translate3d(0, 10px, 0) scale(0.985);
    animation: laScalaFactIn 600ms cubic-bezier(0.2, 0.68, 0.2, 1) both;
  }

  .seo-guide-page--la-scala.is-loaded .seo-venue-facts-strip .seo-venue-fact:nth-child(1) {
    animation-delay: 380ms;
  }

  .seo-guide-page--la-scala.is-loaded .seo-venue-facts-strip .seo-venue-fact:nth-child(2) {
    animation-delay: 440ms;
  }

  .seo-guide-page--la-scala.is-loaded .seo-venue-facts-strip .seo-venue-fact:nth-child(3) {
    animation-delay: 500ms;
  }

  .seo-guide-page--la-scala.is-loaded .seo-venue-facts-strip .seo-venue-fact:nth-child(4) {
    animation-delay: 560ms;
  }

  .seo-guide-page--la-scala.is-loaded .seo-guide-hero-actions {
    animation: laScalaFadeUp 720ms cubic-bezier(0.2, 0.68, 0.2, 1) 480ms both;
  }

  .seo-guide-page--la-scala.is-loaded .seo-venue-hero-caption {
    animation: laScalaFadeUp 680ms cubic-bezier(0.2, 0.68, 0.2, 1) 580ms both;
  }

  .seo-guide-page--la-scala.is-loaded .seo-venue-hero-panel {
    animation:
      laScalaFadeUp 720ms cubic-bezier(0.2, 0.68, 0.2, 1) 300ms both,
      laScalaPanelFloat 7.8s ease-in-out 1.15s infinite;
  }

  .seo-guide-page--la-scala .seo-map-block__pin-dot {
    animation: laScalaPinPulse 2.8s ease-in-out infinite;
  }

  .seo-guide-page--la-scala .seo-venue-events-track.is-animating-cards .seo-venue-event-card {
    opacity: 0;
    transform: translate3d(0, 14px, 0) scale(0.985);
    will-change: opacity, transform;
  }

  .seo-guide-page--la-scala .seo-venue-events-track.is-animating-cards .seo-venue-event-card.is-visible {
    animation: laScalaCardIn 620ms cubic-bezier(0.2, 0.68, 0.2, 1) var(--venue-card-delay, 0ms) both;
  }
}

@keyframes laScalaFadeUp {
  from {
    opacity: 0;
    transform: translate3d(0, 16px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes laScalaFactIn {
  from {
    opacity: 0;
    transform: translate3d(0, 10px, 0) scale(0.985);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}

@keyframes laScalaCardIn {
  from {
    opacity: 0;
    transform: translate3d(0, 14px, 0) scale(0.985);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}

@keyframes laScalaPanelFloat {
  0% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, -4px, 0);
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes laScalaPinPulse {
  0%,
  100% {
    box-shadow: 0 0 0 3px rgba(118, 159, 255, 0.24), 0 0 14px rgba(123, 163, 255, 0.48);
  }
  50% {
    box-shadow: 0 0 0 5px rgba(118, 159, 255, 0.16), 0 0 18px rgba(123, 163, 255, 0.36);
  }
}

/* Checkout Event Step 1 */
#event-page-view .event-flow-topbar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}

#event-page-view .event-flow-topbar .cwt-back-merge {
  min-height: 44px;
}

#event-page-view .event-flow-topbar .stepper .step {
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.event-route-shell.checkout-event-step {
  display: grid;
  gap: 22px;
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas: none;
  grid-auto-flow: row;
}

.event-route-shell.checkout-event-step > * {
  min-width: 0;
}

.event-route-shell.checkout-event-step .checkout-event-content-layout,
.event-route-shell.checkout-event-step .checkout-event-left-stack,
.event-route-shell.checkout-event-step .checkout-event-summary-card,
.event-route-shell.checkout-event-step .checkout-event-description,
.event-route-shell.checkout-event-step .checkout-event-hero-media-slot,
.event-route-shell.checkout-event-step .checkout-event-photo-box,
.event-route-shell.checkout-event-step .event-hero-image-card {
  min-width: 0;
}

.event-route-shell.checkout-event-step .checkout-event-hero {
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(126, 142, 255, 0.24);
  background:
    radial-gradient(circle at 18% 0%, rgba(45, 212, 191, 0.1), transparent 34%),
    radial-gradient(circle at 90% 12%, rgba(109, 99, 255, 0.18), transparent 36%),
    linear-gradient(135deg, rgba(12, 18, 42, 0.96), rgba(8, 12, 30, 0.96));
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.38);
}

.event-route-shell.checkout-event-step .checkout-event-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) 260px;
  gap: 24px;
  align-items: start;
  padding: 26px;
}

.event-route-shell.checkout-event-step .checkout-event-main {
  display: grid;
  gap: 14px;
  align-content: start;
  min-width: 0;
}

.event-route-shell.checkout-event-step .checkout-event-eyebrow {
  margin: 0;
  width: fit-content;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(244, 215, 122, 0.28);
  color: #f4d77a;
  background: rgba(244, 215, 122, 0.065);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.event-route-shell.checkout-event-step .checkout-event-title {
  margin: 0;
  max-width: 740px;
  font-size: clamp(35px, 4vw, 56px);
  line-height: 1.02;
  letter-spacing: -0.055em;
}

.event-route-shell.checkout-event-step .checkout-event-byline {
  margin: -4px 0 2px;
  max-width: 740px;
  color: rgba(226, 232, 255, 0.72);
  font-size: clamp(15px, 1.95vw, 24px);
  font-weight: 560;
  line-height: 1.2;
  letter-spacing: -0.01em;
}

.event-route-shell.checkout-event-step .checkout-event-facts-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
  max-width: 820px;
}

.event-route-shell.checkout-event-step .checkout-event-fact {
  min-height: 72px;
  padding: 13px 14px;
  border-radius: 16px;
  border: 1px solid rgba(126, 142, 255, 0.18);
  background: rgba(8, 13, 32, 0.54);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.event-route-shell.checkout-event-step .checkout-event-fact span {
  display: block;
  margin-bottom: 7px;
  color: rgba(226, 232, 240, 0.42);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.event-route-shell.checkout-event-step .checkout-event-fact strong {
  display: block;
  color: rgba(244, 245, 251, 0.92);
  font-size: 14px;
  line-height: 1.25;
}

.event-route-shell.checkout-event-step .checkout-event-fact--price strong {
  color: #ffffff;
  font-size: 17px;
  letter-spacing: -0.03em;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-hero {
  border: 1px solid rgba(100, 196, 146, 0.14);
  background: linear-gradient(180deg, rgba(7, 70, 42, 0.92) 0%, rgba(5, 54, 33, 0.96) 100%);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.38);
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.18;
  background: repeating-linear-gradient(
    to right,
    rgba(255, 255, 255, 0.018) 0,
    rgba(255, 255, 255, 0.018) 70px,
    rgba(255, 255, 255, 0.034) 70px,
    rgba(255, 255, 255, 0.034) 140px
  );
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-hero::after {
  content: "";
  position: absolute;
  inset: 28px;
  pointer-events: none;
  opacity: 0.2;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 760' fill='none'%3E%3Cg shape-rendering='geometricPrecision' stroke-linecap='butt' stroke-linejoin='miter'%3E%3Cpath d='M120 120H1080V640H120V120Z' stroke='white' stroke-width='4'/%3E%3Cline x1='600' y1='120' x2='600' y2='640' stroke='white' stroke-width='4'/%3E%3Ccircle cx='600' cy='380' r='86' stroke='white' stroke-width='4'/%3E%3Ccircle cx='600' cy='380' r='7' fill='white' stroke='none'/%3E%3Cpath d='M120 204H290V556H120' stroke='white' stroke-width='4'/%3E%3Cpath d='M1080 204H910V556H1080' stroke='white' stroke-width='4'/%3E%3Cpath d='M120 276H186V484H120' stroke='white' stroke-width='4'/%3E%3Cpath d='M1080 276H1014V484H1080' stroke='white' stroke-width='4'/%3E%3Ccircle cx='252' cy='380' r='5' fill='white' stroke='none'/%3E%3Ccircle cx='948' cy='380' r='5' fill='white' stroke='none'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-hero-grid {
  grid-template-columns: minmax(0, 1fr);
  gap: 22px;
  padding: 26px 24px 28px;
  min-height: 560px;
  align-items: start;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-main {
  position: relative;
  z-index: 1;
  width: 100%;
  display: block;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-breadcrumbs {
  margin: 0 0 18px;
  color: #7e89a8;
  font-size: 14px;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-breadcrumbs .seo-breadcrumbs__link,
.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-breadcrumbs .seo-breadcrumbs__current {
  color: #7e89a8;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-breadcrumbs .seo-breadcrumbs__sep {
  opacity: 0.68;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-eyebrow {
  height: 36px;
  padding: 0 18px;
  border-color: rgba(241, 204, 110, 0.35);
  color: #f3cb6f;
  background: transparent;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.18em;
  margin-bottom: 0;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-title {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-title-layer {
  position: absolute;
  inset: 28px;
  z-index: 0;
  pointer-events: none;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-team,
.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-vs {
  position: absolute;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -0.04em;
  white-space: nowrap;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-team {
  max-width: 37%;
  overflow: hidden;
  text-overflow: ellipsis;
  text-transform: uppercase;
  font-size: 56px;
  color: rgba(255, 255, 255, 0.96);
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-team--left {
  left: 150px;
  top: 50%;
  transform: translateY(-50%);
  text-align: left;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-team--right {
  right: 150px;
  top: 50%;
  transform: translateY(-50%);
  text-align: right;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-vs {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 48px;
  color: rgba(125, 134, 255, 0.92);
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-title-layer.is-single-team .checkout-event-football-team--right,
.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-title-layer.is-single-team .checkout-event-football-vs {
  display: none;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-facts-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
  max-width: none;
  margin-top: 330px;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-fact {
  min-height: 88px;
  width: 100%;
  padding: 16px;
  border-radius: 20px;
  background: rgba(6, 10, 28, 0.74);
  border: 1px solid rgba(120, 134, 255, 0.14);
  box-shadow: none;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-fact span {
  margin-bottom: 8px;
  font-size: 12px;
  letter-spacing: 0.2em;
  color: #7e89a8;
  font-weight: 700;
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-fact strong {
  font-size: 17px;
  line-height: 1.2;
  color: rgba(244, 247, 255, 0.95);
}

.event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-hero-media-slot {
  display: none;
}

.event-route-shell.checkout-event-step .checkout-event-hero-media-slot {
  width: 260px;
  justify-self: end;
}

.event-route-shell.checkout-event-step .checkout-event-photo-box {
  width: 100%;
}

.event-route-shell.checkout-event-step .event-hero-image-card {
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 24px;
  border: 1px solid rgba(126, 142, 255, 0.28);
  background:
    linear-gradient(145deg, rgba(10, 16, 37, 0.28), rgba(8, 13, 32, 0.9)),
    radial-gradient(circle at 34% 18%, rgba(244, 215, 122, 0.13), transparent 34%),
    radial-gradient(circle at 78% 86%, rgba(109, 99, 255, 0.18), transparent 38%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.event-route-shell.checkout-event-step .event-hero-image-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.06), transparent 28%),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 44px);
  opacity: 0.45;
}

.event-route-shell.checkout-event-step .event-hero-image {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.event-route-shell.checkout-event-step .event-hero-image-card.has-theatre-fallback::before {
  opacity: 0;
}

.event-route-shell.checkout-event-step .event-hero-image.event-hero-image--theatre-fallback {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transform: scale(1);
  transform-origin: center;
  background: transparent;
  padding: 0;
}

.event-route-shell.checkout-event-step .event-hero-fallback {
  position: absolute;
  inset: 18px;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 20px;
  border-radius: 20px;
  border: 1px dashed rgba(226, 232, 240, 0.2);
  color: rgba(226, 232, 240, 0.46);
  background: rgba(8, 13, 32, 0.52);
  z-index: 1;
}

.event-route-shell.checkout-event-step .event-hero-fallback-title {
  margin: 0;
  color: rgba(244, 245, 251, 0.82);
  font-size: 15px;
}

.event-route-shell.checkout-event-step .event-hero-fallback-subtitle {
  color: rgba(226, 232, 240, 0.5);
  font-size: 12px;
}

.event-route-shell.checkout-event-step .checkout-event-content-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 22px;
  align-items: start;
}

.event-route-shell.checkout-event-step .checkout-event-left-stack {
  display: grid;
  gap: 16px;
}

.event-route-shell.checkout-event-step .section-card {
  padding: 20px;
  border-radius: 22px;
  border: 1px solid rgba(126, 142, 255, 0.24);
  background: rgba(10, 16, 37, 0.74);
}

.event-route-shell.checkout-event-step .checkout-event-section-title {
  margin: 0 0 14px;
  color: rgba(244, 245, 251, 0.95);
  font-size: 13px;
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.event-route-shell.checkout-event-step .checkout-event-description p {
  margin: 0;
  color: rgba(226, 232, 240, 0.74);
  font-size: 16px;
  line-height: 1.62;
}

.event-route-shell.checkout-event-step .session-picker {
  gap: 12px;
}

.event-route-shell.checkout-event-step .session-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.event-route-shell.checkout-event-step .session-chip {
  min-height: 72px;
  padding: 13px 14px;
  border-radius: 15px;
  border: 1px solid rgba(126, 142, 255, 0.22);
  background: rgba(8, 13, 32, 0.72);
  gap: 5px;
}

.event-route-shell.checkout-event-step .session-chip-date {
  font-size: 15px;
}

.event-route-shell.checkout-event-step .session-chip-time {
  font-size: 13px;
  color: rgba(226, 232, 240, 0.68);
}

.event-route-shell.checkout-event-step .session-chip:hover,
.event-route-shell.checkout-event-step .session-chip.is-active {
  border-color: rgba(109, 99, 255, 0.72);
  background: linear-gradient(135deg, rgba(109, 99, 255, 0.22), rgba(8, 13, 32, 0.8));
  transform: translateY(-1px);
  box-shadow: none;
}

.event-route-shell.checkout-event-step .session-grid-toggle.btn {
  margin-top: 0;
}

.event-route-shell.checkout-event-step .checkout-event-venue-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.event-route-shell.checkout-event-step .checkout-event-venue-pane {
  min-width: 0;
}

.event-route-shell.checkout-event-step .checkout-event-venue-pane--timing {
  border-left: 1px solid rgba(126, 142, 255, 0.18);
  padding-left: 18px;
}

.event-route-shell.checkout-event-step .checkout-event-pane-label {
  margin: 0 0 10px;
  color: rgba(226, 232, 240, 0.44);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.event-route-shell.checkout-event-step .checkout-event-address-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.event-route-shell.checkout-event-step .event-address-icon {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(45, 212, 191, 0.24);
  background: rgba(45, 212, 191, 0.055);
  color: rgba(45, 212, 191, 0.92);
  font-size: 15px;
}

.event-route-shell.checkout-event-step .checkout-event-address-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.event-route-shell.checkout-event-step .checkout-event-address-place {
  margin: 0 0 5px;
  color: rgba(244, 245, 251, 0.94);
  font-size: 16px;
  font-weight: 750;
  letter-spacing: -0.02em;
}

.event-route-shell.checkout-event-step .checkout-event-address-text {
  margin: 0;
  color: rgba(226, 232, 240, 0.66);
  font-size: 14px;
  line-height: 1.45;
}

.event-route-shell.checkout-event-step .checkout-event-copy-address-btn {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(126, 142, 255, 0.24);
  background: rgba(8, 13, 32, 0.62);
  color: rgba(226, 232, 240, 0.72);
  cursor: pointer;
  font-size: 14px;
  transition: border-color 0.16s ease, background 0.16s ease, transform 0.16s ease;
}

.event-route-shell.checkout-event-step .checkout-event-copy-address-btn:hover {
  transform: translateY(-1px);
  border-color: rgba(45, 212, 191, 0.38);
  background: rgba(45, 212, 191, 0.07);
  color: rgba(244, 245, 251, 0.92);
}

.event-route-shell.checkout-event-step .checkout-event-copy-address-btn.is-copied {
  border-color: rgba(45, 212, 191, 0.48);
  color: rgba(45, 212, 191, 0.95);
}

.event-route-shell.checkout-event-step .checkout-event-map-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-top: 12px;
  margin-top: 12px;
  border-top: 1px solid rgba(126, 142, 255, 0.14);
}

.event-route-shell.checkout-event-step .checkout-event-map-actions .event-address-map-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  min-width: 0;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(126, 142, 255, 0.24);
  background: rgba(8, 13, 32, 0.62);
  color: rgba(226, 232, 240, 0.78);
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.02em;
  text-decoration: none;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
  transition:
    border-color 0.2s ease,
    background 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease;
}

.event-route-shell.checkout-event-step .checkout-event-map-actions .event-address-map-btn:hover {
  border-color: rgba(109, 99, 255, 0.52);
  background: rgba(109, 99, 255, 0.12);
  color: rgba(244, 245, 251, 0.94);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 8px 18px rgba(6, 10, 28, 0.34);
}

.event-route-shell.checkout-event-step .checkout-event-map-actions .event-address-map-btn:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.72);
  outline-offset: 2px;
}

.event-route-shell.checkout-event-step .checkout-event-time-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid rgba(126, 142, 255, 0.14);
  border-bottom: 1px solid rgba(126, 142, 255, 0.14);
}

.event-route-shell.checkout-event-step .checkout-event-time-item {
  min-height: 76px;
  padding: 13px 0;
}

.event-route-shell.checkout-event-step .checkout-event-time-item + .checkout-event-time-item {
  border-left: 1px solid rgba(126, 142, 255, 0.14);
  padding-left: 16px;
  margin-left: 16px;
}

.event-route-shell.checkout-event-step .checkout-event-time-item span {
  display: block;
  margin-bottom: 8px;
  color: rgba(226, 232, 240, 0.42);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.event-route-shell.checkout-event-step .checkout-event-time-item strong {
  display: block;
  color: rgba(244, 245, 251, 0.94);
  font-size: 22px;
  line-height: 1;
  letter-spacing: -0.04em;
}

.event-route-shell.checkout-event-step .checkout-event-time-item small {
  display: block;
  margin-top: 7px;
  color: rgba(226, 232, 240, 0.5);
  font-size: 12px;
  line-height: 1.35;
}

.event-route-shell.checkout-event-step .checkout-event-summary-card {
  position: sticky;
  top: 96px;
  min-width: 0;
  padding: 22px;
  border-radius: 25px;
  background:
    radial-gradient(circle at 0% 0%, rgba(109, 99, 255, 0.18), transparent 38%),
    radial-gradient(circle at 100% 100%, rgba(45, 212, 191, 0.1), transparent 46%),
    linear-gradient(145deg, rgba(8, 13, 32, 0.92), rgba(10, 16, 37, 0.86));
  border: 1px solid rgba(126, 142, 255, 0.34);
  box-shadow:
    0 24px 60px rgba(0, 0, 0, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
  display: grid;
  gap: 14px;
}

.event-route-shell.checkout-event-step .checkout-event-summary-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.event-route-shell.checkout-event-step .checkout-event-summary-title {
  margin: 0;
  min-width: 0;
  color: rgba(244, 245, 251, 0.96);
  font-size: 21px;
  line-height: 1.12;
  letter-spacing: -0.03em;
}

.event-route-shell.checkout-event-step .checkout-event-summary-badge {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #dbeafe;
  font-size: 14px;
  font-weight: 800;
  background: linear-gradient(135deg, rgba(99, 102, 241, 0.38), rgba(45, 212, 191, 0.32));
  border: 1px solid rgba(129, 140, 248, 0.5);
  box-shadow:
    0 10px 26px rgba(79, 70, 229, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.15);
}

.event-route-shell.checkout-event-step .checkout-event-summary-list {
  display: grid;
  gap: 10px;
  min-width: 0;
  margin: 0;
}

.event-route-shell.checkout-event-step .checkout-event-summary-row {
  min-width: 0;
  padding: 14px 15px;
  border-radius: 17px;
  border: 1px solid rgba(129, 140, 248, 0.24);
  background: linear-gradient(145deg, rgba(13, 19, 46, 0.88), rgba(9, 14, 35, 0.8));
  display: grid;
  gap: 8px;
  align-content: start;
}

.event-route-shell.checkout-event-step .checkout-event-summary-label {
  margin: 0;
  min-width: 0;
  color: rgba(191, 203, 230, 0.62);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.13em;
  line-height: 1.15;
  text-transform: uppercase;
}

.event-route-shell.checkout-event-step .checkout-event-summary-value {
  margin: 0;
  min-width: 0;
  width: 100%;
  color: rgba(244, 245, 251, 0.92);
  text-align: left;
  font-size: 17px;
  font-weight: 760;
  line-height: 1.38;
  letter-spacing: -0.015em;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.event-route-shell.checkout-event-step .checkout-event-summary-row.is-price {
  border-color: rgba(129, 140, 248, 0.42);
  background:
    radial-gradient(circle at 100% 0%, rgba(99, 102, 241, 0.24), transparent 62%),
    linear-gradient(145deg, rgba(18, 24, 56, 0.92), rgba(10, 16, 39, 0.92));
}

.event-route-shell.checkout-event-step .checkout-event-summary-row.is-price .checkout-event-summary-label {
  color: rgba(207, 215, 248, 0.78);
}

.event-route-shell.checkout-event-step .checkout-event-summary-row.is-price .checkout-event-summary-value {
  font-size: clamp(30px, 2.25vw, 34px);
  line-height: 1.02;
  letter-spacing: -0.04em;
  color: #ffffff;
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta {
  position: relative;
  width: 100%;
  min-width: 0;
  min-height: 56px;
  height: 56px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  font: inherit;
  font-size: 16px;
  font-weight: 760;
  cursor: pointer;
  background: transparent;
  padding: 0;
  display: inline-flex;
  align-items: stretch;
  justify-content: center;
  gap: 10px;
  isolation: isolate;
  transition:
    gap 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.28s ease,
    filter 0.28s ease;
}

.event-route-shell.checkout-event-step .checkout-event-telegram-cta,
.event-route-shell.checkout-event-step .checkout-event-telegram-inline {
  min-height: 42px;
  border-radius: 12px;
  border: 1px solid rgba(56, 189, 248, 0.38);
  background: linear-gradient(135deg, rgba(8, 36, 63, 0.58), rgba(3, 105, 161, 0.32));
  color: #e0f2fe;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 760;
  line-height: 1.2;
  text-decoration: none;
  text-align: center;
  overflow-wrap: anywhere;
  transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.event-route-shell.checkout-event-step .checkout-event-telegram-inline {
  justify-self: start;
  width: fit-content;
  max-width: 100%;
}

.event-route-shell.checkout-event-step .checkout-event-telegram-cta:hover,
.event-route-shell.checkout-event-step .checkout-event-telegram-inline:hover {
  border-color: rgba(56, 189, 248, 0.64);
  background: linear-gradient(135deg, rgba(7, 47, 84, 0.74), rgba(2, 132, 199, 0.48));
  color: #f0f9ff;
  transform: translateY(-1px);
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, #6d5cff 0%, #573df8 52%, #7a5cff 100%);
  opacity: 0;
  transform: scaleX(0.96);
  transition:
    opacity 0.34s ease,
    transform 0.52s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta-part {
  position: relative;
  z-index: 1;
  min-height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(129, 140, 248, 0.45);
  background: linear-gradient(135deg, rgba(129, 140, 248, 0.98), rgba(79, 70, 229, 0.98));
  box-shadow:
    0 18px 40px rgba(79, 70, 229, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
  transition:
    border-radius 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.24s ease,
    margin 0.52s cubic-bezier(0.16, 1, 0.3, 1);
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta-text {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 22px;
  border-radius: 999px;
  transform: translateX(0);
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta-text > span {
  display: block;
  min-width: 0;
  max-inline-size: 15.2ch;
  margin-inline: auto;
  white-space: normal;
  text-wrap: pretty;
  text-align: center;
  line-height: 1.1;
  min-block-size: calc(1.1em * 2);
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta-icon {
  width: 56px;
  flex: 0 0 56px;
  border-radius: 50%;
  font-size: 20px;
  line-height: 1;
  transform: translateX(0);
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.86);
  outline-offset: 3px;
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta:hover {
  position: relative;
  gap: 0;
  overflow: hidden;
  border-radius: 999px;
  transform: translateY(-1px);
  filter: brightness(1.04);
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta:hover::before {
  opacity: 1;
  transform: scaleX(1);
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta:hover .checkout-event-choice-cta-part {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta:hover .checkout-event-choice-cta-text {
  margin-right: -8px;
  transform: translateX(4px);
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta:hover .checkout-event-choice-cta-icon {
  margin-left: -8px;
  transform: translateX(-4px);
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta:disabled {
  cursor: not-allowed;
  opacity: 0.74;
  transform: none;
  filter: saturate(0.86);
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta:disabled::before {
  opacity: 0;
}

.event-route-shell.checkout-event-step .checkout-event-choice-cta:disabled .checkout-event-choice-cta-part {
  border-color: rgba(148, 163, 184, 0.4);
  background: linear-gradient(135deg, rgba(71, 85, 105, 0.88), rgba(51, 65, 85, 0.88));
  box-shadow: none;
}

.event-route-shell.checkout-event-step .checkout-event-mobile-sticky {
  display: none;
}

.event-route-shell.checkout-event-step .checkout-event-mobile-sticky-summary {
  pointer-events: auto;
}

.event-route-shell.checkout-event-step .checkout-event-mobile-sticky-summary-cell {
  min-width: 0;
}

.event-route-shell.checkout-event-step .checkout-event-mobile-sticky-label,
.event-route-shell.checkout-event-step .checkout-event-mobile-sticky-value {
  min-width: 0;
}

#event-page-view.reveal,
#tickets-page-view.reveal,
#checkout-page-view.reveal {
  transform: none;
  will-change: opacity;
}

#event-page-view.reveal.is-visible,
#tickets-page-view.reveal.is-visible,
#checkout-page-view.reveal.is-visible {
  transform: none;
}

@media (max-width: 1080px) {
  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-team--left {
    left: 84px;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-team--right {
    right: 84px;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-team {
    font-size: 42px;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-vs {
    font-size: 34px;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-hero::after {
    inset: 18px;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-facts-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 780px) {
  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-hero::after {
    inset: 14px;
    opacity: 0.16;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-hero::before {
    opacity: 0.14;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-title-layer {
    inset: 18px;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-team--left {
    left: 28px;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-team--right {
    right: 28px;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-team {
    font-size: 24px;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-football-vs {
    font-size: 20px;
  }

  .event-route-shell.checkout-event-step.is-football-checkout-hero .checkout-event-facts-grid {
    grid-template-columns: minmax(0, 1fr);
    margin-top: 280px;
  }
}

@media (max-width: 1100px) {
  .event-route-shell.checkout-event-step .checkout-event-content-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .event-route-shell.checkout-event-step .checkout-event-summary-card {
    position: static;
  }
}

@media (max-width: 980px) {
  .event-route-shell.checkout-event-step .checkout-event-hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .event-route-shell.checkout-event-step .checkout-event-hero-media-slot {
    width: min(260px, 100%);
    justify-self: start;
  }

  .event-route-shell.checkout-event-step .checkout-event-facts-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .event-route-shell.checkout-event-step .session-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .event-route-shell.checkout-event-step .checkout-event-venue-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .event-route-shell.checkout-event-step .checkout-event-venue-pane--timing {
    border-left: 0;
    border-top: 1px solid rgba(126, 142, 255, 0.18);
    padding-left: 0;
    padding-top: 14px;
    margin-top: 4px;
  }
}

@media (max-width: 720px) {
  #event-page-view .event-flow-topbar {
    grid-template-columns: auto minmax(0, 1fr);
    gap: 6px;
    align-items: center;
  }

  #event-page-view .event-flow-topbar .cwt-back-merge {
    max-width: min(100%, 168px);
  }

  #event-page-view .event-flow-topbar .stepper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    overflow: visible;
  }

  #event-page-view .event-flow-topbar .stepper .step {
    height: 38px;
    min-height: 38px;
    padding: 6px 6px;
    font-size: 10.5px;
    line-height: 1.05;
    white-space: nowrap;
  }

  .event-route-shell.checkout-event-step .checkout-event-hero-grid {
    padding: 20px;
  }

  .event-route-shell.checkout-event-step .checkout-event-title {
    font-size: clamp(32px, 11vw, 46px);
  }

  .event-route-shell.checkout-event-step .checkout-event-byline {
    margin-top: -2px;
    font-size: clamp(14px, 4.8vw, 20px);
  }

  .event-route-shell.checkout-event-step .checkout-event-facts-grid,
  .event-route-shell.checkout-event-step .session-grid,
  .event-route-shell.checkout-event-step .checkout-event-time-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .event-route-shell.checkout-event-step .checkout-event-time-item + .checkout-event-time-item {
    border-left: 0;
    border-top: 1px solid rgba(126, 142, 255, 0.14);
    padding-left: 0;
    margin-left: 0;
    margin-top: 6px;
    padding-top: 14px;
  }

  .event-route-shell.checkout-event-step .checkout-event-map-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .event-route-shell.checkout-event-step .checkout-event-map-actions .event-address-map-btn {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .event-route-shell.checkout-event-step {
    padding-bottom: 236px;
  }

  .event-route-shell.checkout-event-step .checkout-event-summary-card {
    display: none;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky {
    position: fixed;
    left: 50%;
    bottom: max(20px, calc(env(safe-area-inset-bottom, 0px) + 12px));
    transform: translateX(-50%);
    width: min(404px, calc(100vw - 16px));
    z-index: 1000;
    display: grid;
    gap: 12px;
    pointer-events: none;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-height: 66px;
    border-radius: 18px;
    border: 1px solid rgba(165, 180, 252, 0.46);
    background:
      radial-gradient(circle at 100% 0, rgba(34, 211, 238, 0.16), transparent 42%),
      radial-gradient(circle at 0 0, rgba(99, 102, 241, 0.18), transparent 40%),
      rgba(15, 23, 42, 0.9);
    backdrop-filter: blur(18px) saturate(1.15);
    box-shadow:
      0 0 0 1px rgba(255, 255, 255, 0.04) inset,
      0 14px 42px rgba(0, 0, 0, 0.42),
      0 0 24px rgba(99, 102, 241, 0.22),
      0 0 20px rgba(34, 211, 238, 0.1);
    overflow: hidden;
    pointer-events: auto;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-summary-cell {
    padding: 10px 14px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-summary-cell + .checkout-event-mobile-sticky-summary-cell {
    border-left: 1px solid rgba(148, 163, 184, 0.18);
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-label {
    margin: 0;
    color: rgba(191, 203, 230, 0.68);
    font-size: 8.5px;
    font-weight: 850;
    line-height: 1;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    white-space: nowrap;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-value {
    margin: 0;
    color: rgba(255, 255, 255, 0.96);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -0.03em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-value--price {
    font-size: clamp(23px, 6.8vw, 26px);
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-value--date {
    font-size: clamp(18px, 5.2vw, 20px);
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-cta {
    width: 100%;
    min-height: 60px;
    height: 60px;
    pointer-events: auto;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-cta .checkout-event-choice-cta-part {
    min-height: 60px;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-cta .checkout-event-choice-cta-text {
    padding-inline: 22px;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-cta .checkout-event-choice-cta-icon {
    width: 60px;
    flex-basis: 60px;
    font-size: 21px;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-cta .checkout-event-choice-cta-text > span {
    font-size: 13.5px;
  }

  .event-route-shell.checkout-event-step .session-picker {
    gap: 8px;
  }

  .event-route-shell.checkout-event-step .checkout-event-section-title {
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.11em;
  }

  .event-route-shell.checkout-event-step .checkout-event-pane-label {
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.1em;
  }

  .event-route-shell.checkout-event-step .checkout-event-address-place {
    font-size: 17px;
    font-weight: 900;
    line-height: 1.18;
  }

  .event-route-shell.checkout-event-step .checkout-event-address-text {
    font-size: 14px;
    line-height: 1.4;
  }

  .event-route-shell.checkout-event-step .checkout-event-map-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .event-route-shell.checkout-event-step .checkout-event-map-actions .event-address-map-btn {
    width: 100%;
    min-width: 0;
    min-height: 38px;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 850;
    white-space: nowrap;
    text-align: center;
  }

  .event-route-shell.checkout-event-step .checkout-event-time-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .event-route-shell.checkout-event-step .checkout-event-time-item {
    min-height: 58px;
    padding: 10px 0;
  }

  .event-route-shell.checkout-event-step .checkout-event-time-item + .checkout-event-time-item {
    border-top: 0;
    border-left: 1px solid rgba(126, 142, 255, 0.14);
    margin-top: 0;
    padding-top: 10px;
    margin-left: 12px;
    padding-left: 12px;
  }

  .event-route-shell.checkout-event-step .checkout-event-time-item span {
    margin-bottom: 4px;
    font-size: 10px;
    font-weight: 900;
  }

  .event-route-shell.checkout-event-step .checkout-event-time-item strong {
    font-size: 17px;
    font-weight: 900;
    line-height: 1.12;
    letter-spacing: -0.02em;
  }

  .event-route-shell.checkout-event-step .checkout-event-time-item small {
    margin-top: 4px;
    font-size: 11px;
    line-height: 1.3;
  }

  .event-route-shell.checkout-event-step .session-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .event-route-shell.checkout-event-step .session-chip {
    min-height: 54px;
    padding: 8px 10px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    column-gap: 8px;
    row-gap: 2px;
  }

  .event-route-shell.checkout-event-step .session-chip-date {
    font-size: 14px;
    font-weight: 900;
    line-height: 1.15;
  }

  .event-route-shell.checkout-event-step .session-chip-time {
    font-size: 13px;
    font-weight: 820;
    line-height: 1.15;
    text-align: right;
  }

  .event-route-shell.checkout-event-step .session-chip-date,
  .event-route-shell.checkout-event-step .session-chip-time {
    min-width: 0;
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .event-route-shell.checkout-event-step .session-chip-time {
    margin-left: auto;
  }

  .event-route-shell.checkout-event-step .checkout-event-summary-card {
    padding: 16px;
    border-radius: 20px;
    gap: 10px;
  }

  .event-route-shell.checkout-event-step .checkout-event-summary-title {
    font-size: 19px;
  }

  .event-route-shell.checkout-event-step .checkout-event-summary-badge {
    width: 26px;
    height: 26px;
    flex-basis: 26px;
    font-size: 12px;
  }

  .event-route-shell.checkout-event-step .checkout-event-summary-row {
    padding: 11px 12px;
    border-radius: 14px;
    gap: 6px;
  }

  .event-route-shell.checkout-event-step .checkout-event-summary-label {
    font-size: 9.5px;
  }

  .event-route-shell.checkout-event-step .checkout-event-summary-value {
    font-size: 15.5px;
  }

  .event-route-shell.checkout-event-step .checkout-event-summary-row.is-price .checkout-event-summary-value {
    font-size: clamp(26px, 8vw, 30px);
  }

  .event-route-shell.checkout-event-step .checkout-event-choice-cta {
    min-height: 52px;
    height: 52px;
  }

  .event-route-shell.checkout-event-step .checkout-event-choice-cta-part {
    min-height: 52px;
  }

  .event-route-shell.checkout-event-step .checkout-event-choice-cta-text {
    padding-inline: 16px;
  }

  .event-route-shell.checkout-event-step .checkout-event-choice-cta-icon {
    width: 52px;
    flex-basis: 52px;
    font-size: 18px;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) {
    gap: 16px;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-hero {
    border-radius: 22px;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-hero-grid {
    gap: 12px;
    padding: 14px;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-main {
    gap: 10px;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-facts-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 6px;
    max-width: 100%;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-facts-grid .checkout-event-fact:last-child {
    grid-column: 1 / -1;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-fact {
    min-height: 56px;
    padding: 10px 12px;
    border-radius: 14px;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-fact span {
    margin-bottom: 4px;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.1em;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-fact strong {
    font-size: 14.5px;
    font-weight: 900;
    line-height: 1.15;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-fact--price strong {
    font-size: 16px;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-hero-media-slot {
    width: 100%;
    max-width: 100%;
    justify-self: stretch;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-photo-box {
    width: 100%;
    max-width: 100%;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .event-hero-image-card {
    width: 100%;
    max-width: 100%;
    aspect-ratio: 16 / 10;
    border-radius: 18px;
  }

  .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .event-hero-fallback {
    inset: 12px;
    border-radius: 14px;
    padding: 14px;
  }
}

@media (max-width: 380px) {
  .event-route-shell.checkout-event-step {
    padding-bottom: 210px;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky {
    width: calc(100% - 14px);
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-summary-cell {
    padding: 8px 11px;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-value--date {
    font-size: 16px;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-cta {
    min-height: 56px;
    height: 56px;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-cta .checkout-event-choice-cta-part {
    min-height: 56px;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-cta .checkout-event-choice-cta-text > span {
    font-size: 13px;
  }

  .event-route-shell.checkout-event-step .checkout-event-mobile-sticky-cta .checkout-event-choice-cta-icon {
    width: 56px;
    flex-basis: 56px;
  }

  .event-route-shell.checkout-event-step .session-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .event-route-shell.checkout-event-step .checkout-event-address-place {
    font-size: 16px;
  }

  .event-route-shell.checkout-event-step .checkout-event-address-text {
    font-size: 13px;
  }

  .event-route-shell.checkout-event-step .session-chip-date {
    font-size: 13px;
  }

  .event-route-shell.checkout-event-step .session-chip-time {
    font-size: 12px;
  }
}

/* Account mockup-aligned refresh */
.account-body:not(.account-body--offer) {
  min-height: 100dvh;
  overflow: auto;
  background:
    radial-gradient(circle at 50% -10%, rgba(37, 99, 235, 0.22), transparent 34%),
    radial-gradient(circle at 90% 20%, rgba(139, 92, 246, 0.12), transparent 32%),
    linear-gradient(180deg, #040816 0%, #02040b 100%);
}

.account-body:not(.account-body--offer)::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(rgba(255, 255, 255, 0.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.022) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: radial-gradient(circle at center, black 0%, transparent 74%);
}

.account-body:not(.account-body--offer) .account-topbar {
  position: sticky;
  top: 0;
  z-index: 24;
  height: 74px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.13);
  background: rgba(3, 7, 18, 0.78);
  backdrop-filter: blur(24px);
}

.account-body:not(.account-body--offer) .account-topbar-inner {
  max-width: 1420px;
  height: 100%;
  margin: 0 auto;
  padding: 0 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.account-body:not(.account-body--offer) .account-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-weight: 760;
  letter-spacing: 0.04em;
  font-size: 18px;
  color: #f8fafc;
  text-decoration: none;
}

.account-body:not(.account-body--offer) .account-brand-mark {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: block;
  overflow: hidden;
  background: rgba(2, 6, 23, 0.5);
  border: 0;
  box-shadow: 0 14px 34px rgba(37, 99, 235, 0.24);
}

.account-body:not(.account-body--offer) .account-brand-mark img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.account-body:not(.account-body--offer) .account-top-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.account-body:not(.account-body--offer) .account-language {
  display: inline-flex;
  padding: 4px;
  gap: 2px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.76);
  border: 1px solid rgba(148, 163, 184, 0.18);
}

.account-body:not(.account-body--offer) .account-language button {
  border: 0;
  cursor: pointer;
  color: rgba(148, 163, 184, 0.92);
  background: transparent;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 12px;
}

.account-body:not(.account-body--offer) .account-language button.is-active {
  color: #fff;
  background: rgba(34, 211, 238, 0.14);
  box-shadow: inset 0 0 0 1px rgba(34, 211, 238, 0.25);
}

.account-body:not(.account-body--offer) .account-header-logout {
  border-color: rgba(251, 113, 133, 0.34);
  color: #fecdd3;
  background: rgba(127, 29, 29, 0.18);
  border-radius: 999px;
  min-height: 42px;
  padding: 0 20px;
}

.account-body:not(.account-body--offer) .account-page {
  min-height: calc(100dvh - 74px);
  height: auto;
  overflow: visible;
  padding: 34px 0;
}

.account-body:not(.account-body--offer) .account-page .container {
  max-width: 1420px;
  height: auto;
  padding-left: 34px;
  padding-right: 34px;
}

.account-body:not(.account-body--offer) .account-page-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 22px;
  margin-bottom: 22px;
}

.account-body:not(.account-body--offer) .account-hero-copy {
  display: grid;
  gap: 8px;
}

.account-body:not(.account-body--offer) .account-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  color: #bae6fd;
  background: rgba(14, 165, 233, 0.08);
  border: 1px solid rgba(14, 165, 233, 0.18);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.account-body:not(.account-body--offer) .account-page-head h1 {
  margin: 0;
  font-size: clamp(34px, 3.9vw, 54px);
  line-height: 0.98;
  letter-spacing: -0.05em;
}

.account-body:not(.account-body--offer) .account-page-head p {
  margin: 0;
  max-width: 780px;
  color: rgba(148, 163, 184, 0.94);
  font-size: 15px;
  line-height: 1.65;
}

.account-body:not(.account-body--offer) .account-hero-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(112px, 1fr));
  gap: 10px;
  min-width: 390px;
}

.account-body:not(.account-body--offer) .account-hero-stat {
  padding: 16px;
  border-radius: 20px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  background: rgba(15, 23, 42, 0.52);
  box-shadow: 0 16px 42px rgba(0, 0, 0, 0.18);
  display: grid;
  gap: 6px;
}

.account-body:not(.account-body--offer) .account-hero-stat strong {
  display: block;
  font-size: 24px;
  line-height: 1;
}

.account-body:not(.account-body--offer) .account-hero-stat span {
  color: rgba(148, 163, 184, 0.94);
  font-size: 12px;
}

.account-body:not(.account-body--offer) .account-page-shell {
  display: grid;
  gap: 18px;
}

.account-body:not(.account-body--offer) .account-mobile-tabs {
  display: none;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 4px;
}

.account-body:not(.account-body--offer) .account-mobile-tab {
  flex: 0 0 auto;
  border: 1px solid rgba(148, 163, 184, 0.18);
  color: rgba(148, 163, 184, 0.94);
  background: rgba(15, 23, 42, 0.6);
  border-radius: 999px;
  padding: 11px 14px;
  font-size: 13px;
}

.account-body:not(.account-body--offer) .account-mobile-tab.is-active {
  color: #fff;
  border-color: rgba(34, 211, 238, 0.34);
  background: rgba(34, 211, 238, 0.1);
}

.account-body:not(.account-body--offer) .account-layout {
  grid-template-columns: 286px minmax(0, 1fr);
  gap: 22px;
  align-items: start;
  height: auto;
}

.account-body:not(.account-body--offer) .account-menu {
  position: sticky;
  top: 96px;
  min-height: calc(100dvh - 130px);
  border-radius: 28px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  background:
    radial-gradient(circle at 15% 0%, rgba(34, 211, 238, 0.11), transparent 34%),
    rgba(3, 7, 18, 0.72);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.38);
  backdrop-filter: blur(18px);
  padding: 14px;
}

.account-body:not(.account-body--offer) .account-menu-main {
  gap: 7px;
}

.account-body:not(.account-body--offer) .account-tab {
  border-radius: 18px;
  min-height: 48px;
  padding: 13px 14px;
  border-color: transparent;
  background: transparent;
  color: rgba(148, 163, 184, 0.96);
}

.account-body:not(.account-body--offer) .account-tab:hover,
.account-body:not(.account-body--offer) .account-tab.is-active {
  color: #fff;
  border-color: rgba(34, 211, 238, 0.34);
  background: linear-gradient(135deg, rgba(34, 211, 238, 0.14), rgba(37, 99, 235, 0.1));
}

.account-body:not(.account-body--offer) .account-menu-footer {
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid rgba(148, 163, 184, 0.12);
  display: grid;
  gap: 9px;
}

.account-body:not(.account-body--offer) .account-menu-support,
.account-body:not(.account-body--offer) .account-menu-back-home {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 44px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(148, 163, 184, 0.12);
  background: rgba(15, 23, 42, 0.34);
  color: rgba(148, 163, 184, 0.94);
  font-size: 14px;
  text-align: left;
  cursor: pointer;
  text-decoration: none;
}

.account-body:not(.account-body--offer) .account-menu-support {
  color: #cffafe;
  background: rgba(34, 211, 238, 0.07);
  border-color: rgba(34, 211, 238, 0.18);
}

.account-body:not(.account-body--offer) .account-content {
  display: grid;
  gap: 18px;
  height: auto;
}

.account-body:not(.account-body--offer) .account-panel {
  overflow: visible;
  padding-right: 0;
}

.account-body:not(.account-body--offer) .account-mobile-panel-head {
  display: none !important;
}

.account-body:not(.account-body--offer) .account-notice {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 17px 18px;
  border-radius: 24px;
  border: 1px solid rgba(34, 211, 238, 0.18);
  background:
    radial-gradient(circle at 0% 0%, rgba(34, 211, 238, 0.16), transparent 36%),
    rgba(8, 13, 27, 0.74);
}

.account-body:not(.account-body--offer) .account-notice-icon {
  width: 42px;
  height: 42px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  background: rgba(34, 211, 238, 0.1);
  border: 1px solid rgba(34, 211, 238, 0.18);
  color: #e0f2fe;
}

.account-body:not(.account-body--offer) .account-notice-copy {
  display: grid;
  gap: 2px;
}

.account-body:not(.account-body--offer) .account-notice-copy strong {
  display: block;
}

.account-body:not(.account-body--offer) .account-notice-copy span {
  color: rgba(148, 163, 184, 0.94);
  font-size: 13px;
}

.account-body:not(.account-body--offer) .account-notice-action {
  min-height: 42px;
  padding: 0 16px;
  border-radius: 14px;
  text-decoration: none;
}

.account-body:not(.account-body--offer) .account-panel[data-account-panel="tickets"] {
  overflow: visible;
}

.account-body:not(.account-body--offer) .account-ticket-board {
  border-radius: 28px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  background:
    radial-gradient(circle at 15% 0%, rgba(37, 99, 235, 0.12), transparent 32%),
    rgba(6, 11, 24, 0.76);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.38);
  padding: 0;
  overflow: hidden;
}

.account-body:not(.account-body--offer) .account-ticket-board-head {
  padding: 20px 22px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.12);
}

.account-body:not(.account-body--offer) .account-ticket-board-copy h2 {
  margin: 0;
  font-size: 20px;
  letter-spacing: -0.02em;
}

.account-body:not(.account-body--offer) .account-ticket-board-copy p {
  margin: 4px 0 0;
  color: rgba(148, 163, 184, 0.94);
  font-size: 13px;
}

.account-body:not(.account-body--offer) .account-ticket-board-title-wrap {
  display: block;
}

.account-body:not(.account-body--offer) .account-ticket-board-title-mark,
.account-body:not(.account-body--offer) .account-ticket-board-eyebrow {
  display: none;
}

.account-body:not(.account-body--offer) .account-ticket-filter-dropdown {
  display: none;
}

.account-body:not(.account-body--offer) .account-ticket-board-filters {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  border: 1px solid rgba(148, 163, 184, 0.15);
}

.account-body:not(.account-body--offer) .account-ticket-filter {
  border: 0;
  background: transparent;
  color: rgba(148, 163, 184, 0.92);
  border-radius: 999px;
  padding: 8px 12px;
  cursor: pointer;
  font-size: 12px;
}

.account-body:not(.account-body--offer) .account-ticket-filter.is-active {
  color: #fff;
  background: rgba(99, 102, 241, 0.22);
}

.account-body:not(.account-body--offer) .account-ticket-list {
  padding: 16px;
  display: grid;
  gap: 14px;
  overflow: visible;
}

.account-body:not(.account-body--offer) .account-order-card {
  border-radius: 20px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  background:
    linear-gradient(135deg, rgba(15, 23, 42, 0.9), rgba(8, 13, 27, 0.88)),
    radial-gradient(circle at 0% 0%, rgba(34, 211, 238, 0.1), transparent 32%);
  overflow: hidden;
}

.account-body:not(.account-body--offer) .account-order-card[data-kind="request"] {
  border-color: rgba(34, 211, 238, 0.24);
}

.account-body:not(.account-body--offer) .account-ticket-card {
  position: relative;
  overflow: visible;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
  gap: 22px;
  padding: 22px;
  border-color: rgba(34, 211, 238, 0.18);
  background:
    radial-gradient(circle at 8% 20%, rgba(34, 211, 238, 0.12), transparent 30%),
    linear-gradient(110deg, rgba(9, 22, 44, 0.92), rgba(10, 13, 31, 0.84));
}

.account-body:not(.account-body--offer) .account-ticket-main {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 18px;
}

.account-body:not(.account-body--offer) .account-ticket-head {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 13px;
}

.account-body:not(.account-body--offer) .account-ticket-title {
  margin: 0;
  min-width: 0;
  color: #f8fafc;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 850;
  letter-spacing: -0.02em;
  overflow-wrap: anywhere;
}

.account-body:not(.account-body--offer) .account-ticket-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(170px, 1fr));
  gap: 11px;
  max-width: 660px;
}

.account-body:not(.account-body--offer) .account-ticket-meta-tile {
  position: relative;
  min-width: 0;
  min-height: 50px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(129, 140, 248, 0.13);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(226, 232, 240, 0.72);
  display: grid;
  align-content: center;
  gap: 4px;
}

.account-body:not(.account-body--offer) .account-ticket-meta-tile.is-soft {
  background: rgba(37, 99, 235, 0.08);
  border-color: rgba(96, 165, 250, 0.17);
}

.account-body:not(.account-body--offer) .account-ticket-meta-tile.is-success {
  background: rgba(34, 197, 94, 0.08);
  border-color: rgba(74, 222, 128, 0.18);
}

.account-body:not(.account-body--offer) .account-ticket-meta-label {
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: rgba(199, 210, 254, 0.58);
}

.account-body:not(.account-body--offer) .account-ticket-meta-value {
  min-width: 0;
  color: rgba(248, 250, 252, 0.96);
  font-size: 14px;
  line-height: 1.25;
  font-weight: 790;
  overflow-wrap: anywhere;
}

.account-body:not(.account-body--offer) .account-ticket-copy {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 26px;
  height: 26px;
  border: 1px solid rgba(96, 165, 250, 0.24);
  border-radius: 999px;
  color: #bfdbfe;
  background: rgba(15, 23, 42, 0.58);
  cursor: pointer;
  display: inline-grid;
  place-items: center;
  padding: 0;
  font-size: 13px;
}

.account-body:not(.account-body--offer) .account-ticket-choice {
  padding: 0;
  align-content: stretch;
  background: rgba(99, 102, 241, 0.08);
  border-color: rgba(129, 140, 248, 0.22);
}

.account-body:not(.account-body--offer) .account-ticket-choice-trigger {
  width: 100%;
  min-height: 50px;
  padding: 12px 14px;
  border: 0;
  border-radius: 16px;
  color: rgba(248, 250, 252, 0.96);
  background: transparent;
  cursor: pointer;
  text-align: left;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 820;
}

.account-body:not(.account-body--offer) .account-ticket-choice-trigger::after {
  content: "▾";
  float: right;
  opacity: 0.7;
}

.account-body:not(.account-body--offer) .account-ticket-choice.is-open .account-ticket-choice-trigger::after {
  content: "▴";
}

.account-body:not(.account-body--offer) .account-ticket-choice-trigger:disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

.account-body:not(.account-body--offer) .account-ticket-choice-popover {
  position: absolute;
  left: 8px;
  right: 8px;
  top: calc(100% + 8px);
  z-index: 20;
  display: none;
  gap: 6px;
  padding: 8px;
  border: 1px solid rgba(129, 140, 248, 0.18);
  border-radius: 15px;
  background: rgba(8, 13, 30, 0.98);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.35);
}

.account-body:not(.account-body--offer) .account-ticket-choice.is-open .account-ticket-choice-popover {
  display: grid;
}

.account-body:not(.account-body--offer) .account-ticket-choice-option {
  min-height: 38px;
  border: 0;
  border-radius: 12px;
  color: rgba(248, 250, 252, 0.95);
  background: rgba(255, 255, 255, 0.045);
  cursor: pointer;
  font-weight: 800;
  text-align: left;
  padding: 0 12px;
}

.account-body:not(.account-body--offer) .account-ticket-choice-option:hover {
  background: rgba(34, 211, 238, 0.12);
}

.account-body:not(.account-body--offer) .account-ticket-side {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 12px;
}

.account-body:not(.account-body--offer) .account-ticket-status-box {
  display: grid;
  gap: 5px;
  min-height: 62px;
  align-content: center;
  padding: 13px 15px;
  border-radius: 16px;
  border: 1px solid rgba(148, 163, 184, 0.11);
  background: rgba(4, 8, 18, 0.45);
  color: rgba(226, 232, 240, 0.56);
  font-size: 13px;
}

.account-body:not(.account-body--offer) .account-ticket-status-box strong {
  color: rgba(248, 250, 252, 0.96);
  font-size: 15px;
  font-weight: 850;
}

.account-body:not(.account-body--offer) .account-ticket-actions {
  display: grid;
  gap: 10px;
}

.account-body:not(.account-body--offer) .account-ticket-action {
  min-height: 46px;
  border-radius: 15px;
  font-size: 14px;
  font-weight: 830;
}

.account-body:not(.account-body--offer) .account-ticket-action:disabled {
  cursor: not-allowed;
  opacity: 0.54;
  box-shadow: none;
}

.account-body:not(.account-body--offer) .account-order-card summary {
  list-style: none;
  cursor: pointer;
}

.account-body:not(.account-body--offer) .account-order-card summary::-webkit-details-marker {
  display: none;
}

.account-body:not(.account-body--offer) .account-order-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 22px;
  align-items: center;
  padding: 18px 20px;
  min-height: 86px;
}

.account-body:not(.account-body--offer) .account-order-brief {
  min-width: 0;
  display: grid;
  gap: 9px;
}

.account-body:not(.account-body--offer) .account-order-title {
  margin: 0;
  font-size: 17px;
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.account-body:not(.account-body--offer) .account-order-title-lines {
  min-width: 0;
}

.account-body:not(.account-body--offer) .account-order-main-title,
.account-body:not(.account-body--offer) .account-order-venue-line {
  display: none;
}

.account-body:not(.account-body--offer) .account-order-line {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.account-body:not(.account-body--offer) .account-order-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #34d399;
  box-shadow: 0 0 0 4px rgba(52, 211, 153, 0.1);
  flex: 0 0 auto;
}

.account-body:not(.account-body--offer) .account-order-dot.is-request {
  background: #22d3ee;
  box-shadow: 0 0 0 4px rgba(34, 211, 238, 0.1);
}

.account-body:not(.account-body--offer) .account-order-dot.is-test {
  background: #8b5cf6;
  box-shadow: 0 0 0 4px rgba(139, 92, 246, 0.11);
}

.account-body:not(.account-body--offer) .account-order-short-meta {
  color: rgba(148, 163, 184, 0.94);
  font-size: 13.5px;
  line-height: 1.45;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  min-width: 0;
}

.account-body:not(.account-body--offer) .account-order-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  padding: 5px 8px 5px 10px;
  border-radius: 999px;
  color: #dbeafe;
  background: rgba(37, 99, 235, 0.14);
  border: 1px solid rgba(96, 165, 250, 0.22);
  font-size: 12.5px;
}

.account-body:not(.account-body--offer) .account-order-copy {
  width: 26px;
  height: 26px;
  border: 1px solid rgba(96, 165, 250, 0.24);
  border-radius: 999px;
  color: #bfdbfe;
  background: rgba(15, 23, 42, 0.58);
  cursor: pointer;
  display: inline-grid;
  place-items: center;
  padding: 0;
  font-size: 13px;
}

.account-body:not(.account-body--offer) .account-order-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  justify-content: flex-end;
}

.account-body:not(.account-body--offer) .account-order-chip {
  display: inline-flex;
  align-items: center;
  height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  color: #cbd5e1;
  background: rgba(15, 23, 42, 0.58);
  font-size: 12px;
  white-space: nowrap;
}

.account-body:not(.account-body--offer) .account-order-chip.is-request {
  color: #cffafe;
  background: rgba(8, 145, 178, 0.12);
  border-color: rgba(34, 211, 238, 0.22);
}

.account-body:not(.account-body--offer) .account-order-chip.is-success {
  color: #bbf7d0;
  background: rgba(22, 163, 74, 0.12);
  border-color: rgba(74, 222, 128, 0.2);
}

.account-body:not(.account-body--offer) .account-order-chip.is-accent {
  color: #ddd6fe;
  background: rgba(124, 58, 237, 0.14);
  border-color: rgba(167, 139, 250, 0.22);
}

.account-body:not(.account-body--offer) .account-order-toggle {
  min-height: 42px;
  padding: 0 16px;
  border-radius: 14px;
  border: 1px solid rgba(34, 211, 238, 0.22);
  color: #cffafe;
  background: rgba(34, 211, 238, 0.07);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 13px;
  white-space: nowrap;
}

.account-body:not(.account-body--offer) .account-order-toggle::after {
  content: "↓";
  font-size: 13px;
  opacity: 0.8;
}

.account-body:not(.account-body--offer) .account-order-card[open] .account-order-toggle::after {
  content: "↑";
}

.account-body:not(.account-body--offer) .account-order-details {
  border-top: 1px solid rgba(148, 163, 184, 0.1);
  padding: 0 20px 20px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 0.44fr) auto;
  gap: 22px;
  align-items: start;
}

.account-body:not(.account-body--offer) .account-order-details-inner {
  padding-top: 18px;
}

.account-body:not(.account-body--offer) .account-order-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  color: rgba(148, 163, 184, 0.94);
  font-size: 13px;
}

.account-body:not(.account-body--offer) .account-order-event-details-card {
  display: none;
}

.account-body:not(.account-body--offer) .account-order-extra-chips {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.account-body:not(.account-body--offer) .account-order-facts {
  display: grid;
  gap: 8px;
  color: rgba(148, 163, 184, 0.94);
  font-size: 13px;
}

.account-body:not(.account-body--offer) .account-order-fact {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 10px;
  border-radius: 14px;
  background: rgba(2, 6, 23, 0.34);
  border: 1px solid rgba(148, 163, 184, 0.09);
}

.account-body:not(.account-body--offer) .account-order-fact b {
  color: #e2e8f0;
  font-weight: 650;
  text-align: right;
}

.account-body:not(.account-body--offer) .account-order-actions {
  display: grid;
  gap: 8px;
  min-width: 172px;
}

.account-body:not(.account-body--offer) .account-order-action {
  border-radius: 14px;
  min-height: 42px;
  padding: 0 14px;
}

.account-body:not(.account-body--offer) .account-order-comment {
  margin-top: 10px;
  color: rgba(203, 213, 225, 0.95);
  font-size: 13px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.account-body:not(.account-body--offer) .account-ticket-empty {
  padding: 30px;
  border-top: 1px solid rgba(148, 163, 184, 0.1);
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 22px;
}

.account-body:not(.account-body--offer) .account-ticket-empty h3 {
  margin: 0 0 8px;
  font-size: 18px;
}

.account-body:not(.account-body--offer) .account-ticket-empty p {
  margin: 0;
  color: rgba(148, 163, 184, 0.94);
  line-height: 1.55;
  max-width: 760px;
}

.account-body:not(.account-body--offer) .account-ticket-empty .btn {
  min-height: 42px;
  padding: 0 16px;
  border-radius: 14px;
}

.account-body:not(.account-body--offer) button:not(:disabled),
.account-body:not(.account-body--offer) a,
.account-body:not(.account-body--offer) .account-tab,
.account-body:not(.account-body--offer) .account-language button,
.account-body:not(.account-body--offer) .account-ticket-filter,
.account-body:not(.account-body--offer) .account-mobile-tab,
.account-body:not(.account-body--offer) .account-menu-back-home,
.account-body:not(.account-body--offer) .account-menu-support,
.account-body:not(.account-body--offer) .account-header-logout {
  transition:
    transform 0.18s ease,
    background 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease,
    box-shadow 0.18s ease,
    opacity 0.18s ease;
}

.account-body:not(.account-body--offer) button:not(:disabled):hover,
.account-body:not(.account-body--offer) a:hover,
.account-body:not(.account-body--offer) .account-tab:hover,
.account-body:not(.account-body--offer) .account-language button:hover,
.account-body:not(.account-body--offer) .account-ticket-filter:hover,
.account-body:not(.account-body--offer) .account-mobile-tab:hover,
.account-body:not(.account-body--offer) .account-menu-back-home:hover,
.account-body:not(.account-body--offer) .account-menu-support:hover,
.account-body:not(.account-body--offer) .account-header-logout:hover {
  transform: translateY(-1px);
}

.account-body:not(.account-body--offer) .account-order-card:hover {
  border-color: rgba(34, 211, 238, 0.25);
  background: rgba(14, 24, 47, 0.94);
}

.account-body:not(.account-body--offer) .account-order-card summary:hover .account-order-toggle {
  transform: translateY(-1px);
  border-color: rgba(34, 211, 238, 0.38);
  background: rgba(34, 211, 238, 0.1);
  box-shadow: 0 12px 26px rgba(34, 211, 238, 0.08);
}

@media (max-width: 1120px) {
  .account-body:not(.account-body--offer) .account-page-head {
    grid-template-columns: 1fr;
  }

  .account-body:not(.account-body--offer) .account-hero-stats {
    min-width: 0;
    max-width: 620px;
  }

  .account-body:not(.account-body--offer) .account-layout {
    grid-template-columns: 1fr;
  }

  .account-body:not(.account-body--offer) .account-menu {
    display: none !important;
  }

  .account-body:not(.account-body--offer) .account-mobile-tabs {
    display: flex;
  }

  .account-body:not(.account-body--offer) .account-order-summary,
  .account-body:not(.account-body--offer) .account-order-details {
    grid-template-columns: 1fr;
  }

  .account-body:not(.account-body--offer) .account-order-chip-list {
    justify-content: flex-start;
  }

  .account-body:not(.account-body--offer) .account-order-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-width: 0;
  }

  .account-body:not(.account-body--offer) .account-ticket-card {
    grid-template-columns: 1fr;
  }

  .account-request-item {
    grid-template-columns: 1fr;
  }

  .account-body:not(.account-body--offer) .account-ticket-side {
    grid-template-columns: minmax(180px, 0.4fr) minmax(0, 1fr);
    align-items: start;
  }

  .account-request-side {
    grid-template-columns: minmax(180px, 0.4fr) minmax(0, 1fr);
    align-items: start;
  }

  .account-body:not(.account-body--offer) .account-ticket-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .account-request-side .account-request-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .account-body:not(.account-body--offer) .account-topbar-inner,
  .account-body:not(.account-body--offer) .account-page .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .account-body:not(.account-body--offer) .account-mobile-tabs {
    margin: 0 -12px 8px;
    padding: 8px 12px 6px;
    display: flex;
    flex-wrap: nowrap;
    gap: 7px;
    width: auto;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    position: sticky;
    top: 58px;
    z-index: 9;
    background: transparent;
    backdrop-filter: none;
    border: 0;
    box-shadow: none;
  }

  .account-body:not(.account-body--offer) .account-mobile-tabs::-webkit-scrollbar {
    display: none;
  }

  .account-body:not(.account-body--offer) .account-mobile-tab {
    flex: 0 0 auto;
    height: 32px;
    min-height: 32px;
    padding: 0 13px;
    border-radius: 999px;
    border: 1px solid rgba(129, 140, 248, 0.2);
    background: rgba(15, 23, 42, 0.34);
    color: rgba(226, 232, 240, 0.68);
    font-size: 11px;
    font-weight: 720;
    line-height: 1;
    white-space: nowrap;
    box-shadow: none;
  }

  .account-body:not(.account-body--offer) .account-mobile-tab.is-active {
    border-color: rgba(34, 211, 238, 0.42);
    background: rgba(34, 211, 238, 0.12);
    color: #fff;
    box-shadow: 0 0 18px rgba(34, 211, 238, 0.08);
  }

  .account-body:not(.account-body--offer) .account-page-head {
    margin-bottom: 18px;
  }

  .account-body:not(.account-body--offer) .account-hero-copy {
    gap: 10px;
    padding: 16px 0 14px;
  }

  .account-body:not(.account-body--offer) .account-hero-eyebrow {
    margin-bottom: 0;
  }

  .account-body:not(.account-body--offer) .account-language {
    display: none;
  }

  .account-body:not(.account-body--offer) .account-hero-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    min-width: 0;
    width: 100%;
    max-width: 100%;
  }

  .account-body:not(.account-body--offer) .account-hero-stat {
    min-height: 62px;
    padding: 9px 9px 8px;
    border-radius: 16px;
    gap: 5px;
  }

  .account-body:not(.account-body--offer) .account-hero-stat strong {
    font-size: 21px;
    line-height: 1;
    margin-bottom: 0;
  }

  .account-body:not(.account-body--offer) .account-hero-stat span {
    font-size: 9.5px;
    line-height: 1.16;
  }

  .account-body:not(.account-body--offer) .account-content {
    gap: 14px;
  }

  .account-body:not(.account-body--offer) .account-mobile-panel-head {
    order: 1;
  }

  .account-body:not(.account-body--offer) .account-panel {
    order: 2;
  }

  .account-body:not(.account-body--offer) .account-notice {
    order: 3;
  }

  .account-body:not(.account-body--offer) .account-notice,
  .account-body:not(.account-body--offer) .account-ticket-empty {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .account-body:not(.account-body--offer) .account-ticket-board.card {
    margin-bottom: 18px;
    position: relative;
    overflow: visible;
    background: transparent;
    border: 0;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
  }

  .account-body:not(.account-body--offer) .account-ticket-board-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    position: relative;
    z-index: 5;
    margin-bottom: 13px;
    padding: 12px 0;
    border-top: 1px solid rgba(129, 140, 248, 0.18);
    border-bottom: 1px solid rgba(129, 140, 248, 0.14);
  }

  .account-body:not(.account-body--offer) .account-ticket-board-copy {
    min-width: 0;
    display: grid;
    gap: 0;
  }

  .account-body:not(.account-body--offer) .account-ticket-board-title-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
  }

  .account-body:not(.account-body--offer) .account-ticket-board-title-mark {
    display: block;
    width: 9px;
    height: 34px;
    border-radius: 999px;
    background: linear-gradient(180deg, #22d3ee, #635bff);
    box-shadow: 0 0 18px rgba(34, 211, 238, 0.34);
    flex: 0 0 auto;
  }

  .account-body:not(.account-body--offer) .account-ticket-board-title-text {
    display: grid;
    gap: 3px;
    min-width: 0;
  }

  .account-body:not(.account-body--offer) .account-ticket-board-eyebrow {
    display: block;
    color: rgba(199, 210, 254, 0.72);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: 0.12em;
    text-transform: uppercase;
  }

  .account-body:not(.account-body--offer) .account-ticket-board-copy h2 {
    margin: 0;
    font-size: 21px;
    line-height: 1;
    letter-spacing: -0.045em;
    text-shadow: 0 0 26px rgba(99, 91, 255, 0.22);
  }

  .account-body:not(.account-body--offer) .account-ticket-board-subtitle {
    display: none;
  }

  .account-body:not(.account-body--offer) .account-ticket-board-filters--desktop {
    display: none;
  }

  .account-body:not(.account-body--offer) .account-ticket-filter-dropdown {
    display: block;
    position: relative;
    z-index: 20;
    justify-self: end;
  }

  .account-body:not(.account-body--offer) .account-ticket-filter-current {
    height: 34px;
    min-width: 82px;
    padding: 0 9px 0 12px;
    border-radius: 999px;
    border: 1px solid rgba(129, 140, 248, 0.26);
    background:
      radial-gradient(circle at 100% 0, rgba(99, 91, 255, 0.2), transparent 50%),
      rgba(15, 23, 42, 0.62);
    color: rgba(243, 246, 255, 0.94);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    font-size: 11px;
    font-weight: 760;
    cursor: pointer;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
    white-space: nowrap;
  }

  .account-body:not(.account-body--offer) .account-ticket-filter-chevron {
    width: 12px;
    height: 12px;
    opacity: 0.72;
    transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1);
  }

  .account-body:not(.account-body--offer) .account-ticket-filter-dropdown.is-open .account-ticket-filter-chevron {
    transform: rotate(180deg);
  }

  .account-body:not(.account-body--offer) .account-ticket-filter-menu {
    position: absolute;
    top: calc(100% + 7px);
    right: 0;
    width: 126px;
    padding: 5px;
    border-radius: 15px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    background:
      radial-gradient(circle at 100% 0, rgba(99, 91, 255, 0.22), transparent 46%),
      rgba(8, 13, 28, 0.94);
    box-shadow:
      0 18px 42px rgba(0, 0, 0, 0.36),
      inset 0 1px 0 rgba(255, 255, 255, 0.04);
    backdrop-filter: blur(18px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-7px) scale(0.97);
    transform-origin: top right;
    transition:
      opacity 0.2s ease,
      visibility 0.2s ease,
      transform 0.28s cubic-bezier(0.16, 1, 0.3, 1);
  }

  .account-body:not(.account-body--offer) .account-ticket-filter-dropdown.is-open .account-ticket-filter-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
  }

  .account-body:not(.account-body--offer) .account-ticket-filter-option {
    width: 100%;
    min-height: 32px;
    padding: 0 9px;
    border: 0;
    border-radius: 11px;
    background: transparent;
    color: rgba(226, 232, 240, 0.76);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-size: 11px;
    font-weight: 720;
    text-align: left;
    cursor: pointer;
  }

  .account-body:not(.account-body--offer) .account-ticket-filter-option:hover {
    background: rgba(99, 91, 255, 0.16);
    color: #fff;
  }

  .account-body:not(.account-body--offer) .account-ticket-list {
    padding: 0;
    gap: 12px;
  }

  .account-body:not(.account-body--offer) .account-ticket-board .account-state {
    padding: 0;
  }

  .account-body:not(.account-body--offer) .account-ticket-empty {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .account-body:not(.account-body--offer) .account-order-actions {
    grid-template-columns: 1fr;
  }

  .account-body:not(.account-body--offer) .account-order-summary {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    padding: 14px 12px;
    min-height: 0;
    align-items: start;
  }

  .account-body:not(.account-body--offer) .account-order-brief {
    gap: 6px;
  }

  .account-body:not(.account-body--offer) .account-order-line {
    display: grid;
    grid-template-columns: 8px minmax(0, 1fr);
    column-gap: 8px;
    align-items: start;
    margin-bottom: 10px;
  }

  .account-body:not(.account-body--offer) .account-order-dot {
    width: 8px;
    height: 8px;
    margin-top: 4px;
  }

  .account-body:not(.account-body--offer) .account-order-title-lines {
    min-width: 0;
    display: grid;
    gap: 4px;
  }

  .account-body:not(.account-body--offer) .account-order-title {
    display: none;
  }

  .account-body:not(.account-body--offer) .account-order-main-title {
    display: block;
    font-size: 14px;
    line-height: 1.18;
    font-weight: 820;
    letter-spacing: -0.015em;
    color: rgba(244, 246, 255, 0.96);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .account-body:not(.account-body--offer) .account-order-venue-line {
    display: block;
    font-size: 11px;
    line-height: 1.25;
    font-weight: 650;
    color: rgba(226, 232, 240, 0.62);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .account-body:not(.account-body--offer) .account-order-short-meta {
    margin-top: 0;
    gap: 8px;
  }

  .account-body:not(.account-body--offer) .account-order-short-meta-line {
    display: none;
  }

  .account-body:not(.account-body--offer) .account-order-chip-list {
    display: none;
  }

  .account-body:not(.account-body--offer) .account-order-toggle {
    min-height: 34px;
    padding: 0 11px;
    border-radius: 12px;
    font-size: 11px;
    align-self: center;
  }

  .account-body:not(.account-body--offer) .account-order-details {
    padding: 0 12px 12px;
    gap: 12px;
  }

  .account-body:not(.account-body--offer) .account-order-details-inner {
    padding-top: 12px;
  }

  .account-body:not(.account-body--offer) .account-order-meta {
    display: none;
  }

  .account-body:not(.account-body--offer) .account-order-event-details-card {
    display: grid;
    gap: 8px;
    padding: 10px;
    border-radius: 15px;
    border: 1px solid rgba(129, 140, 248, 0.13);
    background:
      radial-gradient(circle at 100% 0, rgba(99, 91, 255, 0.1), transparent 48%),
      rgba(5, 10, 24, 0.34);
  }

  .account-body:not(.account-body--offer) .account-order-event-details-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .account-body:not(.account-body--offer) .account-order-event-detail-item {
    min-height: 48px;
    padding: 9px 10px;
    border-radius: 12px;
    border: 1px solid rgba(129, 140, 248, 0.12);
    background: rgba(15, 23, 42, 0.38);
    display: grid;
    align-content: center;
    gap: 3px;
    min-width: 0;
  }

  .account-body:not(.account-body--offer) .account-order-event-detail-label {
    font-size: 8.5px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(199, 210, 254, 0.58);
  }

  .account-body:not(.account-body--offer) .account-order-event-detail-value {
    font-size: 12px;
    line-height: 1.22;
    font-weight: 780;
    color: rgba(244, 246, 255, 0.95);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .account-body:not(.account-body--offer) .account-order-event-detail-value.is-muted {
    color: rgba(226, 232, 240, 0.82);
    font-weight: 720;
  }

  .account-body:not(.account-body--offer) .account-order-extra-chips {
    display: none;
  }

  .account-body:not(.account-body--offer) .account-order-actions {
    display: grid;
    gap: 8px;
    margin-top: 2px;
    min-width: 0;
  }

  .account-body:not(.account-body--offer) .account-order-action {
    width: 100%;
    height: 42px;
    min-height: 42px;
    padding: 0 12px;
    border-radius: 13px;
    font-size: 12px;
    font-weight: 780;
  }

  .account-body:not(.account-body--offer) .account-order-action.btn-outline {
    border: 1px solid rgba(148, 163, 184, 0.25);
    background: rgba(15, 23, 42, 0.52);
    color: rgba(226, 232, 240, 0.68);
  }

  .account-body:not(.account-body--offer) .account-order-action:disabled {
    opacity: 0.58;
    cursor: not-allowed;
    color: rgba(156, 163, 175, 0.62);
    background: rgba(15, 23, 42, 0.36);
    box-shadow: none;
  }

  .account-body:not(.account-body--offer) .account-ticket-card {
    padding: 15px;
    gap: 15px;
  }

  .account-body:not(.account-body--offer) .account-ticket-title {
    font-size: 18px;
  }

  .account-body:not(.account-body--offer) .account-ticket-meta-grid,
  .account-body:not(.account-body--offer) .account-ticket-side,
  .account-body:not(.account-body--offer) .account-ticket-actions {
    grid-template-columns: 1fr;
  }

  .account-body:not(.account-body--offer) .account-ticket-choice-popover {
    left: 0;
    right: 0;
  }
}

/* Event filters refresh (home + all-events only) */
.events-controls-row,
.all-events-controls-row {
  display: block;
}

#events [data-search-filters],
#all-events-view [data-all-events-filters] {
  margin-bottom: 0;
  min-width: 0;
  display: grid;
  gap: 12px;
  align-items: center;
}

#events [data-search-filters].event-filters-grid {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) 176px 200px;
}

#all-events-view [data-all-events-filters].event-filters-grid--all {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) 176px minmax(280px, 340px);
}

#events [data-search-filters] > *,
#all-events-view [data-all-events-filters] > * {
  width: 100%;
  min-width: 0;
}

#events [data-search-filters] .filter-control,
#events [data-search-filters] .filter-field,
#all-events-view [data-all-events-filters] .filter-control,
#all-events-view [data-all-events-filters] .filter-field {
  min-height: 56px;
  height: 56px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 14px 8px 16px;
  border-radius: 18px;
  color: #dfe6ff;
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.14), transparent 36%),
    linear-gradient(180deg, rgba(18, 26, 58, 0.86), rgba(12, 18, 41, 0.94));
  border: 1px solid rgba(151, 167, 255, 0.22);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.055),
    0 16px 36px rgba(0, 0, 0, 0.18),
    0 0 22px rgba(98, 92, 255, 0.04);
  overflow: hidden;
  transition:
    background 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

#events [data-search-filters] .filter-control::before,
#all-events-view [data-all-events-filters] .filter-control::before {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.7), transparent);
  opacity: 0.68;
}

#events [data-search-filters] .filter-control:hover,
#events [data-search-filters] .filter-control:focus-within,
#all-events-view [data-all-events-filters] .filter-control:hover,
#all-events-view [data-all-events-filters] .filter-control:focus-within {
  border-color: rgba(151, 167, 255, 0.38);
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.2), transparent 38%),
    linear-gradient(180deg, rgba(24, 34, 74, 0.92), rgba(12, 18, 41, 0.98));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    0 16px 36px rgba(0, 0, 0, 0.18),
    0 0 26px rgba(98, 92, 255, 0.08);
}

#events [data-search-filters] .filter-main,
#all-events-view [data-all-events-filters] .filter-main {
  flex: 1 1 auto;
  min-height: 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
}

#events [data-search-filters] .filter-label,
#all-events-view [data-all-events-filters] .filter-label {
  color: #7f8aa6;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.11em;
  line-height: 1.28;
  display: block;
  text-transform: uppercase;
}

#events [data-search-filters] .filter-value,
#all-events-view [data-all-events-filters] .filter-value {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: transparent;
  background-image: none !important;
  box-shadow: none;
  padding: 0;
  margin: 0;
  color: #eef2ff;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#events [data-search-filters] .filter-value::placeholder,
#all-events-view [data-all-events-filters] .filter-value::placeholder {
  color: #eef2ff;
  opacity: 1;
}

#events [data-search-filters] .date-input.filter-value,
#all-events-view [data-all-events-filters] .date-input.filter-value {
  cursor: pointer;
}

#events [data-search-filters] .filter-actions,
#all-events-view [data-all-events-filters] .filter-actions {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
}

#events [data-search-filters] .filter-arrow,
#all-events-view [data-all-events-filters] .filter-arrow {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(98, 92, 255, 0.14);
  border: 1px solid rgba(151, 167, 255, 0.17);
  color: #cfd6ff;
  font-size: 13px;
  line-height: 1;
  transition: background 0.24s ease;
}

#events [data-search-filters] .filter-control:hover .filter-arrow,
#events [data-search-filters] .filter-control:focus-within .filter-arrow,
#all-events-view [data-all-events-filters] .filter-control:hover .filter-arrow,
#all-events-view [data-all-events-filters] .filter-control:focus-within .filter-arrow {
  background: rgba(98, 92, 255, 0.24);
}

#events [data-search-filters] .filter-clear-btn,
#all-events-view [data-all-events-filters] .filter-clear-btn {
  position: static;
  transform: none;
  top: auto;
  right: auto;
  z-index: auto;
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.06);
  color: rgba(255, 255, 255, 0.68);
  font-size: 15px;
  line-height: 1;
  cursor: pointer;
  transition:
    border-color 0.16s ease,
    background 0.16s ease,
    color 0.16s ease;
}

#events [data-search-filters] .filter-clear-btn:hover,
#all-events-view [data-all-events-filters] .filter-clear-btn:hover {
  border-color: rgba(255, 255, 255, 0.24);
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}

#events [data-search-filters] .filter-clear-btn[hidden],
#all-events-view [data-all-events-filters] .filter-clear-btn[hidden] {
  display: none;
}

.filter-action-row {
  width: 200px;
  min-width: 200px;
  justify-self: end;
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  transition: gap 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

.filter-action-row:hover,
.filter-action-row:focus-within {
  gap: 0;
}

.filter-action-row .filter-action,
.filter-action-row .filter-action-arrow {
  min-height: 52px;
  border: 1px solid rgba(151, 167, 255, 0.24);
  background: #625cff;
  color: #fff;
  box-shadow: 0 14px 30px rgba(116, 107, 255, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.12);
  transition:
    border-radius 0.42s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.28s ease,
    box-shadow 0.28s ease,
    filter 0.28s ease,
    margin 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

.filter-action-row .filter-action {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 20px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 720;
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.filter-action-row .filter-action-arrow {
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
}

.filter-action-row:hover .filter-action,
.filter-action-row:focus-within .filter-action {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right-color: transparent;
  filter: brightness(1.04);
  margin-right: -1px;
}

.filter-action-row:hover .filter-action-arrow,
.filter-action-row:focus-within .filter-action-arrow {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left-color: transparent;
  filter: brightness(1.04);
  margin-left: -1px;
}

.events-all-link {
  align-self: center;
  width: 200px;
  min-width: 200px;
  justify-self: end;
}

#events [data-search-filters] .events-calendar-link-pill,
#all-events-view [data-all-events-filters] .events-calendar-link-pill {
  text-decoration: none;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  cursor: pointer;
  overflow: hidden;
}

#events [data-search-filters] .events-calendar-link__content,
#all-events-view [data-all-events-filters] .events-calendar-link__content {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 0;
  color: #eef2ff;
}

#events [data-search-filters] .events-calendar-link__icon,
#all-events-view [data-all-events-filters] .events-calendar-link__icon {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  color: inherit;
  background-color: currentColor;
  -webkit-mask: url("/images/icons/calendar.svg") center / contain no-repeat;
  mask: url("/images/icons/calendar.svg") center / contain no-repeat;
  opacity: 0.96;
}

#events [data-search-filters] .events-calendar-link__text,
#all-events-view [data-all-events-filters] .events-calendar-link__text {
  min-width: 0;
  color: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.all-events-request-action-row {
  width: 100%;
  min-width: 0;
  justify-self: stretch;
}

.all-events-request-action-row .all-events-request-btn {
  height: 52px;
  min-height: 52px;
  padding: 0 14px;
  font-size: 12.5px;
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0;
  cursor: pointer;
}

.all-events-request-action-row .all-events-request-arrow {
  border: 1px solid rgba(151, 167, 255, 0.24);
  padding: 0;
  cursor: pointer;
}

.events-all-link-mobile {
  display: none;
}

/* Hide legacy city pills block under home events filters */
#events [data-home-link-hub],
#events .home-link-hub {
  display: none !important;
}

/* Home filters expand mode (events section only) */
#events .events-controls-row.event-filters-row {
  position: relative;
  z-index: 20;
}

#events [data-search-filters].home-filters {
  position: relative;
  z-index: 40;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) 176px 212px;
  gap: 12px;
  align-items: start;
  margin-bottom: 18px;
}

#events [data-search-filters].home-filters .filter-card {
  position: relative;
  min-width: 0;
  height: 56px;
  min-height: 56px;
  border-radius: 18px;
  border: 1px solid rgba(151, 167, 255, 0.22);
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.14), transparent 36%),
    linear-gradient(180deg, rgba(18, 26, 58, 0.88), rgba(12, 18, 41, 0.96));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.055),
    0 16px 36px rgba(0, 0, 0, 0.18),
    0 0 22px rgba(98, 92, 255, 0.04);
  overflow: visible;
  transition: border-color 0.24s ease, background 0.24s ease, box-shadow 0.24s ease;
}

#events [data-search-filters].home-filters .filter-card::before {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.72), transparent);
  opacity: 0.72;
  pointer-events: none;
  z-index: 4;
}

#events [data-search-filters].home-filters .filter-card:hover,
#events [data-search-filters].home-filters .filter-card.is-open {
  border-color: rgba(151, 167, 255, 0.38);
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.2), transparent 38%),
    linear-gradient(180deg, rgba(24, 34, 74, 0.94), rgba(12, 18, 41, 0.99));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    0 18px 44px rgba(0, 0, 0, 0.22),
    0 0 28px rgba(98, 92, 255, 0.09);
}

#events [data-search-filters].home-filters .filter-card.is-open {
  z-index: 90;
}

#events [data-search-filters].home-filters .filter-card.is-open:not(.date-card) {
  z-index: 64;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom-color: transparent;
}

#events [data-search-filters].home-filters .filter-trigger {
  position: relative;
  z-index: 3;
  width: 100%;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 12px 8px 16px;
  border: 0;
  color: #dfe6ff;
  background: transparent;
  cursor: pointer;
  appearance: none;
  font: inherit;
  text-align: left;
}

#events [data-search-filters].home-filters .filter-main {
  min-width: 0;
  min-height: 100%;
  padding-right: 54px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
}

#events [data-search-filters].home-filters .filter-label {
  color: #7f8aa6;
  font-size: 10px;
  font-weight: 760;
  line-height: 1;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

#events [data-search-filters].home-filters .filter-value {
  color: #eef2ff;
  font-size: 14px;
  line-height: 1.15;
  font-weight: 650;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#events [data-search-filters].home-filters .filter-arrow {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(98, 92, 255, 0.16);
  border: 1px solid rgba(151, 167, 255, 0.18);
  color: #d8ddff;
  font-size: 13px;
  transition: transform 0.38s cubic-bezier(0.16, 1, 0.3, 1), background 0.24s ease;
}

#events [data-search-filters].home-filters .filter-card.is-open .filter-arrow {
  transform: rotate(180deg);
  background: rgba(98, 92, 255, 0.26);
}

#events [data-search-filters].home-filters .filter-clear-btn {
  position: absolute;
  top: 50%;
  right: 56px;
  z-index: 12;
  width: 22px;
  height: 22px;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  background: rgba(148, 163, 184, 0.1);
  color: rgba(229, 231, 235, 0.72);
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  transition:
    border-color 0.16s ease,
    background 0.16s ease,
    color 0.16s ease;
}

#events [data-search-filters].home-filters .filter-clear-btn:hover {
  background: rgba(99, 102, 241, 0.18);
  border-color: rgba(129, 140, 248, 0.45);
  color: #fff;
}

#events [data-search-filters].home-filters .filter-clear-btn[hidden] {
  display: none;
}

#events [data-search-filters].home-filters .filter-options {
  position: absolute;
  top: calc(100% - 1px);
  left: -1px;
  right: -1px;
  width: auto;
  max-height: min(420px, calc(100dvh - 140px));
  overflow-y: auto;
  overflow-x: hidden;
  border-top: 0;
  padding: 6px 8px 10px;
  border-radius: 0 0 22px 22px;
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.2), transparent 38%),
    linear-gradient(180deg, rgba(24, 34, 74, 0.95), rgba(12, 18, 41, 0.99));
  border: 1px solid rgba(151, 167, 255, 0.38);
  box-shadow:
    0 20px 44px rgba(0, 0, 0, 0.34),
    0 0 28px rgba(98, 92, 255, 0.12);
  opacity: 0;
  transform: translateY(-8px);
  pointer-events: none;
  z-index: 72;
  transition:
    opacity 0.28s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#events [data-search-filters].home-filters .filter-card.is-open .filter-options {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

#events [data-search-filters].home-filters .filter-card.city .filter-options {
  max-height: min(420px, calc(100dvh - 150px));
}

#events [data-search-filters].home-filters [data-home-inline-filter="category"] .filter-options {
  max-height: min(420px, calc(100dvh - 150px));
}

#events [data-search-filters].home-filters .filter-options::before {
  content: "";
  display: block;
  height: 1px;
  margin: 0 8px 7px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.16), transparent);
}

#events [data-search-filters].home-filters .filter-option {
  width: 100%;
  min-height: 35px;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 0 10px;
  border: 0;
  border-radius: 13px;
  background: transparent;
  color: #edf2ff;
  font: inherit;
  font-size: 13px;
  font-weight: 650;
  text-align: left;
  cursor: pointer;
  transition: background 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

#events [data-search-filters].home-filters .filter-option:hover,
#events [data-search-filters].home-filters .filter-option.is-selected {
  background: rgba(98, 92, 255, 0.28);
  box-shadow: inset 0 0 0 1px rgba(129, 140, 248, 0.42);
  color: #fff;
}

#events [data-search-filters].home-filters .filter-option::before {
  content: "";
  width: 16px;
}

#events [data-search-filters].home-filters .filter-option.is-selected::before {
  content: "✓";
  color: #f4f7ff;
  font-weight: 800;
}

#events [data-search-filters].home-filters .date-card .filter-options {
  z-index: 95;
  top: calc(100% + 9px);
  right: 0;
  left: auto;
  width: 430px;
  max-height: min(560px, calc(100dvh - 28px));
  overflow-y: auto;
  overflow-x: hidden;
  min-height: 0;
  padding: 16px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 20% 0%, rgba(98, 92, 255, 0.2), transparent 38%),
    linear-gradient(180deg, rgba(13, 19, 46, 0.99), rgba(10, 14, 32, 0.995));
  background-color: #0a0f22;
  border: 1px solid rgba(129, 140, 248, 0.56);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    0 28px 70px rgba(0, 0, 0, 0.58),
    0 0 30px rgba(98, 92, 255, 0.16);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  transform: translateY(-8px) scale(0.985);
}

#events [data-search-filters].home-filters .date-card.is-open .filter-options {
  transform: translateY(0) scale(1);
}

#events [data-search-filters].home-filters .calendar-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

#events [data-search-filters].home-filters .calendar-title {
  display: grid;
  gap: 3px;
}

#events [data-search-filters].home-filters .calendar-month {
  color: #f3f6ff;
  font-size: 17px;
  font-weight: 780;
  letter-spacing: -0.02em;
}

#events [data-search-filters].home-filters .calendar-hint {
  color: #7f8aa6;
  font-size: 11px;
  font-weight: 650;
}

#events [data-search-filters].home-filters .calendar-nav {
  display: flex;
  gap: 8px;
}

#events [data-search-filters].home-filters .calendar-nav button {
  width: 38px;
  height: 38px;
  border-radius: 13px;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: rgba(255, 255, 255, 0.035);
  color: #dfe6ff;
  font-size: 18px;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease;
}

#events [data-search-filters].home-filters .calendar-nav button:hover {
  border-color: rgba(151, 167, 255, 0.34);
  background: rgba(98, 92, 255, 0.16);
}

#events [data-search-filters].home-filters .calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 8px;
}

#events [data-search-filters].home-filters .calendar-day-name {
  height: 22px;
  display: grid;
  place-items: center;
  color: #8792ae;
  font-size: 11px;
  font-weight: 720;
}

#events [data-search-filters].home-filters .calendar-day-spacer {
  height: 46px;
  border-radius: 15px;
  border: 1px solid transparent;
  background: transparent;
  pointer-events: none;
}

#events [data-search-filters].home-filters .calendar-day {
  height: 46px;
  border-radius: 15px;
  border: 1px solid rgba(129, 140, 248, 0.24);
  background: rgba(8, 11, 28, 0.9);
  color: #e7edff;
  display: grid;
  place-items: center;
  font-size: 14px;
  font-weight: 650;
  cursor: pointer;
  transition:
    background 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease,
    box-shadow 0.18s ease;
}

#events [data-search-filters].home-filters .calendar-day:hover {
  border-color: rgba(129, 140, 248, 0.44);
  background: rgba(98, 92, 255, 0.22);
}

#events [data-search-filters].home-filters .calendar-day.is-muted {
  opacity: 0.32;
  cursor: default;
}

#events [data-search-filters].home-filters .calendar-day.is-today {
  border-color: rgba(60, 155, 255, 0.56);
  color: #fff;
  box-shadow:
    inset 0 0 0 1px rgba(60, 155, 255, 0.18),
    0 0 18px rgba(60, 155, 255, 0.1);
}

#events [data-search-filters].home-filters .calendar-day.is-selected {
  border-color: rgba(98, 92, 255, 0.76);
  background: #625cff;
  color: #fff;
  box-shadow: 0 12px 26px rgba(98, 92, 255, 0.24);
}

#events [data-search-filters].home-filters .calendar-actions {
  display: flex;
  justify-content: flex-start;
  gap: 10px;
  margin-top: 14px;
}

#events [data-search-filters].home-filters .calendar-mini-action {
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: rgba(255, 255, 255, 0.035);
  color: #cfd6ff;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

#events [data-search-filters].home-filters .calendar-mini-action.primary {
  background: rgba(98, 92, 255, 0.18);
  color: #fff;
  border-color: rgba(151, 167, 255, 0.28);
}

#events [data-search-filters].home-filters .filter-native-select,
#events [data-search-filters].home-filters .filter-native-date-input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
  border: 0;
  padding: 0;
  margin: 0;
}

#events [data-search-filters].home-filters .filter-action-row {
  width: 212px;
  min-width: 212px;
  justify-self: end;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  transition: gap 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#events [data-search-filters].home-filters .filter-action-row:hover,
#events [data-search-filters].home-filters .filter-action-row:focus-within {
  gap: 0;
}

#events [data-search-filters].home-filters .filter-action,
#events [data-search-filters].home-filters .filter-action-arrow {
  min-height: 56px;
  border: 1px solid rgba(151, 167, 255, 0.24);
  background: #625cff;
  color: #fff;
  box-shadow:
    0 14px 30px rgba(116, 107, 255, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
  transition:
    border-radius 0.42s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.28s ease,
    filter 0.28s ease,
    margin 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#events [data-search-filters].home-filters .filter-action {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 20px;
  border-radius: 999px;
  font: inherit;
  font-size: 14px;
  font-weight: 760;
  white-space: nowrap;
  cursor: pointer;
}

#events [data-search-filters].home-filters .filter-action-arrow {
  width: 56px;
  height: 56px;
  flex: 0 0 56px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
}

#events [data-search-filters].home-filters .filter-action-row:hover .filter-action,
#events [data-search-filters].home-filters .filter-action-row:focus-within .filter-action {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right-color: transparent;
  filter: brightness(1.04);
  margin-right: -1px;
}

#events [data-search-filters].home-filters .filter-action-row:hover .filter-action-arrow,
#events [data-search-filters].home-filters .filter-action-row:focus-within .filter-action-arrow {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left-color: transparent;
  filter: brightness(1.04);
  margin-left: -1px;
}

/* All-events filters true expand mode */
#all-events-view .all-events-controls-row.event-filters-row--all {
  position: relative;
  z-index: 32;
}

#all-events-view [data-all-events-filters].all-events-filters--expand {
  align-items: start;
  grid-template-columns: repeat(4, minmax(0, 1fr)) 176px 365px;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-card {
  position: relative;
  min-width: 0;
  height: 56px;
  min-height: 56px;
  border-radius: 18px;
  border: 1px solid rgba(151, 167, 255, 0.22);
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.14), transparent 36%),
    linear-gradient(180deg, rgba(18, 26, 58, 0.88), rgba(12, 18, 41, 0.96));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.055),
    0 16px 36px rgba(0, 0, 0, 0.18),
    0 0 22px rgba(98, 92, 255, 0.04);
  overflow: visible;
  z-index: 1;
  transition:
    border-radius 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.24s ease,
    background 0.24s ease,
    box-shadow 0.24s ease;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-card::before {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.72), transparent);
  opacity: 0.72;
  pointer-events: none;
  z-index: 2;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-card:hover,
#all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.is-open {
  border-color: rgba(151, 167, 255, 0.38);
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.2), transparent 38%),
    linear-gradient(180deg, rgba(24, 34, 74, 0.94), rgba(12, 18, 41, 0.99));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    0 18px 44px rgba(0, 0, 0, 0.22),
    0 0 28px rgba(98, 92, 255, 0.09);
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.is-open:not(.date-card) {
  z-index: 64;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom-color: transparent;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.date-card {
  overflow: visible;
  height: 56px !important;
  min-height: 56px;
  z-index: 66;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-trigger {
  width: 100%;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 12px 8px 16px;
  border: 0;
  color: #dfe6ff;
  background: transparent;
  cursor: pointer;
  appearance: none;
  font: inherit;
  text-align: left;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-main {
  min-width: 0;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-label {
  color: #7f8aa6;
  font-size: 10px;
  font-weight: 760;
  line-height: 1;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-value {
  color: #eef2ff;
  font-size: 14px;
  line-height: 1.15;
  font-weight: 650;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-arrow {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(98, 92, 255, 0.16);
  border: 1px solid rgba(151, 167, 255, 0.18);
  color: #d8ddff;
  font-size: 13px;
  transition: transform 0.38s cubic-bezier(0.16, 1, 0.3, 1), background 0.24s ease;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.is-open .filter-arrow {
  transform: rotate(180deg);
  background: rgba(98, 92, 255, 0.26);
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-options {
  position: absolute;
  top: calc(100% - 1px);
  left: -1px;
  right: -1px;
  width: auto;
  max-height: 292px;
  overflow-y: auto;
  border: 1px solid rgba(151, 167, 255, 0.38);
  border-top: 0;
  border-radius: 0 0 22px 22px;
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.2), transparent 38%),
    linear-gradient(180deg, rgba(24, 34, 74, 0.95), rgba(12, 18, 41, 0.99));
  box-shadow:
    0 20px 44px rgba(0, 0, 0, 0.34),
    0 0 28px rgba(98, 92, 255, 0.12);
  padding: 6px 8px 10px;
  opacity: 0;
  transform: translateY(-8px);
  pointer-events: none;
  z-index: 72;
  transition:
    opacity 0.28s ease,
    transform 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.is-open .filter-options {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

#all-events-view [data-all-events-filters].all-events-filters--expand [data-all-events-inline-filter="category"] .filter-options,
#all-events-view [data-all-events-filters].all-events-filters--expand [data-all-events-inline-filter="city"] .filter-options {
  max-height: 228px;
}

#all-events-view [data-all-events-filters].all-events-filters--expand [data-all-events-inline-filter="venue"] .filter-options {
  max-height: 306px;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-options::before {
  content: "";
  display: block;
  height: 1px;
  margin: 0 8px 7px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.16), transparent);
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-option {
  width: 100%;
  min-height: 35px;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 0 10px;
  border: 0;
  border-radius: 13px;
  background: transparent;
  color: #dfe6ff;
  font: inherit;
  font-size: 13px;
  font-weight: 650;
  text-align: left;
  cursor: pointer;
  transition: background 0.18s ease, color 0.18s ease;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-option:hover,
#all-events-view [data-all-events-filters].all-events-filters--expand .filter-option.is-selected {
  background: rgba(98, 92, 255, 0.17);
  color: #fff;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-option::before {
  content: "";
  width: 16px;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-option.is-selected::before {
  content: "✓";
  color: #fff;
  font-weight: 800;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-native-select,
#all-events-view [data-all-events-filters].all-events-filters--expand .filter-native-date-input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
  border: 0;
  padding: 0;
  margin: 0;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .date-panel {
  position: absolute;
  z-index: 80;
  top: calc(100% + 9px);
  right: 0;
  width: 430px;
  padding: 16px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 90% 0%, rgba(98, 92, 255, 0.16), transparent 36%),
    linear-gradient(180deg, rgba(20, 29, 63, 0.98), rgba(8, 13, 31, 0.98));
  border: 1px solid rgba(151, 167, 255, 0.22);
  box-shadow:
    0 26px 70px rgba(0, 0, 0, 0.42),
    0 0 30px rgba(98, 92, 255, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
  opacity: 0;
  transform: translateY(-8px) scale(0.985);
  pointer-events: none;
  transition: opacity 0.24s ease, transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

#all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.date-card.is-open .date-panel {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-title {
  display: grid;
  gap: 3px;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-month {
  color: #f3f6ff;
  font-size: 17px;
  font-weight: 780;
  letter-spacing: -0.02em;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-hint {
  color: #7f8aa6;
  font-size: 11px;
  font-weight: 650;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-nav {
  display: flex;
  gap: 8px;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-nav button {
  width: 38px;
  height: 38px;
  border-radius: 13px;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: rgba(255, 255, 255, 0.035);
  color: #dfe6ff;
  font-size: 18px;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-nav button:hover {
  border-color: rgba(151, 167, 255, 0.34);
  background: rgba(98, 92, 255, 0.16);
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 8px;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day-name {
  height: 22px;
  display: grid;
  place-items: center;
  color: #8792ae;
  font-size: 11px;
  font-weight: 720;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day {
  height: 46px;
  border-radius: 15px;
  border: 1px solid rgba(151, 167, 255, 0.14);
  background: rgba(5, 7, 22, 0.28);
  color: #dfe6ff;
  display: grid;
  place-items: center;
  font-size: 14px;
  font-weight: 650;
  cursor: pointer;
  transition:
    background 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease,
    box-shadow 0.18s ease;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day:hover {
  border-color: rgba(151, 167, 255, 0.34);
  background: rgba(98, 92, 255, 0.13);
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day.is-muted {
  opacity: 0.32;
  cursor: default;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day.is-today {
  border-color: rgba(60, 155, 255, 0.56);
  color: #fff;
  box-shadow:
    inset 0 0 0 1px rgba(60, 155, 255, 0.18),
    0 0 18px rgba(60, 155, 255, 0.1);
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day.is-selected {
  border-color: rgba(98, 92, 255, 0.76);
  background: #625cff;
  color: #fff;
  box-shadow: 0 12px 26px rgba(98, 92, 255, 0.24);
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-actions {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 14px;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-mini-action {
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: rgba(255, 255, 255, 0.035);
  color: #cfd6ff;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

#all-events-view [data-all-events-filters].all-events-filters--expand .calendar-mini-action.primary {
  background: rgba(98, 92, 255, 0.18);
  color: #fff;
  border-color: rgba(151, 167, 255, 0.28);
}

#all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row {
  width: 365px;
  min-width: 365px;
  justify-self: end;
  align-self: start;
}

@media (max-width: 1200px) {
  #all-events-view [data-all-events-filters].event-filters-grid--all:not(.all-events-filters--expand) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #all-events-view [data-all-events-filters].event-filters-grid--all:not(.all-events-filters--expand) .all-events-request-action-row {
    grid-column: 1 / -1;
    width: min(420px, 100%);
    justify-self: start;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row {
    grid-column: 1 / -1;
    width: min(420px, 100%);
    min-width: 0;
    justify-self: start;
  }
}

@media (max-width: 980px) {
  #events [data-search-filters].home-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #events [data-search-filters].home-filters .filter-action-row {
    width: 100%;
    min-width: 0;
    justify-self: stretch;
    grid-column: 1 / -1;
  }

  #events .events-controls-row [data-search-filters].event-filters-grid:not(.home-filters),
  #all-events-view .all-events-controls-row [data-all-events-filters].event-filters-grid--all:not(.all-events-filters--expand) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #events .events-controls-row [data-search-filters].event-filters-grid:not(.home-filters) .events-all-link,
  #all-events-view .all-events-controls-row [data-all-events-filters].event-filters-grid--all:not(.all-events-filters--expand) .all-events-request-action-row {
    grid-column: 1 / -1;
    width: min(420px, 100%);
    min-width: 0;
    justify-self: start;
  }
}

@media (max-width: 640px) {
  #events .events-controls-row.event-filters-row {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow: visible;
    margin-bottom: 14px;
  }

  #events [data-search-filters].home-filters {
    display: grid;
    width: 100%;
    max-width: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    align-items: stretch;
    margin-bottom: 14px;
    overflow: visible;
  }

  #events [data-search-filters].home-filters > * {
    min-width: 0;
  }

  #events [data-search-filters].home-filters .events-all-link {
    display: none;
  }

  #events [data-search-filters].home-filters .events-calendar-link-pill {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
    justify-self: stretch;
  }

  #events [data-search-filters].home-filters .filter-card,
  #events [data-search-filters].home-filters .filter-control {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 46px;
    height: 46px;
    display: block;
    padding: 0;
    border-radius: 14px;
    overflow: visible;
    border: 1px solid rgba(129, 140, 248, 0.36);
    background:
      radial-gradient(circle at 100% 0, rgba(99, 91, 255, 0.16), transparent 46%),
      rgba(12, 18, 42, 0.76);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.05),
      0 10px 24px rgba(0, 0, 0, 0.22);
  }

  #events [data-search-filters].home-filters .filter-trigger {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    height: 46px;
    min-height: 46px;
    display: block;
    padding: 8px 9px 7px;
    border: 0;
    background: transparent;
    text-align: left;
    position: relative;
  }

  #events [data-search-filters].home-filters .filter-main {
    min-width: 0;
    min-height: 100%;
    max-width: 100%;
    display: block;
    padding-right: 0;
  }

  #events [data-search-filters].home-filters .filter-label {
    display: block;
    margin-bottom: 3px;
    font-size: 7.5px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(199, 210, 254, 0.7);
  }

  #events [data-search-filters].home-filters .filter-value {
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    font-size: 11.5px;
    line-height: 1.1;
    font-weight: 850;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #fff;
  }

  #events [data-search-filters].home-filters .filter-arrow {
    display: none !important;
  }

  #events [data-search-filters].home-filters .filter-clear-btn {
    width: 18px;
    height: 18px;
    right: 8px;
    font-size: 12px;
  }

  #events [data-search-filters].home-filters .events-calendar-link-pill {
    min-height: 46px;
    height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-radius: 14px;
  }

  #events [data-search-filters].home-filters .events-calendar-link__content {
    height: 100%;
    gap: 8px;
  }

  #events [data-search-filters].home-filters .events-calendar-link__icon {
    width: 15px;
    height: 15px;
    flex-basis: 15px;
  }

  #events [data-search-filters].home-filters .events-calendar-link__text {
    font-size: 13px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: 0;
  }

  #events [data-search-filters].home-filters .filter-action-row {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    justify-self: stretch;
    align-items: stretch;
  }

  #events [data-search-filters].home-filters .filter-action {
    min-width: 0;
    width: 100%;
  }

  #events [data-search-filters].home-filters .date-card .filter-options {
    width: min(430px, calc(100vw - 24px));
    left: auto;
    right: 0;
  }

  #events .events-all-link-mobile {
    width: 100%;
    height: 45px;
    margin-top: 10px;
    padding: 0;
    border: 0;
    background: transparent;
    display: flex;
    align-items: stretch;
    gap: 8px;
    color: #fff;
    text-decoration: none;
    cursor: pointer;
    transition:
      gap 0.62s cubic-bezier(0.16, 1, 0.3, 1),
      transform 0.18s ease,
      filter 0.18s ease;
  }

  #events .mobile-all-events-text,
  #events .mobile-all-events-arrow {
    min-height: 45px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(129, 140, 248, 0.48);
    background: linear-gradient(135deg, rgba(139, 134, 255, 1), rgba(79, 70, 229, 1));
    box-shadow:
      0 12px 28px rgba(79, 70, 229, 0.28),
      inset 0 1px 0 rgba(255, 255, 255, 0.12);
    color: #fff;
    font-size: 12px;
    font-weight: 850;
    transition:
      border-radius 0.62s cubic-bezier(0.16, 1, 0.3, 1),
      transform 0.62s cubic-bezier(0.16, 1, 0.3, 1),
      background 0.62s cubic-bezier(0.16, 1, 0.3, 1),
      border-color 0.62s cubic-bezier(0.16, 1, 0.3, 1),
      box-shadow 0.24s ease,
      margin 0.62s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform, border-radius;
  }

  #events .mobile-all-events-text {
    flex: 1 1 auto;
    border-radius: 999px;
    transform: translateX(0);
  }

  #events .mobile-all-events-arrow {
    width: 45px;
    flex: 0 0 45px;
    border-radius: 50%;
    font-size: 16px;
    transform: translateX(0);
  }

  #events .events-all-link-mobile:hover {
    position: relative;
    gap: 0;
    isolation: isolate;
    overflow: hidden;
    border-radius: 999px;
    transform: translateY(-1px);
    filter: brightness(1.04);
    background: linear-gradient(135deg, #8b86ff 0%, #635bff 52%, #4f46e5 100%);
    box-shadow: 0 18px 38px rgba(79, 70, 229, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.14);
  }

  #events .events-all-link-mobile:hover::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
    background: linear-gradient(135deg, #8b86ff 0%, #635bff 52%, #4f46e5 100%);
    pointer-events: none;
  }

  #events .events-all-link-mobile:hover .mobile-all-events-text,
  #events .events-all-link-mobile:hover .mobile-all-events-arrow {
    position: relative;
    z-index: 1;
    background: none;
    background-color: transparent;
    border-color: transparent;
    border-left-color: transparent;
    border-right-color: transparent;
    box-shadow: none;
    outline: 0;
  }

  #events .events-all-link-mobile:hover .mobile-all-events-text {
    margin-right: -7px;
    transform: translateX(4px);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  #events .events-all-link-mobile:hover .mobile-all-events-arrow {
    margin-left: -7px;
    transform: translateX(-4px);
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  #events .events-controls-row [data-search-filters].event-filters-grid:not(.home-filters),
  #all-events-view .all-events-controls-row [data-all-events-filters].event-filters-grid--all:not(.all-events-filters--expand) {
    grid-template-columns: minmax(0, 1fr);
  }

  #events .events-controls-row [data-search-filters].event-filters-grid:not(.home-filters) .events-all-link,
  #all-events-view .all-events-controls-row [data-all-events-filters].event-filters-grid--all:not(.all-events-filters--expand) .all-events-request-action-row {
    width: 100%;
    justify-self: stretch;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    align-items: stretch;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.is-open:not(.date-card) {
    border-bottom-left-radius: 18px;
    border-bottom-right-radius: 18px;
    border-bottom-color: rgba(151, 167, 255, 0.38);
    z-index: 70;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card:not(.date-card) .filter-options {
    top: calc(100% + 8px);
    left: 0;
    right: auto;
    width: min(280px, calc(100vw - 24px));
    min-width: 100%;
    max-width: min(320px, calc(100vw - 24px));
    border-top: 1px solid rgba(151, 167, 255, 0.38);
    border-radius: 18px;
    opacity: 0;
    transform: translateY(-8px) scale(0.985);
    pointer-events: none;
    z-index: 90;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.is-open:not(.date-card) .filter-options {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand [data-all-events-inline-filter="city"] .filter-options,
  #all-events-view [data-all-events-filters].all-events-filters--expand [data-all-events-inline-filter="date"] .filter-options {
    left: auto;
    right: 0;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link-pill,
  #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row {
    grid-column: 1 / -1;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link-pill {
    width: 100%;
    min-width: 0;
    justify-self: stretch;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .date-panel {
    width: min(430px, calc(100vw - 24px));
    left: auto;
    right: 0;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row {
    width: 100%;
    min-width: 0;
    justify-self: stretch;
  }

  #all-events-view .seo-breadcrumbs {
    font-size: 11px;
  }

  #all-events-view .all-events-header h2,
  #all-events-view [data-all-events-title] {
    font-size: clamp(28px, 7.6vw, 32px);
    line-height: 1.05;
    font-weight: 900;
    letter-spacing: -0.02em;
  }

  #all-events-view .all-events-header p,
  #all-events-view [data-all-events-subtitle] {
    font-size: 13.5px;
    line-height: 1.4;
    font-weight: 540;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .filter-label {
    font-size: 9px;
    line-height: 1;
    font-weight: 860;
    letter-spacing: 0.1em;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .filter-value {
    font-size: 14px;
    line-height: 1.1;
    font-weight: 900;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link__text {
    font-size: 14.5px;
    font-weight: 900;
    line-height: 1.1;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-btn {
    font-size: 14px;
    line-height: 1.1;
    font-weight: 900;
    min-height: 52px;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-arrow {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    font-size: 19px;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .filter-option {
    font-size: 14px;
    min-height: 38px;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day {
    font-size: 15px;
    font-weight: 700;
  }

  #all-events-view .card.event .event-tag {
    min-height: 29px;
    padding: 0 11px;
    font-size: 10.5px;
    font-weight: 900;
    letter-spacing: 0.08em;
  }

  #all-events-view .card.event h3 {
    font-size: clamp(20px, 5.4vw, 22px);
    line-height: 1.12;
    font-weight: 900;
  }

  #all-events-view .card.event .event-meta {
    font-size: 14.5px;
    line-height: 1.35;
    font-weight: 680;
  }

  #all-events-view .card.event .event-price {
    font-size: 16px;
    line-height: 1.2;
    font-weight: 900;
  }

  #all-events-view .card.event .event-price.is-request {
    font-size: 12px;
    font-weight: 850;
  }

  #all-events-view .card.event .details-btn {
    min-height: 48px;
    font-size: 14.5px;
    line-height: 1.1;
    font-weight: 900;
  }

  #all-events-view .card.event .arrow-btn {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    font-size: 18px;
  }

  #all-events-view [data-all-events-status],
  #all-events-view .events-status,
  #all-events-view .events-status p {
    font-size: 13px;
    line-height: 1.4;
  }
}

@media (max-width: 380px) {
  #events [data-search-filters].home-filters {
    gap: 5px;
  }

  #events [data-search-filters].home-filters .filter-card,
  #events [data-search-filters].home-filters .filter-control,
  #events [data-search-filters].home-filters .filter-trigger {
    height: 44px;
    min-height: 44px;
  }

  #events [data-search-filters].home-filters .filter-trigger {
    padding-left: 9px;
    padding-right: 9px;
  }

  #events [data-search-filters].home-filters .filter-label {
    font-size: 7px;
  }

  #events [data-search-filters].home-filters .filter-value {
    font-size: 11px;
  }

  #events .events-all-link-mobile {
    height: 42px;
    gap: 7px;
  }

  #events .mobile-all-events-text,
  #events .mobile-all-events-arrow {
    min-height: 42px;
  }

  #events .mobile-all-events-arrow {
    width: 42px;
    flex-basis: 42px;
  }

  #events .events-all-link-mobile:hover .mobile-all-events-text {
    margin-right: -6px;
    transform: translateX(3px);
  }

  #events .events-all-link-mobile:hover .mobile-all-events-arrow {
    margin-left: -6px;
    transform: translateX(-3px);
  }

  #all-events-view .all-events-header h2,
  #all-events-view [data-all-events-title] {
    font-size: 28px;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .filter-value {
    font-size: 13px;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link__text {
    font-size: 13.5px;
  }

  #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-btn {
    font-size: 13.5px;
  }

  #all-events-view .card.event h3 {
    font-size: 20px;
  }

  #all-events-view .card.event .event-meta {
    font-size: 14px;
  }

  #all-events-view .card.event .event-price {
    font-size: 15px;
  }

  #all-events-view .card.event .details-btn {
    font-size: 14px;
  }
}

body.modal-open--all-events-request-help .modal-backdrop {
  background:
    radial-gradient(circle at 50% 42%, rgba(98, 92, 255, 0.18), transparent 34%),
    rgba(3, 5, 14, 0.68);
  backdrop-filter: blur(13px) saturate(1.16);
  -webkit-backdrop-filter: blur(13px) saturate(1.16);
}

.modal-dialog--all-events-request-help {
  width: min(540px, calc(100vw - 48px));
  height: auto;
  max-height: calc(100dvh - 48px);
  border: 0;
  border-radius: 28px;
  padding: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.modal-dialog--all-events-request-help .modal-body {
  padding: 0;
  overflow: visible;
  scrollbar-gutter: auto;
}

.modal-dialog--all-events-request-help .modal-body > .all-events-request-modal-shell {
  min-height: auto;
  width: 100%;
  display: block;
  gap: 0;
  padding: 0;
}

.all-events-request-modal-shell {
  width: 100%;
}

.all-events-request-modal {
  width: min(540px, 100%);
  position: relative;
  padding: 1px;
  border-radius: 28px;
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.18) 0%,
      rgba(151, 167, 226, 0.08) 45%,
      rgba(98, 92, 255, 0.32) 100%
    );
  box-shadow:
    0 34px 90px rgba(0, 0, 0, 0.48),
    0 0 46px rgba(98, 92, 255, 0.12);
  overflow: hidden;
  animation: all-events-request-modal-in .42s cubic-bezier(.16, 1, .3, 1) both;
}

@keyframes all-events-request-modal-in {
  from {
    opacity: 0;
    transform: translateY(14px) scale(.975);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.all-events-request-modal__inner {
  position: relative;
  overflow: hidden;
  border-radius: 27px;
  padding: 30px;
  background:
    radial-gradient(circle at 14% 18%, rgba(60, 155, 255, 0.13), transparent 38%),
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.2), transparent 40%),
    linear-gradient(180deg, rgba(20, 29, 63, 0.985), rgba(10, 15, 36, 0.995));
}

.all-events-request-modal__inner::before {
  content: "";
  position: absolute;
  left: 28px;
  right: 28px;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.78), rgba(60, 155, 255, 0.42), transparent);
  opacity: 0.8;
}

.all-events-request-modal__close {
  position: absolute;
  top: 17px;
  right: 17px;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  border: 1px solid rgba(151, 167, 255, 0.18);
  background: rgba(255, 255, 255, 0.045);
  color: #cfd6ff;
  display: grid;
  place-items: center;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.all-events-request-modal__close:hover {
  background: rgba(98, 92, 255, 0.16);
  border-color: rgba(151, 167, 255, 0.34);
  transform: rotate(90deg);
}

.all-events-request-modal__content {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: center;
  text-align: center;
  gap: 14px;
  padding: 10px 32px 0;
}

.all-events-request-modal__icon {
  width: 56px;
  height: 56px;
  border-radius: 19px;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 30% 20%, rgba(255, 255, 255, 0.2), transparent 34%),
    linear-gradient(145deg, rgba(98, 92, 255, 1), rgba(60, 155, 255, 0.8));
  border: 1px solid rgba(255, 255, 255, 0.18);
  box-shadow:
    0 18px 44px rgba(98, 92, 255, 0.24),
    0 0 0 8px rgba(98, 92, 255, 0.08);
  color: #fff;
  font-size: 25px;
  font-weight: 800;
}

.all-events-request-modal__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  color: #cfd6ff;
  background: rgba(98, 92, 255, 0.11);
  border: 1px solid rgba(151, 167, 255, 0.17);
  font-size: 10px;
  font-weight: 780;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.all-events-request-modal__eyebrow::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #625cff;
  box-shadow: 0 0 0 5px rgba(98, 92, 255, 0.1);
}

.all-events-request-modal__title {
  margin: 0;
  color: #f5f7ff;
  font-size: 31px;
  line-height: 1.06;
  letter-spacing: -0.045em;
}

.all-events-request-modal__text {
  max-width: 430px;
  margin: 0;
  color: #b6c0dc;
  font-size: 15px;
  line-height: 1.5;
}

.all-events-request-modal__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 24px;
}

.all-events-request-modal__button {
  min-height: 50px;
  min-width: 210px;
  padding: 0 30px;
  border-radius: 999px;
  border: 1px solid rgba(151, 167, 255, 0.22);
  font: inherit;
  font-size: 14px;
  font-weight: 760;
  color: #fff;
  background: #625cff;
  box-shadow:
    0 16px 34px rgba(98, 92, 255, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.13);
  cursor: pointer;
  transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.all-events-request-modal__button:hover {
  transform: translateY(-1px);
  box-shadow:
    0 20px 42px rgba(98, 92, 255, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

.all-events-request-modal__button:focus-visible,
.all-events-request-modal__close:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.85);
  outline-offset: 2px;
}

@media (max-width: 640px) {
  .modal-dialog--all-events-request-help {
    width: min(540px, calc(100vw - 24px));
    max-height: calc(100dvh - 24px);
  }

  .all-events-request-modal__inner {
    padding: 24px;
  }

  .all-events-request-modal__content {
    padding-left: 10px;
    padding-right: 10px;
  }

  .all-events-request-modal__title {
    font-size: 27px;
  }

  .all-events-request-modal__button {
    width: 100%;
  }
}

/* Payment step overlay refresh (checkout page, seat-map checkout flow only) */
#checkout-page-view .event-flow-topbar {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}

#checkout-page-view .event-flow-topbar .cwt-back-merge {
  min-height: 44px;
}

#checkout-page-view .event-flow-topbar .stepper {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
  overflow: visible;
}

#checkout-page-view .event-flow-topbar .stepper .step {
  min-height: 42px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#checkout-page-view .checkout-route-shell > [data-payment-form] .checkout-payment-option {
  min-height: 160px;
  padding: 16px 18px;
  gap: 14px;
  align-content: start;
}

#checkout-page-view .checkout-route-shell > [data-payment-form] .checkout-payment-card--revolut {
  min-height: 160px;
}

#checkout-page-view .checkout-route-shell > [data-payment-form] .checkout-payment-option-copy {
  gap: 4px;
}

#checkout-page-view .checkout-route-shell > [data-payment-form] .checkout-payment-option p {
  margin: 6px 0 0;
}

#checkout-page-view .checkout-route-shell > [data-payment-form] .checkout-payment-method-logos {
  gap: 22px;
  margin: 6px 0 0;
}

#checkout-page-view .checkout-route-shell > [data-payment-form] .checkout-payment-merge-cta {
  margin-top: 2px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  grid-template-areas:
    "header header"
    "payment summary";
  column-gap: 24px;
  row-gap: 16px;
  align-items: start;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map > .modal-header {
  grid-area: header;
  padding: 2px 2px 10px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-order-summary] {
  grid-area: summary;
  margin: 0;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] {
  grid-area: payment;
  margin: 0;
  display: grid;
  gap: 12px;
  align-content: start;
  align-self: start;
  position: sticky;
  top: 104px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] .checkout-payment-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 12px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] .checkout-payment-option {
  min-width: 0;
  min-height: 160px;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 16px 18px;
  border-radius: 22px;
  border: 1px solid rgba(125, 133, 255, 0.32);
  background:
    radial-gradient(circle at 0 0, rgba(34, 211, 238, 0.07), transparent 38%),
    linear-gradient(180deg, rgba(15, 23, 42, 0.74), rgba(7, 11, 25, 0.88));
  box-shadow:
    0 28px 72px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-option--primary {
  border-color: rgba(129, 140, 248, 0.4);
  background:
    radial-gradient(circle at 10% 0, rgba(34, 211, 238, 0.1), transparent 40%),
    linear-gradient(180deg, rgba(15, 23, 42, 0.78), rgba(8, 13, 28, 0.9));
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-card--revolut {
  min-height: 160px;
  border-color: rgba(148, 163, 184, 0.26);
  background:
    radial-gradient(circle at 74% 52%, rgba(129, 140, 248, 0.33), transparent 36%),
    radial-gradient(circle at 17% 18%, rgba(34, 211, 238, 0.13), transparent 35%),
    linear-gradient(180deg, rgba(15, 23, 42, 0.76), rgba(8, 13, 28, 0.9));
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-card--revolut::before,
#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-card--revolut::after {
  display: none;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-option h5 {
  margin: 0;
  font-size: 22px;
  line-height: 1.12;
  letter-spacing: -0.024em;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-option p {
  margin: 6px 0 0;
  font-size: 15px;
  line-height: 1.45;
  color: rgba(229, 231, 235, 0.62);
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-option-copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-method-logos {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 12px;
  margin: 6px 0 0;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-method-logo-slot {
  min-width: 0;
  height: auto;
  flex: 0 0 auto;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-method-logo--visa {
  width: 56px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-method-logo--mastercard {
  width: 40px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-method-logo--apple-pay {
  width: 48px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-method-logo--klarna {
  width: 64px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-merge-cta {
  margin-top: auto;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-consents--payment {
  width: 100%;
  margin: 0;
  padding: 14px 16px;
  gap: 10px;
  border-radius: 18px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  background:
    radial-gradient(circle at 0 0, rgba(99, 91, 255, 0.06), transparent 38%),
    rgba(5, 10, 24, 0.34);
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-consents--payment .consent-row {
  gap: 10px;
  color: rgba(229, 231, 235, 0.76);
  font-size: 14px;
  line-height: 1.35;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-consents--payment .consent-box {
  width: 22px;
  height: 22px;
  border-radius: 6px;
  border-color: rgba(148, 163, 184, 0.36);
  background: rgba(15, 23, 42, 0.62);
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-consents--payment .consent-row a {
  text-underline-offset: 3px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map [data-owner-checkout-bypass] {
  justify-self: end;
  margin-top: -4px;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  color: rgba(156, 163, 175, 0.7);
  font-size: 12px;
  min-height: 0;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-final-summary-card {
  min-height: 0;
  padding: 22px;
  border-radius: 22px;
  border: 1px solid rgba(125, 133, 255, 0.32);
  background:
    radial-gradient(circle at 0 0, rgba(34, 211, 238, 0.07), transparent 38%),
    linear-gradient(180deg, rgba(15, 23, 42, 0.74), rgba(7, 11, 25, 0.88));
  box-shadow:
    0 28px 72px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-wrap {
  gap: 16px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-title {
  margin: 0;
  font-size: 22px;
  line-height: 1.12;
  letter-spacing: -0.024em;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-meta {
  margin-top: 4px;
  font-size: 14px;
  color: rgba(229, 231, 235, 0.62);
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-list {
  display: grid;
  gap: 10px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row {
  min-height: 46px;
  padding: 0 16px;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.14);
  background: rgba(5, 10, 24, 0.34);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  color: rgba(156, 163, 175, 0.82);
  font-size: 13px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row strong {
  color: #fff;
  font-size: 14px;
  font-weight: 820;
  text-align: right;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total {
  min-height: 66px;
  border-style: dashed;
  border-color: rgba(99, 91, 255, 0.44);
  background:
    radial-gradient(circle at 92% 50%, rgba(99, 91, 255, 0.2), transparent 34%),
    rgba(8, 13, 28, 0.46);
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total span {
  color: #fff;
  font-size: 18px;
  font-weight: 820;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total strong {
  font-size: 34px;
  line-height: 1;
  letter-spacing: -0.035em;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-grid {
  margin-top: 16px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-card {
  min-height: 104px;
  padding: 14px;
  border-radius: 16px;
  border: 1px dashed rgba(99, 91, 255, 0.32);
  background: rgba(15, 23, 42, 0.35);
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-card strong {
  margin-bottom: 8px;
  font-size: 14px;
  line-height: 1.2;
  color: #fff;
}

#checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-card span {
  font-size: 13px;
  line-height: 1.32;
  color: rgba(156, 163, 175, 0.82);
}

#checkout-page-view .checkout-payment-merge-cta {
  position: relative;
  width: 100%;
  min-width: 0;
  min-height: 56px;
  height: 56px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  font: inherit;
  font-size: 16px;
  font-weight: 760;
  cursor: pointer;
  background: transparent;
  padding: 0;
  display: inline-flex;
  align-items: stretch;
  justify-content: center;
  gap: 10px;
  isolation: isolate;
  transition:
    gap 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.18s ease,
    filter 0.18s ease;
}

#checkout-page-view .checkout-payment-merge-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, #8b86ff 0%, #635bff 52%, #4f46e5 100%);
  opacity: 0;
  transform: scaleX(0.96);
  transition:
    opacity 0.34s ease,
    transform 0.36s cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: none;
}

#checkout-page-view .checkout-payment-merge-cta__text,
#checkout-page-view .checkout-payment-merge-cta__arrow {
  position: relative;
  z-index: 1;
  min-height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(129, 140, 248, 0.48);
  background: linear-gradient(135deg, rgba(129, 140, 248, 0.98), rgba(79, 70, 229, 0.98));
  box-shadow:
    0 18px 40px rgba(79, 70, 229, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
  transition:
    border-radius 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.24s ease,
    margin 0.62s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform, border-radius;
}

#checkout-page-view .checkout-payment-merge-cta__text {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 24px;
  border-radius: 999px;
  transform: translateX(0);
}

#checkout-page-view .checkout-payment-merge-cta__arrow {
  width: 56px;
  flex: 0 0 56px;
  border-radius: 50%;
  font-size: 20px;
  line-height: 1;
  transform: translateX(0);
}

#checkout-page-view .checkout-payment-merge-cta:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.86);
  outline-offset: 3px;
}

#checkout-page-view .checkout-payment-merge-cta:hover {
  position: relative;
  gap: 0;
  overflow: hidden;
  border-radius: 999px;
  transform: translateY(-1px);
  filter: brightness(1.04);
}

#checkout-page-view .checkout-payment-merge-cta:hover::before {
  opacity: 1;
  transform: scaleX(1);
}

#checkout-page-view .checkout-payment-merge-cta:hover .checkout-payment-merge-cta__text,
#checkout-page-view .checkout-payment-merge-cta:hover .checkout-payment-merge-cta__arrow {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

#checkout-page-view .checkout-payment-merge-cta:hover .checkout-payment-merge-cta__text {
  margin-right: -8px;
  transform: translateX(4px);
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

#checkout-page-view .checkout-payment-merge-cta:hover .checkout-payment-merge-cta__arrow {
  margin-left: -8px;
  transform: translateX(-4px);
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

#checkout-page-view .checkout-payment-merge-cta--revolut .checkout-payment-merge-cta__text,
#checkout-page-view .checkout-payment-merge-cta--revolut .checkout-payment-merge-cta__arrow {
  background: rgba(5, 10, 24, 0.58);
  border-color: rgba(148, 163, 184, 0.34);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

#checkout-page-view .checkout-payment-merge-cta--revolut .checkout-payment-merge-cta__text {
  padding-inline: 16px;
}

#checkout-page-view .checkout-payment-merge-cta__label--wrap {
  display: inline-block;
  width: 15ch;
  max-width: 100%;
  white-space: normal;
  text-align: center;
  line-height: 1.15;
  flex-shrink: 0;
}

#checkout-page-view .checkout-payment-merge-cta--revolut::before {
  background: linear-gradient(135deg, rgba(99, 91, 255, 0.42) 0%, rgba(31, 41, 82, 0.88) 55%, rgba(5, 10, 24, 0.9) 100%);
}

#checkout-page-view .checkout-payment-merge-cta:disabled {
  cursor: not-allowed;
  opacity: 0.72;
  transform: none;
  filter: saturate(0.85);
}

#checkout-page-view .checkout-payment-merge-cta.is-error::before,
#checkout-page-view .checkout-payment-merge-cta:disabled::before {
  opacity: 0;
}

#checkout-page-view .checkout-payment-merge-cta.is-error .checkout-payment-merge-cta__text,
#checkout-page-view .checkout-payment-merge-cta.is-error .checkout-payment-merge-cta__arrow {
  border-color: rgba(248, 113, 113, 0.74);
  background: linear-gradient(135deg, rgba(127, 29, 29, 0.82), rgba(76, 29, 149, 0.62));
  box-shadow:
    0 0 0 1px rgba(248, 113, 113, 0.28),
    0 12px 24px rgba(76, 29, 149, 0.24);
}

@media (max-width: 980px) {
  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "header"
      "payment"
      "summary";
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] {
    position: static;
  }
}

@media (max-width: 760px) {
  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] .checkout-payment-options {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 640px) {
  #checkout-page-view .event-flow-topbar {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 6px;
  }

  #checkout-page-view .event-flow-topbar .cwt-back-merge {
    max-width: min(100%, 162px);
    min-height: 36px;
  }

  #checkout-page-view .event-flow-topbar .cwt-back-part {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    height: 36px;
    line-height: 1;
    box-sizing: border-box;
    padding-top: 0;
    padding-bottom: 0;
  }

  #checkout-page-view .event-flow-topbar .cwt-back-icon {
    width: 36px;
    flex: 0 0 36px;
    font-size: 18px;
  }

  #checkout-page-view .event-flow-topbar .cwt-back-text {
    min-height: 36px;
    height: 36px;
    padding: 0 12px;
    font-size: 12.5px;
    font-weight: 850;
    line-height: 1;
    white-space: nowrap;
  }

  #checkout-page-view .event-flow-topbar .stepper {
    gap: 6px;
  }

  #checkout-page-view .event-flow-topbar .stepper .step {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    height: 36px;
    padding: 0 9px;
    font-size: 11.8px;
    font-weight: 850;
    line-height: 1;
    box-sizing: border-box;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] {
    order: 1;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    gap: 10px;
    position: static;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-order-summary] {
    order: 2;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-top: 0;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] .checkout-payment-options {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] .checkout-payment-option {
    min-height: 150px;
    padding: 12px;
    gap: 14px;
    border-radius: 16px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-card--revolut {
    min-height: 112px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-option h5,
  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-title {
    font-size: 20px;
    line-height: 1.1;
    font-weight: 900;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-option p {
    margin-top: 5px;
    font-size: 13px;
    line-height: 1.38;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-method-logos {
    margin-top: 10px;
    gap: 10px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-consents--payment {
    padding: 10px;
    gap: 8px;
    border-radius: 14px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-consents--payment .consent-row {
    gap: 8px;
    font-size: 12.5px;
    line-height: 1.4;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-consents--payment .consent-box {
    width: 18px;
    height: 18px;
    border-radius: 5px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-final-summary-card {
    padding: 12px;
    border-radius: 16px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-head {
    display: grid;
    gap: 4px;
    margin-bottom: 10px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-meta {
    margin-top: 0;
    font-size: 13px;
    line-height: 1.4;
    white-space: normal;
    text-align: left;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-list {
    gap: 7px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row {
    min-height: 42px;
    padding: 7px 10px;
    display: grid;
    align-items: center;
    gap: 3px;
    border-radius: 11px;
    font-size: 10px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    font-weight: 850;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row strong {
    text-align: left;
    font-size: 14px;
    line-height: 1.2;
    letter-spacing: 0;
    text-transform: none;
    font-weight: 900;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total {
    min-height: 56px;
    display: flex;
    align-items: center;
    letter-spacing: 0;
    text-transform: none;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total span {
    font-size: 14px;
    font-weight: 850;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total strong {
    font-size: 24px;
    font-weight: 950;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-grid {
    margin-top: 10px;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-card {
    min-height: 68px;
    padding: 10px;
    border-radius: 12px;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-card strong {
    font-size: 13px;
    margin-bottom: 5px;
    line-height: 1.25;
  }

  #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-card span {
    font-size: 12px;
    line-height: 1.4;
  }

  #checkout-page-view .checkout-payment-merge-cta {
    min-height: 54px;
    height: 54px;
    font-size: 14px;
    gap: 9px;
  }

  #checkout-page-view .checkout-payment-merge-cta__text,
  #checkout-page-view .checkout-payment-merge-cta__arrow {
    min-height: 54px;
    height: 54px;
  }

  #checkout-page-view .checkout-payment-merge-cta__text {
    padding: 0 18px;
    font-size: 14px;
    font-weight: 900;
    line-height: 1.1;
  }

  #checkout-page-view .checkout-payment-merge-cta__arrow {
    width: 54px;
    flex-basis: 54px;
    font-size: 18px;
  }

  #checkout-page-view .checkout-payment-merge-cta:hover .checkout-payment-merge-cta__text {
    margin-right: -6px;
    transform: translateX(3px);
  }

  #checkout-page-view .checkout-payment-merge-cta:hover .checkout-payment-merge-cta__arrow {
    margin-left: -6px;
    transform: translateX(-3px);
  }

  #checkout-page-view .checkout-route-shell > .modal-header .modal-title {
    font-size: 21px;
    line-height: 1.1;
    font-weight: 900;
  }

  #checkout-page-view .checkout-route-shell > .modal-header .modal-subtitle {
    font-size: 13px;
    line-height: 1.4;
  }

  #checkout-page-view .checkout-payment-panel-title {
    font-size: 21px;
    line-height: 1.1;
    font-weight: 900;
  }

  #checkout-page-view .checkout-payment-panel-text {
    font-size: 13px;
    line-height: 1.42;
  }

  #checkout-page-view .checkout-payment-option-provider {
    font-size: 11px;
    font-weight: 850;
  }

  #checkout-page-view .checkout-payment-option h3,
  #checkout-page-view .checkout-payment-option h5 {
    font-size: 15px;
    line-height: 1.2;
    font-weight: 900;
  }

  #checkout-page-view .checkout-payment-option p {
    font-size: 13px;
    line-height: 1.36;
  }

  #checkout-page-view .checkout-final-summary-kicker {
    font-size: 10px;
    line-height: 1.15;
    letter-spacing: 0.06em;
    font-weight: 850;
  }

  #checkout-page-view .checkout-final-summary-title {
    font-size: 21px;
    line-height: 1.1;
    font-weight: 900;
  }

  #checkout-page-view .checkout-final-summary-meta {
    font-size: 13px;
    line-height: 1.4;
  }

  #checkout-page-view .checkout-final-summary-row {
    font-size: 10px;
    line-height: 1.2;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    font-weight: 850;
  }

  #checkout-page-view .checkout-final-summary-row strong {
    font-size: 14px;
    line-height: 1.2;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: none;
  }

  #checkout-page-view .checkout-final-summary-total span {
    font-size: 14px;
    font-weight: 850;
  }

  #checkout-page-view .checkout-final-summary-total strong {
    font-size: 24px;
    line-height: 1;
    font-weight: 950;
  }

  #checkout-page-view .checkout-consents--payment .consent-row,
  #checkout-page-view .checkout-consents--payment .consent-text,
  #checkout-page-view .checkout-consents--payment .consent-row a {
    font-size: 12.5px;
    line-height: 1.4;
  }

  #checkout-page-view .checkout-payment-panel .form-error,
  #checkout-page-view .checkout-consents--payment .form-error {
    font-size: 13px;
    line-height: 1.35;
  }

  #checkout-page-view .checkout-payment-panel .btn {
    min-height: 54px;
    font-size: 14px;
    font-weight: 900;
    line-height: 1.1;
  }
}

@media (prefers-reduced-motion: reduce) {
  #checkout-page-view .checkout-payment-merge-cta,
  #checkout-page-view .checkout-payment-merge-cta::before,
  #checkout-page-view .checkout-payment-merge-cta__text,
  #checkout-page-view .checkout-payment-merge-cta__arrow {
    transition: none !important;
  }
}

/* Auth modal refresh (scoped only to auth dialog) */
body.modal-open--auth .modal-backdrop {
  background:
    radial-gradient(circle at 50% 38%, rgba(98, 92, 255, 0.2), transparent 42%),
    rgba(3, 5, 14, 0.72);
  backdrop-filter: blur(13px) saturate(1.16);
  -webkit-backdrop-filter: blur(13px) saturate(1.16);
}

body.modal-open--auth .modal {
  padding: 24px;
  place-items: center;
}

body.modal-open--auth .modal-dialog.modal-dialog--auth {
  width: min(560px, calc(100vw - 48px));
  height: auto;
  max-height: calc(100dvh - 48px);
  border-radius: 28px;
  border: 1px solid rgba(129, 140, 248, 0.32);
  background:
    radial-gradient(circle at 14% 18%, rgba(60, 155, 255, 0.12), transparent 38%),
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.2), transparent 40%),
    linear-gradient(180deg, rgba(20, 29, 63, 0.985), rgba(10, 15, 36, 0.995));
  box-shadow:
    0 34px 90px rgba(0, 0, 0, 0.48),
    0 0 46px rgba(98, 92, 255, 0.12);
  overflow: hidden;
  position: relative;
}

body.modal-open--auth .modal-dialog.modal-dialog--auth::before {
  content: "";
  position: absolute;
  left: 28px;
  right: 28px;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(151, 167, 255, 0.78), rgba(60, 155, 255, 0.42), transparent);
  opacity: 0.8;
  z-index: 2;
  pointer-events: none;
}

body.modal-open--auth .modal-dialog.modal-dialog--auth::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(148, 163, 184, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148, 163, 184, 0.05) 1px, transparent 1px);
  background-size: 32px 32px, 32px 32px;
  opacity: 0.12;
  z-index: 0;
  pointer-events: none;
}

body.modal-open--auth .modal-dialog.modal-dialog--auth > * {
  position: relative;
  z-index: 1;
}

body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-top {
  position: absolute;
  inset: 0 0 auto 0;
  min-height: 0;
  padding: 17px;
  border: 0;
  background: transparent;
  backdrop-filter: none;
  z-index: 6;
  pointer-events: none;
}

body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-mobile-header {
  display: none !important;
}

body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-close {
  pointer-events: auto;
  margin-left: auto;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid rgba(151, 167, 255, 0.22);
  background: rgba(255, 255, 255, 0.045);
  color: #cfd6ff;
  font-size: 22px;
  line-height: 1;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-close:hover {
  background: rgba(98, 92, 255, 0.16);
  border-color: rgba(151, 167, 255, 0.38);
  transform: rotate(90deg);
}

body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-body {
  padding: 30px 30px 30px;
  padding-right: 24px;
  scrollbar-gutter: auto;
}

body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-body > div {
  min-height: auto;
  gap: 0;
  padding-bottom: 0;
}

body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-body > div > .auth-modal-header {
  position: static;
  top: auto;
  background: transparent;
  backdrop-filter: none;
}

body.modal-open--auth .auth-modal-header {
  padding: 14px 2px 18px;
  display: grid;
  gap: 12px;
}

body.modal-open--auth .auth-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  color: #cfd6ff;
  background: rgba(98, 92, 255, 0.11);
  border: 1px solid rgba(151, 167, 255, 0.17);
  font-size: 10px;
  font-weight: 780;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

body.modal-open--auth .auth-kicker-dot {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #22c55e;
  box-shadow: 0 0 0 5px rgba(34, 197, 94, 0.16);
}

body.modal-open--auth .auth-modal-title {
  margin: 0;
  color: #f5f7ff;
  font-size: 40px;
  line-height: 1.05;
  letter-spacing: -0.045em;
}

body.modal-open--auth .auth-modal-subtitle {
  margin: 0;
  max-width: 464px;
  color: #b6c0dc;
  font-size: 15px;
  line-height: 1.5;
}

body.modal-open--auth .auth-modal {
  width: min(100%, 560px);
  margin: 0 auto;
}

body.modal-open--auth.modal-open--auth-register .modal-dialog.modal-dialog--auth {
  width: min(600px, calc(100vw - 48px));
}

body.modal-open--auth .auth-panel--login {
  padding: 0;
  margin: 0;
  display: grid;
  gap: 12px;
}

body.modal-open--auth .auth-panel--login .auth-field {
  margin: 0;
  display: grid;
  gap: 8px;
}

body.modal-open--auth .auth-google {
  display: block;
}

body.modal-open--auth .auth-google[hidden] {
  display: none !important;
}

.auth-social-login {
  display: flex;
  justify-content: center;
  margin-top: 18px;
  margin-bottom: 14px;
}

.auth-google-circle {
  width: 56px;
  height: 56px;
  border-radius: 999px;
  padding: 0;
  display: grid;
  place-items: center;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(255, 255, 255, 0.28);
  box-shadow:
    0 16px 34px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.85);
  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease,
    border-color 0.18s ease,
    background 0.18s ease;
}

.auth-google-circle:hover {
  transform: translateY(-1px);
  box-shadow:
    0 20px 42px rgba(0, 0, 0, 0.34),
    0 0 0 5px rgba(99, 102, 241, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
  border-color: rgba(129, 140, 248, 0.55);
}

.auth-google-circle:hover .auth-google-circle__state {
  opacity: 1;
}

.auth-google-circle:active {
  transform: translateY(0) scale(0.97);
}

.auth-google-circle:focus-visible {
  outline: none;
  box-shadow:
    0 0 0 4px rgba(99, 102, 241, 0.24),
    0 18px 40px rgba(0, 0, 0, 0.32);
}

.auth-google-circle:disabled {
  opacity: 0.55;
  cursor: default;
  transform: none;
}

.auth-google-circle__state {
  position: absolute;
  inset: 0;
  background: rgba(99, 102, 241, 0.1);
  opacity: 0;
  transition: opacity 0.18s ease;
}

.auth-google-circle__icon {
  width: 24px;
  height: 24px;
  display: block;
  position: relative;
  z-index: 1;
}

.auth-google-circle__icon svg {
  width: 24px;
  height: 24px;
  display: block;
}

body.modal-open--auth .auth-google-error {
  margin: 0;
}

.auth-email-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 14px 0 18px;
  color: var(--text-soft);
  font-size: 12px;
  letter-spacing: 0.04em;
}

.auth-email-divider::before,
.auth-email-divider::after {
  content: "";
  flex: 1;
  height: 1px;
}

.auth-email-divider::before {
  background: linear-gradient(90deg, transparent, rgba(148, 163, 184, 0.28));
}

.auth-email-divider::after {
  background: linear-gradient(90deg, rgba(148, 163, 184, 0.28), transparent);
}

body.modal-open--auth .auth-field-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body.modal-open--auth .auth-field-head > span:first-child,
body.modal-open--auth .auth-panel--login .auth-field > span:first-child {
  font-size: 12px;
  line-height: 1.1;
  font-weight: 760;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(203, 213, 225, 0.9);
}

body.modal-open--auth .auth-field-hint {
  font-size: 11px;
  line-height: 1.2;
  font-weight: 620;
  color: rgba(165, 180, 252, 0.92);
}

body.modal-open--auth .auth-panel--login input[type="email"],
body.modal-open--auth .auth-panel--login input[type="password"] {
  min-height: 54px;
  height: 54px;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.26);
  background: rgba(11, 18, 39, 0.82);
  color: #f8fafc;
  font-size: 14px;
  padding: 0 14px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.modal-open--auth .auth-panel--login input::placeholder {
  color: rgba(148, 163, 184, 0.82);
}

body.modal-open--auth .auth-panel--login input:focus {
  border-color: rgba(129, 140, 248, 0.72);
  box-shadow:
    0 0 0 1px rgba(129, 140, 248, 0.42),
    0 14px 30px rgba(79, 70, 229, 0.18);
}

body.modal-open--auth .auth-panel--login .password-input-wrap > input {
  padding-right: 56px;
}

body.modal-open--auth .auth-panel--login .password-toggle-btn {
  right: 8px;
  width: 36px;
  height: 36px;
}

body.modal-open--auth .auth-panel--register {
  padding: 0;
  margin: 0;
  display: grid;
  gap: 11px;
}

body.modal-open--auth .auth-panel--register .auth-field {
  margin: 0;
  display: grid;
  gap: 8px;
}

body.modal-open--auth .auth-panel--register .auth-field > span:first-child {
  font-size: 12px;
  line-height: 1.1;
  font-weight: 760;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(203, 213, 225, 0.9);
}

body.modal-open--auth .auth-panel--register input[type="text"],
body.modal-open--auth .auth-panel--register input[type="email"],
body.modal-open--auth .auth-panel--register input[type="tel"],
body.modal-open--auth .auth-panel--register input[type="password"],
body.modal-open--auth .auth-panel--register select {
  min-height: 50px;
  height: 50px;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.26);
  background: rgba(11, 18, 39, 0.82);
  color: #f8fafc;
  font-size: 14px;
  padding: 0 14px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.modal-open--auth .auth-panel--register input::placeholder {
  color: rgba(148, 163, 184, 0.82);
}

body.modal-open--auth .auth-panel--register input:focus,
body.modal-open--auth .auth-panel--register select:focus {
  border-color: rgba(129, 140, 248, 0.72);
  box-shadow:
    0 0 0 1px rgba(129, 140, 248, 0.42),
    0 14px 30px rgba(79, 70, 229, 0.18);
}

body.modal-open--auth .auth-panel--register .phone-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
  gap: 10px;
  width: 100%;
}

body.modal-open--auth .auth-panel--register .phone-grid select,
body.modal-open--auth .auth-panel--register .phone-grid input {
  width: 100%;
  min-width: 0;
}

body.modal-open--auth .auth-panel--register .country-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 32px;
  gap: 10px;
  align-items: center;
  width: 100%;
}

body.modal-open--auth .auth-panel--register .country-row select {
  width: 100%;
  min-width: 0;
}

body.modal-open--auth .auth-panel--register .country-row .info-btn {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  justify-self: center;
}

body.modal-open--auth .auth-panel--register .country-row .tooltip {
  right: 0;
  top: calc(100% + 8px);
}

body.modal-open--auth .auth-panel--register .password-input-wrap > input {
  padding-right: 56px;
}

body.modal-open--auth .auth-panel--register .password-toggle-btn {
  right: 8px;
  width: 36px;
  height: 36px;
}

body.modal-open--auth .auth-panel--register .submit-btn {
  margin-top: 2px;
  height: 52px;
  font-size: 15px;
}

body.modal-open--auth .auth-panel--register .submit-btn-text,
body.modal-open--auth .auth-panel--register .submit-btn-arrow {
  min-height: 52px;
}

body.modal-open--auth .auth-panel--register .submit-btn-arrow {
  width: 52px;
  flex-basis: 52px;
  font-size: 19px;
}

body.modal-open--auth .auth-panel--register .auth-register-divider {
  height: 1px;
  margin: 4px 0 2px;
  background: linear-gradient(90deg, transparent, rgba(148, 163, 184, 0.38), transparent);
}

body.modal-open--auth .auth-panel--register .auth-panel-foot--register {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
  display: grid;
  gap: 10px;
}

body.modal-open--auth .auth-panel--register .auth-register-note {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: rgba(186, 196, 216, 0.92);
}

body.modal-open--auth .auth-panel--register .auth-switch-row {
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}


body.modal-open--auth .submit-btn {
  margin-top: 6px;
  width: 100%;
  min-width: 0;
  height: 56px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  font: inherit;
  font-size: 16px;
  font-weight: 790;
  cursor: pointer;
  background: transparent;
  padding: 0;
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 10px;
  transition:
    gap 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.18s ease,
    filter 0.18s ease;
}

body.modal-open--auth .submit-btn-text,
body.modal-open--auth .submit-btn-arrow {
  min-height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(129, 140, 248, 0.48);
  background: linear-gradient(135deg, rgba(139, 134, 255, 1), rgba(79, 70, 229, 1));
  box-shadow:
    0 20px 46px rgba(79, 70, 229, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
  transition:
    border-radius 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    background 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.62s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.24s ease,
    margin 0.62s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform, border-radius;
}

body.modal-open--auth .submit-btn-text {
  flex: 1 1 auto;
  min-width: 0;
  border-radius: 999px;
  padding: 0 24px;
  transform: translateX(0);
}

body.modal-open--auth .submit-btn-arrow {
  width: 56px;
  flex: 0 0 56px;
  border-radius: 50%;
  font-size: 20px;
  line-height: 1;
  transform: translateX(0);
}

body.modal-open--auth .submit-btn:hover {
  position: relative;
  gap: 0;
  isolation: isolate;
  overflow: hidden;
  border-radius: 999px;
  transform: translateY(-1px);
  filter: brightness(1.04);
  background: linear-gradient(135deg, #8b86ff 0%, #635bff 52%, #4f46e5 100%);
  box-shadow: 0 24px 56px rgba(79, 70, 229, 0.48), inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

body.modal-open--auth .submit-btn:hover::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, #8b86ff 0%, #635bff 52%, #4f46e5 100%);
  pointer-events: none;
}

body.modal-open--auth .submit-btn:hover .submit-btn-text,
body.modal-open--auth .submit-btn:hover .submit-btn-arrow {
  position: relative;
  z-index: 1;
  background: none;
  background-color: transparent;
  border-color: transparent;
  border-left-color: transparent;
  border-right-color: transparent;
  box-shadow: none;
  outline: 0;
}

body.modal-open--auth .submit-btn:hover .submit-btn-text {
  margin-right: -8px;
  transform: translateX(4px);
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

body.modal-open--auth .submit-btn:hover .submit-btn-arrow {
  margin-left: -8px;
  transform: translateX(-4px);
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

body.modal-open--auth .submit-btn:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.86);
  outline-offset: 3px;
}

body.modal-open--auth .submit-btn:disabled {
  cursor: not-allowed;
  opacity: 0.72;
  transform: none;
  filter: saturate(0.85);
}

body.modal-open--auth .submit-btn:disabled::before {
  content: none;
}

body.modal-open--auth .submit-btn:disabled .submit-btn-text,
body.modal-open--auth .submit-btn:disabled .submit-btn-arrow {
  margin: 0;
  transform: none;
  border-radius: 999px;
}

body.modal-open--auth .auth-login-divider {
  height: 1px;
  margin: 4px 0 2px;
  background: linear-gradient(90deg, transparent, rgba(148, 163, 184, 0.38), transparent);
}

body.modal-open--auth .auth-panel-foot--split {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 14px;
  row-gap: 10px;
}

body.modal-open--auth .auth-panel-foot--split .auth-forgot-link {
  margin-top: 0;
}

body.modal-open--auth .auth-forgot-link {
  color: rgba(224, 231, 255, 0.9);
  font-size: 13px;
}

body.modal-open--auth .auth-forgot-link:hover {
  color: #fff;
}

body.modal-open--auth .auth-switch-col {
  gap: 8px;
  justify-items: end;
  text-align: right;
}

body.modal-open--auth .auth-switch-label {
  font-size: 12px;
  color: rgba(186, 196, 216, 0.92);
}

body.modal-open--auth .auth-switch-cta {
  min-height: 42px;
  width: auto;
  max-width: 100%;
  padding: 0 16px;
  border-radius: 999px;
}

@media (max-width: 640px) {
  body.modal-open--auth .modal {
    padding: 14px;
    place-items: end center;
  }

  body.modal-open--auth .modal-dialog.modal-dialog--auth {
    width: 100%;
    max-width: 100%;
    max-height: calc(100dvh - 14px);
    border-radius: 24px 24px 18px 18px;
  }

  body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-top {
    padding: 11px 11px 0;
  }

  body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-close {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }

  body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-body {
    padding: 48px 18px 18px;
    padding-right: 12px;
  }

  body.modal-open--auth .auth-kicker {
    display: none;
  }

  body.modal-open--auth .auth-modal-header {
    padding: 0 0 14px;
    gap: 10px;
  }

  body.modal-open--auth .auth-modal-title {
    font-size: 32px;
  }

  body.modal-open--auth .auth-modal-subtitle {
    font-size: 13px;
    line-height: 1.45;
  }

  body.modal-open--auth .auth-field-head > span:first-child,
  body.modal-open--auth .auth-panel--login .auth-field > span:first-child {
    font-size: 11px;
  }

  body.modal-open--auth .auth-field-hint {
    font-size: 10px;
  }

  .auth-social-login {
    margin-top: 14px;
    margin-bottom: 12px;
  }

  .auth-email-divider {
    margin: 12px 0 16px;
    font-size: 11px;
  }

  body.modal-open--auth .auth-panel--login input[type="email"],
  body.modal-open--auth .auth-panel--login input[type="password"] {
    min-height: 48px;
    height: 48px;
    border-radius: 13px;
    padding: 0 12px;
    font-size: 13px;
  }

  body.modal-open--auth .auth-panel--login .password-input-wrap > input {
    padding-right: 50px;
  }

  body.modal-open--auth .auth-panel--login .password-toggle-btn {
    width: 32px;
    height: 32px;
    right: 6px;
  }

  body.modal-open--auth.modal-open--auth-register .modal-dialog.modal-dialog--auth .modal-body {
    padding: 46px 18px 18px;
    padding-right: 12px;
  }

  body.modal-open--auth .auth-panel--register .auth-field > span:first-child {
    font-size: 11px;
  }

  body.modal-open--auth .auth-panel--register input[type="text"],
  body.modal-open--auth .auth-panel--register input[type="email"],
  body.modal-open--auth .auth-panel--register input[type="tel"],
  body.modal-open--auth .auth-panel--register input[type="password"],
  body.modal-open--auth .auth-panel--register select {
    min-height: 46px;
    height: 46px;
    border-radius: 13px;
    padding: 0 12px;
    font-size: 14px;
  }

  body.modal-open--auth .auth-panel--register .phone-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  body.modal-open--auth .auth-panel--register .country-row {
    grid-template-columns: minmax(0, 1fr) 30px;
  }

  body.modal-open--auth .auth-panel--register .country-row .info-btn {
    width: 30px;
    height: 30px;
  }

  body.modal-open--auth .auth-panel--register .password-input-wrap > input {
    padding-right: 50px;
  }

  body.modal-open--auth .auth-panel--register .password-toggle-btn {
    width: 32px;
    height: 32px;
    right: 6px;
  }

  body.modal-open--auth .submit-btn {
    height: 54px;
    font-size: 15px;
    gap: 7px;
  }

  body.modal-open--auth .submit-btn-text,
  body.modal-open--auth .submit-btn-arrow {
    min-height: 54px;
  }

  body.modal-open--auth .submit-btn-text {
    padding: 0 18px;
  }

  body.modal-open--auth .submit-btn-arrow {
    width: 54px;
    flex-basis: 54px;
    font-size: 18px;
  }

  body.modal-open--auth .submit-btn:hover .submit-btn-text {
    margin-right: -6px;
    transform: translateX(3px);
  }

  body.modal-open--auth .submit-btn:hover .submit-btn-arrow {
    margin-left: -6px;
    transform: translateX(-3px);
  }

  body.modal-open--auth .auth-panel--register .submit-btn {
    height: 52px;
    gap: 7px;
  }

  body.modal-open--auth .auth-panel--register .submit-btn-text,
  body.modal-open--auth .auth-panel--register .submit-btn-arrow {
    min-height: 52px;
  }

  body.modal-open--auth .auth-panel--register .submit-btn-text {
    padding: 0 18px;
  }

  body.modal-open--auth .auth-panel--register .submit-btn-arrow {
    width: 52px;
    flex-basis: 52px;
    font-size: 18px;
  }

  body.modal-open--auth .auth-panel--register .submit-btn:hover .submit-btn-text {
    margin-right: -6px;
    transform: translateX(3px);
  }

  body.modal-open--auth .auth-panel--register .submit-btn:hover .submit-btn-arrow {
    margin-left: -6px;
    transform: translateX(-3px);
  }

  body.modal-open--auth .auth-panel-foot--split {
    grid-template-columns: minmax(0, 1fr);
    justify-items: start;
  }

  body.modal-open--auth .auth-switch-col {
    justify-items: start;
    text-align: left;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.modal-open--auth .submit-btn,
  body.modal-open--auth .submit-btn::before,
  body.modal-open--auth .submit-btn-text,
  body.modal-open--auth .submit-btn-arrow,
  body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-close {
    transition: none !important;
  }
}

/* Auth success modal refresh (scoped only to auth success state) */
body.modal-open--auth-success .modal-backdrop {
  background:
    radial-gradient(circle at 50% 38%, rgba(98, 92, 255, 0.2), transparent 42%),
    rgba(3, 5, 14, 0.72);
  backdrop-filter: blur(13px) saturate(1.16);
  -webkit-backdrop-filter: blur(13px) saturate(1.16);
}

body.modal-open--auth-success .modal {
  padding: 24px;
  place-items: center;
}

body.modal-open--auth-success .modal-dialog.modal-dialog--compact {
  width: min(520px, calc(100vw - 48px));
  height: auto;
  max-height: calc(100dvh - 48px);
  border-radius: 28px;
  border: 1px solid rgba(129, 140, 248, 0.32);
  background:
    radial-gradient(circle at 0 0, rgba(34, 211, 238, 0.12), transparent 38%),
    radial-gradient(circle at 92% 12%, rgba(99, 91, 255, 0.18), transparent 34%),
    linear-gradient(180deg, rgba(17, 25, 52, 0.92), rgba(8, 13, 28, 0.94));
  box-shadow:
    0 34px 90px rgba(0, 0, 0, 0.48),
    0 0 0 1px rgba(255, 255, 255, 0.035) inset,
    0 22px 70px rgba(79, 70, 229, 0.18);
  overflow: hidden;
  position: relative;
  animation: authSuccessModalIn 0.34s cubic-bezier(0.16, 1, 0.3, 1) both;
}

body.modal-open--auth-success .modal-dialog.modal-dialog--compact::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.026) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.016) 1px, transparent 1px);
  background-size: 46px 46px;
  -webkit-mask-image: radial-gradient(circle at 28% 18%, black, transparent 70%);
  mask-image: radial-gradient(circle at 28% 18%, black, transparent 70%);
  opacity: 0.34;
}

body.modal-open--auth-success .modal-dialog.modal-dialog--compact::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(129, 140, 248, 0.8), transparent);
  opacity: 0.72;
}

body.modal-open--auth-success .modal-dialog.modal-dialog--compact .modal-body {
  padding: 0;
  overflow: auto;
  scrollbar-gutter: auto;
}

body.modal-open--auth-success .modal-dialog.modal-dialog--compact .modal-body > div {
  min-height: auto;
  gap: 0;
  padding-bottom: 0;
}

.auth-success-modal-shell {
  width: 100%;
  position: relative;
}

.auth-success-close-btn {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid rgba(151, 167, 255, 0.22);
  background: rgba(255, 255, 255, 0.045);
  color: #cfd6ff;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  z-index: 3;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.auth-success-close-btn:hover {
  background: rgba(98, 92, 255, 0.16);
  border-color: rgba(151, 167, 255, 0.38);
  transform: rotate(90deg);
}

.auth-success-close-btn:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.86);
  outline-offset: 3px;
}

.auth-success-content {
  position: relative;
  z-index: 2;
  padding: 52px 34px 30px;
  display: grid;
  justify-items: center;
  text-align: center;
}

.auth-success-kicker {
  margin: 0 0 10px;
  color: rgba(199, 210, 254, 0.82);
  font-size: 11px;
  font-weight: 820;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  animation: authSuccessContentUp 0.34s 0.05s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.auth-success-title {
  margin: 0;
  max-width: 420px;
  color: #f5f7ff;
  font-size: 30px;
  line-height: 1.08;
  letter-spacing: -0.04em;
  animation: authSuccessContentUp 0.34s 0.09s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.auth-success-text {
  margin: 12px auto 24px;
  max-width: 360px;
  color: rgba(229, 231, 235, 0.64);
  font-size: 15px;
  line-height: 1.45;
  animation: authSuccessContentUp 0.34s 0.13s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.auth-success-mark {
  width: 86px;
  height: 86px;
  margin: 0 0 24px;
  position: relative;
  display: grid;
  place-items: center;
  animation: authSuccessContentUp 0.34s 0.18s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.auth-success-check-pill {
  width: 68px;
  height: 68px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  position: relative;
  background:
    radial-gradient(circle at 35% 25%, rgba(255, 255, 255, 0.22), transparent 38%),
    linear-gradient(135deg, rgba(20, 184, 166, 0.96), rgba(99, 91, 255, 0.96));
  box-shadow:
    0 0 0 8px rgba(99, 91, 255, 0.08),
    0 20px 44px rgba(79, 70, 229, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
  transform: scale(0.78);
  opacity: 0;
  animation: authSuccessCheckAppear 0.48s 0.32s cubic-bezier(0.2, 1.28, 0.28, 1) forwards;
}

.auth-success-check-pill::after {
  content: "";
  position: absolute;
  inset: -10px;
  border-radius: inherit;
  border: 1px solid rgba(129, 140, 248, 0.36);
  opacity: 0;
  transform: scale(0.72);
  animation: authSuccessSoftPulse 0.72s 0.54s ease-out forwards;
}

.auth-success-check-pill svg {
  width: 33px;
  height: 33px;
  color: #fff;
  overflow: visible;
}

.auth-success-check-path {
  stroke-dasharray: 34;
  stroke-dashoffset: 34;
  animation: authSuccessCheckDraw 0.4s 0.72s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.auth-success-actions {
  width: 100%;
  display: flex;
  justify-content: center;
  animation: authSuccessContentUp 0.34s 0.24s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.auth-success-continue-action {
  min-width: 210px;
  height: 52px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, #8b86ff, #635bff);
  color: #fff;
  font-size: 15px;
  font-weight: 790;
  cursor: pointer;
  box-shadow:
    0 20px 46px rgba(79, 70, 229, 0.38),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
  transition: transform 0.18s ease, filter 0.18s ease, box-shadow 0.18s ease;
}

.auth-success-continue-action:hover {
  transform: translateY(-1px);
  filter: brightness(1.04);
  box-shadow:
    0 24px 56px rgba(79, 70, 229, 0.48),
    inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

.auth-success-continue-action:focus-visible {
  outline: 2px solid rgba(147, 197, 253, 0.86);
  outline-offset: 3px;
}

@keyframes authSuccessModalIn {
  from {
    opacity: 0;
    transform: translateY(16px) scale(0.97);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes authSuccessContentUp {
  from {
    opacity: 0;
    transform: translateY(7px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes authSuccessCheckAppear {
  0% {
    opacity: 0;
    transform: scale(0.78);
  }
  70% {
    opacity: 1;
    transform: scale(1.06);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes authSuccessSoftPulse {
  0% {
    opacity: 0;
    transform: scale(0.72);
  }
  35% {
    opacity: 0.8;
  }
  100% {
    opacity: 0;
    transform: scale(1.22);
  }
}

@keyframes authSuccessCheckDraw {
  to {
    stroke-dashoffset: 0;
  }
}

@media (max-width: 640px) {
  body.modal-open--auth-success .modal {
    padding: 14px;
  }

  body.modal-open--auth-success .modal-dialog.modal-dialog--compact {
    width: 100%;
    max-width: 100%;
    max-height: calc(100dvh - 14px);
    border-radius: 24px;
  }

  .auth-success-close-btn {
    width: 40px;
    height: 40px;
    top: 11px;
    right: 11px;
    font-size: 20px;
  }

  .auth-success-content {
    padding: 50px 20px 22px;
  }

  .auth-success-title {
    font-size: 25px;
  }

  .auth-success-text {
    margin: 10px auto 20px;
    font-size: 13px;
  }

  .auth-success-mark {
    width: 76px;
    height: 76px;
    margin-bottom: 22px;
  }

  .auth-success-check-pill {
    width: 60px;
    height: 60px;
  }

  .auth-success-check-pill svg {
    width: 29px;
    height: 29px;
  }

  .auth-success-continue-action {
    width: 100%;
    min-width: 0;
    height: 50px;
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .auth-success-modal-shell,
  .auth-success-kicker,
  .auth-success-title,
  .auth-success-text,
  .auth-success-mark,
  .auth-success-actions,
  .auth-success-check-pill,
  .auth-success-check-pill::after,
  .auth-success-check-path,
  .auth-success-close-btn,
  .auth-success-continue-action {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  .auth-success-check-path {
    stroke-dashoffset: 0;
  }

  .auth-success-check-pill {
    opacity: 1;
    transform: scale(1);
  }
}

/* Events calendar page */
#events-calendar-view {
  position: relative;
  z-index: 10;
}

#events-calendar-view .events-calendar-shell {
  display: grid;
  gap: 16px;
  position: relative;
  z-index: 1;
  width: min(calc(100% - 32px), 1440px);
  max-width: min(calc(100% - 32px), 1440px);
  margin-inline: auto;
  padding-left: 0;
  padding-right: 0;
}

#events-calendar-view .events-calendar-head {
  display: grid;
  gap: 10px;
  align-items: start;
}

#events-calendar-view .events-calendar-back {
  width: fit-content;
  min-height: 42px;
  padding: 0 20px;
  border-radius: 999px;
}

#events-calendar-view .events-calendar-breadcrumbs {
  margin: 0;
}

#events-calendar-view .events-calendar-title {
  margin: 0;
  color: #f8fbff;
  font-size: clamp(34px, 5vw, 50px);
  line-height: 0.98;
  letter-spacing: -0.04em;
}

#events-calendar-view .events-calendar-filters {
  position: relative;
  z-index: 30;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)) minmax(300px, 1.2fr);
  gap: 10px;
  align-items: stretch;
}

#events-calendar-view .events-calendar-filter-rail {
  display: contents;
}

#events-calendar-view .events-calendar-filter-pill {
  position: relative;
  min-height: 58px;
  width: 100%;
  border: 1px solid rgba(151, 167, 255, 0.26);
  border-radius: 18px;
  padding: 10px 48px 10px 18px;
  text-align: left;
  background:
    radial-gradient(circle at 88% 0%, rgba(98, 92, 255, 0.14), transparent 34%),
    linear-gradient(180deg, rgba(19, 27, 60, 0.88), rgba(11, 17, 38, 0.96));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 16px 34px rgba(3, 6, 18, 0.3);
  color: #eef2ff;
  cursor: pointer;
  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

#events-calendar-view .events-calendar-filter-pill:hover {
  transform: translateY(-1px);
  border-color: rgba(151, 167, 255, 0.44);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 18px 42px rgba(12, 18, 41, 0.44),
    0 0 26px rgba(98, 92, 255, 0.12);
}

#events-calendar-view .events-calendar-filter-label {
  display: block;
  color: #7f8aa6;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.11em;
  line-height: 1;
  text-transform: uppercase;
  margin-bottom: 5px;
}

#events-calendar-view .events-calendar-filter-value {
  display: block;
  color: #eef2ff;
  font-size: 14px;
  line-height: 1.14;
  font-weight: 670;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#events-calendar-view .events-calendar-filter-circle {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(151, 167, 255, 0.19);
  background: rgba(98, 92, 255, 0.16);
  color: #d8ddff;
  font-size: 13px;
}

#events-calendar-view .events-calendar-request-cta {
  --cta-gap: 10px;
  display: inline-flex;
  align-items: stretch;
  justify-self: end;
  width: 100%;
  min-width: 0;
  gap: var(--cta-gap);
  position: relative;
  isolation: isolate;
  text-decoration: none;
  transition: gap 0.52s cubic-bezier(0.16, 1, 0.3, 1);
}

#events-calendar-view .events-calendar-request-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(35, 211, 255, 0.22), rgba(102, 87, 255, 0.88) 52%, rgba(122, 92, 255, 0.94));
  box-shadow:
    0 18px 38px rgba(92, 74, 255, 0.26),
    0 1px 0 rgba(255, 255, 255, 0.14) inset;
  opacity: 0.08;
  transform: scaleX(0.985);
  transition:
    opacity 0.44s ease,
    transform 0.52s cubic-bezier(0.16, 1, 0.3, 1);
  z-index: -1;
  pointer-events: none;
}

#events-calendar-view .events-calendar-request-text,
#events-calendar-view .events-calendar-request-arrow {
  min-height: 56px;
  border: 1px solid rgba(151, 167, 255, 0.26);
  background: #625cff;
  color: #ffffff;
  box-shadow: 0 14px 30px rgba(116, 107, 255, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.12);
  transition:
    border-radius 0.52s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.36s ease,
    background 0.36s ease,
    box-shadow 0.36s ease;
  backface-visibility: hidden;
  transform: translateZ(0);
}

#events-calendar-view .events-calendar-request-text {
  flex: 1 1 auto;
  min-width: 0;
  border-radius: 999px;
  padding: 0 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 760;
  text-align: center;
  line-height: 1.15;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#events-calendar-view .events-calendar-request-arrow {
  flex: 0 0 56px;
  width: 56px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  line-height: 1;
}

@media (min-width: 741px) {
  #events-calendar-view .events-calendar-request-cta {
    align-items: center;
  }

  #events-calendar-view .events-calendar-request-text {
    min-height: 56px;
    height: 56px;
  }

  #events-calendar-view .events-calendar-request-arrow {
    width: 56px;
    height: 56px;
    min-width: 56px;
    min-height: 56px;
    max-width: 56px;
    max-height: 56px;
    padding: 0;
    aspect-ratio: 1 / 1;
  }
}

#events-calendar-view .events-calendar-request-cta:hover,
#events-calendar-view .events-calendar-request-cta:focus-visible {
  gap: 0;
}

#events-calendar-view .events-calendar-request-cta:hover::before,
#events-calendar-view .events-calendar-request-cta:focus-visible::before {
  opacity: 1;
  transform: scaleX(1);
}

#events-calendar-view .events-calendar-request-cta:hover .events-calendar-request-text,
#events-calendar-view .events-calendar-request-cta:focus-visible .events-calendar-request-text {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right-color: transparent;
  background: rgba(255, 255, 255, 0.02);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0) inset, 0 12px 30px rgba(0, 0, 0, 0);
}

#events-calendar-view .events-calendar-request-cta:hover .events-calendar-request-arrow,
#events-calendar-view .events-calendar-request-cta:focus-visible .events-calendar-request-arrow {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left-color: transparent;
  background: rgba(255, 255, 255, 0.02);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0) inset, 0 12px 30px rgba(0, 0, 0, 0);
}

#events-calendar-view .events-calendar-filter-popover {
  position: absolute;
  z-index: 60;
  max-height: min(340px, calc(100dvh - 140px));
  overflow-y: auto;
  overflow-x: hidden;
  padding: 8px;
  border-radius: 18px;
  border: 1px solid rgba(151, 167, 255, 0.34);
  background:
    radial-gradient(circle at 92% 0%, rgba(98, 92, 255, 0.2), transparent 38%),
    linear-gradient(180deg, rgba(24, 34, 74, 0.96), rgba(12, 18, 41, 0.99));
  box-shadow:
    0 20px 44px rgba(0, 0, 0, 0.34),
    0 0 28px rgba(98, 92, 255, 0.12);
}

#events-calendar-view .events-calendar-filter-option {
  width: 100%;
  min-height: 36px;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 0 12px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #edf2ff;
  font: inherit;
  font-size: 13px;
  font-weight: 650;
  text-align: left;
  cursor: pointer;
  transition: background 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

#events-calendar-view .events-calendar-filter-option:hover,
#events-calendar-view .events-calendar-filter-option.is-selected {
  background: rgba(98, 92, 255, 0.28);
  box-shadow: inset 0 0 0 1px rgba(129, 140, 248, 0.42);
  color: #fff;
}

#events-calendar-view .events-calendar-main {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  border: 0;
  background:
    radial-gradient(circle at 8% 0%, rgba(98, 92, 255, 0.2), transparent 35%),
    radial-gradient(circle at 100% 0%, rgba(34, 211, 238, 0.12), transparent 36%),
    rgba(4, 9, 24, 0.75);
  box-shadow: 0 24px 56px rgba(0, 0, 0, 0.32);
}

#events-calendar-view .events-calendar-panel {
  width: 100%;
  padding: 20px;
}

#events-calendar-view .events-calendar-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}

#events-calendar-view .events-calendar-panel-status {
  margin: 0 0 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  min-height: 38px;
  padding: 8px 12px;
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  background: rgba(12, 18, 41, 0.52);
}

#events-calendar-view .events-calendar-panel-status[hidden] {
  display: none;
}

#events-calendar-view .events-calendar-status-text {
  margin: 0;
  color: #c7d2fe;
  font-size: 13px;
  line-height: 1.4;
}

#events-calendar-view .events-calendar-status-action {
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(99, 102, 241, 0.34);
  background: rgba(99, 102, 241, 0.2);
  color: #fff;
  font-size: 12px;
  font-weight: 720;
  cursor: pointer;
}

#events-calendar-view .events-calendar-month-head h2 {
  margin: 0 0 4px;
  color: #f7faff;
  font-size: clamp(26px, 3vw, 32px);
  letter-spacing: -0.04em;
  line-height: 1;
}

#events-calendar-view .events-calendar-month-head p {
  margin: 0;
  color: #9ba5c2;
  font-size: 13px;
  font-weight: 620;
}

#events-calendar-view .events-calendar-month-nav {
  display: flex;
  gap: 8px;
}

#events-calendar-view .events-calendar-month-nav button {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  border: 1px solid rgba(151, 167, 255, 0.24);
  background: rgba(15, 23, 42, 0.64);
  color: #eef2ff;
  font-size: 20px;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease;
}

#events-calendar-view .events-calendar-month-nav button:hover {
  border-color: rgba(151, 167, 255, 0.42);
  background: rgba(98, 92, 255, 0.2);
}

#events-calendar-view .events-calendar-month-nav button:disabled,
#events-calendar-view .events-calendar-month-nav button[aria-disabled="true"] {
  cursor: not-allowed;
  opacity: 0.44;
  border-color: rgba(151, 167, 255, 0.14);
  background: rgba(15, 23, 42, 0.36);
}

#events-calendar-view .events-calendar-month-nav button:disabled:hover,
#events-calendar-view .events-calendar-month-nav button[aria-disabled="true"]:hover {
  border-color: rgba(151, 167, 255, 0.14);
  background: rgba(15, 23, 42, 0.36);
}

#events-calendar-view .events-calendar-weekdays,
#events-calendar-view .events-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}

#events-calendar-view .events-calendar-weekdays {
  margin-bottom: 8px;
}

#events-calendar-view .events-calendar-weekdays span {
  display: block;
  padding: 0 8px;
  color: #77839f;
  font-size: 11px;
  font-weight: 740;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

#events-calendar-view .events-calendar-day {
  min-height: 128px;
  border-radius: 20px;
  border: 1px solid rgba(151, 167, 255, 0.16);
  padding: 54px 10px 10px;
  background: rgba(15, 23, 42, 0.38);
  color: #ecf1ff;
  text-align: left;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    background 0.2s ease,
    box-shadow 0.2s ease;
}

#events-calendar-view .events-calendar-day:hover {
  transform: translateY(-2px);
  border-color: rgba(151, 167, 255, 0.44);
  background: rgba(15, 23, 42, 0.56);
}

#events-calendar-view .events-calendar-day.is-past {
  opacity: 0.5;
  cursor: not-allowed;
}

#events-calendar-view .events-calendar-day.is-past:hover {
  transform: none;
  border-color: rgba(151, 167, 255, 0.16);
  background: rgba(15, 23, 42, 0.38);
  box-shadow: none;
}

#events-calendar-view .events-calendar-day.is-past .events-calendar-day-number {
  filter: grayscale(0.35);
  opacity: 0.72;
}

#events-calendar-view .events-calendar-day.is-muted {
  opacity: 0.42;
  background: rgba(12, 17, 33, 0.24);
}

#events-calendar-view .events-calendar-day.is-past.is-muted {
  opacity: 0.5;
}

#events-calendar-view .events-calendar-day.is-today {
  border-color: rgba(34, 211, 238, 0.44);
  box-shadow: inset 0 0 0 1px rgba(34, 211, 238, 0.14);
}

#events-calendar-view .events-calendar-day.is-selected {
  border-color: rgba(129, 140, 248, 0.76);
  background: linear-gradient(180deg, rgba(99, 102, 241, 0.2), rgba(15, 23, 42, 0.62));
}

#events-calendar-view .events-calendar-day-head {
  position: absolute;
  top: 14px;
  left: 14px;
  right: 14px;
  min-height: 32px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 6px;
  margin: 0;
  pointer-events: none;
}

#events-calendar-view .events-calendar-day-number {
  width: 32px;
  height: 32px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 13px;
  font-weight: 780;
  border: 1px solid rgba(199, 210, 254, 0.54);
  background: linear-gradient(135deg, #6366f1, #5b4cff);
  box-shadow:
    0 0 16px rgba(99, 102, 241, 0.36),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

#events-calendar-view .events-calendar-day.is-today .events-calendar-day-number,
#events-calendar-view .events-calendar-day.is-selected .events-calendar-day-number {
  box-shadow:
    0 0 22px rgba(99, 102, 241, 0.52),
    0 0 18px rgba(34, 211, 238, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

#events-calendar-view .events-calendar-day-total {
  position: absolute;
  top: 8px;
  right: 0;
  color: #a0abc6;
  font-size: 11px;
  line-height: 1;
}

#events-calendar-view .events-calendar-day-chips {
  display: grid;
  gap: 6px;
}

#events-calendar-view .events-calendar-chip,
#events-calendar-view .events-calendar-more-chip {
  min-height: 28px;
  border-radius: 11px;
  display: flex;
  align-items: center;
  padding: 0 8px;
  font-size: 11px;
}

#events-calendar-view .events-calendar-chip {
  gap: 7px;
  border: 1px solid rgba(148, 163, 184, 0.17);
  background: rgba(2, 6, 23, 0.46);
  color: #f7fbff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#events-calendar-view .events-calendar-chip::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  flex: 0 0 auto;
  background: #a5b4fc;
  box-shadow: 0 0 14px rgba(165, 180, 252, 0.48);
}

#events-calendar-view .events-calendar-chip.is-football::before {
  background: #6ee7b7;
  box-shadow: 0 0 14px rgba(110, 231, 183, 0.46);
}

#events-calendar-view .events-calendar-chip.is-ballet::before {
  background: #f0abfc;
  box-shadow: 0 0 14px rgba(240, 171, 252, 0.42);
}

#events-calendar-view .events-calendar-chip.is-theatre::before {
  background: #fb7185;
  box-shadow: 0 0 14px rgba(251, 113, 133, 0.42);
}

#events-calendar-view .events-calendar-more-chip {
  border: 1px dashed rgba(148, 163, 184, 0.28);
  background: rgba(15, 23, 42, 0.34);
  color: #9ba5c2;
}

#events-calendar-view .events-calendar-day-overlay {
  --events-calendar-scroll-progress: 18%;
  --events-calendar-overlay-target-height: 390px;
  position: absolute;
  top: 90px;
  right: 20px;
  width: min(390px, calc(100vw - 36px));
  height: min(var(--events-calendar-overlay-target-height), calc(100% - 48px));
  max-height: min(var(--events-calendar-overlay-target-height), calc(100% - 48px));
  border-radius: 30px;
  isolation: isolate;
  border: 1px solid rgba(34, 211, 238, 0.38);
  background:
    radial-gradient(circle at 12% -10%, rgba(124, 92, 255, 0.34), transparent 34%),
    radial-gradient(circle at 102% 8%, rgba(34, 211, 238, 0.24), transparent 36%),
    radial-gradient(circle at 72% 108%, rgba(168, 85, 247, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(7, 14, 34, 0.992), rgba(2, 6, 23, 0.994));
  box-shadow:
    0 0 0 1px rgba(124, 92, 255, 0.22) inset,
    0 0 0 7px rgba(2, 6, 23, 0.38),
    0 30px 86px rgba(0, 0, 0, 0.82),
    0 0 32px rgba(124, 92, 255, 0.34),
    0 0 56px rgba(34, 211, 238, 0.18);
  backdrop-filter: blur(24px) saturate(1.35);
  -webkit-backdrop-filter: blur(24px) saturate(1.35);
  padding: 20px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transform: translateX(calc(100% + 36px));
  opacity: 0;
  pointer-events: none;
  transition: transform 0.28s ease, opacity 0.22s ease;
  z-index: 22;
}

#events-calendar-view .events-calendar-day-overlay.has-no-events {
  --events-calendar-overlay-target-height: 320px;
}

#events-calendar-view .events-calendar-day-overlay.has-one-event {
  --events-calendar-overlay-target-height: 390px;
}

#events-calendar-view .events-calendar-day-overlay.has-two-events,
#events-calendar-view .events-calendar-day-overlay.has-many-events {
  --events-calendar-overlay-target-height: 560px;
}

#events-calendar-view .events-calendar-day-overlay::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: 29px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.07), transparent 28%),
    linear-gradient(90deg, rgba(124, 92, 255, 0.22), transparent 26%, transparent 74%, rgba(34, 211, 238, 0.18));
  pointer-events: none;
}

#events-calendar-view .events-calendar-day-overlay::after {
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  top: 0;
  height: 2px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, transparent, #7c5cff 14%, #a855f7 36%, #22d3ee 72%, transparent);
  box-shadow: 0 0 16px rgba(124, 92, 255, 0.72), 0 0 28px rgba(34, 211, 238, 0.42);
  pointer-events: none;
}

#events-calendar-view .events-calendar-day-overlay.is-open {
  transform: translateX(0);
  opacity: 1;
  pointer-events: auto;
}

#events-calendar-view .events-calendar-overlay-close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  border: 1px solid rgba(203, 213, 225, 0.22);
  background: rgba(15, 23, 42, 0.92);
  color: #f5f8ff;
  font-size: 18px;
  line-height: 1;
  display: grid;
  place-items: center;
  cursor: pointer;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.34);
  transition: background 0.18s ease, border-color 0.18s ease;
}

#events-calendar-view .events-calendar-overlay-close:hover {
  border-color: rgba(129, 140, 248, 0.62);
  background: rgba(99, 102, 241, 0.22);
}

#events-calendar-view .events-calendar-overlay-header {
  border-bottom: 1px solid rgba(148, 163, 184, 0.2);
  margin-bottom: 14px;
  padding: 0 42px 16px 0;
  flex: 0 0 auto;
}

#events-calendar-view .events-calendar-overlay-datebox {
  display: inline-flex;
  flex-direction: column;
  gap: 4px;
  min-width: 122px;
  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid rgba(34, 211, 238, 0.32);
  background:
    radial-gradient(circle at 100% 0, rgba(34, 211, 238, 0.2), transparent 42%),
    radial-gradient(circle at 0 0, rgba(124, 92, 255, 0.2), transparent 44%),
    linear-gradient(180deg, rgba(19, 30, 64, 0.96), rgba(8, 15, 34, 0.96));
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.32),
    0 0 22px rgba(34, 211, 238, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

#events-calendar-view .events-calendar-overlay-datebox h3 {
  margin: 0;
  color: #ffffff;
  font-size: 22px;
  letter-spacing: -0.04em;
  line-height: 1;
}

#events-calendar-view .events-calendar-overlay-datebox p {
  margin: 0;
  color: #9ba5c2;
  font-size: 12px;
  line-height: 1.25;
}

#events-calendar-view .events-calendar-overlay-events {
  position: relative;
  min-height: 0;
  flex: 1 1 auto;
  display: grid;
  gap: 12px;
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: 18px;
  scrollbar-width: none;
}

#events-calendar-view .events-calendar-overlay-events::-webkit-scrollbar {
  width: 0;
  height: 0;
}

#events-calendar-view .events-calendar-scroll-progress {
  position: absolute;
  right: 10px;
  top: 104px;
  bottom: 20px;
  width: 5px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(99, 102, 241, 0.18), rgba(30, 41, 92, 0.24), rgba(34, 211, 238, 0.08));
  box-shadow: inset 0 0 0 1px rgba(99, 102, 241, 0.08);
  overflow: hidden;
  pointer-events: none;
}

#events-calendar-view .events-calendar-scroll-progress::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: var(--events-calendar-scroll-progress, 18%);
  min-height: 18px;
  max-height: 100%;
  border-radius: inherit;
  background: linear-gradient(180deg, #7c5cff 0%, #a855f7 34%, #22d3ee 100%);
  box-shadow: 0 0 16px rgba(124, 92, 255, 0.78), 0 0 24px rgba(34, 211, 238, 0.44);
  will-change: height;
}

#events-calendar-view .events-calendar-day-overlay.is-empty .events-calendar-scroll-progress {
  opacity: 0;
}

#events-calendar-view .events-calendar-day-overlay.is-not-scrollable .events-calendar-scroll-progress {
  opacity: 0;
}

#events-calendar-view .events-calendar-overlay-empty {
  margin: 0;
  color: #9ba5c2;
  font-size: 13px;
  line-height: 1.45;
}

#events-calendar-view .events-calendar-overlay-empty-state {
  display: grid;
  justify-items: start;
  gap: 12px;
  align-content: start;
  padding: 10px 0 6px;
}

#events-calendar-view .events-calendar-overlay-empty-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid rgba(129, 140, 248, 0.35);
  background: linear-gradient(135deg, #6366f1, #5b4cff);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(79, 70, 229, 0.26), 0 0 14px rgba(99, 102, 241, 0.16);
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

#events-calendar-view .events-calendar-overlay-empty-cta:hover {
  border-color: rgba(199, 210, 254, 0.72);
  box-shadow: 0 14px 28px rgba(79, 70, 229, 0.3), 0 0 18px rgba(99, 102, 241, 0.24);
  transform: translateY(-1px);
}

#events-calendar-view .events-calendar-overlay-card {
  position: relative;
  border-radius: 20px;
  border: 1px solid rgba(129, 140, 248, 0.26);
  background:
    radial-gradient(circle at 100% 0, rgba(34, 211, 238, 0.1), transparent 42%),
    radial-gradient(circle at 0 0, rgba(124, 92, 255, 0.12), transparent 38%),
    linear-gradient(180deg, rgba(18, 31, 64, 0.98), rgba(7, 13, 31, 0.985));
  box-shadow:
    0 16px 38px rgba(0, 0, 0, 0.36),
    0 0 20px rgba(99, 102, 241, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
  padding: 14px;
  transition: transform 0.18s ease, border-color 0.18s ease;
}

#events-calendar-view .events-calendar-overlay-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05), transparent 34%);
  pointer-events: none;
}

#events-calendar-view .events-calendar-overlay-card:hover {
  transform: translateY(-2px);
  border-color: rgba(34, 211, 238, 0.34);
}

#events-calendar-view .events-calendar-overlay-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

#events-calendar-view .events-calendar-time-pill {
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(99, 102, 241, 0.14);
  color: #c7d2fe;
  font-size: 12px;
  font-weight: 760;
  display: inline-flex;
  align-items: center;
}

#events-calendar-view .events-calendar-type-pill {
  min-height: 28px;
  padding: 0 9px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.18);
  color: #9ba5c2;
  font-size: 11px;
  display: inline-flex;
  align-items: center;
}

#events-calendar-view .events-calendar-overlay-card h4 {
  margin: 0 0 7px;
  color: #ffffff;
  font-size: 16px;
  letter-spacing: -0.02em;
}

#events-calendar-view .events-calendar-overlay-meta {
  margin: 0 0 12px;
  color: #9ba5c2;
  font-size: 12px;
  line-height: 1.44;
}

#events-calendar-view .events-calendar-overlay-card-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

#events-calendar-view .events-calendar-overlay-price {
  color: #f8fbff;
  font-size: 14px;
  font-weight: 780;
}

#events-calendar-view .events-calendar-overlay-action {
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(34, 211, 238, 0.34);
  background:
    radial-gradient(circle at 100% 0, rgba(34, 211, 238, 0.22), transparent 48%),
    linear-gradient(135deg, rgba(99, 102, 241, 0.88), rgba(91, 76, 255, 0.68));
  color: #ffffff;
  font-size: 12px;
  font-weight: 720;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 26px rgba(79, 70, 229, 0.28), 0 0 18px rgba(34, 211, 238, 0.13);
  transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

#events-calendar-view .events-calendar-overlay-action:hover {
  border-color: rgba(199, 210, 254, 0.68);
  box-shadow: 0 16px 32px rgba(79, 70, 229, 0.34);
}

#events-calendar-view .events-calendar-overlay-action--empty {
  width: fit-content;
}

#events-calendar-view .events-calendar-mobile-agenda {
  display: none;
  border-radius: 24px;
  border: 1px solid rgba(148, 163, 184, 0.2);
  background:
    radial-gradient(circle at 8% 0%, rgba(98, 92, 255, 0.2), transparent 34%),
    rgba(4, 9, 24, 0.76);
  box-shadow: 0 28px 62px rgba(0, 0, 0, 0.4);
  padding: 18px;
}

#events-calendar-view .events-calendar-mobile-month {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

#events-calendar-view .events-calendar-mobile-month h2 {
  margin: 0;
  color: #f8fbff;
  font-size: 24px;
  letter-spacing: -0.04em;
}

#events-calendar-view .events-calendar-mobile-list {
  display: grid;
  gap: 12px;
}

#events-calendar-view .events-calendar-mobile-empty {
  margin: 0;
  color: #9ba5c2;
  font-size: 13px;
  line-height: 1.45;
}

#events-calendar-view .events-calendar-agenda-day {
  border-radius: 22px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  background: rgba(15, 23, 42, 0.44);
  padding: 14px;
}

#events-calendar-view .events-calendar-agenda-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

#events-calendar-view .events-calendar-agenda-head strong {
  color: #ffffff;
  font-size: 16px;
}

#events-calendar-view .events-calendar-agenda-head span {
  color: #9ba5c2;
  font-size: 12px;
}

#events-calendar-view .events-calendar-agenda-item {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 10px;
  padding: 10px 0;
  border-top: 1px solid rgba(148, 163, 184, 0.12);
  color: inherit;
  text-decoration: none;
}

#events-calendar-view .events-calendar-agenda-time {
  color: #c7d2fe;
  font-size: 12px;
  font-weight: 800;
}

#events-calendar-view .events-calendar-agenda-item h4 {
  margin: 0 0 4px;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.18;
  color: #ffffff;
}

#events-calendar-view .events-calendar-agenda-item p {
  margin: 0;
  color: #9ba5c2;
  font-size: 12px;
  line-height: 1.25;
}

#events-calendar-view .events-calendar-agenda-item.is-link {
  cursor: pointer;
  border-radius: 12px;
  transition:
    background 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease;
}

#events-calendar-view .events-calendar-agenda-item.is-link:hover,
#events-calendar-view .events-calendar-agenda-item.is-link:focus-visible {
  background: rgba(99, 102, 241, 0.12);
  box-shadow: inset 0 0 0 1px rgba(129, 140, 248, 0.28);
  outline: none;
}

@media (max-width: 360px) {
  #events-calendar-view .events-calendar-agenda-item h4 {
    font-size: 13.5px;
  }

  #events-calendar-view .events-calendar-agenda-item p,
  #events-calendar-view .events-calendar-agenda-time {
    font-size: 11.5px;
  }
}

@media (max-width: 1180px) {
  #events-calendar-view .events-calendar-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #events-calendar-view .events-calendar-request-cta {
    grid-column: 1 / -1;
    justify-self: start;
    width: min(420px, 100%);
  }
}

@media (max-width: 1080px) {
  #events-calendar-view .events-calendar-day-overlay {
    top: auto;
    right: 12px;
    left: 12px;
    bottom: 12px;
    width: auto;
    height: 340px;
    max-height: 340px;
    border-radius: 28px;
    transform: translateY(calc(100% + 26px));
  }

  #events-calendar-view .events-calendar-day-overlay.is-open {
    transform: translateY(0);
  }
}

@media (max-width: 740px) {
  #events-calendar-view .events-calendar-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    align-items: stretch;
    width: 100%;
    max-width: 100%;
  }

  #events-calendar-view .events-calendar-filter-rail {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
    min-width: 0;
    align-items: stretch;
  }

  #events-calendar-view .events-calendar-filter-pill {
    display: flex;
    align-items: center;
    width: 100%;
    min-width: 0;
    min-height: 50px;
    height: 50px;
    border-radius: 15px;
    padding: 0 38px 0 12px;
  }

  #events-calendar-view .events-calendar-filter-label {
    display: none !important;
  }

  #events-calendar-view .events-calendar-filter-value {
    width: 100%;
    min-width: 0;
    margin: 0;
    font-size: 14px !important;
    line-height: 1.1;
    font-weight: 900 !important;
  }

  #events-calendar-view .events-calendar-filter-circle {
    display: grid;
    width: 24px;
    height: 24px;
    right: 10px;
    font-size: 12px;
  }

  #events-calendar-view .events-calendar-request-cta {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
  }

  #events-calendar-view .events-calendar-main {
    display: none;
  }

  #events-calendar-view .events-calendar-mobile-agenda {
    display: block;
  }
}

.home-mobile-hero {
  display: none;
}

@media (max-width: 640px) {
  body #top.hero {
    padding-top: 20px;
    padding-bottom: 18px;
  }

  body #top .hero-grid {
    display: block;
    gap: 0;
  }

  body #top .hero-grid > .hero-text,
  body #top .hero-grid > .hero-ticket-stage {
    display: none;
  }

  body #top .home-mobile-hero {
    display: block;
    width: 100%;
  }

  body #top .home-mobile-hero-card {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    min-height: 560px;
    border-radius: 34px;
    padding: 34px 16px 22px;
    border: 1px solid rgba(129, 140, 248, 0.26);
    background:
      radial-gradient(circle at 18% 0, rgba(99, 102, 241, 0.34), transparent 34%),
      radial-gradient(circle at 92% 18%, rgba(34, 211, 238, 0.14), transparent 33%),
      radial-gradient(circle at 50% 86%, rgba(168, 85, 247, 0.12), transparent 38%),
      linear-gradient(180deg, rgba(15, 23, 42, 0.84), rgba(2, 6, 23, 0.92));
    box-shadow:
      0 30px 82px rgba(0, 0, 0, 0.46),
      inset 0 1px 0 rgba(255, 255, 255, 0.06);
  }

  body #top .home-mobile-hero-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.055), transparent 32%);
  }

  body #top .home-mobile-hero-orbit {
    position: absolute;
    border-radius: 999px;
    pointer-events: none;
    filter: blur(0.1px);
  }

  body #top .home-mobile-hero-orbit--one {
    width: 210px;
    height: 210px;
    right: -92px;
    top: 78px;
    border: 1px solid rgba(34, 211, 238, 0.18);
    box-shadow:
      inset 0 0 44px rgba(34, 211, 238, 0.08),
      0 0 34px rgba(99, 102, 241, 0.08);
    animation: homeMobileHeroOrbitOne 8.5s ease-in-out infinite;
  }

  body #top .home-mobile-hero-orbit--two {
    width: 150px;
    height: 150px;
    left: -70px;
    bottom: 30px;
    border: 1px solid rgba(129, 140, 248, 0.2);
    box-shadow: inset 0 0 38px rgba(99, 102, 241, 0.1);
    animation: homeMobileHeroOrbitTwo 10.5s ease-in-out infinite;
  }

  body #top .home-mobile-hero-copy {
    position: relative;
    z-index: 1;
    padding-top: 10px;
    max-width: 340px;
  }

  body #top .home-mobile-hero-eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    margin: 0 0 18px;
    padding: 0 10px;
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    background: rgba(15, 23, 42, 0.58);
    color: #c7d2fe;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 9px;
    font-weight: 850;
  }

  body #top .home-mobile-hero-title {
    margin: 0;
    max-width: 340px;
    color: #f8fafc;
    font-size: 36px;
    line-height: 0.94;
    letter-spacing: -0.065em;
  }

  body #top .home-mobile-hero-subtitle {
    margin: 15px 0 0;
    max-width: 320px;
    color: rgba(203, 213, 225, 0.78);
    font-size: 14px;
    line-height: 1.46;
  }

  body #top .home-mobile-hero-actions {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 16px;
    z-index: 1;
    display: grid;
    gap: 9px;
  }

  body #top .home-mobile-hero-merge-cta {
    display: inline-flex;
    align-items: stretch;
    gap: 8px;
    min-height: 50px;
    text-decoration: none;
    transition:
      gap 0.52s cubic-bezier(0.16, 1, 0.3, 1),
      transform 0.18s ease;
  }

  body #top .home-mobile-hero-merge-part {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(129, 140, 248, 0.46);
    background: linear-gradient(135deg, #6366f1, #5b4cff);
    color: #fff;
    box-shadow:
      0 14px 32px rgba(79, 70, 229, 0.32),
      inset 0 1px 0 rgba(255, 255, 255, 0.12);
    transition:
      border-radius 0.52s cubic-bezier(0.16, 1, 0.3, 1),
      transform 0.52s cubic-bezier(0.16, 1, 0.3, 1),
      margin 0.52s cubic-bezier(0.16, 1, 0.3, 1),
      border-color 0.32s ease,
      box-shadow 0.32s ease;
  }

  body #top .home-mobile-hero-merge-text {
    flex: 1 1 auto;
    min-width: 0;
    padding: 0 20px;
    border-radius: 999px;
    font-size: 14px;
    line-height: 1.1;
    font-weight: 900;
    letter-spacing: -0.015em;
  }

  body #top .home-mobile-hero-merge-arrow {
    width: 50px;
    flex: 0 0 50px;
    border-radius: 999px;
    font-size: 20px;
    line-height: 1;
  }

  body #top .home-mobile-hero-merge-cta:hover,
  body #top .home-mobile-hero-merge-cta:focus-visible,
  body #top .home-mobile-hero-merge-cta:active {
    gap: 0;
  }

  body #top .home-mobile-hero-merge-cta:hover .home-mobile-hero-merge-text,
  body #top .home-mobile-hero-merge-cta:focus-visible .home-mobile-hero-merge-text,
  body #top .home-mobile-hero-merge-cta:active .home-mobile-hero-merge-text {
    margin-right: -8px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right-color: transparent;
  }

  body #top .home-mobile-hero-merge-cta:hover .home-mobile-hero-merge-arrow,
  body #top .home-mobile-hero-merge-cta:focus-visible .home-mobile-hero-merge-arrow,
  body #top .home-mobile-hero-merge-cta:active .home-mobile-hero-merge-arrow {
    margin-left: -8px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left-color: transparent;
  }

  body #top .home-mobile-hero-calendar-cta {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 999px;
    border: 1px solid rgba(129, 140, 248, 0.3);
    background: rgba(15, 23, 42, 0.68);
    color: rgba(248, 250, 252, 0.94);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
    text-decoration: none;
    -webkit-text-decoration: none;
  }

  body #top .home-mobile-hero-calendar-text {
    font-size: 13px;
    font-weight: 850;
    line-height: 1.15;
    text-decoration: none;
  }

  body #top .home-mobile-hero-calendar-icon {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    color: currentColor;
    background-color: currentColor;
    -webkit-mask: url("/images/icons/calendar.svg") center / contain no-repeat;
    mask: url("/images/icons/calendar.svg") center / contain no-repeat;
  }
}

@media (max-width: 360px) {
  body #top .home-mobile-hero-card {
    min-height: 520px;
    border-radius: 30px;
    padding: 30px 14px 20px;
  }

  body #top .home-mobile-hero-title {
    font-size: 31px;
  }

  body #top .home-mobile-hero-subtitle {
    font-size: 12.5px;
  }

  body #top .home-mobile-hero-actions {
    left: 14px;
    right: 14px;
  }

  body #top .home-mobile-hero-merge-cta,
  body #top .home-mobile-hero-merge-part {
    min-height: 48px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-mobile-hero-orbit--one,
  .home-mobile-hero-orbit--two {
    animation: none !important;
  }
}

@keyframes homeMobileHeroOrbitOne {
  0%,
  100% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: 0.82;
  }
  45% {
    transform: translate3d(-12px, 10px, 0) scale(1.045);
    opacity: 1;
  }
  70% {
    transform: translate3d(-5px, -4px, 0) scale(1.02);
    opacity: 0.9;
  }
}

@keyframes homeMobileHeroOrbitTwo {
  0%,
  100% {
    transform: translate3d(0, 0, 0) scale(1);
    opacity: 0.68;
  }
  50% {
    transform: translate3d(14px, -8px, 0) scale(1.06);
    opacity: 0.95;
  }
  76% {
    transform: translate3d(6px, 6px, 0) scale(1.025);
    opacity: 0.78;
  }
}

/* Statius public theme. Scoped by host/theme detection; ClassicWorldTicket remains the default theme. */
html[data-site="statius"] {
  --bg: #f9f7f2;
  --bg-soft: #fbfaf7;
  --card-bg: #fffdf9;
  --accent: #0b0a08;
  --accent-soft: rgba(191, 165, 111, 0.2);
  --accent-strong: #0b0a08;
  --text: #090806;
  --text-soft: #6f675d;
  --border-subtle: rgba(50, 42, 31, 0.16);
  --shadow-soft: 0 24px 56px rgba(45, 34, 22, 0.12);
  --shadow-card: 0 18px 42px rgba(45, 34, 22, 0.14);
  --container-max: 1280px;
  --statius-bg: #f9f7f2;
  --statius-surface: #fbfaf7;
  --statius-cream: #eadfcd;
  --statius-cream-soft: #f4eddf;
  --statius-line: #d8cbb9;
  --statius-ink: #090806;
  --statius-muted: #6f675d;
  --statius-gold: #b89b5e;
  --statius-serif: Georgia, "Times New Roman", serif;
}

html[data-site="statius"] body {
  background: var(--statius-bg);
  background-image: none;
  color: var(--statius-ink);
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

html[data-site="statius"] body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(circle at 10% 2%, rgba(213, 185, 125, 0.14), transparent 28%),
    radial-gradient(circle at 94% 12%, rgba(55, 43, 31, 0.08), transparent 24%),
    linear-gradient(180deg, #fbfaf7 0%, #f3ecdf 46%, #fbfaf7 100%);
}

html[data-site="statius"] h1,
html[data-site="statius"] h2,
html[data-site="statius"] h3,
html[data-site="statius"] .hero-event-title,
html[data-site="statius"] .event-card h3,
html[data-site="statius"] .venue-card h3 {
  font-family: var(--statius-serif);
  letter-spacing: -0.045em;
}

html[data-site="statius"] .site-header {
  min-height: 75px;
  background: rgba(251, 250, 247, 0.94);
  border-bottom: 1px solid rgba(9, 8, 6, 0.12);
  box-shadow: none;
  backdrop-filter: blur(18px);
}

html[data-site="statius"] .site-header .nav {
  height: 75px;
}

html[data-site="statius"] .site-header .logo {
  color: var(--statius-ink);
  font-family: var(--statius-serif);
  font-size: 22px;
  letter-spacing: -0.035em;
  text-transform: none;
}

html[data-site="statius"] .site-header .logo::before {
  content: "S";
  width: 30px;
  height: 42px;
  flex-basis: 30px;
  display: grid;
  place-items: center;
  border: 1px solid #111;
  border-radius: 999px 999px 4px 4px;
  background: #0b0a08;
  color: #f3eadc;
  box-shadow: none;
  font-family: var(--statius-serif);
  font-size: 21px;
  line-height: 1;
}

html[data-site="statius"] .nav-links {
  gap: clamp(18px, 3vw, 42px);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

html[data-site="statius"] .nav-links a {
  color: #2d2a25;
  padding: 27px 0 22px;
  border-bottom: 1px solid transparent;
}

html[data-site="statius"] .nav-links a::after {
  display: none;
}

html[data-site="statius"] .nav-links a:hover {
  color: #000;
  border-bottom-color: #000;
}

html[data-site="statius"] .btn,
html[data-site="statius"] .language-current,
html[data-site="statius"] .submit-btn,
html[data-site="statius"] .request-btn,
html[data-site="statius"] .filter-trigger,
html[data-site="statius"] .events-calendar-link-pill {
  border-radius: 4px;
}

html[data-site="statius"] .btn-outline,
html[data-site="statius"] .language-current,
html[data-site="statius"] .auth-trigger-btn {
  border-color: #0b0a08;
  background: #fff;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] .btn-outline:hover,
html[data-site="statius"] .language-current:hover,
html[data-site="statius"] .auth-trigger-btn:hover {
  background: #0b0a08;
  color: #fff;
}

html[data-site="statius"] #top.hero {
  padding: 68px 0 66px;
  background: #fbfaf7;
}

html[data-site="statius"] #top .hero-grid {
  grid-template-columns: minmax(0, 1.04fr) minmax(360px, 0.78fr);
  gap: clamp(42px, 7vw, 100px);
}

html[data-site="statius"] #top .pill {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--statius-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.16em;
}

html[data-site="statius"] #top .hero-text h1 {
  max-width: 720px;
  margin-top: 20px;
  margin-bottom: 28px;
  color: #000;
  font-size: clamp(44px, 5.8vw, 72px);
  line-height: 1.02;
  font-weight: 700;
}

html[data-site="statius"] #top .hero-text p {
  max-width: 540px;
  color: #5b554e;
  font-size: 16px;
  line-height: 1.65;
}

html[data-site="statius"] #top .btn-primary-gradient,
html[data-site="statius"] .btn-primary,
html[data-site="statius"] .submit-btn {
  min-height: 44px;
  border: 1px solid #0b0a08;
  border-radius: 4px;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 11px;
  font-weight: 800;
}

html[data-site="statius"] #top .btn-primary-gradient:hover,
html[data-site="statius"] .btn-primary:hover,
html[data-site="statius"] .submit-btn:hover {
  background: #f3eadc;
  color: #0b0a08;
  border-color: #0b0a08;
  transform: translateY(-1px);
}

html[data-site="statius"] #top .hero-note {
  color: var(--statius-muted);
  font-size: 12px;
}

html[data-site="statius"] #top .hero-ticket-stage {
  width: min(445px, 100%);
}

html[data-site="statius"] #top .hero-ticket-cascade {
  display: none;
}

html[data-site="statius"] #top .hero-card {
  min-height: 0;
  padding: 0;
  border: 1px solid #d7c8b5;
  border-radius: 12px;
  background: #f3eadc;
  box-shadow: var(--shadow-soft);
}

html[data-site="statius"] #top .hero-card-inner {
  min-height: 0;
  border-radius: 12px;
  background: transparent;
}

html[data-site="statius"] #top .hero-card-inner::before,
html[data-site="statius"] #top .hero-card-inner::after {
  display: none;
}

html[data-site="statius"] #top .hero-card-header {
  min-height: auto;
  padding: 32px 32px 0;
  border: 0;
  background: transparent;
  color: #6b6258;
  font-size: 10px;
  letter-spacing: 0.14em;
}

html[data-site="statius"] #top .hero-card-body {
  min-height: 0;
  padding: 326px 32px 32px;
  background: transparent;
}

html[data-site="statius"] #top .hero-card-body::before {
  content: "";
  position: absolute;
  left: 32px;
  right: 32px;
  top: 32px;
  height: 280px;
  border: 1px solid #111;
  border-radius: 6px;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.46), rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0.48)),
    var(--hero-event-image, radial-gradient(circle at 50% 36%, #5f4332, #15100c 72%));
  background-position: center;
  background-size: cover;
  filter: saturate(0.76);
}

html[data-site="statius"] #top .hero-card-body::after {
  content: "Curated cultural assistance";
  position: absolute;
  left: 56px;
  right: 56px;
  top: 152px;
  z-index: 1;
  color: rgba(255, 255, 255, 0.84);
  font-family: var(--statius-serif);
  font-size: 18px;
  font-style: italic;
  text-align: center;
}

html[data-site="statius"] #top .hero-event-title {
  max-width: none;
  color: #0b0a08;
  font-size: 24px;
  line-height: 1.1;
}

html[data-site="statius"] #top .hero-event-meta,
html[data-site="statius"] #top .hero-event-price {
  color: #4c4740;
  font-size: 12px;
}

html[data-site="statius"] #top .hero-card-action-row {
  margin-top: 24px;
  padding-top: 18px;
  border-top: 1px solid #d4cabd;
}

html[data-site="statius"] #top .hero-card-action-row::before {
  display: none;
}

html[data-site="statius"] #top .hero-main-btn,
html[data-site="statius"] #top .hero-arrow-btn {
  border: 1px solid #0b0a08;
  border-radius: 6px;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 10px;
}

html[data-site="statius"] #events {
  padding: 68px 0 75px;
  background: var(--statius-cream);
}

html[data-site="statius"] .section-header h2 {
  color: #000;
  font-family: var(--statius-serif);
  font-size: clamp(34px, 4vw, 48px);
  line-height: 1.1;
  letter-spacing: -0.035em;
  font-weight: 600;
}

html[data-site="statius"] .section-header p {
  color: var(--statius-muted);
}

html[data-site="statius"] .filters-row,
html[data-site="statius"] .events-controls-row {
  justify-content: center;
}

html[data-site="statius"] .filter-card,
html[data-site="statius"] .filter-field,
html[data-site="statius"] .events-calendar-link-pill {
  border: 1px solid #cbbda8;
  border-radius: 4px;
  background: #fff;
  box-shadow: none;
}

html[data-site="statius"] .filter-trigger,
html[data-site="statius"] .filter-action,
html[data-site="statius"] .events-all-link,
html[data-site="statius"] .events-calendar-link-pill {
  color: #171717;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 10px;
}

html[data-site="statius"] .filter-card.is-open,
html[data-site="statius"] .filter-card:hover {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
}

html[data-site="statius"] .filter-card.is-open .filter-trigger,
html[data-site="statius"] .filter-card:hover .filter-trigger {
  color: #fff;
}

html[data-site="statius"] .filter-options,
html[data-site="statius"] .date-panel {
  border: 1px solid #cbbda8;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(43, 32, 18, 0.14);
}

html[data-site="statius"] #events .card.event,
html[data-site="statius"] #all-events-view .card.event,
html[data-site="statius"] #venue-view .card.event {
  min-height: 430px;
  border: 1px solid #0a0a0a;
  border-radius: 8px;
  background: #000;
  color: #fff;
  box-shadow: 0 22px 50px rgba(29, 21, 11, 0.18);
}

html[data-site="statius"] #events .card.event:hover,
html[data-site="statius"] #all-events-view .card.event:hover,
html[data-site="statius"] #venue-view .card.event:hover {
  transform: translateY(-4px);
  box-shadow: 0 30px 70px rgba(29, 21, 11, 0.22);
  filter: none;
}

html[data-site="statius"] #events .card.event .event-card-inner,
html[data-site="statius"] #all-events-view .card.event .event-card-inner,
html[data-site="statius"] #venue-view .card.event .event-card-inner {
  min-height: 428px;
  border-radius: 7px;
  background:
    radial-gradient(circle at 30% 20%, #4a3225, #0b0908 68%);
}

html[data-site="statius"] #events .card.event .event-card-inner::before,
html[data-site="statius"] #all-events-view .card.event .event-card-inner::before,
html[data-site="statius"] #venue-view .card.event .event-card-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 1;
  background:
    linear-gradient(to bottom, rgba(0, 0, 0, 0.24), rgba(0, 0, 0, 0.06) 42%, rgba(0, 0, 0, 0.9)),
    var(--event-card-image, radial-gradient(circle at 30% 20%, #5c3d2c, #0b0908 70%));
  background-position: center;
  background-size: cover;
  filter: saturate(0.82) brightness(0.86);
  transform: scale(1.02);
}

html[data-site="statius"] #events .card.event .event-card-inner::after,
html[data-site="statius"] #all-events-view .card.event .event-card-inner::after,
html[data-site="statius"] #venue-view .card.event .event-card-inner::after {
  display: none;
}

html[data-site="statius"] #events .card.event .poster-strip,
html[data-site="statius"] #all-events-view .card.event .poster-strip,
html[data-site="statius"] #venue-view .card.event .poster-strip {
  min-height: 0;
  padding: 24px 24px 0;
  justify-content: space-between;
}

html[data-site="statius"] #events .card.event .event-tag,
html[data-site="statius"] #all-events-view .card.event .event-tag,
html[data-site="statius"] #venue-view .card.event .event-tag {
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
  font-size: 9px;
  letter-spacing: 0.1em;
}

html[data-site="statius"] #events .card.event .card-content,
html[data-site="statius"] #all-events-view .card.event .card-content,
html[data-site="statius"] #venue-view .card.event .card-content {
  margin-top: auto;
  padding: 0 24px;
}

html[data-site="statius"] #events .card.event h3,
html[data-site="statius"] #all-events-view .card.event h3,
html[data-site="statius"] #venue-view .card.event h3 {
  color: #fff;
  font-size: 28px;
  line-height: 1.04;
}

html[data-site="statius"] #events .card.event .event-meta,
html[data-site="statius"] #all-events-view .card.event .event-meta,
html[data-site="statius"] #venue-view .card.event .event-meta {
  margin-top: 10px;
  color: rgba(255, 255, 255, 0.82);
  font-size: 12px;
  font-weight: 650;
}

html[data-site="statius"] #events .card.event .event-price,
html[data-site="statius"] #all-events-view .card.event .event-price,
html[data-site="statius"] #venue-view .card.event .event-price {
  color: #fff;
  font-size: 16px;
}

html[data-site="statius"] #events .card.event .card-action-row,
html[data-site="statius"] #all-events-view .card.event .card-action-row,
html[data-site="statius"] #venue-view .card.event .card-action-row {
  padding: 22px 24px 24px;
}

html[data-site="statius"] #events .card.event .card-action-row::before,
html[data-site="statius"] #all-events-view .card.event .card-action-row::before,
html[data-site="statius"] #venue-view .card.event .card-action-row::before {
  display: none;
}

html[data-site="statius"] #events .card.event .details-btn,
html[data-site="statius"] #all-events-view .card.event .details-btn,
html[data-site="statius"] #venue-view .card.event .details-btn,
html[data-site="statius"] #events .card.event .arrow-btn,
html[data-site="statius"] #all-events-view .card.event .arrow-btn,
html[data-site="statius"] #venue-view .card.event .arrow-btn {
  min-height: 32px;
  border: 1px solid #fff;
  border-radius: 4px;
  background: transparent;
  color: #fff;
  box-shadow: none;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 9px;
}

html[data-site="statius"] #events .card.event .arrow-btn,
html[data-site="statius"] #all-events-view .card.event .arrow-btn,
html[data-site="statius"] #venue-view .card.event .arrow-btn {
  width: 32px;
}

html[data-site="statius"] #events .card.event .details-btn:hover,
html[data-site="statius"] #all-events-view .card.event .details-btn:hover,
html[data-site="statius"] #venue-view .card.event .details-btn:hover,
html[data-site="statius"] #events .card.event .arrow-btn:hover,
html[data-site="statius"] #all-events-view .card.event .arrow-btn:hover,
html[data-site="statius"] #venue-view .card.event .arrow-btn:hover {
  background: #fff;
  color: #000;
  transform: translateY(-1px);
}

html[data-site="statius"] #venues,
html[data-site="statius"] #categories,
html[data-site="statius"] #faq,
html[data-site="statius"] #contact,
html[data-site="statius"] #about,
html[data-site="statius"] .account-page,
html[data-site="statius"] .verify-email-main,
html[data-site="statius"] .reset-password-main {
  background: #fbfaf7;
}

html[data-site="statius"] #venues {
  border-bottom: 1px solid #ddd2c2;
}

html[data-site="statius"] #venues .venue-card,
html[data-site="statius"] .category-card,
html[data-site="statius"] .legal-doc-card,
html[data-site="statius"] .verify-email-card,
html[data-site="statius"] .reset-password-card,
html[data-site="statius"] .account-page-shell,
html[data-site="statius"] .account-panel,
html[data-site="statius"] .card {
  border-color: var(--statius-line);
  background: #fffdf9;
  color: var(--statius-ink);
  box-shadow: var(--shadow-card);
}

html[data-site="statius"] #venues .venue-card .venue-card-inner,
html[data-site="statius"] .category-card .category-inner {
  background:
    radial-gradient(circle at 88% 12%, rgba(214, 174, 98, 0.28), transparent 36%),
    linear-gradient(180deg, #fffdf9, #f3eadc);
}

html[data-site="statius"] #venues .venue-card h3,
html[data-site="statius"] .category-card h3,
html[data-site="statius"] .category-title {
  color: #0b0a08;
}

html[data-site="statius"] #venues .venue-type,
html[data-site="statius"] #venues .venue-description,
html[data-site="statius"] .category-desc,
html[data-site="statius"] .venue-meta {
  color: var(--statius-muted);
}

html[data-site="statius"] #request-promo {
  background: #fbfaf7;
}

html[data-site="statius"] .request-promo-card {
  border: 1px solid #d8c9b5;
  border-radius: 24px;
  background: #f3eadc;
  box-shadow: none;
}

html[data-site="statius"] .request-title {
  color: #000;
  font-family: var(--statius-serif);
  font-size: clamp(38px, 5vw, 56px);
}

html[data-site="statius"] .request-text,
html[data-site="statius"] .request-note {
  color: #5c5650;
}

html[data-site="statius"] .request-btn,
html[data-site="statius"] .request-arrow {
  border: 1px solid #0b0a08;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] .faq-layout,
html[data-site="statius"] .contact-grid,
html[data-site="statius"] .about-card {
  color: var(--statius-ink);
}

html[data-site="statius"] .faq-side-inner,
html[data-site="statius"] .contact-form-card,
html[data-site="statius"] .contact-info-card,
html[data-site="statius"] .about-inner {
  border-color: var(--statius-line);
  background: #fffdf9;
  box-shadow: var(--shadow-card);
}

html[data-site="statius"] .faq-side-title,
html[data-site="statius"] .contact-info-title,
html[data-site="statius"] .about-card h3 {
  color: #0b0a08;
  font-family: var(--statius-serif);
}

html[data-site="statius"] .field input,
html[data-site="statius"] .field textarea,
html[data-site="statius"] input,
html[data-site="statius"] textarea,
html[data-site="statius"] select {
  border-color: var(--statius-line);
  background: #fbfaf7;
  color: var(--statius-ink);
}

html[data-site="statius"] .site-footer {
  border-top: 1px solid #ddd2c2;
  background: #f7f3eb;
  color: #4d4945;
}

html[data-site="statius"] .footer-text,
html[data-site="statius"] .footer-disclosure,
html[data-site="statius"] .footer-whatsapp-label,
html[data-site="statius"] .footer-meta {
  color: var(--statius-muted);
}

html[data-site="statius"] .footer-links a,
html[data-site="statius"] .footer-meta a {
  color: #0b0a08;
}

@media (max-width: 900px) {
  html[data-site="statius"] #top .hero-grid {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  html[data-site="statius"] #top .hero-ticket-stage {
    margin: 0;
  }

  html[data-site="statius"] .nav-links {
    display: none;
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] body #top.hero {
    padding-top: 20px;
    padding-bottom: 28px;
  }

  html[data-site="statius"] body #top .home-mobile-hero-card {
    min-height: 560px;
    border: 1px solid #d8c9b5;
    background:
      radial-gradient(circle at 85% 8%, rgba(184, 155, 94, 0.22), transparent 28%),
      linear-gradient(180deg, #fffdf9, #f3eadc);
    box-shadow: 0 24px 56px rgba(45, 34, 22, 0.14);
  }

  html[data-site="statius"] body #top .home-mobile-hero-eyebrow {
    border-color: #cbbda8;
    background: #fff;
    color: #5f574d;
  }

  html[data-site="statius"] body #top .home-mobile-hero-title {
    color: #000;
    font-family: var(--statius-serif);
    font-size: 38px;
    line-height: 1.02;
  }

  html[data-site="statius"] body #top .home-mobile-hero-subtitle {
    color: #5b554e;
  }

  html[data-site="statius"] body #top .home-mobile-hero-merge-part {
    border-color: #0b0a08;
    background: #0b0a08;
    color: #fff;
    box-shadow: none;
  }

  html[data-site="statius"] body #top .home-mobile-hero-calendar-cta {
    border-color: #0b0a08;
    background: #fff;
    color: #0b0a08;
  }

  html[data-site="statius"] #events .card.event,
  html[data-site="statius"] #all-events-view .card.event,
  html[data-site="statius"] #venue-view .card.event {
    min-height: 380px;
  }

  html[data-site="statius"] #events .card.event .event-card-inner,
  html[data-site="statius"] #all-events-view .card.event .event-card-inner,
  html[data-site="statius"] #venue-view .card.event .event-card-inner {
    min-height: 378px;
  }

  html[data-site="statius"] #events .card.event h3,
  html[data-site="statius"] #all-events-view .card.event h3,
  html[data-site="statius"] #venue-view .card.event h3 {
    font-size: 24px;
  }
}

/* Statius launch polish. Keep this block scoped so ClassicWorldTicket remains visually unchanged. */
html[data-site="statius"],
html[data-site="statius"] body {
  max-width: 100%;
  overflow-x: hidden;
}

html[data-site="statius"] body {
  background: #f8f5ee;
}

html[data-site="statius"] .section {
  padding: 82px 0;
}

html[data-site="statius"] .container,
html[data-site="statius"] .all-events-top-container,
html[data-site="statius"] .all-events-cards-container {
  width: min(100% - 48px, 1240px);
}

/* Statius header — mockup-exact (solid warm white, 75px, 1fr/auto/1fr grid). */
html[data-site="statius"] .site-header {
  min-height: 75px;
  background: #fbfbfb;
  border-bottom: 1px solid #dcdcdc;
  backdrop-filter: none;
  box-shadow: none;
}

html[data-site="statius"] .site-header .nav {
  height: 75px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  width: min(100% - 160px, 1280px);
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

html[data-site="statius"] .site-header .logo {
  justify-self: start;
  font-size: 21px;
}

html[data-site="statius"] .site-header .nav-links {
  justify-self: center;
}

html[data-site="statius"] .site-header .nav-right {
  justify-self: end;
  gap: 28px;
}

html[data-site="statius"] .site-header .logo::before {
  width: 28px;
  height: 40px;
  flex-basis: 28px;
  font-size: 20px;
}

html[data-site="statius"] .auth-trigger-btn,
html[data-site="statius"] .language-current {
  min-height: 30px;
  border-radius: 4px;
}

html[data-site="statius"] #top.hero {
  padding: 66px 0 72px;
}

html[data-site="statius"] #top .hero-grid {
  align-items: center;
}

html[data-site="statius"] #top .hero-text h1 {
  max-width: 780px;
  font-size: clamp(50px, 5vw, 70px);
  line-height: 1.02;
  letter-spacing: -0.052em;
}

html[data-site="statius"] #top .hero-text p {
  max-width: 560px;
  font-size: 15.5px;
  line-height: 1.62;
}

html[data-site="statius"] #top .hero-card {
  box-shadow: 0 18px 44px rgba(45, 34, 22, 0.12);
}

html[data-site="statius"] #top .hero-card-body {
  padding-top: 306px;
}

html[data-site="statius"] #top .hero-card-body::before {
  height: 258px;
}

html[data-site="statius"] #events {
  padding: 72px 0 78px;
  background: #eadfcd;
}

html[data-site="statius"] #venues,
html[data-site="statius"] #categories,
html[data-site="statius"] #request-promo,
html[data-site="statius"] #faq,
html[data-site="statius"] #contact,
html[data-site="statius"] #about {
  background: #fbfaf7;
}

html[data-site="statius"] .section-header {
  margin-bottom: 28px;
}

html[data-site="statius"] .section-header h2 {
  font-size: clamp(32px, 3.6vw, 44px);
  line-height: 1.12;
}

html[data-site="statius"] .section-header p {
  max-width: 640px;
  margin: 12px auto 0;
  color: #665f56;
  font-size: 14px;
  line-height: 1.55;
}

html[data-site="statius"] .section-header.left p {
  margin-left: 0;
}

html[data-site="statius"] .filters-row,
html[data-site="statius"] .events-controls-row,
html[data-site="statius"] .all-events-controls-row {
  max-width: 100%;
}

html[data-site="statius"] #events [data-search-filters].home-filters,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
  margin: 0 auto 30px;
}

html[data-site="statius"] #events [data-search-filters].home-filters .filter-card,
html[data-site="statius"] #events [data-search-filters].home-filters .events-all-link,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-action-row,
html[data-site="statius"] .events-calendar-link-pill {
  flex: 0 1 auto;
  min-width: 132px;
  min-height: 38px;
  border: 1px solid #c8baa4;
  border-radius: 4px;
  background: #fffdf9;
  color: #15120d;
  box-shadow: none;
}

html[data-site="statius"] #events [data-search-filters].home-filters .filter-card::before,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card::before {
  display: none;
}

html[data-site="statius"] .filter-trigger,
html[data-site="statius"] .filter-action,
html[data-site="statius"] .filter-value,
html[data-site="statius"] .filter-label,
html[data-site="statius"] .filter-arrow,
html[data-site="statius"] .events-calendar-link__text,
html[data-site="statius"] .events-calendar-link__icon {
  color: #15120d;
}

html[data-site="statius"] .filter-label {
  color: #6c6458;
}

html[data-site="statius"] #events [data-search-filters].home-filters .filter-card:hover,
html[data-site="statius"] #events [data-search-filters].home-filters .filter-card.is-open,
html[data-site="statius"] #events [data-search-filters].home-filters .events-all-link:hover,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card:hover,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.is-open,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-action-row:hover,
html[data-site="statius"] .events-calendar-link-pill:hover {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
  transform: translateY(-1px);
}

html[data-site="statius"] .filter-card:hover .filter-trigger,
html[data-site="statius"] .filter-card:hover .filter-value,
html[data-site="statius"] .filter-card:hover .filter-label,
html[data-site="statius"] .filter-card:hover .filter-arrow,
html[data-site="statius"] .filter-card.is-open .filter-trigger,
html[data-site="statius"] .filter-card.is-open .filter-value,
html[data-site="statius"] .filter-card.is-open .filter-label,
html[data-site="statius"] .filter-card.is-open .filter-arrow,
html[data-site="statius"] .events-all-link:hover .filter-action,
html[data-site="statius"] .events-all-link:hover .filter-action-arrow,
html[data-site="statius"] .events-calendar-link-pill:hover .events-calendar-link__text,
html[data-site="statius"] .events-calendar-link-pill:hover .events-calendar-link__icon {
  color: #fff;
}

html[data-site="statius"] .filter-options,
html[data-site="statius"] .date-panel {
  color: #15120d;
}

html[data-site="statius"] #events .venues-slider,
html[data-site="statius"] #venues .venues-slider {
  overflow: visible;
}

html[data-site="statius"] #events .venues-track,
html[data-site="statius"] #venues .venues-track {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
  width: 100%;
  max-width: 100%;
  padding: 0;
  overflow: visible;
  scroll-snap-type: none;
  -webkit-mask-image: none;
  mask-image: none;
}

html[data-site="statius"] #events .venues-track .card,
html[data-site="statius"] #venues .venues-track .card {
  width: 100%;
  min-width: 0;
  flex: initial;
  scroll-snap-align: unset;
}

html[data-site="statius"] #events .connected-scroll-line,
html[data-site="statius"] #venues .connected-scroll-line {
  display: none;
}

html[data-site="statius"] #events .card.event,
html[data-site="statius"] #all-events-view .card.event,
html[data-site="statius"] #venue-view .card.event {
  min-height: 438px;
  height: 438px;
  border-radius: 8px;
  padding: 0;
  border: 1px solid #0a0a0a;
  background: #0b0a08;
  box-shadow: 0 20px 44px rgba(34, 24, 12, 0.18);
}

html[data-site="statius"] #events .card.event .event-card-inner,
html[data-site="statius"] #all-events-view .card.event .event-card-inner,
html[data-site="statius"] #venue-view .card.event .event-card-inner {
  min-height: 436px;
  height: 100%;
  border-radius: 7px;
}

html[data-site="statius"] #events .card.event h3,
html[data-site="statius"] #all-events-view .card.event h3,
html[data-site="statius"] #venue-view .card.event h3 {
  font-size: clamp(22px, 2vw, 27px);
}

html[data-site="statius"] #events .card.event .event-meta,
html[data-site="statius"] #all-events-view .card.event .event-meta,
html[data-site="statius"] #venue-view .card.event .event-meta {
  font-size: 12px;
  line-height: 1.45;
}

html[data-site="statius"] #events .card.event .event-price,
html[data-site="statius"] #all-events-view .card.event .event-price,
html[data-site="statius"] #venue-view .card.event .event-price {
  font-size: 13px;
  line-height: 1.3;
}

html[data-site="statius"] #events .card.event .arrow-btn,
html[data-site="statius"] #all-events-view .card.event .arrow-btn,
html[data-site="statius"] #venue-view .card.event .arrow-btn {
  display: none;
}

html[data-site="statius"] #events .card.event .details-btn,
html[data-site="statius"] #all-events-view .card.event .details-btn,
html[data-site="statius"] #venue-view .card.event .details-btn {
  min-width: 116px;
  padding: 0 18px;
}

html[data-site="statius"] #all-events-view .all-events-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
}

html[data-site="statius"] #venues .venue-card {
  min-height: 240px;
  border: 1px solid #d8cbb9;
  border-radius: 18px;
  padding: 0;
  background: #fffdf9;
  box-shadow: 0 14px 34px rgba(45, 34, 22, 0.1);
}

html[data-site="statius"] #venues .venue-card-link:hover {
  transform: translateY(-3px);
  filter: none;
  box-shadow: 0 20px 44px rgba(45, 34, 22, 0.14);
}

html[data-site="statius"] #venues .venue-card-inner,
html[data-site="statius"] #venues .venue-card:is(.venue-card--hub, .venue-card--theatre) .venue-card-inner,
html[data-site="statius"] #venues .venue-card:is(.venue-card--san-siro, .venue-card--stadium) .venue-card-inner {
  min-height: 238px;
  border-radius: 17px;
  padding: 20px;
  background:
    radial-gradient(circle at 88% 12%, rgba(184, 155, 94, 0.18), transparent 34%),
    linear-gradient(180deg, #fffdf9, #f4eddf);
  color: #0b0a08;
}

html[data-site="statius"] #venues .venue-card-inner::before,
html[data-site="statius"] #venues .venue-card-inner::after {
  display: none;
}

html[data-site="statius"] #venues .venue-top {
  margin-bottom: 26px;
}

html[data-site="statius"] #venues .venue-pill,
html[data-site="statius"] #venues .venue-pill.hub {
  border-color: #c8baa4;
  background: #fbfaf7;
  color: #3f382f;
}

html[data-site="statius"] #venues .venue-type,
html[data-site="statius"] #venues .venue-card:is(.venue-card--hub, .venue-card--theatre) .venue-type,
html[data-site="statius"] #venues .venue-card:is(.venue-card--san-siro, .venue-card--stadium) .venue-type {
  color: #7b6b4d;
  text-shadow: none;
}

html[data-site="statius"] #venues .venue-card h3 {
  max-width: none;
  color: #0b0a08;
  font-size: 22px;
  line-height: 1.12;
  overflow-wrap: anywhere;
}

html[data-site="statius"] #venues .venue-description {
  max-width: none;
  color: #665f56;
  -webkit-line-clamp: 3;
}

html[data-site="statius"] #venues .venue-link,
html[data-site="statius"] #venues .venue-arrow,
html[data-site="statius"] #venues .venue-card:is(.venue-card--hub, .venue-card--theatre) .venue-link,
html[data-site="statius"] #venues .venue-card:is(.venue-card--hub, .venue-card--theatre) .venue-arrow {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #venues .venue-action::before {
  display: none;
}

html[data-site="statius"] #venues .venue-card:hover .venue-link,
html[data-site="statius"] #venues .venue-card:focus-within .venue-link,
html[data-site="statius"] #venues .venue-card:hover .venue-arrow,
html[data-site="statius"] #venues .venue-card:focus-within .venue-arrow {
  transform: none;
  background: #f3eadc;
  color: #0b0a08;
  border-color: #0b0a08;
}

html[data-site="statius"] #categories [data-categories-list] {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

html[data-site="statius"] #categories .category-card,
html[data-site="statius"] #categories .category-inner {
  border-radius: 18px;
}

html[data-site="statius"] #categories .category-inner {
  min-height: 210px;
  background:
    radial-gradient(circle at 90% 12%, rgba(184, 155, 94, 0.18), transparent 34%),
    linear-gradient(180deg, #fffdf9, #f4eddf);
  color: #0b0a08;
}

html[data-site="statius"] #categories .category-count,
html[data-site="statius"] #categories .category-arrow {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
}

html[data-site="statius"] #request-promo {
  padding: 82px 0;
}

html[data-site="statius"] .request-promo-card {
  border-radius: 24px;
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] .request-inner {
  padding: clamp(38px, 6vw, 72px);
}

html[data-site="statius"] .request-title {
  font-size: clamp(34px, 4.2vw, 50px);
  line-height: 1.05;
}

html[data-site="statius"] .request-text,
html[data-site="statius"] .request-note {
  color: #5c5650;
}

html[data-site="statius"] .request-note {
  border-color: #d8c9b5;
  background: #fffdf9;
}

html[data-site="statius"] .request-visual {
  opacity: 0.68;
  filter: sepia(0.2) saturate(0.7);
}

html[data-site="statius"] #faq {
  padding: 76px 0 84px;
  border-top: 1px solid #e1d5c5;
  border-bottom: 1px solid #e1d5c5;
}

html[data-site="statius"] #faq .faq-layout {
  grid-template-columns: minmax(250px, 310px) minmax(0, 1fr);
  gap: 28px;
}

html[data-site="statius"] #faq .faq-side,
html[data-site="statius"] #faq .faq-item {
  background: #fffdf9;
  border: 1px solid #d8cbb9;
  box-shadow: 0 14px 34px rgba(45, 34, 22, 0.1);
}

html[data-site="statius"] #faq .faq-side-inner,
html[data-site="statius"] #faq .faq-card,
html[data-site="statius"] #faq .faq-item.is-open .faq-card {
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #faq .faq-side-inner::after {
  background: linear-gradient(90deg, transparent, #d8cbb9, transparent);
}

html[data-site="statius"] #faq .faq-mini-label,
html[data-site="statius"] #faq .faq-side-pill {
  border-color: #c8baa4;
  background: #f7f1e7;
  color: #4d4336;
}

html[data-site="statius"] #faq .faq-mini-label::before {
  background: #0b0a08;
  box-shadow: 0 0 0 5px rgba(11, 10, 8, 0.08);
}

html[data-site="statius"] #faq .faq-side-title,
html[data-site="statius"] #faq .faq-side-text,
html[data-site="statius"] #faq .faq-question,
html[data-site="statius"] #faq .faq-question-text,
html[data-site="statius"] #faq .faq-answer {
  color: #0b0a08;
}

html[data-site="statius"] #faq .faq-side-text,
html[data-site="statius"] #faq .faq-answer {
  color: #5f574d;
}

html[data-site="statius"] #faq .faq-toggle {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #faq .faq-item.is-open .faq-toggle {
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] #faq .faq-answer {
  border-color: #e1d5c5;
  background: #f8f5ee;
}

html[data-site="statius"] #contact {
  padding: 76px 0;
}

html[data-site="statius"] #contact .contact-grid {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.82fr);
  gap: 28px;
}

html[data-site="statius"] #contact .contact-form-card,
html[data-site="statius"] #contact .contact-info-card {
  border: 1px solid #d8cbb9;
  border-radius: 18px;
  background: #fffdf9;
  box-shadow: 0 14px 34px rgba(45, 34, 22, 0.1);
}

html[data-site="statius"] #contact .contact-form-inner,
html[data-site="statius"] #contact .contact-info-inner {
  border-radius: 17px;
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #contact .contact-form-inner::after,
html[data-site="statius"] #contact .contact-info-inner::after {
  background: linear-gradient(90deg, transparent, #d8cbb9, transparent);
}

html[data-site="statius"] #contact .field > span,
html[data-site="statius"] #contact .contact-info-title,
html[data-site="statius"] #contact .contact-copy,
html[data-site="statius"] #contact .contact-email {
  color: #0b0a08;
}

html[data-site="statius"] #contact .contact-copy,
html[data-site="statius"] #contact .form-note {
  color: #5f574d;
}

html[data-site="statius"] #contact .field input,
html[data-site="statius"] #contact .field textarea {
  border-color: #d8cbb9;
  background: #fbfaf7;
  color: #0b0a08;
}

html[data-site="statius"] #contact .field input::placeholder,
html[data-site="statius"] #contact .field textarea::placeholder {
  color: #897f72;
}

html[data-site="statius"] #contact .submit-btn,
html[data-site="statius"] #contact .submit-arrow,
html[data-site="statius"] #contact .contact-btn {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #contact .contact-btn:hover,
html[data-site="statius"] #contact .submit-btn:hover,
html[data-site="statius"] #contact .submit-arrow:hover {
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] #about {
  padding: 76px 0 88px;
}

html[data-site="statius"] #about .section-eyebrow {
  border-color: #c8baa4;
  background: #fffdf9;
  color: #4d4336;
}

html[data-site="statius"] #about .section-eyebrow::before {
  background: #0b0a08;
  box-shadow: 0 0 0 5px rgba(11, 10, 8, 0.08);
}

html[data-site="statius"] #about .about-card {
  border: 1px solid #d8cbb9;
  border-radius: 24px;
  background: #fffdf9;
  box-shadow: 0 14px 34px rgba(45, 34, 22, 0.1);
}

html[data-site="statius"] #about .about-inner {
  border-radius: 23px;
  background:
    radial-gradient(circle at 90% 8%, rgba(184, 155, 94, 0.16), transparent 36%),
    linear-gradient(180deg, #fffdf9, #f4eddf);
}

html[data-site="statius"] #about .about-inner::after {
  background: linear-gradient(90deg, transparent, #d8cbb9, transparent);
}

html[data-site="statius"] #about .about-text p,
html[data-site="statius"] #about .about-text strong {
  color: #0b0a08;
}

html[data-site="statius"] #about .about-stat {
  border-color: #d8cbb9;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #about .about-side .about-stat:hover,
html[data-site="statius"] #about .about-side .about-stat:focus-within,
html[data-site="statius"] #about .about-side.auto-running .about-stat.is-active {
  border-color: #0b0a08;
  background: #f3eadc;
  box-shadow: 0 12px 26px rgba(45, 34, 22, 0.12);
}

html[data-site="statius"] #about .stat-icon {
  background: #0b0a08;
  color: #fff;
}

@media (max-width: 1024px) {
  html[data-site="statius"] #top .hero-text h1 {
    max-width: 660px;
    font-size: clamp(48px, 6vw, 56px);
  }

  html[data-site="statius"] #events .venues-track,
  html[data-site="statius"] #venues .venues-track,
  html[data-site="statius"] #all-events-view .all-events-grid,
  html[data-site="statius"] #categories [data-categories-list] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  html[data-site="statius"] .section,
  html[data-site="statius"] #request-promo,
  html[data-site="statius"] #faq,
  html[data-site="statius"] #contact,
  html[data-site="statius"] #about {
    padding: 56px 0;
  }

  html[data-site="statius"] .container,
  html[data-site="statius"] .all-events-top-container,
  html[data-site="statius"] .all-events-cards-container {
    width: min(100% - 28px, 1240px);
  }

  html[data-site="statius"] .site-header,
  html[data-site="statius"] .site-header .nav {
    min-height: 64px;
    height: 64px;
  }

  html[data-site="statius"] #events [data-search-filters].home-filters,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand {
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 6px;
    scrollbar-width: none;
  }

  html[data-site="statius"] #events [data-search-filters].home-filters::-webkit-scrollbar,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand::-webkit-scrollbar {
    display: none;
  }

  html[data-site="statius"] #events [data-search-filters].home-filters .filter-card,
  html[data-site="statius"] #events [data-search-filters].home-filters .events-all-link,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-action-row,
  html[data-site="statius"] .events-calendar-link-pill {
    flex: 0 0 auto;
    min-width: 148px;
  }

  html[data-site="statius"] #contact .contact-grid,
  html[data-site="statius"] #faq .faq-layout,
  html[data-site="statius"] #about .about-layout {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] #top.hero {
    padding: 24px 0 44px;
  }

  html[data-site="statius"] body #top .home-mobile-hero-card {
    min-height: auto;
    padding: 28px 20px;
  }

  html[data-site="statius"] body #top .home-mobile-hero-title {
    font-size: clamp(38px, 10.5vw, 44px);
    line-height: 1.04;
  }

  html[data-site="statius"] body #top .home-mobile-hero-subtitle {
    font-size: 15px;
    line-height: 1.54;
  }

  html[data-site="statius"] #events .venues-track,
  html[data-site="statius"] #venues .venues-track,
  html[data-site="statius"] #all-events-view .all-events-grid,
  html[data-site="statius"] #categories [data-categories-list] {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
  }

  html[data-site="statius"] #events .card.event,
  html[data-site="statius"] #all-events-view .card.event,
  html[data-site="statius"] #venue-view .card.event {
    min-height: 392px;
    height: 392px;
  }

  html[data-site="statius"] #events .card.event .event-card-inner,
  html[data-site="statius"] #all-events-view .card.event .event-card-inner,
  html[data-site="statius"] #venue-view .card.event .event-card-inner {
    min-height: 390px;
  }

  html[data-site="statius"] #events .card.event .poster-strip,
  html[data-site="statius"] #all-events-view .card.event .poster-strip,
  html[data-site="statius"] #venue-view .card.event .poster-strip {
    padding: 20px 20px 0;
  }

  html[data-site="statius"] #events .card.event .card-content,
  html[data-site="statius"] #all-events-view .card.event .card-content,
  html[data-site="statius"] #venue-view .card.event .card-content {
    padding: 0 20px;
  }

  html[data-site="statius"] #events .card.event .card-action-row,
  html[data-site="statius"] #all-events-view .card.event .card-action-row,
  html[data-site="statius"] #venue-view .card.event .card-action-row {
    padding: 18px 20px 20px;
  }

  html[data-site="statius"] .request-inner {
    padding: 30px 22px;
  }

  html[data-site="statius"] #faq .faq-side {
    position: static;
  }
}

/* =====================================================================
   STATIUS HOMEPAGE — final design.
   Every rule is scoped under html[data-site="statius"]; ClassicWorldTicket
   is never targeted, so the CWT appearance is unchanged. The [data-statius-home]
   block stays hidden via its [hidden] attribute for every non-Statius host.
   Visual system ported from design/biglietteria_statius_landing_copy_v_2.html
   (system only — no mock content): light cream/black premium theme,
   Playfair Display headings + Hanken Grotesk body.
   ===================================================================== */

html[data-site="statius"] {
  /* homepage design tokens (mockup) */
  --st-bg: #f9f9f9;
  --st-ink: #050505;
  --st-muted: #6c6760;
  --st-line: #d9d0c2;
  --st-cream: #eadfcd;
  --st-cream-soft: #f2ebdf;
  --st-white: #fff;
  --st-sans: "Hanken Grotesk", "SF Pro Text", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  /* upgrade the shared serif token from the Georgia fallback to the mockup font */
  --statius-serif: "Playfair Display", Georgia, "Times New Roman", serif;
}

/* show the Statius homepage only for Statius hosts (overrides [hidden]) */
html[data-site="statius"] [data-statius-home] {
  display: block;
  width: 100%;
  overflow-x: hidden;
  background: var(--st-bg);
  font-family: var(--st-sans);
}

/* hide the legacy CWT homepage sections only for Statius (scoped) */
html[data-site="statius"] #top,
html[data-site="statius"] #events,
html[data-site="statius"] #venues,
html[data-site="statius"] #categories,
html[data-site="statius"] #request-promo,
html[data-site="statius"] #faq,
html[data-site="statius"] #contact,
html[data-site="statius"] #about,
html[data-site="statius"] .site-footer {
  display: none;
}

/* ---- layout primitives ---- */
html[data-site="statius"] .statius-section {
  width: 100%;
  box-sizing: border-box;
  padding: clamp(46px, 7vw, 74px) 0;
}

html[data-site="statius"] .statius-container {
  width: min(100% - clamp(40px, 9vw, 160px), 1280px);
  margin: 0 auto;
  box-sizing: border-box;
}

html[data-site="statius"] .statius-heading {
  font-family: var(--statius-serif);
  font-weight: 700;
  font-size: clamp(28px, 3.8vw, 42px);
  line-height: 1.12;
  letter-spacing: -0.025em;
  color: var(--st-ink);
  margin: 0;
}

html[data-site="statius"] .statius-subheading {
  font-size: 14px;
  line-height: 1.5;
  color: var(--st-muted);
  margin: 10px 0 0;
}

html[data-site="statius"] .statius-section-head {
  margin-bottom: 28px;
}

/* ---- buttons ---- */
html[data-site="statius"] .statius-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 44px;
  padding: 0 30px;
  border: 1px solid var(--st-ink);
  border-radius: 4px;
  font-family: var(--st-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  box-sizing: border-box;
}

html[data-site="statius"] .statius-btn-primary {
  background: var(--st-ink);
  color: var(--st-white);
}

html[data-site="statius"] .statius-btn-primary:hover {
  opacity: 0.9;
}

/* ---- hero ---- */
/* hero — mockup-exact: warm-white, two columns 1.04fr / 0.78fr, gap 100 */
html[data-site="statius"] .statius-hero {
  background: #fbfbfb;
  padding: 68px 0 66px;
}

html[data-site="statius"] .statius-hero-inner {
  display: grid;
  grid-template-columns: 1.04fr 0.78fr;
  gap: clamp(48px, 7vw, 100px);
  align-items: center;
}

html[data-site="statius"] .statius-eyebrow {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #6d675f;
  margin: 0 0 20px;
}

html[data-site="statius"] .statius-hero-title {
  font-family: var(--statius-serif);
  font-weight: 700;
  font-size: clamp(40px, 4.6vw, 56px);
  line-height: 1.05;
  letter-spacing: -0.045em;
  color: #000;
  margin: 0;
  max-width: 690px;
}

html[data-site="statius"] .statius-hero-text {
  font-size: 15px;
  line-height: 1.55;
  color: #56524d;
  margin: 32px 0 28px;
  max-width: 500px;
}

html[data-site="statius"] .statius-hero-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 24px;
}

html[data-site="statius"] .statius-hero-note {
  font-size: 12px;
  line-height: 1.4;
  color: #6b655e;
  margin: 0;
  max-width: 230px;
}

/* featured / nearest-event card — mockup-exact proportions */
html[data-site="statius"] .statius-featured-card {
  width: 445px;
  max-width: 100%;
  justify-self: center;
  background: #f3eadc;
  border: 1px solid #d7c8b5;
  border-radius: 12px;
  padding: 32px;
  box-sizing: border-box;
  box-shadow: 0 22px 44px rgba(45, 34, 22, 0.1);
}

html[data-site="statius"] .statius-featured-label {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #6b6258;
  margin: 0 0 22px;
}

/* image area (280px); real event image overlaid when available, warm
   theatre-like gradient fallback otherwise — same dimensions either way */
html[data-site="statius"] .statius-featured-media {
  width: 100%;
  height: 280px;
  border-radius: 6px;
  border: 1px solid #111;
  background:
    radial-gradient(80% 60% at 50% 6%, rgba(216, 172, 112, 0.26), transparent 62%),
    radial-gradient(120% 90% at 50% 122%, rgba(122, 38, 40, 0.32), transparent 60%),
    linear-gradient(135deg, #2b211a 0%, #15110e 55%, #0c0b09 100%);
}

html[data-site="statius"] .statius-featured-media.has-image {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.45)),
    var(--statius-featured-image) center / cover no-repeat;
}

html[data-site="statius"] .statius-featured-title {
  font-family: var(--statius-serif);
  font-weight: 700;
  font-size: 22px;
  letter-spacing: -0.02em;
  color: #000;
  margin: 22px 0 6px;
}

html[data-site="statius"] .statius-featured-meta,
html[data-site="statius"] .statius-featured-date {
  font-size: 11px;
  line-height: 1.35;
  color: #4c4740;
  margin: 0;
}

html[data-site="statius"] .statius-featured-divider {
  height: 1px;
  background: #d4cabd;
  margin: 28px 0 18px;
}

html[data-site="statius"] .statius-featured-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

html[data-site="statius"] .statius-featured-price {
  font-size: 11px;
  font-weight: 600;
  color: #282522;
}

html[data-site="statius"] .statius-featured-price.is-request {
  color: #6b6258;
}

html[data-site="statius"] .statius-featured-cta {
  display: inline-flex;
  align-items: center;
  height: 42px;
  padding: 0 20px;
  background: #000;
  color: #fff;
  border: 1px solid #000;
  border-radius: 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
}

html[data-site="statius"] .statius-featured-cta[hidden] {
  display: none;
}

/* ---- events ---- */
html[data-site="statius"] .statius-events {
  background: var(--st-cream);
}

html[data-site="statius"] .statius-events .statius-section-head {
  text-align: center;
}

html[data-site="statius"] .statius-event-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}

html[data-site="statius"] .statius-event-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 430px;
  padding: 26px;
  border-radius: 12px;
  border: 1px solid #0a0a0a;
  background:
    radial-gradient(78% 52% at 50% 10%, rgba(216, 172, 112, 0.24), transparent 62%),
    radial-gradient(120% 85% at 50% 118%, rgba(122, 38, 40, 0.34), transparent 60%),
    linear-gradient(to bottom, rgba(0, 0, 0, 0.16) 0%, rgba(0, 0, 0, 0.02) 40%, rgba(0, 0, 0, 0.88) 100%),
    linear-gradient(160deg, #2b211a 0%, #1a1411 55%, #0c0907 100%);
  color: var(--st-white);
  text-decoration: none;
  overflow: hidden;
  box-sizing: border-box;
}

/* soft stage-light sweep — pure CSS, no image */
html[data-site="statius"] .statius-event-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(60% 40% at 50% 0%, rgba(255, 226, 178, 0.16), transparent 70%);
}

html[data-site="statius"] .statius-event-card > * {
  position: relative;
  z-index: 1;
}

html[data-site="statius"] .statius-event-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

html[data-site="statius"] .statius-event-tag {
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 4px 9px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.12);
}

html[data-site="statius"] .statius-event-body {
  margin-top: auto;
}

html[data-site="statius"] .statius-event-title {
  font-family: var(--statius-serif);
  font-weight: 700;
  font-size: 25px;
  line-height: 1.1;
  letter-spacing: -0.03em;
  color: var(--st-white);
  margin: 0 0 8px;
  overflow-wrap: anywhere;
}

html[data-site="statius"] .statius-event-meta {
  font-size: 12px;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.78);
  margin: 0 0 12px;
}

html[data-site="statius"] .statius-event-price {
  font-size: 12px;
  font-weight: 700;
  color: #f1e6cf;
  margin: 0 0 16px;
}

html[data-site="statius"] .statius-event-price.is-request {
  font-weight: 600;
  color: rgba(255, 255, 255, 0.8);
}

html[data-site="statius"] .statius-event-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

html[data-site="statius"] .statius-event-details {
  height: 34px;
  padding: 0 16px;
  border: 1px solid var(--st-white);
  border-radius: 4px;
  background: transparent;
  color: var(--st-white);
  font-size: 9px;
  letter-spacing: 0.1em;
}

html[data-site="statius"] .statius-event-arrow {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid var(--st-white);
  border-radius: 4px;
  color: var(--st-white);
  text-decoration: none;
}

/* ---- venues ---- */
html[data-site="statius"] .statius-venues {
  background: var(--st-bg);
}

html[data-site="statius"] .statius-venue-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}

html[data-site="statius"] .statius-venue-card {
  display: block;
  background: var(--st-cream);
  border: 1px solid var(--st-line);
  border-radius: 12px;
  padding: 0 0 22px;
  color: var(--st-ink);
  text-decoration: none;
  box-sizing: border-box;
  overflow: hidden;
  transition: border-color 0.15s ease, transform 0.15s ease;
}

/* neutral premium visual top (no real venue images yet; names/cities are real) */
html[data-site="statius"] .statius-venue-card::before {
  content: "";
  display: block;
  height: 200px;
  border-bottom: 1px solid var(--st-line);
  background:
    radial-gradient(120% 90% at 50% 10%, rgba(255, 255, 255, 0.08), transparent 55%),
    linear-gradient(150deg, #3a342b 0%, #211d18 55%, #14110d 100%);
}

html[data-site="statius"] .statius-venue-card-link:hover {
  border-color: var(--st-ink);
  transform: translateY(-2px);
}

html[data-site="statius"] .statius-venue-city,
html[data-site="statius"] .statius-venue-title {
  padding-left: 22px;
  padding-right: 22px;
}

html[data-site="statius"] .statius-venue-city {
  display: block;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--st-muted);
  margin-top: 18px;
}

html[data-site="statius"] .statius-venue-title {
  font-family: var(--statius-serif);
  font-weight: 700;
  font-size: 22px;
  letter-spacing: -0.015em;
  color: var(--st-ink);
  margin: 8px 0 0;
  overflow-wrap: anywhere;
}

/* ---- directions (categories) — cream cards, no CWT purple glow ---- */
html[data-site="statius"] .statius-directions {
  background: var(--st-cream-soft);
}

html[data-site="statius"] .statius-directions-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 22px;
}

html[data-site="statius"] .statius-category-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  background: var(--st-cream);
  border: 1px solid var(--st-line);
  border-radius: 10px;
  padding: 22px;
  color: var(--st-ink);
  text-decoration: none;
  box-sizing: border-box;
  box-shadow: none;
  transition: border-color 0.15s ease;
}

html[data-site="statius"] .statius-category-card-link:hover {
  border-color: var(--st-ink);
}

  html[data-site="statius"] .statius-category-title {
  font-family: var(--statius-serif);
  font-weight: 700;
  font-size: 19px;
  letter-spacing: -0.01em;
  color: var(--st-ink);
  margin: 0;
  overflow-wrap: anywhere;
}

html[data-site="statius"] .statius-category-arrow {
  flex: 0 0 auto;
  color: var(--st-ink);
  font-size: 16px;
}

/* ---- request band ---- */
html[data-site="statius"] .statius-request-band {
  background: var(--st-bg);
}

html[data-site="statius"] .statius-request-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  background: var(--st-cream);
  border: 1px solid var(--st-line);
  border-radius: 24px;
  padding: clamp(40px, 6vw, 82px) clamp(28px, 6vw, 92px);
  box-sizing: border-box;
}

html[data-site="statius"] .statius-request-card .statius-heading {
  font-size: clamp(32px, 4.4vw, 48px);
  letter-spacing: -0.04em;
}

html[data-site="statius"] .statius-request-card .statius-subheading {
  max-width: 540px;
  font-size: 16px;
  line-height: 1.55;
}

html[data-site="statius"] .statius-request-card .statius-btn-primary {
  flex: 0 0 auto;
  height: 52px;
  border-radius: 999px;
  padding: 0 44px;
}

/* ---- faq (accordion; JS toggles .is-open) ---- */
html[data-site="statius"] .statius-faq {
  background: var(--st-bg);
}

/* two-column rhythm like the mockup: FAQ list (left) + request card (right) */
html[data-site="statius"] .statius-faq-grid {
  display: grid;
  grid-template-columns: 1.05fr 0.78fr;
  gap: clamp(36px, 5vw, 90px);
  align-items: start;
}

html[data-site="statius"] .statius-faq-main .statius-subheading {
  margin-bottom: 26px;
}

html[data-site="statius"] .statius-faq-list {
  width: 100%;
}

/* right-side request card (safe — reuses the real [data-request-cta] flow) */
html[data-site="statius"] .statius-faq-aside {
  background: var(--st-white);
  border: 1px solid var(--st-line);
  border-radius: 12px;
  padding: clamp(28px, 3vw, 40px);
  box-sizing: border-box;
}

html[data-site="statius"] .statius-faq-aside-label {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--st-muted);
  margin: 0 0 14px;
}

html[data-site="statius"] .statius-faq-aside-title {
  font-family: var(--statius-serif);
  font-weight: 700;
  font-size: 24px;
  letter-spacing: -0.02em;
  color: var(--st-ink);
  margin: 0 0 12px;
}

html[data-site="statius"] .statius-faq-aside-text {
  font-size: 14px;
  line-height: 1.6;
  color: var(--st-muted);
  margin: 0 0 24px;
}

html[data-site="statius"] .statius-faq-aside-cta {
  width: 100%;
}

html[data-site="statius"] .statius-faq-item {
  border-bottom: 1px solid var(--st-line);
}

html[data-site="statius"] .statius-faq-question {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 0;
  background: none;
  border: 0;
  text-align: left;
  font-family: var(--st-sans);
  font-size: 16px;
  color: var(--st-ink);
  cursor: pointer;
}

html[data-site="statius"] .statius-faq-toggle {
  flex: 0 0 auto;
  font-size: 18px;
  line-height: 1;
  color: var(--st-muted);
  transition: transform 0.2s ease;
}

html[data-site="statius"] .statius-faq-item.is-open .statius-faq-toggle {
  transform: rotate(45deg);
}

html[data-site="statius"] .statius-faq-answer {
  display: none;
  padding: 0 0 20px;
}

html[data-site="statius"] .statius-faq-item.is-open .statius-faq-answer {
  display: block;
}

html[data-site="statius"] .statius-faq-answer p {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--st-muted);
}

/* ---- contact ---- */
html[data-site="statius"] .statius-contact {
  background: var(--st-bg);
}

html[data-site="statius"] .statius-contact-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

html[data-site="statius"] .statius-contact-note {
  margin: 14px 0 0;
  font-size: 13px;
  line-height: 1.55;
  color: var(--st-muted);
}

html[data-site="statius"] .statius-contact-actions {
  display: flex;
  flex-direction: column;
  gap: 14px;
  justify-self: end;
  width: 100%;
  max-width: 340px;
}

html[data-site="statius"] .statius-contact-btn {
  width: 100%;
  background: var(--st-white);
  color: var(--st-ink);
}

html[data-site="statius"] .statius-contact-btn:hover {
  background: var(--st-ink);
  color: var(--st-white);
}

/* ---- about ---- */
html[data-site="statius"] .statius-about {
  background: var(--st-cream-soft);
  text-align: center;
}

html[data-site="statius"] .statius-about-eyebrow {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--st-muted);
  margin: 0 0 16px;
}

html[data-site="statius"] .statius-about-text {
  max-width: 760px;
  margin: 18px auto 0;
  font-size: 16px;
  line-height: 1.7;
  color: var(--st-ink);
}

html[data-site="statius"] .statius-about-disclaimer {
  max-width: 720px;
  margin: 18px auto 0;
  font-size: 13px;
  line-height: 1.6;
  color: var(--st-muted);
}

/* ---- footer ---- */
html[data-site="statius"] .statius-footer {
  background: var(--st-bg);
  border-top: 1px solid var(--st-line);
  padding: 36px 0;
}

html[data-site="statius"] .statius-footer-inner {
  display: grid;
  grid-template-columns: 1.2fr auto auto;
  align-items: center;
  gap: clamp(20px, 4vw, 48px);
}

html[data-site="statius"] .statius-footer-brand {
  display: block;
  font-family: var(--statius-serif);
  font-weight: 700;
  font-size: 20px;
  color: var(--st-ink);
}

html[data-site="statius"] .statius-footer-note {
  margin: 6px 0 0;
  font-size: 12px;
  line-height: 1.5;
  color: var(--st-muted);
  max-width: 320px;
}

html[data-site="statius"] .statius-footer-links {
  display: flex;
  gap: 24px;
}

html[data-site="statius"] .statius-footer-links a {
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--st-muted);
  border-bottom: 1px solid transparent;
  padding-bottom: 2px;
}

html[data-site="statius"] .statius-footer-links a:hover {
  color: var(--st-ink);
  border-bottom-color: var(--st-ink);
}

html[data-site="statius"] .statius-footer-copyright {
  font-size: 11px;
  color: var(--st-muted);
  justify-self: end;
}

/* ---- events "view all" CTA ---- */
html[data-site="statius"] .statius-events-footer {
  display: flex;
  justify-content: center;
  margin-top: 36px;
}

html[data-site="statius"] .statius-events-viewall {
  background: transparent;
  color: var(--st-ink);
}

html[data-site="statius"] .statius-events-viewall:hover {
  background: var(--st-ink);
  color: var(--st-white);
}

html[data-site="statius"] .statius-events-viewall[hidden] {
  display: none;
}

/* ---- directions (categories): richer cards with a count line ---- */
html[data-site="statius"] .statius-category-card {
  min-height: 132px;
  align-items: flex-end;
  padding: 26px;
}

html[data-site="statius"] .statius-category-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

html[data-site="statius"] .statius-category-meta {
  margin: 0;
  font-size: 12px;
  letter-spacing: 0.02em;
  color: var(--st-muted);
}

/* =====================================================================
   STATIUS HEADER RIGHT CONTROLS + HERO/FEATURED MICRO-ANIMATIONS
   Scoped to html[data-site="statius"]. Removes the CWT purple language
   pill, aligns the login/language buttons to the mockup, and adds calm
   premium hover transitions. CWT default is untouched.
   ===================================================================== */

/* language switcher — rectangular white/black, no purple badge */
html[data-site="statius"] .site-header .language-current {
  height: 38px;
  min-height: 38px;
  min-width: 0;
  padding: 0 13px;
  gap: 6px;
  border-radius: 4px;
  border: 1px solid #0b0a08;
  background: #fff;
  color: #0b0a08;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  box-shadow: none;
  transition: background 0.2s ease, color 0.2s ease;
}

html[data-site="statius"] .site-header .language-current:hover,
html[data-site="statius"] .site-header .language-switcher.is-open .language-current,
html[data-site="statius"] .site-header .language-switcher[data-open="true"] .language-current {
  background: #0b0a08;
  color: #fff;
  transform: none;
  box-shadow: none;
}

/* kill the purple RU badge — plain inherited text */
html[data-site="statius"] .site-header .language-current-code {
  min-width: 0;
  height: auto;
  border-radius: 0;
  background: none;
  box-shadow: none;
  color: inherit;
}

html[data-site="statius"] .site-header .language-chevron {
  opacity: 0.7;
  color: inherit;
}

/* login / account button — rectangular white/black, mockup-like */
html[data-site="statius"] .site-header .auth-trigger-btn {
  height: 38px;
  min-height: 38px;
  min-width: 120px;
  padding: 0 22px;
  border-radius: 4px;
  border: 1px solid #0b0a08;
  background: #fff;
  color: #0b0a08;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  box-shadow: none;
  transition: background 0.2s ease, color 0.2s ease;
}

html[data-site="statius"] .site-header .auth-trigger-btn:hover {
  background: #0b0a08;
  color: #fff;
}

/* nav underline — grows from left on hover/active (replaces instant border) */
html[data-site="statius"] .site-header .nav-links a {
  position: relative;
  border-bottom: 1px solid transparent;
}

html[data-site="statius"] .site-header .nav-links a:hover,
html[data-site="statius"] .site-header .nav-links a.active {
  border-bottom-color: transparent;
}

html[data-site="statius"] .site-header .nav-links a::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20px;
  height: 1.5px;
  background: #000;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.2s ease;
}

html[data-site="statius"] .site-header .nav-links a:hover::after,
html[data-site="statius"] .site-header .nav-links a.active::after {
  transform: scaleX(1);
}

/* hero CTA hover (scoped to hero so the request band button is untouched) */
html[data-site="statius"] .statius-hero .statius-btn-primary {
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease,
    box-shadow 0.2s ease;
}

html[data-site="statius"] .statius-hero .statius-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.18);
  opacity: 1;
}

/* featured card hover — slight lift + media zoom */
html[data-site="statius"] .statius-featured-card {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

html[data-site="statius"] .statius-featured-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 30px 56px rgba(45, 34, 22, 0.18);
}

html[data-site="statius"] .statius-featured-media {
  overflow: hidden;
  transition: transform 0.25s ease;
}

html[data-site="statius"] .statius-featured-card:hover .statius-featured-media {
  transform: scale(1.02);
}

/* restrained sheen on the fallback media */
html[data-site="statius"] .statius-featured-media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(120deg, transparent 40%, rgba(255, 240, 214, 0.12) 50%, transparent 60%);
  opacity: 0;
  transition: opacity 0.25s ease;
}

html[data-site="statius"] .statius-featured-media {
  position: relative;
}

html[data-site="statius"] .statius-featured-card:hover .statius-featured-media::after {
  opacity: 1;
}

/* featured bottom button hover */
html[data-site="statius"] .statius-featured-cta {
  transition: transform 0.2s ease, opacity 0.2s ease;
}

html[data-site="statius"] .statius-featured-cta:hover {
  transform: translateY(-1px);
  opacity: 0.92;
}

@media (prefers-reduced-motion: reduce) {
  html[data-site="statius"] .site-header .language-current,
  html[data-site="statius"] .site-header .auth-trigger-btn,
  html[data-site="statius"] .site-header .nav-links a::after,
  html[data-site="statius"] .statius-hero .statius-btn-primary,
  html[data-site="statius"] .statius-featured-card,
  html[data-site="statius"] .statius-featured-media,
  html[data-site="statius"] .statius-featured-media::after,
  html[data-site="statius"] .statius-featured-cta {
    transition: none;
  }
  html[data-site="statius"] .statius-hero .statius-btn-primary:hover,
  html[data-site="statius"] .statius-featured-card:hover,
  html[data-site="statius"] .statius-featured-card:hover .statius-featured-media,
  html[data-site="statius"] .statius-featured-cta:hover {
    transform: none;
  }
}

/* =====================================================================
   STATIUS FULL HOMEPAGE REFERENCE RHYTHM
   Matches the supplied one-page reference proportions while keeping all
   operational data and navigation in the existing app logic.
   ===================================================================== */
html[data-site="statius"] .statius-section {
  padding: 70px 0 74px;
}

html[data-site="statius"] .statius-heading {
  font-size: 36px;
  line-height: 1.15;
  letter-spacing: -0.025em;
  font-weight: 600;
}

html[data-site="statius"] .statius-subheading {
  margin-top: 12px;
  color: #6b655e;
  font-size: 13px;
  line-height: 1.5;
}

html[data-site="statius"] .statius-events {
  padding: 68px 0 75px;
  background: #eadfcd;
  text-align: center;
}

html[data-site="statius"] .statius-events .statius-section-head {
  margin-bottom: 26px;
}

html[data-site="statius"] .statius-filters[aria-hidden="true"] {
  display: none;
}

html[data-site="statius"] .statius-event-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  text-align: left;
}

html[data-site="statius"] .statius-event-card {
  min-height: 430px;
  border-radius: 8px;
  padding: 24px;
  border: 1px solid #0a0a0a;
  background: #14100c;
  box-shadow: none;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

html[data-site="statius"] .statius-event-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 42px rgba(45, 34, 22, 0.18);
}

html[data-site="statius"] .statius-event-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(78% 52% at 50% 10%, rgba(216, 172, 112, 0.24), transparent 62%),
    radial-gradient(120% 85% at 50% 118%, rgba(122, 38, 40, 0.34), transparent 60%),
    linear-gradient(160deg, #2b211a 0%, #1a1411 55%, #0c0907 100%);
  transition: transform 0.22s ease, filter 0.22s ease;
}

html[data-site="statius"] .statius-event-card.has-image::before {
  background: var(--statius-event-image) center / cover no-repeat;
  filter: brightness(0.58) saturate(0.92);
  transform: scale(1.02);
}

html[data-site="statius"] .statius-event-card:hover::before {
  transform: scale(1.035);
}

html[data-site="statius"] .statius-event-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.24), rgba(0, 0, 0, 0.05) 42%, rgba(0, 0, 0, 0.88));
}

html[data-site="statius"] .statius-event-card > * {
  position: relative;
  z-index: 1;
}

html[data-site="statius"] .statius-event-tag {
  border-radius: 3px;
  padding: 4px 8px;
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.28);
  color: #fff;
}

html[data-site="statius"] .statius-event-title {
  font-size: 24px;
  line-height: 1.12;
}

html[data-site="statius"] .statius-event-meta {
  color: rgba(255, 255, 255, 0.86);
  font-size: 11px;
  font-weight: 600;
}

html[data-site="statius"] .statius-event-price {
  color: #f3eadc;
  font-size: 11px;
}

html[data-site="statius"] .statius-event-actions {
  gap: 8px;
}

html[data-site="statius"] .statius-event-details,
html[data-site="statius"] .statius-event-arrow {
  height: 30px;
  border-color: #fff;
  border-radius: 4px;
  color: #fff;
}

html[data-site="statius"] .statius-event-details {
  padding: 0 18px;
  background: transparent;
  font-size: 9px;
}

html[data-site="statius"] .statius-event-arrow {
  width: 30px;
  background: transparent;
}

html[data-site="statius"] .statius-events-footer {
  margin-top: 56px;
}

html[data-site="statius"] .statius-events-viewall {
  height: 30px;
  padding: 0 16px;
  background: #000;
  color: #fff;
  border-color: #000;
}

html[data-site="statius"] .statius-events-viewall:hover {
  background: #2b261f;
  color: #fff;
}

html[data-site="statius"] .statius-venues {
  padding: 70px 0 74px;
  background: #fbfbfb;
  border-bottom: 1px solid #ddd;
}

html[data-site="statius"] .statius-venues .statius-section-head {
  margin-bottom: 28px;
  text-align: left;
}

html[data-site="statius"] .statius-venue-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 34px;
}

html[data-site="statius"] .statius-venue-card {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}

html[data-site="statius"] .statius-venue-card::before {
  height: 245px;
  border: 1px solid #1b1b1b;
  border-radius: 8px;
  background:
    radial-gradient(80% 60% at 50% 8%, rgba(255, 255, 255, 0.1), transparent 58%),
    linear-gradient(150deg, #3a342b 0%, #211d18 55%, #14110d 100%);
  filter: grayscale(1);
}

html[data-site="statius"] .statius-venue-card.has-image::before {
  background: var(--statius-venue-image) center / cover no-repeat;
  filter: grayscale(1) brightness(0.92);
}

html[data-site="statius"] .statius-venue-card-link:hover {
  transform: translateY(-2px);
}

html[data-site="statius"] .statius-venue-city,
html[data-site="statius"] .statius-venue-title {
  padding-left: 0;
  padding-right: 0;
}

html[data-site="statius"] .statius-venue-title {
  margin-top: 22px;
  font-size: 22px;
}

html[data-site="statius"] .statius-venue-city {
  margin-top: 8px;
  color: #77706a;
}

html[data-site="statius"] .statius-venue-grid {
  display: flex;
  grid-template-columns: none;
  gap: clamp(24px, 2.5vw, 32px);
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  padding: 0 0 18px;
  scroll-snap-type: x proximity;
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
  scrollbar-color: #1b1b1b #e8dfd1;
  -webkit-overflow-scrolling: touch;
}

html[data-site="statius"] .statius-venue-grid::-webkit-scrollbar {
  height: 6px;
}

html[data-site="statius"] .statius-venue-grid::-webkit-scrollbar-track {
  background: #e8dfd1;
}

html[data-site="statius"] .statius-venue-grid::-webkit-scrollbar-thumb {
  background: #1b1b1b;
}

html[data-site="statius"] .statius-venue-card {
  flex: 0 0 clamp(280px, calc((100% - 96px) / 4), 330px);
  max-width: 330px;
  min-width: 0;
  scroll-snap-align: start;
}

html[data-site="statius"] .statius-venue-card::before {
  border-radius: 6px;
}

html[data-site="statius"] .statius-venue-title {
  color: #14110d;
  overflow-wrap: anywhere;
}

html[data-site="statius"] .statius-directions {
  padding: 70px 0 74px;
  background: #f2ebdf;
}

html[data-site="statius"] .statius-directions-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
}

html[data-site="statius"] .statius-category-card {
  min-height: 132px;
  padding: 26px;
  border-radius: 8px;
  background: #fbfbfb;
}

html[data-site="statius"] .statius-category-card-link:hover {
  transform: translateY(-2px);
}

html[data-site="statius"] .statius-request-band {
  padding: 98px 0;
  background: #fbfbfb;
  border-bottom: 1px solid #ddd;
}

html[data-site="statius"] .statius-request-card {
  padding: 82px 96px;
  border-radius: 24px;
  background: #f3eadc;
}

html[data-site="statius"] .statius-request-card .statius-heading {
  font-size: 48px;
  line-height: 1.1;
}

html[data-site="statius"] .statius-request-card .statius-subheading {
  max-width: 535px;
  margin-top: 20px;
  color: #5c5650;
  font-size: 16px;
}

html[data-site="statius"] .statius-request-card .statius-btn-primary {
  height: 58px;
  padding: 0 64px;
  border-radius: 999px;
  box-shadow: 0 28px 45px rgba(0, 0, 0, 0.16);
}

html[data-site="statius"] .statius-faq {
  padding: 70px 0 82px;
  background: #fbfbfb;
  border-bottom: 1px solid #ddd;
}

html[data-site="statius"] .statius-faq-grid {
  grid-template-columns: 1.02fr 0.8fr;
  gap: clamp(42px, 7vw, 96px);
}

html[data-site="statius"] .statius-faq-main .statius-heading {
  margin-bottom: 10px;
}

html[data-site="statius"] .statius-faq-item {
  border-bottom-color: #d9d9d9;
}

html[data-site="statius"] .statius-faq-question {
  padding: 21px 0;
  color: #34302d;
  font-size: 15px;
}

html[data-site="statius"] .statius-faq-aside {
  border-radius: 10px;
  background: #fff;
  padding: 36px;
}

html[data-site="statius"] .statius-faq-aside-title {
  font-size: 24px;
}

html[data-site="statius"] .statius-faq-aside-cta {
  height: 42px;
  border-radius: 4px;
}

html[data-site="statius"] .statius-contact {
  padding: 46px 0;
  background: #fbfbfb;
  border-bottom: 1px solid #ddd;
}

html[data-site="statius"] .statius-contact-grid {
  grid-template-columns: 1fr 1fr;
  gap: 50px;
}

html[data-site="statius"] .statius-contact .statius-heading {
  font-size: 22px;
}

html[data-site="statius"] .statius-contact .statius-subheading {
  max-width: 520px;
  margin-top: 6px;
  font-size: 14px;
}

html[data-site="statius"] .statius-contact-actions {
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
  max-width: 440px;
}

html[data-site="statius"] .statius-contact-btn {
  width: auto;
  min-width: 185px;
  height: 34px;
  border-radius: 6px;
  background: #fff;
}

html[data-site="statius"] .statius-contact-btn:hover {
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] .statius-about {
  padding: 64px 0 70px;
  background: #f0f0f0;
  border-bottom: 1px solid #d7d7d7;
}

html[data-site="statius"] .statius-about .statius-heading {
  margin-bottom: 24px;
}

html[data-site="statius"] .statius-about-text {
  max-width: 760px;
  margin-top: 0;
  color: #57524d;
  font-size: 15px;
}

html[data-site="statius"] .statius-footer {
  min-height: 72px;
  padding: 22px 0;
  background: #f7f7f7;
}

html[data-site="statius"] .statius-footer-inner {
  grid-template-columns: 1fr auto 1fr;
  gap: 24px;
  color: #4d4945;
}

html[data-site="statius"] .statius-footer-note {
  max-width: 360px;
}

html[data-site="statius"] .statius-footer-links {
  justify-self: center;
  gap: 34px;
}

@media (max-width: 1100px) {
  html[data-site="statius"] .statius-venue-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html[data-site="statius"] .statius-directions-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html[data-site="statius"] .statius-request-card {
    padding: 56px 48px;
  }
}

@media (max-width: 900px) {
  html[data-site="statius"] .statius-event-grid,
  html[data-site="statius"] .statius-venue-grid,
  html[data-site="statius"] .statius-directions-grid,
  html[data-site="statius"] .statius-faq-grid,
  html[data-site="statius"] .statius-contact-grid {
    grid-template-columns: 1fr;
  }

  html[data-site="statius"] .statius-contact-actions {
    justify-content: flex-start;
    max-width: none;
  }

  html[data-site="statius"] .statius-request-card {
    display: block;
    padding: 42px 28px;
  }

  html[data-site="statius"] .statius-request-card .statius-heading {
    font-size: 38px;
  }

  html[data-site="statius"] .statius-request-card .statius-btn-primary {
    width: 100%;
    margin-top: 28px;
    padding: 0 20px;
  }

  html[data-site="statius"] .statius-footer-inner {
    grid-template-columns: 1fr;
    text-align: center;
  }

  html[data-site="statius"] .statius-footer-links,
  html[data-site="statius"] .statius-footer-copyright {
    justify-self: center;
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] .statius-section,
  html[data-site="statius"] .statius-events,
  html[data-site="statius"] .statius-venues,
  html[data-site="statius"] .statius-directions,
  html[data-site="statius"] .statius-faq,
  html[data-site="statius"] .statius-about {
    padding: 52px 0 58px;
  }

  html[data-site="statius"] .statius-request-band {
    padding: 64px 0;
  }

  html[data-site="statius"] .statius-event-card {
    min-height: 410px;
  }

  html[data-site="statius"] .statius-venue-card::before {
    height: 220px;
  }

  html[data-site="statius"] .statius-contact-btn {
    width: 100%;
  }
}

/* =========================== responsive =========================== */
@media (max-width: 1024px) {
  html[data-site="statius"] .statius-event-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  html[data-site="statius"] .statius-venue-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  html[data-site="statius"] .statius-hero-inner {
    grid-template-columns: 1fr;
    gap: 36px;
  }
  html[data-site="statius"] .statius-featured-card {
    width: 100%;
    justify-self: stretch;
  }
  html[data-site="statius"] .statius-faq-grid,
  html[data-site="statius"] .statius-contact-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  html[data-site="statius"] .statius-contact-actions {
    justify-self: start;
    max-width: 100%;
  }
  html[data-site="statius"] .statius-contact-btn {
    width: auto;
  }
  html[data-site="statius"] .statius-footer-inner {
    grid-template-columns: 1fr 1fr;
    align-items: start;
  }
  html[data-site="statius"] .statius-footer-brand-col {
    grid-column: 1 / -1;
  }
}

@media (max-width: 768px) {
  html[data-site="statius"] .statius-venue-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  html[data-site="statius"] .statius-request-card {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }
  html[data-site="statius"] .statius-request-card .statius-btn-primary {
    width: 100%;
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] .statius-event-grid,
  html[data-site="statius"] .statius-venue-grid,
  html[data-site="statius"] .statius-directions-grid {
    grid-template-columns: 1fr;
  }
  html[data-site="statius"] .statius-venue-grid {
    gap: 20px;
  }
  html[data-site="statius"] .statius-venue-card {
    flex-basis: clamp(278px, 84vw, 310px);
  }
  html[data-site="statius"] .statius-footer-inner {
    grid-template-columns: 1fr;
    text-align: left;
  }
  html[data-site="statius"] .statius-footer-copyright {
    justify-self: start;
  }
}

/* =====================================================================
   STATIUS HEADER + FIRST HERO REFERENCE ALIGNMENT
   Final scoped pass for the Statius preview header and first hero block.
   It intentionally does not restyle the lower sections or CWT default.
   ===================================================================== */
html[data-site="statius"] .site-header {
  min-height: 75px;
  background: #fbfbfb;
  border-bottom: 1px solid #dcdcdc;
  box-shadow: none;
}

html[data-site="statius"] .site-header .nav {
  height: 75px;
  display: grid;
  grid-template-columns: minmax(170px, 1fr) auto minmax(170px, 1fr);
  align-items: center;
  column-gap: 28px;
  width: min(100% - 160px, 1280px);
  padding: 0;
}

html[data-site="statius"] .site-header .logo {
  justify-self: start;
  color: #0b0a08;
  font-size: 21px;
  line-height: 1;
}

html[data-site="statius"] .site-header .logo::before {
  width: 28px;
  height: 40px;
  flex-basis: 28px;
  background: #0b0a08;
  color: #f3eadc;
}

html[data-site="statius"] .site-header .nav-links {
  justify-self: center;
  gap: clamp(24px, 3vw, 42px);
}

html[data-site="statius"] .site-header .nav-links a {
  padding: 29px 0 24px;
  color: #28231d;
  border-bottom: 0;
}

html[data-site="statius"] .site-header .nav-links a::after {
  display: block;
  bottom: 22px;
  height: 1px;
  background: #0b0a08;
}

html[data-site="statius"] .site-header .nav-links a:hover,
html[data-site="statius"] .site-header .nav-links a.active {
  color: #0b0a08;
  border-bottom-color: transparent;
}

html[data-site="statius"] .site-header .nav-right {
  justify-self: end;
  display: flex;
  align-items: center;
  gap: 12px;
}

html[data-site="statius"] .site-header .language-current,
html[data-site="statius"] .site-header .auth-trigger-btn {
  height: 30px;
  min-height: 30px;
  border: 1px solid #0b0a08;
  border-radius: 4px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
  transform: none;
  transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease;
}

html[data-site="statius"] .site-header .language-current {
  min-width: 62px;
  padding: 0 11px;
  gap: 6px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
}

html[data-site="statius"] .site-header .auth-trigger-btn {
  min-width: 136px;
  padding: 0 18px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html[data-site="statius"] .site-header .language-current:hover,
html[data-site="statius"] .site-header .language-switcher.is-open .language-current,
html[data-site="statius"] .site-header .language-switcher[data-open="true"] .language-current,
html[data-site="statius"] .site-header .auth-trigger-btn:hover {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] .site-header .language-current:focus-visible,
html[data-site="statius"] .site-header .auth-trigger-btn:focus-visible {
  outline: 2px solid rgba(11, 10, 8, 0.35);
  outline-offset: 3px;
}

html[data-site="statius"] .site-header .language-current-code {
  min-width: 0;
  width: auto;
  height: auto;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  box-shadow: none;
}

html[data-site="statius"] .site-header .language-menu {
  width: 172px;
  padding: 6px;
  border: 1px solid #c8baa4;
  border-radius: 10px;
  background: #fffdf9;
  color: #15120d;
  box-shadow: 0 18px 42px rgba(45, 34, 22, 0.16);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

html[data-site="statius"] .site-header .language-option {
  min-height: 34px;
  padding: 0 10px;
  border-radius: 7px;
  color: #3f382f;
  background: transparent;
  font-size: 12px;
  box-shadow: none;
}

html[data-site="statius"] .site-header .language-option:hover {
  background: #f3eadc;
  color: #0b0a08;
  transform: translateY(0);
}

html[data-site="statius"] .site-header .language-option-code {
  width: 30px;
  height: 22px;
  border: 1px solid #d8cbb9;
  border-radius: 999px;
  background: #f7f1e7;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] .site-header .language-option:hover .language-option-code {
  border-color: #0b0a08;
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] .statius-hero {
  padding: 68px 0 66px;
}

html[data-site="statius"] .statius-hero-inner {
  grid-template-columns: minmax(0, 1.04fr) minmax(360px, 0.78fr);
  gap: clamp(48px, 7vw, 100px);
}

html[data-site="statius"] .statius-eyebrow {
  margin-bottom: 20px;
  color: #6d675f;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.16em;
}

html[data-site="statius"] .statius-hero-title {
  max-width: 690px;
  color: #000;
  font-size: clamp(42px, 4.6vw, 56px);
  line-height: 1.05;
  letter-spacing: -0.045em;
}

html[data-site="statius"] .statius-hero-text {
  max-width: 500px;
  margin: 32px 0 28px;
  color: #56524d;
  font-size: 15px;
  line-height: 1.55;
}

html[data-site="statius"] .statius-hero-actions {
  gap: 24px;
}

html[data-site="statius"] .statius-hero-note {
  max-width: 230px;
  color: #6b655e;
  font-size: 12px;
  line-height: 1.4;
}

html[data-site="statius"] .statius-hero .statius-btn-primary {
  height: 42px;
  padding: 0 34px;
  border-radius: 4px;
  background: #000;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] .statius-hero .statius-btn-primary:hover {
  background: #000;
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.16);
}

html[data-site="statius"] .statius-featured-card {
  width: 445px;
  padding: 32px;
  border: 1px solid #d7c8b5;
  border-radius: 12px;
  background: #f3eadc;
}

html[data-site="statius"] .statius-featured-media {
  height: 280px;
  border: 1px solid #111;
  border-radius: 6px;
}

html[data-site="statius"] .statius-featured-label {
  margin-bottom: 22px;
  color: #6b6258;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

html[data-site="statius"] .statius-featured-title {
  margin: 22px 0 6px;
  color: #000;
  font-size: 22px;
  line-height: 1.12;
}

html[data-site="statius"] .statius-featured-meta,
html[data-site="statius"] .statius-featured-date {
  color: #4c4740;
  font-size: 11px;
  line-height: 1.35;
}

html[data-site="statius"] .statius-featured-divider {
  margin: 28px 0 18px;
  background: #d4cabd;
}

html[data-site="statius"] .statius-featured-cta {
  height: 42px;
  border-radius: 4px;
  background: #000;
  color: #fff;
}

@media (max-width: 1100px) {
  html[data-site="statius"] .site-header .nav {
    width: min(100% - 48px, 1280px);
    grid-template-columns: minmax(130px, 0.75fr) minmax(0, auto) minmax(130px, 0.75fr);
    column-gap: 20px;
  }

  html[data-site="statius"] .site-header .nav-links {
    gap: clamp(14px, 2vw, 26px);
  }

  html[data-site="statius"] .site-header .auth-trigger-btn {
    min-width: 112px;
    padding: 0 14px;
  }
}

@media (max-width: 900px) {
  html[data-site="statius"] .statius-hero-inner {
    grid-template-columns: 1fr;
  }

  html[data-site="statius"] .statius-featured-card {
    width: min(100%, 445px);
    justify-self: start;
  }
}

@media (max-width: 760px) {
  html[data-site="statius"] .site-header .nav {
    display: grid;
    height: auto;
    min-height: 75px;
    grid-template-columns: 1fr auto;
    row-gap: 12px;
    padding: 12px 0;
  }

  html[data-site="statius"] .site-header .nav-links {
    grid-column: 1 / -1;
    justify-self: stretch;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 2px;
    scrollbar-width: none;
  }

  html[data-site="statius"] .site-header .nav-links::-webkit-scrollbar {
    display: none;
  }

  html[data-site="statius"] .site-header .nav-right {
    gap: 8px;
  }

  html[data-site="statius"] .site-header .auth-trigger-btn {
    min-width: 86px;
  }

  html[data-site="statius"] .statius-hero-title {
    font-size: clamp(38px, 10.8vw, 44px);
  }

  html[data-site="statius"] .statius-hero-actions {
    align-items: flex-start;
    flex-direction: column;
  }

  html[data-site="statius"] .statius-contact-actions {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }

  html[data-site="statius"] .statius-contact-btn {
    width: 100%;
    max-width: none;
    justify-content: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-site="statius"] .site-header .language-current,
  html[data-site="statius"] .site-header .auth-trigger-btn,
  html[data-site="statius"] .site-header .language-menu,
  html[data-site="statius"] .site-header .language-option,
  html[data-site="statius"] .site-header .nav-links a::after,
  html[data-site="statius"] .statius-hero .statius-btn-primary,
  html[data-site="statius"] .statius-featured-card,
  html[data-site="statius"] .statius-featured-media,
  html[data-site="statius"] .statius-featured-cta {
    transition: none;
  }

  html[data-site="statius"] .statius-hero .statius-btn-primary:hover,
  html[data-site="statius"] .statius-featured-card:hover,
  html[data-site="statius"] .statius-featured-card:hover .statius-featured-media,
  html[data-site="statius"] .statius-featured-cta:hover {
    transform: none;
  }
}

/* =====================================================================
   STATIUS ALL EVENTS CATALOG PAGE
   Scoped launch pass for /events/all. Keeps existing all-events hooks,
   real API data, and CWT default styles untouched.
   ===================================================================== */
.statius-catalog-eyebrow,
.statius-catalog-note {
  display: none;
}

html[data-site="statius"] body:has(#all-events-view:not([hidden])) {
  background: #fbf7ef;
}

html[data-site="statius"] #all-events-view {
  padding: 0 0 86px;
  background:
    radial-gradient(circle at 9% 6%, rgba(212, 189, 151, 0.24), transparent 27%),
    linear-gradient(180deg, #fbfbfb 0%, #f7f0e5 46%, #fbf7ef 100%);
  color: #0b0a08;
  overflow-x: clip;
}

html[data-site="statius"] #all-events-view .all-events-top-container {
  width: min(100% - 160px, 1280px);
  max-width: 1280px;
  margin: 0 auto;
  padding: 58px 0 38px;
  background: transparent;
}

html[data-site="statius"] #all-events-view .all-events-topbar {
  margin-bottom: 22px;
}

html[data-site="statius"] #all-events-view .all-events-back {
  min-height: 34px;
  padding: 0 16px;
  border: 1px solid #0b0a08;
  border-radius: 4px;
  background: #fffdf9;
  color: #0b0a08;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  box-shadow: none;
}

html[data-site="statius"] #all-events-view .all-events-back:hover,
html[data-site="statius"] #all-events-view .all-events-back:focus-visible {
  background: #f3eadc;
  color: #0b0a08;
  border-color: #0b0a08;
  transform: translateY(-1px);
}

html[data-site="statius"] #all-events-view .seo-breadcrumbs {
  margin: 0 0 24px;
  color: #7d7468;
  font-size: 11px;
  font-weight: 650;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

html[data-site="statius"] #all-events-view .seo-breadcrumbs a {
  color: #4b443a;
}

html[data-site="statius"] #all-events-view .all-events-header {
  max-width: 820px;
  margin: 0 0 32px;
  gap: 0;
}

html[data-site="statius"] #all-events-view .statius-catalog-eyebrow {
  display: block;
  margin: 0 0 16px;
  color: #6d675f;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

html[data-site="statius"] #all-events-view .all-events-header h2,
html[data-site="statius"] #all-events-view [data-all-events-title] {
  max-width: 790px;
  margin: 0;
  color: #000;
  font-family: var(--statius-serif, Georgia, "Times New Roman", serif);
  font-size: clamp(44px, 5vw, 68px);
  line-height: 1.02;
  font-weight: 700;
  letter-spacing: -0.045em;
}

html[data-site="statius"] #all-events-view .all-events-header p,
html[data-site="statius"] #all-events-view [data-all-events-subtitle] {
  max-width: 660px;
  margin: 24px 0 0;
  color: #56524d;
  font-size: 16px;
  line-height: 1.58;
  font-weight: 450;
}

html[data-site="statius"] #all-events-view .statius-catalog-note {
  display: block;
  max-width: 760px;
  margin-top: 16px;
  padding-left: 18px;
  border-left: 1px solid #cdbfa8;
  color: #6c655e;
  font-size: 12px;
  line-height: 1.55;
}

html[data-site="statius"] #all-events-view .all-events-controls-row {
  margin-top: 30px;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)) 156px minmax(260px, 320px);
  gap: 12px;
  align-items: stretch;
  width: 100%;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-control,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-field,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link-pill {
  min-height: 54px;
  height: 54px;
  padding: 0;
  border: 1px solid #cbbda8;
  border-radius: 5px;
  background: #fffdf9;
  color: #17120d;
  box-shadow: none;
  overflow: visible;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-control::before {
  display: none;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card:hover,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.is-open,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link-pill:hover {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: 0 12px 24px rgba(45, 34, 22, 0.08);
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-trigger,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link__content {
  width: 100%;
  height: 100%;
  min-height: 54px;
  padding: 9px 13px 8px;
  border: 0;
  background: transparent;
  color: inherit;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-main {
  gap: 3px;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-label {
  color: #7d7468;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.12em;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-value,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link__text {
  color: #14110d;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.18;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-arrow {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  border: 1px solid #d4c7b5;
  background: #f7f1e7;
  color: #0b0a08;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-clear-btn {
  width: 22px;
  height: 22px;
  border: 1px solid #d4c7b5;
  background: #fbf7ef;
  color: #5f5549;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-clear-btn:hover {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link__icon {
  border-color: #0b0a08;
  background: transparent;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link__icon::before,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link__icon::after {
  background: #0b0a08;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-options,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .date-panel {
  border: 1px solid #cbbda8;
  border-radius: 12px;
  background: #fffdf9;
  color: #17120d;
  box-shadow: 0 20px 50px rgba(45, 34, 22, 0.16);
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-options::before {
  display: none;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-option {
  min-height: 36px;
  color: #3f382f;
  font-size: 12px;
  font-weight: 650;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-option:hover,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-option.is-selected {
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-option::before {
  background: #0b0a08;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .date-panel {
  width: 392px;
  padding: 16px;
  transform-origin: top right;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-month {
  color: #0b0a08;
  font-size: 16px;
  font-weight: 760;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-hint,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day-name {
  color: #7d7468;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-nav button,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-mini-action {
  border-color: #d8cbb9;
  background: #fbf7ef;
  color: #17120d;
  box-shadow: none;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-nav button:hover,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day:hover,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-mini-action:hover {
  border-color: #0b0a08;
  background: #f3eadc;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day.is-today {
  border-color: #0b0a08;
  color: #0b0a08;
  box-shadow: inset 0 0 0 1px rgba(11, 10, 8, 0.1);
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day.is-selected,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-mini-action.primary {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row {
  width: 100%;
  min-width: 0;
  justify-self: stretch;
  gap: 8px;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-btn,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-arrow {
  min-height: 54px;
  border: 1px solid #0b0a08;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-btn {
  padding: 0 18px;
  border-radius: 5px;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-arrow {
  width: 54px;
  height: 54px;
  flex: 0 0 54px;
  border-radius: 5px;
}

html[data-site="statius"] #all-events-view .all-events-cards-container {
  width: min(100% - 160px, 1280px);
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 0 6px;
}

html[data-site="statius"] #all-events-view .all-events-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  align-items: stretch;
}

html[data-site="statius"] #all-events-view .card.event {
  min-height: 430px;
  height: 430px;
  border: 1px solid #0a0a0a;
  border-radius: 8px;
  background: #14100c;
  color: #fff;
  box-shadow: none;
  overflow: hidden;
}

html[data-site="statius"] #all-events-view .card.event:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 42px rgba(45, 34, 22, 0.18);
}

html[data-site="statius"] #all-events-view .card.event .event-card-inner {
  min-height: 100%;
  height: 100%;
  padding: 0;
  border-radius: 7px;
  background:
    radial-gradient(78% 52% at 50% 10%, rgba(216, 172, 112, 0.24), transparent 62%),
    radial-gradient(120% 85% at 50% 118%, rgba(122, 38, 40, 0.34), transparent 60%),
    linear-gradient(160deg, #2b211a 0%, #1a1411 55%, #0c0907 100%);
}

html[data-site="statius"] #all-events-view .card.event .event-card-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(to bottom, rgba(0, 0, 0, 0.24), rgba(0, 0, 0, 0.06) 42%, rgba(0, 0, 0, 0.9)),
    var(--event-card-image, radial-gradient(circle at 30% 20%, #5c3d2c, #0b0908 70%));
  background-position: center;
  background-size: cover;
  filter: saturate(0.82) brightness(0.86);
  transform: scale(1.02);
  transition: transform 0.22s ease, filter 0.22s ease;
}

html[data-site="statius"] #all-events-view .card.event:hover .event-card-inner::before {
  transform: scale(1.04);
  filter: saturate(0.88) brightness(0.9);
}

html[data-site="statius"] #all-events-view .card.event .event-card-inner::after {
  display: none;
}

html[data-site="statius"] #all-events-view .card.event .poster-strip,
html[data-site="statius"] #all-events-view .card.event .card-content,
html[data-site="statius"] #all-events-view .card.event .card-action-row {
  position: relative;
  z-index: 1;
}

html[data-site="statius"] #all-events-view .card.event .poster-strip {
  min-height: auto;
  padding: 24px 24px 0;
}

html[data-site="statius"] #all-events-view .card.event .event-tag {
  min-height: 24px;
  padding: 4px 8px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
  font-size: 9px;
  font-weight: 720;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

html[data-site="statius"] #all-events-view .card.event .card-content {
  margin-top: auto;
  padding: 0 24px;
}

html[data-site="statius"] #all-events-view .card.event h3 {
  margin: 0;
  color: #fff;
  font-family: var(--statius-serif, Georgia, "Times New Roman", serif);
  font-size: 24px;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -0.03em;
}

html[data-site="statius"] #all-events-view .card.event .event-meta {
  margin: 8px 0 0;
  color: rgba(255, 255, 255, 0.86);
  font-size: 11px;
  line-height: 1.35;
  font-weight: 600;
}

html[data-site="statius"] #all-events-view .card.event .event-price {
  margin: 34px 0 0;
  color: #f3eadc;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 760;
  text-transform: none;
}

html[data-site="statius"] #all-events-view .card.event .event-price.is-request {
  color: #f3eadc;
  font-size: 11px;
  font-weight: 760;
}

html[data-site="statius"] #all-events-view .card.event .card-action-row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin: 0;
  padding: 0 24px 24px;
}

html[data-site="statius"] #all-events-view .card.event .card-action-row::before {
  display: none;
}

html[data-site="statius"] #all-events-view .card.event .details-btn,
html[data-site="statius"] #all-events-view .card.event .arrow-btn {
  min-height: 30px;
  height: 30px;
  border: 1px solid #fff;
  border-radius: 4px;
  background: transparent;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #all-events-view .card.event .details-btn {
  padding: 0 18px;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

html[data-site="statius"] #all-events-view .card.event .arrow-btn {
  width: 30px;
  flex: 0 0 30px;
  font-size: 15px;
}

html[data-site="statius"] #all-events-view .card.event .details-btn:hover,
html[data-site="statius"] #all-events-view .card.event .arrow-btn:hover {
  background: rgba(255, 255, 255, 0.14);
  color: #fff;
}

html[data-site="statius"] #all-events-view .events-status {
  margin: 0 0 24px;
  padding: 18px 20px;
  border: 1px solid #d8cbb9;
  border-radius: 10px;
  background: #fffdf9;
  color: #4e463b;
  box-shadow: 0 18px 42px rgba(45, 34, 22, 0.08);
}

html[data-site="statius"] #all-events-view .events-status .btn,
html[data-site="statius"] #all-events-view .events-status button {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
}

html[data-site="statius"] #all-events-view .seo-content-block,
html[data-site="statius"] #all-events-view .related-links-block {
  border: 1px solid #d8cbb9;
  background: #fffdf9;
  color: #4e463b;
  box-shadow: none;
}

@media (max-width: 1180px) {
  html[data-site="statius"] #all-events-view .all-events-top-container,
  html[data-site="statius"] #all-events-view .all-events-cards-container {
    width: min(100% - 56px, 1280px);
  }

  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link-pill {
    grid-column: auto;
  }
}

@media (max-width: 980px) {
  html[data-site="statius"] #all-events-view .all-events-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link-pill {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] #all-events-view {
    padding-bottom: 58px;
  }

  html[data-site="statius"] #all-events-view .all-events-top-container,
  html[data-site="statius"] #all-events-view .all-events-cards-container {
    width: min(100% - 32px, 1280px);
  }

  html[data-site="statius"] #all-events-view .all-events-top-container {
    padding-top: 38px;
    padding-bottom: 28px;
  }

  html[data-site="statius"] #all-events-view .all-events-header h2,
  html[data-site="statius"] #all-events-view [data-all-events-title] {
    font-size: clamp(34px, 10.8vw, 42px);
    line-height: 1.04;
  }

  html[data-site="statius"] #all-events-view .all-events-header p,
  html[data-site="statius"] #all-events-view [data-all-events-subtitle] {
    margin-top: 18px;
    font-size: 14px;
  }

  html[data-site="statius"] #all-events-view .statius-catalog-note {
    font-size: 11.5px;
  }

  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand {
    grid-template-columns: 1fr;
    gap: 9px;
  }

  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-control,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-field,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link-pill,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-trigger,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .events-calendar-link__content {
    min-height: 50px;
    height: 50px;
  }

  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-options,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .date-panel {
    left: 0;
    right: auto;
    width: min(100%, calc(100vw - 32px));
    max-width: calc(100vw - 32px);
  }

  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-day {
    height: 38px;
    border-radius: 11px;
  }

  html[data-site="statius"] #all-events-view .all-events-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  html[data-site="statius"] #all-events-view .card.event {
    min-height: 410px;
    height: 410px;
  }

  html[data-site="statius"] #all-events-view .card.event .poster-strip,
  html[data-site="statius"] #all-events-view .card.event .card-content,
  html[data-site="statius"] #all-events-view .card.event .card-action-row {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-site="statius"] #all-events-view .all-events-back,
  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card,
  html[data-site="statius"] #all-events-view .card.event,
  html[data-site="statius"] #all-events-view .card.event .event-card-inner::before,
  html[data-site="statius"] #all-events-view .card.event .details-btn,
  html[data-site="statius"] #all-events-view .card.event .arrow-btn {
    transition: none;
  }

  html[data-site="statius"] #all-events-view .all-events-back:hover,
  html[data-site="statius"] #all-events-view .card.event:hover,
  html[data-site="statius"] #all-events-view .card.event:hover .event-card-inner::before {
    transform: none;
  }
}

/* Statius catalog card correction: light editorial cards required by DESIGN.md. */
html[data-site="statius"] #all-events-view .card.event {
  min-height: 0;
  height: auto;
  padding: 0;
  border: 1px solid #d7c8b5;
  border-radius: 12px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
  overflow: hidden;
}

html[data-site="statius"] #all-events-view .card.event:hover {
  border-color: #0b0a08;
  transform: translateY(-2px);
  box-shadow: none;
}

html[data-site="statius"] #all-events-view .card.event .event-card-inner {
  min-height: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 12px;
  background: #fffdf9;
  overflow: hidden;
}

html[data-site="statius"] #all-events-view .card.event .event-card-inner::before {
  content: "";
  position: relative;
  inset: auto;
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  flex: 0 0 auto;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0.18)),
    var(--event-card-image, radial-gradient(circle at 34% 18%, #ede2d2 0%, #cdbfa8 42%, #665544 100%));
  background-position: center;
  background-size: cover;
  filter: saturate(0.86) contrast(0.96);
  transform: scale(1);
  transition: transform 0.24s ease, filter 0.24s ease;
}

html[data-site="statius"] #all-events-view .card.event:hover .event-card-inner::before {
  transform: scale(1.018);
  filter: saturate(0.92) contrast(1);
}

html[data-site="statius"] #all-events-view .card.event .event-card-inner::after {
  display: none;
}

html[data-site="statius"] #all-events-view .card.event .poster-strip,
html[data-site="statius"] #all-events-view .card.event .card-content,
html[data-site="statius"] #all-events-view .card.event .card-action-row {
  position: relative;
  z-index: 1;
}

html[data-site="statius"] #all-events-view .card.event .poster-strip {
  min-height: 0;
  padding: 20px 22px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}

html[data-site="statius"] #all-events-view .card.event .event-tag {
  min-height: 25px;
  padding: 0 9px;
  border: 1px solid #cdbfa8;
  border-radius: 999px;
  background: #f3eadc;
  color: #5d5144;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html[data-site="statius"] #all-events-view .card.event .card-content {
  flex: 1 1 auto;
  margin: 0;
  padding: 18px 22px 0;
}

html[data-site="statius"] #all-events-view .card.event h3 {
  margin: 0;
  color: #0b0a08;
  font-family: var(--statius-serif, Georgia, "Times New Roman", serif);
  font-size: clamp(24px, 2.2vw, 30px);
  line-height: 1.06;
  font-weight: 700;
  letter-spacing: -0.035em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

html[data-site="statius"] #all-events-view .card.event .event-meta {
  margin: 13px 0 0;
  color: #625a50;
  font-size: 11px;
  line-height: 1.45;
  font-weight: 650;
  letter-spacing: 0.02em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

html[data-site="statius"] #all-events-view .card.event .event-price,
html[data-site="statius"] #all-events-view .card.event .event-price.is-request {
  width: fit-content;
  min-height: 31px;
  margin: 18px 0 0;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  border: 1px dashed #b9aa93;
  border-radius: 999px;
  background: #f7f1e7;
  color: #17120d;
  font-size: 11px;
  line-height: 1;
  font-weight: 760;
}

html[data-site="statius"] #all-events-view .card.event .card-action-row {
  margin: 0;
  padding: 22px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
}

html[data-site="statius"] #all-events-view .card.event .card-action-row::before {
  display: none;
}

html[data-site="statius"] #all-events-view .card.event .details-btn,
html[data-site="statius"] #all-events-view .card.event .arrow-btn {
  min-height: 38px;
  height: 38px;
  border: 1px solid #0b0a08;
  border-radius: 8px;
  box-shadow: none;
  text-decoration: none;
}

html[data-site="statius"] #all-events-view .card.event .details-btn {
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #0b0a08;
  color: #fff;
  font-size: 10px;
  font-weight: 780;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html[data-site="statius"] #all-events-view .card.event .arrow-btn {
  width: 38px;
  flex: 0 0 38px;
  background: #fffdf9;
  color: #0b0a08;
  font-size: 15px;
}

html[data-site="statius"] #all-events-view .card.event .details-btn:hover,
html[data-site="statius"] #all-events-view .card.event .details-btn:focus-visible {
  background: #2b261f;
  color: #fff;
  transform: none;
}

html[data-site="statius"] #all-events-view .card.event .arrow-btn:hover,
html[data-site="statius"] #all-events-view .card.event .arrow-btn:focus-visible {
  background: #f3eadc;
  color: #0b0a08;
  transform: none;
}

@media (max-width: 980px) {
  html[data-site="statius"] #all-events-view .card.event h3 {
    font-size: 27px;
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] #all-events-view .card.event {
    min-height: 0;
    height: auto;
  }

  html[data-site="statius"] #all-events-view .card.event .poster-strip,
  html[data-site="statius"] #all-events-view .card.event .card-content,
  html[data-site="statius"] #all-events-view .card.event .card-action-row {
    padding-left: 18px;
    padding-right: 18px;
  }

  html[data-site="statius"] #all-events-view .card.event h3 {
    font-size: 25px;
  }

  html[data-site="statius"] #all-events-view .card.event .details-btn {
    width: 100%;
  }
}

/* Statius /events/all polish pass: DESIGN.md consistency, scoped only. */
html[data-site="statius"] #all-events-view .statius-catalog-note {
  display: none !important;
}

html[data-site="statius"] #all-events-view .card.event .event-card-inner::before {
  box-shadow: inset 0 0 0 1px rgba(215, 200, 181, 0.72);
  background:
    linear-gradient(180deg, rgba(11, 10, 8, 0.02), rgba(11, 10, 8, 0.12)),
    var(--event-card-image, linear-gradient(135deg, #f3eadc 0%, #ded0bd 48%, #9b8a73 100%));
}

html[data-site="statius"] #all-events-view .card.event .event-tag,
html[data-site="statius"] #all-events-view .card.event .event-price,
html[data-site="statius"] #all-events-view .card.event .event-price.is-request {
  border: 1px solid #cdbfa8;
  border-radius: 4px;
  background: #f7f1e7;
  color: #3f382f;
  box-shadow: none;
  text-transform: uppercase;
}

html[data-site="statius"] #all-events-view .card.event .event-tag {
  min-height: 24px;
  padding: 0 8px;
}

html[data-site="statius"] #all-events-view .card.event .event-price,
html[data-site="statius"] #all-events-view .card.event .event-price.is-request {
  min-height: 28px;
  padding: 0 10px;
  letter-spacing: 0.08em;
}

html[data-site="statius"] #all-events-view .card.event .details-btn:hover,
html[data-site="statius"] #all-events-view .card.event .details-btn:focus-visible,
html[data-site="statius"] #all-events-view .events-status .btn:hover,
html[data-site="statius"] #all-events-view .events-status button:hover,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-btn:hover,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-btn:focus-visible,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-arrow:hover,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-arrow:focus-visible,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-mini-action.primary:hover,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .calendar-mini-action.primary:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] #all-events-view .card.event .arrow-btn:hover,
html[data-site="statius"] #all-events-view .card.event .arrow-btn:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #all-events-view .events-status,
html[data-site="statius"] #all-events-view [data-all-events-status] {
  color: #3f382f;
}

html[data-site="statius"] .modal-dialog--all-events-request-help {
  width: min(560px, calc(100vw - 32px));
  border: 1px solid #d7c8b5;
  border-radius: 12px;
  background: #fffdf9;
  box-shadow: 0 24px 54px rgba(45, 34, 22, 0.18);
}

html[data-site="statius"] .modal-dialog--all-events-request-help .modal-body {
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal {
  width: min(540px, 100%);
  padding: 0;
  border: 0;
  border-radius: 12px;
  background: #fffdf9;
  box-shadow: none;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__inner {
  border-radius: 12px;
  padding: 36px;
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__inner::before {
  left: 36px;
  right: 36px;
  background: #d7c8b5;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__close {
  top: 18px;
  right: 18px;
  width: 34px;
  height: 34px;
  border: 1px solid #cdbfa8;
  border-radius: 8px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__close:hover,
html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__close:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  transform: none;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__icon {
  width: 50px;
  height: 50px;
  border: 1px solid #cdbfa8;
  border-radius: 12px;
  background: #f7f1e7;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__eyebrow {
  min-height: 24px;
  border: 1px solid #cdbfa8;
  border-radius: 4px;
  background: #f7f1e7;
  color: #5d5144;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__eyebrow::before {
  border-radius: 2px;
  background: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__title {
  color: #0b0a08;
  font-family: var(--statius-serif, Georgia, "Times New Roman", serif);
  font-size: clamp(28px, 4vw, 38px);
  line-height: 1.04;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__text {
  color: #5e554b;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__button {
  min-height: 48px;
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__button:hover,
html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__button:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] #events-calendar-view {
  padding-bottom: 86px;
  background:
    radial-gradient(circle at 10% 0%, rgba(212, 189, 151, 0.22), transparent 28%),
    linear-gradient(180deg, #fbfbfb 0%, #f7f0e5 48%, #fbf7ef 100%);
  color: #0b0a08;
}

html[data-site="statius"] #events-calendar-view .events-calendar-shell {
  width: min(100% - 160px, 1280px);
  max-width: 1280px;
}

html[data-site="statius"] #events-calendar-view .events-calendar-title,
html[data-site="statius"] #events-calendar-view .events-calendar-month-head h2,
html[data-site="statius"] #events-calendar-view .events-calendar-mobile-month h2 {
  color: #0b0a08;
  font-family: var(--statius-serif, Georgia, "Times New Roman", serif);
}

html[data-site="statius"] #events-calendar-view .events-calendar-breadcrumbs,
html[data-site="statius"] #events-calendar-view .events-calendar-breadcrumbs a,
html[data-site="statius"] #events-calendar-view .events-calendar-month-head p,
html[data-site="statius"] #events-calendar-view .events-calendar-weekdays span,
html[data-site="statius"] #events-calendar-view .events-calendar-mobile-empty,
html[data-site="statius"] #events-calendar-view .events-calendar-agenda-head span,
html[data-site="statius"] #events-calendar-view .events-calendar-agenda-item p,
html[data-site="statius"] #events-calendar-view .events-calendar-overlay-empty {
  color: #665d52;
}

html[data-site="statius"] #events-calendar-view .events-calendar-back,
html[data-site="statius"] #events-calendar-view .events-calendar-filter-pill,
html[data-site="statius"] #events-calendar-view .events-calendar-month-nav button {
  border: 1px solid #cbbda8;
  border-radius: 8px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-back:hover,
html[data-site="statius"] #events-calendar-view .events-calendar-filter-pill:hover,
html[data-site="statius"] #events-calendar-view .events-calendar-month-nav button:hover {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-filter-label {
  color: #7d7468;
}

html[data-site="statius"] #events-calendar-view .events-calendar-filter-value,
html[data-site="statius"] #events-calendar-view .events-calendar-request-text,
html[data-site="statius"] #events-calendar-view .events-calendar-request-arrow {
  color: #0b0a08;
}

html[data-site="statius"] #events-calendar-view .events-calendar-filter-circle {
  border: 1px solid #d4c7b5;
  border-radius: 6px;
  background: #f7f1e7;
  color: #0b0a08;
}

html[data-site="statius"] #events-calendar-view .events-calendar-request-cta::before {
  display: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-request-text,
html[data-site="statius"] #events-calendar-view .events-calendar-request-arrow {
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-request-cta:hover .events-calendar-request-text,
html[data-site="statius"] #events-calendar-view .events-calendar-request-cta:focus-visible .events-calendar-request-text,
html[data-site="statius"] #events-calendar-view .events-calendar-request-cta:hover .events-calendar-request-arrow,
html[data-site="statius"] #events-calendar-view .events-calendar-request-cta:focus-visible .events-calendar-request-arrow {
  border-color: #0b0a08;
  border-radius: 8px;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-filter-popover,
html[data-site="statius"] #events-calendar-view .events-calendar-main,
html[data-site="statius"] #events-calendar-view .events-calendar-mobile-agenda,
html[data-site="statius"] #events-calendar-view .events-calendar-day-overlay {
  border: 1px solid #d7c8b5;
  border-radius: 12px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-filter-option {
  border-radius: 6px;
  color: #3f382f;
}

html[data-site="statius"] #events-calendar-view .events-calendar-filter-option:hover,
html[data-site="statius"] #events-calendar-view .events-calendar-filter-option.is-selected {
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-panel-status,
html[data-site="statius"] #events-calendar-view .events-calendar-day,
html[data-site="statius"] #events-calendar-view .events-calendar-agenda-day,
html[data-site="statius"] #events-calendar-view .events-calendar-agenda-item.is-link:hover,
html[data-site="statius"] #events-calendar-view .events-calendar-overlay-card,
html[data-site="statius"] #events-calendar-view .events-calendar-overlay-datebox {
  border: 1px solid #d7c8b5;
  border-radius: 12px;
  background: #fbf7ef;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-day:hover,
html[data-site="statius"] #events-calendar-view .events-calendar-overlay-card:hover {
  border-color: #0b0a08;
  background: #f3eadc;
  transform: translateY(-1px);
  box-shadow: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-day.is-selected,
html[data-site="statius"] #events-calendar-view .events-calendar-day.is-today {
  border-color: #0b0a08;
  background: #fffdf9;
  box-shadow: inset 0 0 0 1px rgba(11, 10, 8, 0.08);
}

html[data-site="statius"] #events-calendar-view .events-calendar-day-number,
html[data-site="statius"] #events-calendar-view .events-calendar-day.is-today .events-calendar-day-number,
html[data-site="statius"] #events-calendar-view .events-calendar-day.is-selected .events-calendar-day-number {
  border: 1px solid #0b0a08;
  border-radius: 6px;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-chip,
html[data-site="statius"] #events-calendar-view .events-calendar-more-chip,
html[data-site="statius"] #events-calendar-view .events-calendar-time-pill,
html[data-site="statius"] #events-calendar-view .events-calendar-type-pill {
  border: 1px solid #cdbfa8;
  border-radius: 4px;
  background: #f7f1e7;
  color: #3f382f;
  box-shadow: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-chip::before,
html[data-site="statius"] #events-calendar-view .events-calendar-day-overlay::before,
html[data-site="statius"] #events-calendar-view .events-calendar-day-overlay::after {
  display: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-overlay-close,
html[data-site="statius"] #events-calendar-view .events-calendar-overlay-empty-cta,
html[data-site="statius"] #events-calendar-view .events-calendar-overlay-action,
html[data-site="statius"] #events-calendar-view .events-calendar-status-action {
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-overlay-close:hover,
html[data-site="statius"] #events-calendar-view .events-calendar-overlay-empty-cta:hover,
html[data-site="statius"] #events-calendar-view .events-calendar-overlay-action:hover,
html[data-site="statius"] #events-calendar-view .events-calendar-status-action:hover {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-overlay-datebox h3,
html[data-site="statius"] #events-calendar-view .events-calendar-overlay-card h4,
html[data-site="statius"] #events-calendar-view .events-calendar-agenda-head strong,
html[data-site="statius"] #events-calendar-view .events-calendar-agenda-item h4,
html[data-site="statius"] #events-calendar-view .events-calendar-overlay-price,
html[data-site="statius"] #events-calendar-view .events-calendar-agenda-time,
html[data-site="statius"] #events-calendar-view .events-calendar-status-text {
  color: #0b0a08;
}

html[data-site="statius"] #events-calendar-view .events-calendar-scroll-progress {
  background: #e8ddcd;
  box-shadow: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-scroll-progress::before {
  background: #0b0a08;
  box-shadow: none;
}

@media (max-width: 1180px) {
  html[data-site="statius"] #events-calendar-view .events-calendar-shell {
    width: min(100% - 56px, 1280px);
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] #events-calendar-view .events-calendar-shell {
    width: min(100% - 32px, 1280px);
  }

  html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__inner {
    padding: 28px 22px;
  }
}

/* Statius /events/all final polish: modal fit, split CTA, dropdown icons, card rhythm. */
html[data-site="statius"] #all-events-view .all-events-top-container {
  padding-top: 40px;
  padding-bottom: 32px;
}

html[data-site="statius"] #all-events-view .all-events-header {
  margin-bottom: 24px;
}

html[data-site="statius"] #all-events-view .all-events-controls-row {
  margin-top: 24px;
}

html[data-site="statius"] #all-events-view .card.event .event-card-inner::before {
  aspect-ratio: 4 / 3;
}

html[data-site="statius"] #all-events-view .card.event .poster-strip {
  padding-top: 16px;
}

html[data-site="statius"] #all-events-view .card.event .card-content {
  padding-top: 14px;
}

html[data-site="statius"] #all-events-view .card.event .event-price,
html[data-site="statius"] #all-events-view .card.event .event-price.is-request {
  margin-top: 14px;
}

html[data-site="statius"] #all-events-view .card.event .card-action-row {
  padding-top: 18px;
}

html[data-site="statius"] #all-events-view .card.event .event-tag,
html[data-site="statius"] #all-events-view .card.event .event-price,
html[data-site="statius"] #all-events-view .card.event .event-price.is-request,
html[data-site="statius"] #events-calendar-view .events-calendar-chip,
html[data-site="statius"] #events-calendar-view .events-calendar-more-chip,
html[data-site="statius"] #events-calendar-view .events-calendar-time-pill,
html[data-site="statius"] #events-calendar-view .events-calendar-type-pill {
  border: 1px solid #cdbfa8;
  border-radius: 4px;
  background: #f7f1e7;
  color: #3f382f;
  box-shadow: none;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-arrow,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.is-open .filter-arrow,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card:hover .filter-arrow {
  border: 1px solid #d4c7b5;
  border-radius: 6px;
  background: #f7f1e7;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-card.is-open .filter-arrow {
  border-color: #0b0a08;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-option,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-option.is-selected {
  color: #3f382f;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-option:hover,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-option.is-selected {
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-option.is-selected::before {
  color: #0b0a08;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .filter-options,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .date-panel {
  box-shadow: none;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row {
  display: flex;
  gap: 0;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-btn,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-arrow {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-btn {
  border-radius: 8px 0 0 8px;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-arrow {
  border-left: 0;
  border-radius: 0 8px 8px 0;
}

html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row:hover .all-events-request-btn,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row:focus-within .all-events-request-btn,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row:hover .all-events-request-arrow,
html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row:focus-within .all-events-request-arrow {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] body.modal-open--all-events-request-help .modal-backdrop {
  background: rgba(11, 10, 8, 0.34);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

html[data-site="statius"] .modal-dialog--all-events-request-help {
  width: min(600px, calc(100vw - 32px));
  max-height: calc(100dvh - 48px);
  overflow: hidden;
  border-radius: 16px;
  box-shadow: none;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .modal-body {
  max-height: calc(100dvh - 48px);
  overflow-y: auto;
  overflow-x: hidden;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .modal-body > .all-events-request-modal-shell,
html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal {
  max-width: 100%;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__inner {
  padding: 40px 44px;
  border-radius: 16px;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__content {
  padding-left: 16px;
  padding-right: 16px;
}

html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__actions {
  margin-top: 24px;
}

html[data-site="statius"] #events-calendar-view .events-calendar-filter-circle,
html[data-site="statius"] #events-calendar-view .events-calendar-filter-pill:hover .events-calendar-filter-circle {
  border: 1px solid #d4c7b5;
  border-radius: 6px;
  background: #f7f1e7;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #events-calendar-view .events-calendar-filter-option.is-selected::before {
  color: #0b0a08;
}

@media (max-width: 640px) {
  html[data-site="statius"] #all-events-view .all-events-top-container {
    padding-top: 32px;
    padding-bottom: 24px;
  }

  html[data-site="statius"] #all-events-view .card.event .event-card-inner::before {
    aspect-ratio: 4 / 3;
  }

  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-action-row {
    width: 100%;
  }

  html[data-site="statius"] #all-events-view [data-all-events-filters].all-events-filters--expand .all-events-request-btn {
    flex: 1 1 auto;
    min-width: 0;
  }

  html[data-site="statius"] .modal-dialog--all-events-request-help {
    width: calc(100vw - 32px);
    max-height: calc(100dvh - 48px);
  }

  html[data-site="statius"] .modal-dialog--all-events-request-help .modal-body {
    max-height: calc(100dvh - 48px);
  }

  html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__inner {
    padding: 24px;
  }

  html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__content {
    padding: 12px 0 0;
    gap: 12px;
  }

  html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__close {
    top: 12px;
    right: 12px;
  }

  html[data-site="statius"] .modal-dialog--all-events-request-help .all-events-request-modal__title {
    font-size: clamp(25px, 8vw, 30px);
  }
}

/* Statius request flow: light concierge form system. */
html[data-site="statius"] #requestLanding.section,
html[data-site="statius"] #requestForm.section,
html[data-site="statius"] #requestSuccess.section {
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.96), rgba(247, 241, 231, 0.92)),
    #f7f1e7;
  color: #1a1c1c;
}

html[data-site="statius"] #requestForm.section {
  padding: 56px 0 72px;
}

html[data-site="statius"] #requestLanding .request-flow-card,
html[data-site="statius"] #requestSuccess .request-flow-card,
html[data-site="statius"] #requestForm .request-form {
  border: 1px solid #d8cbb8;
  border-radius: 24px;
  background: #fffdf9;
  box-shadow: none;
  color: #1a1c1c;
}

html[data-site="statius"] #requestLanding .request-flow-card,
html[data-site="statius"] #requestSuccess .request-flow-card {
  padding: 32px;
}

html[data-site="statius"] #requestForm .request-form {
  gap: 24px;
  overflow: visible;
  padding: 32px;
}

html[data-site="statius"] #requestForm .request-flow-head {
  gap: 20px;
}

html[data-site="statius"] #requestForm .request-flow-head-top {
  grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.9fr);
  gap: 24px;
}

html[data-site="statius"] #requestForm .request-flow-head-main {
  gap: 16px;
}

html[data-site="statius"] #requestForm .request-flow-head-main h2,
html[data-site="statius"] #requestLanding .request-flow-card h2,
html[data-site="statius"] #requestSuccess .request-flow-card h2 {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(36px, 4vw, 56px);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.08;
}

html[data-site="statius"] #requestLanding .request-flow-card p,
html[data-site="statius"] #requestSuccess .request-flow-card p,
html[data-site="statius"] #requestForm .request-flow-head-info p,
html[data-site="statius"] #requestForm .request-step-head p,
html[data-site="statius"] #requestForm .request-submit-note {
  color: #5f5648;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
}

html[data-site="statius"] #requestForm .request-flow-intro-pills {
  gap: 8px;
}

html[data-site="statius"] #requestForm .request-flow-intro-pill,
html[data-site="statius"] #requestForm .request-city-badge {
  min-height: 28px;
  border: 1px solid #d8cbb8;
  border-radius: 4px;
  background: #f7f1e7;
  color: #3f382f;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 11px;
  font-weight: 650;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

html[data-site="statius"] #requestForm .request-flow-head-info {
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #f7f1e7;
  box-shadow: none;
  padding: 24px;
}

html[data-site="statius"] #requestForm .request-flow-head-info h3 {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.18;
}

html[data-site="statius"] #requestForm .request-stepper {
  gap: 8px;
}

html[data-site="statius"] #requestForm .request-step-pill {
  min-height: 48px;
  border: 1px solid #d8cbb8;
  border-radius: 12px;
  background: #f7f1e7;
  color: #3f382f;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0.04em;
  box-shadow: none;
}

html[data-site="statius"] #requestForm .request-step-pill:hover,
html[data-site="statius"] #requestForm .request-step-pill:focus-visible {
  border-color: #0b0a08;
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #requestForm .request-step-pill.is-active {
  border-color: #0b0a08;
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #requestForm .request-step-pill.is-complete {
  border-color: #665d4e;
  background: #ebdecb;
  color: #211b0f;
}

html[data-site="statius"] #requestForm .request-step-index {
  width: 22px;
  height: 22px;
  border: 1px solid #cdbfa8;
  border-radius: 4px;
  background: #fffdf9;
  color: inherit;
}

html[data-site="statius"] #requestForm .request-step-pill.is-active .request-step-index,
html[data-site="statius"] #requestForm .request-step-pill.is-complete .request-step-index {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
}

html[data-site="statius"] #requestForm .request-flow-layout {
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.9fr);
  gap: 24px;
}

html[data-site="statius"] #requestForm .request-step-section,
html[data-site="statius"] #requestForm .request-summary-card,
html[data-site="statius"] #requestForm .recommendation-slide,
html[data-site="statius"] #requestForm .recommendation-final-card {
  border: 1px solid #d8cbb8;
  background: #fffdf9;
  box-shadow: none;
  color: #1a1c1c;
}

html[data-site="statius"] #requestForm .request-step-section {
  border-radius: 16px;
  gap: 20px;
  padding: 24px;
}

html[data-site="statius"] #requestForm .request-step-head {
  gap: 8px;
}

html[data-site="statius"] #requestForm .request-step-head h3 {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 28px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.18;
}

html[data-site="statius"] #requestForm .request-step-grid {
  gap: 16px;
}

html[data-site="statius"] #requestForm .request-field {
  gap: 8px;
}

html[data-site="statius"] #requestForm .request-field > span {
  color: #4e4638;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1;
  text-transform: uppercase;
}

html[data-site="statius"] #requestForm .request-form input[type="text"],
html[data-site="statius"] #requestForm .request-form input[type="number"],
html[data-site="statius"] #requestForm .request-form select,
html[data-site="statius"] #requestForm .request-form textarea {
  min-height: 48px;
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background-color: #fff;
  color: #0b0a08;
  color-scheme: light;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 15px;
  line-height: 1.45;
  box-shadow: none;
}

html[data-site="statius"] #requestForm .request-form input::placeholder,
html[data-site="statius"] #requestForm .request-form textarea::placeholder {
  color: #8a7f6f;
}

html[data-site="statius"] #requestForm .request-form select {
  background-image:
    linear-gradient(45deg, transparent 50%, #4e4638 50%),
    linear-gradient(135deg, #4e4638 50%, transparent 50%);
}

html[data-site="statius"] #requestForm .request-form select option {
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #requestForm .request-form input[type="text"]:hover,
html[data-site="statius"] #requestForm .request-form input[type="number"]:hover,
html[data-site="statius"] #requestForm .request-form select:hover,
html[data-site="statius"] #requestForm .request-form textarea:hover {
  border-color: #b9ab96;
  background-color: #fffdf9;
}

html[data-site="statius"] #requestForm .request-form input[type="text"]:focus-visible,
html[data-site="statius"] #requestForm .request-form input[type="number"]:focus-visible,
html[data-site="statius"] #requestForm .request-form select:focus-visible,
html[data-site="statius"] #requestForm .request-form textarea:focus-visible {
  outline: none;
  border-color: #0b0a08;
  background-color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #requestForm .request-form input[type="text"]:disabled,
html[data-site="statius"] #requestForm .request-form input[type="number"]:disabled,
html[data-site="statius"] #requestForm .request-form select:disabled,
html[data-site="statius"] #requestForm .request-form textarea:disabled {
  background: #eee1ce;
  color: #6b6152;
}

html[data-site="statius"] #requestForm .recommendation-slider {
  min-height: 128px;
  margin-top: 0;
}

html[data-site="statius"] #requestForm .recommendation-slide,
html[data-site="statius"] #requestForm .recommendation-final-card {
  border-radius: 12px;
  padding: 18px;
}

html[data-site="statius"] #requestForm .recommendation-final-grid {
  gap: 12px;
}

html[data-site="statius"] #requestForm .recommendation-slide h4,
html[data-site="statius"] #requestForm .recommendation-final-card h4 {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.22;
}

html[data-site="statius"] #requestForm .recommendation-slide p,
html[data-site="statius"] #requestForm .recommendation-final-card p {
  color: #5f5648;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 13px;
  line-height: 1.5;
}

html[data-site="statius"] #requestForm .request-summary-card {
  border-radius: 16px;
  padding: 24px;
  top: 96px;
}

html[data-site="statius"] #requestForm .request-summary-card h3 {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
}

html[data-site="statius"] #requestForm .request-summary-list {
  gap: 0;
}

html[data-site="statius"] #requestForm .request-summary-row {
  gap: 6px;
  padding: 12px 0;
  border-bottom: 1px solid #eadfcd;
}

html[data-site="statius"] #requestForm .request-summary-row dt {
  color: #6b6152;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
}

html[data-site="statius"] #requestForm .request-summary-row dd {
  color: #1a1c1c;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.45;
}

html[data-site="statius"] #requestForm .request-summary-toggle {
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #requestForm .request-city-badge {
  margin-top: 8px;
  padding: 6px 10px;
}

html[data-site="statius"] #requestForm .form-error,
html[data-site="statius"] #requestLanding .form-error {
  border: 1px solid #e0aaa4;
  border-radius: 12px;
  background: #fff3f1;
  color: #93000a;
  padding: 12px 14px;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 14px;
}

html[data-site="statius"] #requestForm .request-flow-back,
html[data-site="statius"] #requestForm .btn.btn-outline,
html[data-site="statius"] #requestSuccess .btn.btn-outline {
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #requestForm .btn.btn-primary,
html[data-site="statius"] #requestLanding .btn.btn-primary,
html[data-site="statius"] #requestSuccess .btn.btn-primary {
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #requestForm .request-flow-back:hover,
html[data-site="statius"] #requestForm .request-flow-back:focus-visible,
html[data-site="statius"] #requestForm .btn:hover,
html[data-site="statius"] #requestForm .btn:focus-visible,
html[data-site="statius"] #requestLanding .btn:hover,
html[data-site="statius"] #requestLanding .btn:focus-visible,
html[data-site="statius"] #requestSuccess .btn:hover,
html[data-site="statius"] #requestSuccess .btn:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] #requestForm .btn:disabled,
html[data-site="statius"] #requestForm .btn[disabled] {
  border-color: #d8cbb8;
  background: #eee1ce;
  color: #6b6152;
  opacity: 1;
}

html[data-site="statius"] #requestSuccess .request-success-card {
  text-align: left;
}

html[data-site="statius"] #requestSuccess .request-success-number {
  color: #5f5648;
}

html[data-site="statius"] #requestSuccess .request-success-number strong {
  color: #0b0a08;
}

@media (max-width: 980px) {
  html[data-site="statius"] #requestForm .request-flow-head-top,
  html[data-site="statius"] #requestForm .request-flow-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #requestForm .request-summary-card {
    position: static;
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] #requestForm.section {
    padding: 32px 0 48px;
  }

  html[data-site="statius"] #requestForm .request-form {
    gap: 18px;
    padding: 20px;
    border-radius: 16px;
  }

  html[data-site="statius"] #requestForm .request-flow-head-main h2,
  html[data-site="statius"] #requestLanding .request-flow-card h2,
  html[data-site="statius"] #requestSuccess .request-flow-card h2 {
    font-size: 32px;
  }

  html[data-site="statius"] #requestForm .request-flow-head-info,
  html[data-site="statius"] #requestForm .request-step-section,
  html[data-site="statius"] #requestForm .request-summary-card {
    padding: 18px;
    border-radius: 14px;
  }

  html[data-site="statius"] #requestForm .request-stepper {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #requestForm .request-step-pill {
    justify-content: flex-start;
    min-height: 44px;
  }

  html[data-site="statius"] #requestForm .request-step-grid--search,
  html[data-site="statius"] #requestForm .request-step-grid--params,
  html[data-site="statius"] #requestForm .request-step-grid--contact,
  html[data-site="statius"] #requestForm .recommendation-final-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #requestForm .recommendation-slider {
    min-height: 360px;
  }

  html[data-site="statius"] #requestForm .request-step-head h3,
  html[data-site="statius"] #requestForm .request-summary-card h3 {
    font-size: 24px;
  }
}

/* Statius request flow bugfix: static helper cards, stable fields, light calendar. */
html[data-site="statius"] #requestForm .recommendation-rotator {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  animation: none !important;
  transition: none !important;
  transform: none !important;
}

html[data-site="statius"] #requestForm .recommendation-slide {
  animation: none !important;
  transition: none !important;
}

html[data-site="statius"] #requestForm .recommendation-final-grid {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
  transition: none !important;
}

html[data-site="statius"] #requestForm .recommendation-final-card,
html[data-site="statius"] #requestForm .recommendation-final-card:nth-child(1),
html[data-site="statius"] #requestForm .recommendation-final-card:nth-child(2),
html[data-site="statius"] #requestForm .recommendation-final-card:nth-child(3) {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
  animation-delay: 0s !important;
}

html[data-site="statius"] #requestForm .recommendation-final-card {
  transition:
    border-color 0.16s ease,
    background-color 0.16s ease,
    color 0.16s ease;
}

html[data-site="statius"] #requestForm .recommendation-final-card:hover {
  border-color: #0b0a08;
  background: #fffdf9;
  transform: none !important;
  box-shadow: none;
}

html[data-site="statius"] #requestForm .request-form input[type="text"],
html[data-site="statius"] #requestForm .request-form input[type="number"],
html[data-site="statius"] #requestForm .request-form input[type="email"],
html[data-site="statius"] #requestForm .request-form input[type="tel"],
html[data-site="statius"] #requestForm .request-form select,
html[data-site="statius"] #requestForm .request-form textarea {
  border-color: #d8cbb8 !important;
  background-color: #fff !important;
  color: #0b0a08 !important;
  color-scheme: light;
  accent-color: #0b0a08;
  box-shadow: none !important;
}

html[data-site="statius"] #requestForm .request-form select {
  appearance: none;
  -webkit-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, #3f382f 50%),
    linear-gradient(135deg, #3f382f 50%, transparent 50%) !important;
  background-position:
    calc(100% - 18px) 50%,
    calc(100% - 12px) 50% !important;
  background-size:
    6px 6px,
    6px 6px !important;
  background-repeat: no-repeat !important;
  padding-right: 42px;
}

html[data-site="statius"] #requestForm .request-form input[type="text"]:hover,
html[data-site="statius"] #requestForm .request-form input[type="number"]:hover,
html[data-site="statius"] #requestForm .request-form input[type="email"]:hover,
html[data-site="statius"] #requestForm .request-form input[type="tel"]:hover,
html[data-site="statius"] #requestForm .request-form select:hover,
html[data-site="statius"] #requestForm .request-form textarea:hover,
html[data-site="statius"] #requestForm .request-form input[type="text"]:active,
html[data-site="statius"] #requestForm .request-form input[type="number"]:active,
html[data-site="statius"] #requestForm .request-form input[type="email"]:active,
html[data-site="statius"] #requestForm .request-form input[type="tel"]:active,
html[data-site="statius"] #requestForm .request-form select:active,
html[data-site="statius"] #requestForm .request-form textarea:active,
html[data-site="statius"] #requestForm .request-form input[type="text"]:focus,
html[data-site="statius"] #requestForm .request-form input[type="number"]:focus,
html[data-site="statius"] #requestForm .request-form input[type="email"]:focus,
html[data-site="statius"] #requestForm .request-form input[type="tel"]:focus,
html[data-site="statius"] #requestForm .request-form select:focus,
html[data-site="statius"] #requestForm .request-form textarea:focus,
html[data-site="statius"] #requestForm .request-form input[type="text"]:focus-visible,
html[data-site="statius"] #requestForm .request-form input[type="number"]:focus-visible,
html[data-site="statius"] #requestForm .request-form input[type="email"]:focus-visible,
html[data-site="statius"] #requestForm .request-form input[type="tel"]:focus-visible,
html[data-site="statius"] #requestForm .request-form select:focus-visible,
html[data-site="statius"] #requestForm .request-form textarea:focus-visible,
html[data-site="statius"] #requestForm .request-form select[aria-expanded="true"],
html[data-site="statius"] #requestForm .request-form select.is-open {
  border-color: #0b0a08 !important;
  background-color: #fffdf9 !important;
  color: #0b0a08 !important;
  outline: none !important;
  box-shadow: none !important;
}

html[data-site="statius"] #requestForm .request-form input[type="text"]:disabled,
html[data-site="statius"] #requestForm .request-form input[type="number"]:disabled,
html[data-site="statius"] #requestForm .request-form input[type="email"]:disabled,
html[data-site="statius"] #requestForm .request-form input[type="tel"]:disabled,
html[data-site="statius"] #requestForm .request-form select:disabled,
html[data-site="statius"] #requestForm .request-form textarea:disabled {
  border-color: #d8cbb8 !important;
  background-color: #eee1ce !important;
  color: #6b6152 !important;
  opacity: 1;
}

html[data-site="statius"] #requestForm .request-form select option,
html[data-site="statius"] #requestForm .request-form select optgroup {
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #requestForm .request-form select option:checked {
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] #requestForm .request-form input:-webkit-autofill,
html[data-site="statius"] #requestForm .request-form textarea:-webkit-autofill,
html[data-site="statius"] #requestForm .request-form select:-webkit-autofill {
  -webkit-text-fill-color: #0b0a08;
  -webkit-box-shadow: 0 0 0 1000px #fff inset;
  caret-color: #0b0a08;
}

html[data-site="statius"] .date-picker {
  width: min(420px, calc(100vw - 32px)) !important;
  max-width: calc(100vw - 32px);
  padding: 16px;
  border: 1px solid #d8cbb8;
  border-radius: 12px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] .date-picker-header {
  gap: 12px;
  padding: 0 0 14px;
}

html[data-site="statius"] .date-picker-title {
  color: #0b0a08;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 13px;
  font-weight: 750;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

html[data-site="statius"] .date-picker-controls {
  gap: 8px;
}

html[data-site="statius"] .date-picker-nav,
html[data-site="statius"] .date-picker-btn {
  width: 36px;
  height: 36px;
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background: #f7f1e7;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] .date-picker-nav:hover,
html[data-site="statius"] .date-picker-btn:hover,
html[data-site="statius"] .date-picker-nav:focus-visible,
html[data-site="statius"] .date-picker-btn:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  outline: none;
  box-shadow: none;
}

html[data-site="statius"] .date-picker-nav:disabled,
html[data-site="statius"] .date-picker-btn:disabled {
  border-color: #d8cbb8;
  background: #eee1ce;
  color: #8a7f6f;
  opacity: 1;
  box-shadow: none;
}

html[data-site="statius"] .date-picker-weekdays {
  gap: 6px;
  padding: 0 0 8px;
  color: #6b6152;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

html[data-site="statius"] .date-picker-grid {
  gap: 6px;
}

html[data-site="statius"] .date-day {
  height: 40px;
  border: 1px solid #eadfcd;
  border-radius: 8px;
  background: #fff;
  color: #0b0a08;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 13px;
  font-weight: 650;
  box-shadow: none;
}

html[data-site="statius"] .date-day:hover,
html[data-site="statius"] .date-day:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  outline: none;
  box-shadow: none;
}

html[data-site="statius"] .date-day.is-muted {
  border-color: #eadfcd;
  background: #f7f1e7;
  color: #9a8e7f;
  opacity: 1;
}

html[data-site="statius"] .date-day.is-today {
  border-color: #0b0a08;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] .date-day.is-selected {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] .date-day.is-selected:hover,
html[data-site="statius"] .date-day.is-selected:focus-visible {
  background: #0b0a08;
  color: #fff;
}

html[data-site="statius"] .date-picker.date-picker--compact {
  width: min(340px, calc(100vw - 32px)) !important;
  padding: 12px;
}

html[data-site="statius"] .date-picker.date-picker--compact .date-picker-title {
  font-size: 11px;
}

html[data-site="statius"] .date-picker.date-picker--compact .date-picker-nav {
  width: 32px;
  height: 32px;
  border-radius: 8px;
}

html[data-site="statius"] .date-picker.date-picker--compact .date-picker-weekdays {
  gap: 4px;
  font-size: 9px;
}

html[data-site="statius"] .date-picker.date-picker--compact .date-picker-grid {
  gap: 4px;
}

html[data-site="statius"] .date-picker.date-picker--compact .date-day {
  height: 34px;
  border-radius: 8px;
  font-size: 12px;
}

@media (max-width: 640px) {
  html[data-site="statius"] .date-picker {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px);
    padding: 12px;
  }

  html[data-site="statius"] .date-picker-title {
    font-size: 11px;
    letter-spacing: 0.06em;
  }

  html[data-site="statius"] .date-picker-nav,
  html[data-site="statius"] .date-picker-btn {
    width: 34px;
    height: 34px;
  }

  html[data-site="statius"] .date-picker-weekdays {
    gap: 4px;
    font-size: 9px;
  }

  html[data-site="statius"] .date-picker-grid {
    gap: 4px;
  }

  html[data-site="statius"] .date-day {
    height: 36px;
    border-radius: 8px;
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-site="statius"] #requestForm .recommendation-final-card {
    transition: none !important;
  }
}

/* Statius homepage event controls: reference-style row, real navigation only. */
html[data-site="statius"] .statius-events .statius-section-head {
  margin-bottom: 24px;
}

html[data-site="statius"] .statius-event-controls {
  width: min(100%, 760px);
  margin: 26px auto 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
}

html[data-site="statius"] .statius-event-control,
html[data-site="statius"] .statius-events-viewall.statius-event-control {
  min-width: 112px;
  min-height: 32px;
  height: 32px;
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #cbbda8;
  border-radius: 4px;
  background: #fffdf9;
  color: #17120d;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 760;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  box-shadow: none;
  transition:
    background-color 0.16s ease,
    border-color 0.16s ease,
    color 0.16s ease;
}

html[data-site="statius"] .statius-event-control:hover,
html[data-site="statius"] .statius-event-control:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  outline: none;
  box-shadow: none;
}

html[data-site="statius"] .statius-event-control--primary,
html[data-site="statius"] .statius-events-viewall.statius-event-control--primary {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fff;
}

html[data-site="statius"] .statius-event-control--primary:hover,
html[data-site="statius"] .statius-event-control--primary:focus-visible,
html[data-site="statius"] .statius-events-viewall.statius-event-control--primary:hover,
html[data-site="statius"] .statius-events-viewall.statius-event-control--primary:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] .statius-events-footer {
  display: none !important;
}

@media (max-width: 768px) {
  html[data-site="statius"] .statius-event-controls {
    width: min(100%, 520px);
    margin-top: 24px;
    margin-bottom: 28px;
    gap: 8px;
  }

  html[data-site="statius"] .statius-event-control,
  html[data-site="statius"] .statius-events-viewall.statius-event-control {
    min-width: 104px;
  }
}

@media (max-width: 480px) {
  html[data-site="statius"] .statius-event-controls {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html[data-site="statius"] .statius-event-control,
  html[data-site="statius"] .statius-events-viewall.statius-event-control {
    width: 100%;
    min-width: 0;
    padding-left: 10px;
    padding-right: 10px;
  }

  html[data-site="statius"] .statius-event-control--primary,
  html[data-site="statius"] .statius-events-viewall.statius-event-control--primary {
    grid-column: 1 / -1;
  }
}

/* Statius event detail / 3-step checkout flow: light visual layer only. */
html[data-site="statius"] {
  --statius-flow-ink: #0b0a08;
  --statius-flow-muted: #6f6252;
  --statius-flow-soft: #8f806d;
  --statius-flow-bg: #f6efe4;
  --statius-flow-surface: #fffdf9;
  --statius-flow-surface-warm: #fbf6ed;
  --statius-flow-border: #d8cbb8;
  --statius-flow-border-strong: #0b0a08;
  --statius-flow-line: rgba(216, 203, 184, 0.86);
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view).event-flow-section {
  padding: clamp(28px, 4vw, 56px) 0 clamp(56px, 6vw, 88px);
  background:
    radial-gradient(circle at 8% 0%, rgba(255, 253, 249, 0.9) 0, transparent 34%),
    linear-gradient(180deg, #fbf6ed 0%, var(--statius-flow-bg) 100%);
  color: var(--statius-flow-ink);
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) > .container {
  width: min(100%, 1280px);
  max-width: 1280px;
  padding-inline: clamp(16px, 3vw, 32px);
}

html[data-site="statius"] :is(.event-route-layout, .tickets-route-layout, .checkout-route-layout),
html[data-site="statius"] :is(.event-route-shell, .tickets-route-shell, .checkout-route-shell) {
  gap: 20px;
  color: var(--statius-flow-ink);
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .event-flow-topbar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  margin-bottom: 4px;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .cwt-back-merge {
  --merge-gap: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid var(--statius-flow-border-strong);
  border-radius: 6px;
  background: var(--statius-flow-surface);
  color: var(--statius-flow-ink);
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  transform: none;
  transition:
    background-color .18s ease,
    border-color .18s ease,
    color .18s ease,
    transform .18s ease;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .cwt-back-merge::before {
  content: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .cwt-back-part {
  min-height: 0;
  height: auto;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  transform: none;
  transition: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .cwt-back-icon {
  width: auto;
  flex: 0 0 auto;
  font-size: 14px;
  line-height: 1;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .cwt-back-text {
  flex: 0 1 auto;
  max-width: none;
  padding: 0;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 12px;
  font-weight: 760;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: visible;
  text-overflow: clip;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .cwt-back-merge:hover,
html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .cwt-back-merge:focus-visible {
  gap: 8px;
  border-color: var(--statius-flow-border-strong);
  background: #f3eadc;
  color: var(--statius-flow-ink);
  transform: translateY(-1px);
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .cwt-back-merge:focus-visible {
  outline: 2px solid var(--statius-flow-border-strong);
  outline-offset: 2px;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .cwt-back-merge:hover {
  outline: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .cwt-back-merge:hover .cwt-back-part,
html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .cwt-back-merge:focus-visible .cwt-back-part {
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper {
  gap: 8px;
  scrollbar-width: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper::-webkit-scrollbar {
  display: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper .step {
  min-height: 40px;
  height: auto;
  padding: 0 14px;
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background: var(--statius-flow-surface);
  color: var(--statius-flow-muted);
  box-shadow: none;
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 11px;
  font-weight: 760;
  line-height: 1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper .step.is-active {
  border-color: var(--statius-flow-border-strong);
  background: #fff;
  color: var(--statius-flow-ink);
  box-shadow: inset 0 -2px 0 var(--statius-flow-ink);
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper .step.is-complete {
  border-color: #b9aa94;
  background: #f3eadc;
  color: var(--statius-flow-ink);
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper .step.is-error {
  border-color: #9f2f24;
  background: #fff2ef;
  color: #7f1d1d;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.modal-header, .modal-title, .modal-subtitle) {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .modal-title {
  font-family: "Playfair Display", Georgia, serif;
  letter-spacing: -0.035em;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .modal-subtitle,
html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .form-note,
html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .checkout-service-disclosure {
  color: var(--statius-flow-muted);
}

html[data-site="statius"] #event-page-view .seo-breadcrumbs,
html[data-site="statius"] #event-page-view .seo-breadcrumbs :is(a, span),
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .seo-breadcrumbs,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .seo-breadcrumbs :is(a, span) {
  color: var(--statius-flow-muted);
}

html[data-site="statius"] #event-page-view .seo-breadcrumbs .seo-breadcrumbs__current,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .seo-breadcrumbs .seo-breadcrumbs__current {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .form-error {
  color: #8f1f17;
  background: #fff2ef;
  border-color: #e4b7ad;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-hero,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .section-card,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-card,
html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(.checkout-seats-form, .checkout-ticket-recipients-card, .checkout-booking-protection-card, .checkout-delivery-card, .checkout-transfer-card, .la-scala-hall-map__comment, .checkout-order-panel),
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.checkout-payment-panel, .checkout-final-summary-card, .checkout-payment-option) {
  border: 1px solid var(--statius-flow-border);
  background: var(--statius-flow-surface);
  color: var(--statius-flow-ink);
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-hero {
  border-radius: 4px;
  overflow: hidden;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-hero-grid {
  grid-template-columns: minmax(0, 1.45fr) minmax(220px, 300px);
  gap: 24px;
  padding: clamp(24px, 3vw, 36px);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-eyebrow {
  min-height: 28px;
  padding: 0 10px;
  border-color: var(--statius-flow-border);
  border-radius: 4px;
  background: #f8efe2;
  color: var(--statius-flow-muted);
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.12em;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-title {
  max-width: 760px;
  color: var(--statius-flow-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(38px, 5vw, 66px);
  font-weight: 600;
  line-height: 1.02;
  letter-spacing: -0.045em;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-byline,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-description p {
  color: var(--statius-flow-muted);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-facts-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-fact,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-time-item,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-row,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-payment-summary-row,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-final-summary-row,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-payment-summary-info-card {
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background: var(--statius-flow-surface-warm);
  color: var(--statius-flow-ink);
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-fact span,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-label,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-pane-label,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-time-item span,
html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(label > span, .checkout-tier-card-control__title, .checkout-ticket-recipients-title, .checkout-booking-protection-title, .checkout-delivery-card-title, .checkout-transfer-card-title),
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.checkout-payment-summary-row span, .checkout-final-summary-row span, .checkout-final-summary-kicker) {
  color: var(--statius-flow-soft);
  font-family: "Hanken Grotesk", Inter, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-fact strong,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-value,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-time-item strong,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-address-place,
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.checkout-payment-summary-row strong, .checkout-final-summary-row strong) {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-fact--price strong,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-row.is-price .checkout-event-summary-value,
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.checkout-payment-summary-row--total strong, .checkout-final-summary-total strong) {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-photo-box,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .event-hero-image-card {
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background:
    linear-gradient(145deg, rgba(255, 253, 249, 0.72), rgba(237, 225, 208, 0.78)),
    radial-gradient(circle at 30% 10%, rgba(194, 159, 99, 0.12), transparent 40%);
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .event-hero-image-card::before {
  opacity: 0;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-hero-grid:has(.checkout-event-photo-box:empty),
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-hero-grid:has(.event-hero-image-card.has-theatre-fallback) {
  grid-template-columns: minmax(0, 1fr);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-hero-media-slot:has(.checkout-event-photo-box:empty),
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-hero-media-slot:has(.event-hero-image-card.has-theatre-fallback),
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-photo-box:empty {
  display: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .event-hero-fallback {
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background: #f3eadc;
  color: var(--statius-flow-muted);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .event-hero-fallback-title {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .event-hero-fallback-subtitle {
  color: var(--statius-flow-muted);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .section-card,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-card {
  border-radius: 6px;
  padding: clamp(18px, 2vw, 24px);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-section-title,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-title,
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.checkout-payment-summary-title, .checkout-final-summary-title, .checkout-payment-option h5, .checkout-payment-option h3),
html[data-site="statius"] #tickets-page-view .tickets-route-shell > .modal-header .modal-title,
html[data-site="statius"] #checkout-page-view .checkout-route-shell > .modal-header .modal-title {
  color: var(--statius-flow-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 600;
  letter-spacing: -0.025em;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-badge {
  border: 1px solid var(--statius-flow-border-strong);
  background: var(--statius-flow-surface);
  color: var(--statius-flow-ink);
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-row.is-price,
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.checkout-payment-summary-row--total, .checkout-final-summary-total) {
  border-color: var(--statius-flow-border-strong);
  background: #fff;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-card {
  top: 92px;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-venue-grid {
  gap: 12px;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-venue-pane--timing,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-time-grid,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-time-item + .checkout-event-time-item,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-map-actions {
  border-color: var(--statius-flow-line);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .event-address-icon,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-copy-address-btn {
  border: 1px solid var(--statius-flow-border);
  background: var(--statius-flow-surface-warm);
  color: var(--statius-flow-ink);
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-address-text,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-time-item small,
html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(.checkout-booking-protection-text, .checkout-delivery-card-text, .checkout-transfer-summary-text, .checkout-tier-request-helper, .checkout-price-request-helper, .checkout-ticket-recipients-text),
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.checkout-payment-option p, .checkout-payment-summary-meta, .checkout-final-summary-meta, .checkout-payment-summary-info-card span) {
  color: var(--statius-flow-muted);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-map-actions .event-address-map-btn,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-grid-toggle.btn,
html[data-site="statius"] #tickets-page-view .tickets-route-shell .btn.btn-outline,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .btn {
  min-height: 36px;
  border: 1px solid var(--statius-flow-border-strong);
  border-radius: 6px;
  background: var(--statius-flow-surface);
  color: var(--statius-flow-ink);
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-map-actions .event-address-map-btn:hover,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-grid-toggle.btn:hover,
html[data-site="statius"] #tickets-page-view .tickets-route-shell .btn.btn-outline:hover,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .btn:hover {
  border-color: var(--statius-flow-border-strong);
  background: #f3eadc;
  color: var(--statius-flow-ink);
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-picker {
  border-color: var(--statius-flow-border);
  background: var(--statius-flow-surface);
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-grid.is-collapsed::after {
  background: linear-gradient(180deg, rgba(255, 253, 249, 0) 0%, rgba(255, 253, 249, 0.96) 100%);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-group-title,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-title {
  color: var(--statius-flow-soft);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-chip {
  min-height: 64px;
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background: var(--statius-flow-surface-warm);
  color: var(--statius-flow-ink);
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-chip-date,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-chip-time {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-chip:hover {
  border-color: var(--statius-flow-border-strong);
  background: #f3eadc;
  transform: translateY(-1px);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-chip.is-active {
  border-color: var(--statius-flow-border-strong);
  background: var(--statius-flow-ink);
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-chip.is-active .session-chip-date,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-chip.is-active .session-chip-time {
  color: #fff;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta, .checkout-seats-merge-cta, .checkout-payment-merge-cta) {
  gap: 8px;
  min-height: 54px;
  height: 54px;
  border-radius: 6px;
  color: #fff;
  filter: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta, .checkout-seats-merge-cta, .checkout-payment-merge-cta)::before {
  content: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta-part, .checkout-seats-merge-cta__part, .checkout-payment-merge-cta__text, .checkout-payment-merge-cta__arrow, .checkout-seats-mobile-sticky-cta-part) {
  min-height: 54px;
  border: 1px solid var(--statius-flow-border-strong);
  background: var(--statius-flow-ink);
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-choice-cta-text,
html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-seats-merge-cta__label,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-payment-merge-cta__text {
  border-radius: 6px;
  padding-inline: 18px;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-choice-cta-icon,
html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-seats-merge-cta__arrow,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-payment-merge-cta__arrow {
  width: 54px;
  flex-basis: 54px;
  border-radius: 6px;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta:hover, .checkout-event-choice-cta:focus-visible, .checkout-seats-merge-cta:hover, .checkout-seats-merge-cta:focus-visible, .checkout-payment-merge-cta:hover, .checkout-payment-merge-cta:focus-visible) {
  gap: 8px;
  transform: translateY(-1px);
  filter: none;
  outline: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta:hover, .checkout-event-choice-cta:focus-visible, .checkout-seats-merge-cta:hover, .checkout-seats-merge-cta:focus-visible, .checkout-payment-merge-cta:hover, .checkout-payment-merge-cta:focus-visible) :is(.checkout-event-choice-cta-part, .checkout-seats-merge-cta__part, .checkout-payment-merge-cta__text, .checkout-payment-merge-cta__arrow, .checkout-seats-mobile-sticky-cta-part) {
  margin: 0;
  border-color: var(--statius-flow-border-strong);
  border-radius: 6px;
  background: #f3eadc;
  color: var(--statius-flow-ink);
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta:disabled, .checkout-seats-merge-cta:disabled, .checkout-payment-merge-cta:disabled) {
  opacity: 0.55;
  transform: none;
  cursor: not-allowed;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell > .modal-header,
html[data-site="statius"] #checkout-page-view .checkout-route-shell > .modal-header {
  padding: 18px 20px;
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background: var(--statius-flow-surface);
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .checkout-seats-shell {
  gap: 18px;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell.checkout-flow--seat-map .checkout-seats-shell {
  grid-template-columns: minmax(360px, 0.95fr) minmax(360px, 1.05fr);
  align-items: start;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(.checkout-seats-form, .checkout-ticket-recipients-card, .checkout-booking-protection-card, .checkout-delivery-card, .checkout-transfer-card, .checkout-order-panel) {
  border-radius: 6px;
  padding: 18px;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(.checkout-seats-form, .checkout-ticket-recipients-card, .checkout-booking-protection-card, .checkout-delivery-card, .checkout-transfer-card).is-required-highlight,
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.checkout-payment-panel, .checkout-final-summary-card).is-required-highlight {
  border-color: #9f2f24;
  background: #fff8f4;
  box-shadow: 0 0 0 1px rgba(159, 47, 36, 0.16);
  animation: none;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(input, select, textarea),
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(input, select, textarea) {
  color-scheme: light;
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background-color: var(--statius-flow-surface);
  color: var(--statius-flow-ink);
  -webkit-text-fill-color: var(--statius-flow-ink);
  box-shadow: none;
  caret-color: var(--statius-flow-ink);
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(select, .checkout-recipient-details-controls label > select, .checkout-seats-form-group > label > select) {
  background-image:
    url("data:image/svg+xml;charset=UTF-8,%3Csvg width='16' height='10' viewBox='0 0 16 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 2L8 8L14 2' stroke='%230b0a08' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: 14px 8px !important;
  background-position: right 12px center !important;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(input, select, textarea):hover,
html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(input, select, textarea):focus-visible,
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(input, select, textarea):hover,
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(input, select, textarea):focus-visible {
  border-color: var(--statius-flow-border-strong);
  background-color: #fff;
  color: var(--statius-flow-ink);
  -webkit-text-fill-color: var(--statius-flow-ink);
  outline: none;
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(select option, .checkout-recipient-details-controls label > select option, .checkout-seats-form-group > label > select option) {
  color: var(--statius-flow-ink);
  background: #fffdf9;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(input, select, textarea):disabled {
  opacity: 0.7;
  background: #f1e8da;
  cursor: not-allowed;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-qty-control {
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background: var(--statius-flow-surface);
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-qty-btn {
  border: 0;
  background: var(--statius-flow-surface-warm);
  color: var(--statius-flow-ink);
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-qty-btn:hover:not(:disabled),
html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-qty-btn:focus-visible:not(:disabled) {
  background: #f3eadc;
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-qty-input {
  background: #fff !important;
  color: var(--statius-flow-ink);
  -webkit-text-fill-color: var(--statius-flow-ink);
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-transfer-toggle {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-transfer-toggle-ui {
  border-color: var(--statius-flow-border);
  background: var(--statius-flow-surface);
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-transfer-toggle input:checked + .checkout-transfer-toggle-ui {
  border-color: var(--statius-flow-border-strong);
  background: var(--statius-flow-ink);
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-tier-card-control__title {
  margin: 0;
  color: var(--statius-flow-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 22px;
  line-height: 1.15;
  text-transform: none;
  letter-spacing: -0.02em;
}

html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card {
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background: var(--statius-flow-surface);
  color: var(--statius-flow-ink);
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card::before,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card::after {
  content: none;
}

html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card:hover,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card:focus-visible,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card.is-zone-hovered {
  border-color: var(--statius-flow-border-strong);
  background: #f3eadc;
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card.is-active,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card.active,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card.is-selected,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .category-card.is-selected,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .price-tier-card.is-selected {
  border-color: var(--statius-flow-border-strong);
  background: var(--statius-flow-ink);
  color: #fff;
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card__swatch {
  border: 1px solid rgba(11, 10, 8, 0.34);
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card__label,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card__price {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card:is(.active, .is-active, .is-selected) .checkout-tier-option-card__label,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card:is(.active, .is-active, .is-selected) .checkout-tier-option-card__price {
  color: #fff;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(.checkout-tier-request-state, .checkout-price-request-status, .checkout-price-request-helper, .checkout-ticket-recipients-state) {
  border-color: var(--statius-flow-border);
  background: var(--statius-flow-surface-warm);
  color: var(--statius-flow-muted);
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .la-scala-hall-map__frame,
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__image-wrap,
html[data-site="statius"] #tickets-page-view .external-event-map-file {
  border: 1px solid var(--statius-flow-border);
  background: var(--statius-flow-surface);
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .la-scala-hall-map__note,
html[data-site="statius"] #tickets-page-view .external-event-map-file__text,
html[data-site="statius"] #tickets-page-view .venue-seat-map__static-notice {
  color: var(--statius-flow-muted);
}

html[data-site="statius"] #tickets-page-view .la-scala-hall-map__comment-title {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #tickets-page-view .la-scala-hall-map__comment-counter {
  color: var(--statius-flow-muted);
}

html[data-site="statius"] #tickets-page-view .external-event-map-file__title {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg .scala-zone:hover,
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg .scala-zone:focus,
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg .scala-zone.is-hovered,
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg [id^="zone-"]:hover,
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg [id^="zone-"].is-hovered,
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg [data-zone-code]:hover,
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg [data-zone-code].is-hovered {
  filter:
    brightness(1.05)
    drop-shadow(0 0 7px rgba(11, 10, 8, 0.22));
}

html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg :is(path, polygon, polyline, circle, ellipse, rect).is-selected,
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg .scala-zone.is-selected :where(path, rect, circle, ellipse, polygon, polyline),
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg [id^="zone-"].is-selected :where(path, rect, circle, ellipse, polygon, polyline),
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg [data-zone-code].is-selected :where(path, polygon, rect, circle, ellipse, polyline),
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__svg [data-zone-code][data-selected="true"] :where(path, polygon, rect, circle, ellipse, polyline) {
  stroke: var(--statius-flow-ink) !important;
  stroke-width: 3px !important;
  filter: drop-shadow(0 0 5px rgba(255, 253, 249, 0.78));
}

html[data-site="statius"] #tickets-page-view .checkout-ticket-recipient-item,
html[data-site="statius"] #tickets-page-view .checkout-ticket-recipient-draft,
html[data-site="statius"] #tickets-page-view .checkout-recipient-details-controls,
html[data-site="statius"] #tickets-page-view .checkout-ticket-recipient-item label {
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background: var(--statius-flow-surface-warm);
  color: var(--statius-flow-ink);
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .checkout-ticket-recipient-draft-save input[type="checkbox"],
html[data-site="statius"] :is(#tickets-page-view, #checkout-page-view) .consent-box {
  border: 1px solid var(--statius-flow-border);
  border-radius: 4px;
  background: #fff;
  box-shadow: none;
}

html[data-site="statius"] #tickets-page-view .checkout-ticket-recipient-draft-save input[type="checkbox"]:checked,
html[data-site="statius"] :is(#tickets-page-view, #checkout-page-view) .consent-row input:checked + .consent-box {
  border-color: var(--statius-flow-border-strong);
  background: var(--statius-flow-ink);
}

html[data-site="statius"] #tickets-page-view .checkout-order-panel {
  position: sticky;
  top: 92px;
}

html[data-site="statius"] #tickets-page-view .checkout-order-title,
html[data-site="statius"] #tickets-page-view .checkout-order-event,
html[data-site="statius"] #tickets-page-view .checkout-order-row strong,
html[data-site="statius"] #tickets-page-view .checkout-order-total strong {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #tickets-page-view .checkout-order-row,
html[data-site="statius"] #tickets-page-view .checkout-order-total {
  border-color: var(--statius-flow-line);
  color: var(--statius-flow-muted);
}

html[data-site="statius"] #tickets-page-view .checkout-order-total {
  border: 1px solid var(--statius-flow-border-strong);
  border-radius: 6px;
  padding: 14px;
  background: #fff;
}

html[data-site="statius"] #tickets-page-view .checkout-consents {
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background: var(--statius-flow-surface-warm);
}

html[data-site="statius"] #tickets-page-view .consent-row,
html[data-site="statius"] #tickets-page-view .consent-text,
html[data-site="statius"] #tickets-page-view .consent-row a,
html[data-site="statius"] #checkout-page-view .consent-row,
html[data-site="statius"] #checkout-page-view .consent-text,
html[data-site="statius"] #checkout-page-view .consent-row a {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #tickets-page-view .checkout-seats-mobile-sticky {
  background: linear-gradient(180deg, rgba(246, 239, 228, 0) 0%, rgba(246, 239, 228, 0.94) 28%, rgba(246, 239, 228, 0.99) 100%);
}

html[data-site="statius"] #tickets-page-view .checkout-seats-mobile-sticky-zone,
html[data-site="statius"] #event-page-view .checkout-event-mobile-sticky-summary {
  border: 1px solid var(--statius-flow-border);
  background: var(--statius-flow-surface);
  color: var(--statius-flow-ink);
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

html[data-site="statius"] #event-page-view .checkout-event-mobile-sticky-label,
html[data-site="statius"] #event-page-view .checkout-event-mobile-sticky-value,
html[data-site="statius"] #tickets-page-view .checkout-seats-mobile-sticky-zone .checkout-tier-option-card__label,
html[data-site="statius"] #tickets-page-view .checkout-seats-mobile-sticky-zone .checkout-tier-option-card__price {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map {
  column-gap: 20px;
  row-gap: 18px;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] {
  top: 92px;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-option {
  border-radius: 6px;
  min-height: 154px;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-card--revolut::before,
html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-card--revolut::after {
  content: none;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-method-logos {
  filter: grayscale(0.08) saturate(0.95);
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-consents--payment {
  border: 1px solid var(--statius-flow-border);
  border-radius: 6px;
  background: var(--statius-flow-surface-warm);
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-final-summary-total {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta--revolut .checkout-payment-merge-cta__text,
html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta--revolut .checkout-payment-merge-cta__arrow {
  border-color: var(--statius-flow-border-strong);
  background: var(--statius-flow-surface);
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta--revolut:hover .checkout-payment-merge-cta__text,
html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta--revolut:hover .checkout-payment-merge-cta__arrow,
html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta--revolut:focus-visible .checkout-payment-merge-cta__text,
html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta--revolut:focus-visible .checkout-payment-merge-cta__arrow {
  background: #f3eadc;
  color: var(--statius-flow-ink);
}

html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta.is-error .checkout-payment-merge-cta__text,
html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta.is-error .checkout-payment-merge-cta__arrow {
  border-color: #9f2f24;
  background: #fff2ef;
  color: #7f1d1d;
  box-shadow: none;
}

@media (max-width: 1100px) {
  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-content-layout,
  html[data-site="statius"] #tickets-page-view .tickets-route-shell.checkout-flow--seat-map .checkout-seats-shell,
  html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: none;
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-card,
  html[data-site="statius"] #tickets-page-view .checkout-order-panel,
  html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] {
    position: static;
  }
}

@media (max-width: 780px) {
  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view).event-flow-section {
    padding-top: 20px;
    padding-bottom: 64px;
  }

  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) > .container {
    padding-inline: 14px;
  }

  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .event-flow-topbar {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper {
    display: flex !important;
    width: 100%;
    overflow-x: auto;
  }

  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper .step {
    flex: 1 0 max(106px, 31%);
    min-height: 38px;
    padding-inline: 10px;
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-hero-grid {
    grid-template-columns: minmax(0, 1fr);
    padding: 18px;
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-title {
    font-size: clamp(34px, 11vw, 48px);
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-facts-grid,
  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-grid,
  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-venue-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-hero-media-slot {
    width: 100%;
    justify-self: stretch;
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .event-hero-image-card {
    aspect-ratio: 16 / 10;
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step {
    padding-bottom: 0;
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-card {
    display: grid;
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-mobile-sticky {
    display: none;
  }

  html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(.checkout-seats-form, .checkout-ticket-recipients-card, .checkout-booking-protection-card, .checkout-delivery-card, .checkout-transfer-card, .checkout-order-panel),
  html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.checkout-payment-panel, .checkout-final-summary-card, .checkout-payment-option) {
    border-radius: 6px;
    padding: 14px;
  }

  html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-list,
  html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] .checkout-payment-options,
  html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(.checkout-seats-merge-cta, .checkout-seats-mobile-sticky-cta),
  html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta,
  html[data-site="statius"] #event-page-view .checkout-event-choice-cta {
    width: 100%;
  }
}

@media (max-width: 420px) {
  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper .step {
    flex-basis: 112px;
    font-size: 10px;
  }

  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta, .checkout-seats-merge-cta, .checkout-payment-merge-cta) {
    gap: 6px;
  }

  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta-text, .checkout-seats-merge-cta__label, .checkout-payment-merge-cta__text) {
    padding-inline: 12px;
  }

  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta-icon, .checkout-seats-merge-cta__arrow, .checkout-payment-merge-cta__arrow) {
    width: 48px;
    flex-basis: 48px;
  }
}

/* Statius public auth UI */
html[data-site="statius"] body.modal-open--auth .modal-backdrop,
html[data-site="statius"] body.modal-open--auth-success .modal-backdrop {
  background: rgba(11, 10, 8, 0.46);
  backdrop-filter: blur(14px) saturate(1.02);
  -webkit-backdrop-filter: blur(14px) saturate(1.02);
}

html[data-site="statius"] body.modal-open--auth .modal,
html[data-site="statius"] body.modal-open--auth-success .modal {
  padding: 24px;
  place-items: center;
}

html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth,
html[data-site="statius"] body.modal-open--auth-success .modal-dialog.modal-dialog--compact {
  width: min(560px, calc(100vw - 48px));
  max-height: calc(100dvh - 48px);
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: 0 18px 42px rgba(43, 32, 18, 0.14);
  overflow: hidden;
  animation: none;
}

html[data-site="statius"] body.modal-open--auth.modal-open--auth-register .modal-dialog.modal-dialog--auth {
  width: min(640px, calc(100vw - 48px));
}

html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth::before,
html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth::after,
html[data-site="statius"] body.modal-open--auth-success .modal-dialog.modal-dialog--compact::before,
html[data-site="statius"] body.modal-open--auth-success .modal-dialog.modal-dialog--compact::after {
  content: none;
}

html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-top {
  padding: 14px 14px 0;
  border: 0;
  background: transparent;
}

html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-body,
html[data-site="statius"] body.modal-open--auth-success .modal-dialog.modal-dialog--compact .modal-body {
  padding: 10px 40px 40px;
  max-height: calc(100dvh - 70px);
  overflow-y: auto;
  scrollbar-gutter: stable;
}

html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-close,
html[data-site="statius"] body.modal-open--auth-success .auth-success-close-btn {
  width: 38px;
  height: 38px;
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #f8f1e7;
  color: #0b0a08;
  box-shadow: none;
  font-size: 20px;
  transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-close:hover,
html[data-site="statius"] body.modal-open--auth-success .auth-success-close-btn:hover {
  background: #efe3d1;
  border-color: #0b0a08;
  color: #0b0a08;
  transform: none;
}

html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-close:focus-visible,
html[data-site="statius"] body.modal-open--auth-success .auth-success-close-btn:focus-visible {
  outline: 2px solid #0b0a08;
  outline-offset: 2px;
}

html[data-site="statius"] body.modal-open--auth .auth-modal {
  width: 100%;
  color: #0b0a08;
}

html[data-site="statius"] body.modal-open--auth .auth-modal-header {
  padding: 0 0 18px;
  gap: 10px;
}

html[data-site="statius"] body.modal-open--auth .auth-kicker,
html[data-site="statius"] body.modal-open--auth .auth-success-kicker {
  width: fit-content;
  min-height: 24px;
  padding: 5px 8px;
  border: 1px solid #d8cbb8;
  border-radius: 4px;
  background: #f8f1e7;
  color: #6b6258;
  box-shadow: none;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  animation: none;
}

html[data-site="statius"] body.modal-open--auth .auth-kicker-dot {
  width: 5px;
  height: 5px;
  border-radius: 2px;
  background: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] body.modal-open--auth .auth-modal-title,
html[data-site="statius"] body.modal-open--auth-success .auth-success-title {
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(34px, 5vw, 46px);
  font-weight: 600;
  line-height: 1.03;
  letter-spacing: -0.045em;
  animation: none;
}

html[data-site="statius"] body.modal-open--auth .auth-modal-subtitle,
html[data-site="statius"] body.modal-open--auth .auth-forgot-text,
html[data-site="statius"] body.modal-open--auth .auth-register-note,
html[data-site="statius"] body.modal-open--auth .auth-field-hint,
html[data-site="statius"] body.modal-open--auth .auth-switch-label,
html[data-site="statius"] body.modal-open--auth-success .auth-success-text {
  color: #6b6258;
}

html[data-site="statius"] body.modal-open--auth .auth-panel {
  padding: 0;
  color: #0b0a08;
}

html[data-site="statius"] body.modal-open--auth .auth-panel :is(.auth-field, label) {
  color: #0b0a08;
}

html[data-site="statius"] body.modal-open--auth .auth-field > span:first-child,
html[data-site="statius"] body.modal-open--auth .auth-field-head > span:first-child,
html[data-site="statius"] body.modal-open--auth .auth-panel--login .auth-field > span:first-child,
html[data-site="statius"] body.modal-open--auth .auth-panel--register .auth-field > span:first-child {
  color: #4f473e;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

html[data-site="statius"] body.modal-open--auth .auth-panel :is(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], select, textarea),
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) :is(input[type="text"], input[type="email"], input[type="password"], select, textarea) {
  min-height: 48px;
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background-color: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 15px;
  line-height: 1.25;
  transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}

html[data-site="statius"] body.modal-open--auth .auth-panel :is(input, textarea)::placeholder,
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) :is(input, textarea)::placeholder {
  color: #9a8f82;
}

html[data-site="statius"] body.modal-open--auth .auth-panel :is(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], select, textarea):hover,
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) :is(input[type="text"], input[type="email"], input[type="password"], select, textarea):hover {
  border-color: #0b0a08;
  background-color: #fffaf2;
  color: #0b0a08;
}

html[data-site="statius"] body.modal-open--auth .auth-panel :is(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], select, textarea):focus,
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) :is(input[type="text"], input[type="email"], input[type="password"], select, textarea):focus {
  outline: none;
  border-color: #0b0a08;
  background-color: #fffdf9;
  color: #0b0a08;
  box-shadow: 0 0 0 2px rgba(11, 10, 8, 0.08);
}

html[data-site="statius"] body.modal-open--auth .auth-panel select {
  appearance: none;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg width='14' height='9' viewBox='0 0 14 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 2L7 7L12 2' stroke='%230B0A08' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 14px 9px;
}

html[data-site="statius"] body.modal-open--auth .auth-panel select option {
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] body.modal-open--auth .password-input-wrap > input {
  padding-right: 50px;
}

html[data-site="statius"] body.modal-open--auth .password-toggle-btn {
  width: 34px;
  height: 34px;
  right: 7px;
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background: #f8f1e7;
  color: #4f473e;
  box-shadow: none;
}

html[data-site="statius"] body.modal-open--auth .password-toggle-btn:hover,
html[data-site="statius"] body.modal-open--auth .password-toggle-btn:focus-visible {
  border-color: #0b0a08;
  background: #efe3d1;
  color: #0b0a08;
  outline: none;
}

html[data-site="statius"] body.modal-open--auth .auth-panel--register .phone-grid {
  gap: 10px;
}

html[data-site="statius"] body.modal-open--auth .auth-panel--register .country-row {
  grid-template-columns: minmax(0, 1fr) 36px;
  gap: 8px;
}

html[data-site="statius"] body.modal-open--auth .auth-panel--register .country-row .info-btn {
  width: 36px;
  height: 36px;
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background: #f8f1e7;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] body.modal-open--auth .auth-panel--register .country-row .info-btn:hover,
html[data-site="statius"] body.modal-open--auth .auth-panel--register .country-row .info-btn:focus-visible {
  border-color: #0b0a08;
  background: #efe3d1;
  outline: none;
}

html[data-site="statius"] body.modal-open--auth .auth-panel--register .country-row .tooltip {
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background: #fffdf9;
  color: #4f473e;
  box-shadow: 0 16px 34px rgba(43, 32, 18, 0.12);
}

html[data-site="statius"] body.modal-open--auth :is(.auth-login-divider, .auth-register-divider) {
  background: linear-gradient(90deg, transparent, #d8cbb8, transparent);
}

html[data-site="statius"] body.modal-open--auth :is(.auth-panel-foot, .auth-panel-foot--register) {
  border-top-color: #e4d8c7;
}

html[data-site="statius"] body.modal-open--auth .auth-switch-btn,
html[data-site="statius"] body.modal-open--auth .auth-forgot-link,
html[data-site="statius"] body.modal-open--auth .auth-forgot-btn {
  color: #0b0a08;
  text-decoration-color: rgba(11, 10, 8, 0.35);
}

html[data-site="statius"] body.modal-open--auth .auth-switch-btn:hover,
html[data-site="statius"] body.modal-open--auth .auth-forgot-link:hover,
html[data-site="statius"] body.modal-open--auth .auth-forgot-btn:hover {
  color: #0b0a08;
  text-decoration-color: #0b0a08;
}

html[data-site="statius"] body.modal-open--auth .auth-switch-btn:focus-visible,
html[data-site="statius"] body.modal-open--auth .auth-forgot-btn:focus-visible {
  outline: 2px solid #0b0a08;
  outline-offset: 3px;
}

html[data-site="statius"] body.modal-open--auth .submit-btn,
html[data-site="statius"] body.modal-open--auth .auth-switch-cta,
html[data-site="statius"] body.modal-open--auth .modal-success__actions .btn,
html[data-site="statius"] body.modal-open--auth-success .auth-success-continue-action,
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) .btn-primary,
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) .btn-primary-gradient {
  width: 100%;
  min-height: 50px;
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #0b0a08;
  color: #fff;
  box-shadow: none;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

html[data-site="statius"] body.modal-open--auth .submit-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  padding: 0 18px;
  overflow: visible;
  filter: none;
}

html[data-site="statius"] body.modal-open--auth .submit-btn::before,
html[data-site="statius"] body.modal-open--auth .submit-btn-arrow {
  display: none;
  content: none;
}

html[data-site="statius"] body.modal-open--auth .submit-btn-text {
  min-height: 0;
  flex: 0 1 auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] body.modal-open--auth .submit-btn:hover,
html[data-site="statius"] body.modal-open--auth .submit-btn:focus-visible,
html[data-site="statius"] body.modal-open--auth .auth-switch-cta:hover,
html[data-site="statius"] body.modal-open--auth .auth-switch-cta:focus-visible,
html[data-site="statius"] body.modal-open--auth .modal-success__actions .btn:hover,
html[data-site="statius"] body.modal-open--auth .modal-success__actions .btn:focus-visible,
html[data-site="statius"] body.modal-open--auth-success .auth-success-continue-action:hover,
html[data-site="statius"] body.modal-open--auth-success .auth-success-continue-action:focus-visible,
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) .btn-primary:hover,
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) .btn-primary:focus-visible,
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) .btn-primary-gradient:hover,
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) .btn-primary-gradient:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
  transform: translateY(-1px);
  filter: none;
  outline: none;
}

html[data-site="statius"] body.modal-open--auth .submit-btn:hover .submit-btn-text,
html[data-site="statius"] body.modal-open--auth .submit-btn:focus-visible .submit-btn-text {
  margin: 0;
  transform: none;
  color: inherit;
}

html[data-site="statius"] body.modal-open--auth .submit-btn:disabled {
  background: #d8cbb8;
  border-color: #d8cbb8;
  color: #6b6258;
  opacity: 0.78;
  transform: none;
}

html[data-site="statius"] body.modal-open--auth .auth-google-error,
html[data-site="statius"] body.modal-open--auth .form-error,
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) .form-error {
  border: 1px solid #e7b9ad;
  border-radius: 8px;
  background: #fff2ef;
  color: #8f2d1f;
}

html[data-site="statius"] body.modal-open--auth .auth-forgot-success,
html[data-site="statius"] body.modal-open--auth .form-note.is-success,
html[data-site="statius"] :is(.reset-password-page, .verify-email-page) .form-note.is-success {
  border: 1px solid #c7d8bd;
  border-radius: 8px;
  background: #f1f6eb;
  color: #365f30;
  padding: 8px 10px;
}

html[data-site="statius"] body.modal-open--auth .form-field-error {
  color: #8f2d1f;
}

html[data-site="statius"] body.modal-open--auth .auth-google {
  margin-block: 10px 14px;
}

html[data-site="statius"] body.modal-open--auth .auth-google-circle {
  border: 1px solid #d8cbb8;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] body.modal-open--auth .auth-google-circle:hover,
html[data-site="statius"] body.modal-open--auth .auth-google-circle:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  box-shadow: none;
  transform: translateY(-1px);
  outline: none;
}

html[data-site="statius"] body.modal-open--auth .modal-success,
html[data-site="statius"] body.modal-open--auth-success .auth-success-modal-shell {
  color: #0b0a08;
  background: transparent;
}

html[data-site="statius"] body.modal-open--auth .modal-success h3,
html[data-site="statius"] body.modal-open--auth .modal-success p {
  color: #0b0a08;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .modal-backdrop {
  background: rgba(20, 16, 10, 0.36);
  backdrop-filter: blur(18px) saturate(1.02);
  -webkit-backdrop-filter: blur(18px) saturate(1.02);
}

html[data-site="statius"] body.modal-open--auth-verify-pending .modal {
  padding: 24px;
  place-items: center;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending {
  width: min(560px, calc(100vw - 48px));
  max-height: calc(100dvh - 48px);
  border: 1px solid rgba(20, 16, 10, 0.1);
  border-radius: 26px;
  background:
    linear-gradient(180deg, #fffdf9 0%, #fbf7ef 100%),
    #fffaf2;
  color: #0b0a08;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  animation: none;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending::before,
html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending::after {
  content: none;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending .modal-top {
  position: absolute;
  inset: 0 0 auto;
  z-index: 4;
  min-height: 0;
  padding: 18px;
  border: 0;
  background: transparent;
  pointer-events: none;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending .modal-mobile-header {
  display: none !important;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending .modal-close {
  pointer-events: auto;
  width: 40px;
  height: 40px;
  margin-left: auto;
  border: 1px solid rgba(20, 16, 10, 0.12);
  border-radius: 999px;
  background: rgba(255, 253, 249, 0.9);
  color: #0b0a08;
  box-shadow: none;
  font-size: 22px;
  line-height: 1;
  opacity: 0.9;
  transition:
    background 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease,
    opacity 0.18s ease,
    transform 0.18s ease;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending .modal-close:hover,
html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending .modal-close:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  opacity: 1;
  transform: translateY(-1px);
}

html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending .modal-close:focus-visible {
  outline: 2px solid rgba(11, 10, 8, 0.42);
  outline-offset: 2px;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending .modal-body {
  max-height: calc(100dvh - 48px);
  padding: 48px 42px 38px;
  overflow-y: auto;
  scrollbar-gutter: stable;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-pending-modal {
  display: grid;
  gap: 24px;
  color: #0b0a08;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-pending-head {
  display: grid;
  gap: 12px;
  padding: 0;
  text-align: left;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-pending-head.modal-success {
  background: transparent;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-pending-head .modal-title {
  max-width: 12ch;
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(34px, 6vw, 44px);
  font-weight: 600;
  line-height: 1.02;
  letter-spacing: 0;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-pending-head .modal-subtitle {
  margin: 0;
  color: #4f473e;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 16px;
  line-height: 1.55;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-email {
  display: inline;
  color: #0b0a08;
  font-weight: 760;
  overflow-wrap: anywhere;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-note {
  color: #6b6258;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-status {
  margin: 2px 0 0;
  padding: 10px 12px;
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background: #fffaf2;
  color: #4f473e;
  font-size: 13px;
  line-height: 1.4;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-error {
  margin: 2px 0 0;
  border: 1px solid #e7b9ad;
  border-radius: 8px;
  background: #fff2ef;
  color: #8f2d1f;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
  margin: 0;
  padding: 0;
  position: static;
  background: transparent;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 50px;
  padding: 12px 16px;
  border: 1px solid #0b0a08;
  border-radius: 6px;
  box-shadow: none;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  white-space: normal;
  overflow-wrap: anywhere;
  transition:
    background 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease,
    transform 0.18s ease;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-actions [data-auth-verify-back] {
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-actions [data-auth-verify-resend] {
  background: #0b0a08;
  color: #fffdf9;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-actions .btn:hover:not(:disabled),
html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-actions .btn:focus-visible:not(:disabled) {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  transform: translateY(-1px);
  outline: none;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-actions .btn:focus-visible {
  outline: 2px solid rgba(11, 10, 8, 0.42);
  outline-offset: 2px;
}

html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-actions .btn:disabled {
  border-color: #d8cbb8;
  background: #ece3d6;
  color: #7c7164;
  opacity: 1;
  cursor: not-allowed;
  transform: none;
}

html[data-site="statius"] body.modal-open--auth-success .auth-success-content {
  padding: 46px 34px 30px;
  animation: none;
}

html[data-site="statius"] body.modal-open--auth-success .auth-success-text {
  animation: none;
}

html[data-site="statius"] body.modal-open--auth-success .auth-success-mark,
html[data-site="statius"] body.modal-open--auth-success .auth-success-actions {
  animation: none;
}

html[data-site="statius"] body.modal-open--auth-success .auth-success-check-pill {
  border: 1px solid #0b0a08;
  border-radius: 12px;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
  opacity: 1;
  transform: none;
  animation: none;
}

html[data-site="statius"] body.modal-open--auth-success .auth-success-check-pill::after {
  content: none;
}

html[data-site="statius"] body.modal-open--auth-success .auth-success-check-pill svg {
  color: #0b0a08;
}

html[data-site="statius"] body.modal-open--auth-success .auth-success-check-path {
  stroke-dashoffset: 0;
  animation: none;
}

html[data-site="statius"] body.reset-password-page,
html[data-site="statius"] body.verify-email-page {
  background: #fbfaf7;
  color: #0b0a08;
}

html[data-site="statius"] :is(.reset-password-main, .verify-email-main) {
  min-height: calc(100dvh - 86px);
  background:
    radial-gradient(circle at 12% 8%, rgba(213, 185, 125, 0.14), transparent 30%),
    linear-gradient(180deg, #fbfaf7 0%, #f3ecdf 100%);
}

html[data-site="statius"] :is(.reset-password-card, .verify-email-card) {
  width: min(680px, calc(100vw - 32px));
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: 0 18px 42px rgba(43, 32, 18, 0.12);
}

html[data-site="statius"] :is(.reset-password-title, .verify-email-title) {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 600;
  letter-spacing: -0.045em;
}

html[data-site="statius"] :is(.reset-password-text, .verify-email-text) {
  color: #6b6258;
}

html[data-site="statius"] .reset-password-form .btn {
  width: fit-content;
}

html[data-site="statius"] :is(.reset-password-actions, .verify-email-actions) .btn-outline,
html[data-site="statius"] :is(.reset-password-actions, .verify-email-actions) .btn {
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] :is(.reset-password-actions, .verify-email-actions) .btn-outline:hover,
html[data-site="statius"] :is(.reset-password-actions, .verify-email-actions) .btn:hover {
  background: #f3eadc;
  color: #0b0a08;
  border-color: #0b0a08;
}

@media (max-width: 640px) {
  html[data-site="statius"] body.modal-open--auth .modal,
  html[data-site="statius"] body.modal-open--auth-success .modal {
    padding: 16px;
    place-items: center;
  }

  html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth,
  html[data-site="statius"] body.modal-open--auth.modal-open--auth-register .modal-dialog.modal-dialog--auth,
  html[data-site="statius"] body.modal-open--auth-success .modal-dialog.modal-dialog--compact {
    width: calc(100vw - 32px);
    max-width: calc(100vw - 32px);
    max-height: calc(100dvh - 48px);
    border-radius: 16px;
  }

  html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-top {
    padding: 10px 10px 0;
  }

  html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-body,
  html[data-site="statius"] body.modal-open--auth.modal-open--auth-register .modal-dialog.modal-dialog--auth .modal-body,
  html[data-site="statius"] body.modal-open--auth-success .modal-dialog.modal-dialog--compact .modal-body {
    padding: 8px 24px 24px;
    max-height: calc(100dvh - 66px);
    overflow-y: auto;
  }

  html[data-site="statius"] body.modal-open--auth .auth-kicker {
    display: inline-flex;
  }

  html[data-site="statius"] body.modal-open--auth .auth-modal-title,
  html[data-site="statius"] body.modal-open--auth-success .auth-success-title {
    font-size: 34px;
  }

  html[data-site="statius"] body.modal-open--auth .auth-panel-foot--split {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] body.modal-open--auth .auth-switch-col {
    justify-items: start;
    text-align: left;
  }

  html[data-site="statius"] body.modal-open--auth .auth-switch-cta {
    width: 100%;
  }

  html[data-site="statius"] body.modal-open--auth .auth-panel--register .phone-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] body.modal-open--auth-verify-pending .modal {
    padding: 16px;
  }

  html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending {
    width: calc(100vw - 32px);
    max-width: calc(100vw - 32px);
    max-height: calc(100dvh - 32px);
    border-radius: 24px;
  }

  html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending .modal-top {
    padding: 12px;
  }

  html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending .modal-close {
    width: 38px;
    height: 38px;
    border-radius: 12px;
  }

  html[data-site="statius"] body.modal-open--auth-verify-pending .modal-dialog.modal-dialog--auth-verify-pending .modal-body {
    max-height: calc(100dvh - 32px);
    padding: 46px 20px 22px;
  }

  html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-pending-modal {
    gap: 20px;
  }

  html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-pending-head .modal-title {
    max-width: 11ch;
    font-size: 34px;
  }

  html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-pending-head .modal-subtitle {
    font-size: 15px;
    line-height: 1.5;
  }

  html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] body.modal-open--auth-verify-pending .auth-verify-actions .btn {
    width: 100%;
    min-height: 48px;
    padding-inline: 14px;
  }

  html[data-site="statius"] .reset-password-form .btn,
  html[data-site="statius"] :is(.reset-password-actions, .verify-email-actions) .btn {
    width: 100%;
  }
}

/* Statius auth micro cleanup: icon-only controls and no auth eyebrow badges */
html[data-site="statius"] body.modal-open--auth .auth-kicker,
html[data-site="statius"] body.modal-open--auth-success .auth-success-kicker {
  display: none !important;
  margin: 0;
}

html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-close,
html[data-site="statius"] body.modal-open--auth-success .auth-success-close-btn {
  border: 0;
  background: transparent;
  box-shadow: none;
  color: #0b0a08;
  opacity: 0.82;
}

html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-close:hover,
html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-close:focus-visible,
html[data-site="statius"] body.modal-open--auth-success .auth-success-close-btn:hover,
html[data-site="statius"] body.modal-open--auth-success .auth-success-close-btn:focus-visible {
  border: 0;
  background: transparent;
  box-shadow: none;
  color: #0b0a08;
  opacity: 1;
  transform: none;
}

html[data-site="statius"] body.modal-open--auth .modal-dialog.modal-dialog--auth .modal-close:focus-visible,
html[data-site="statius"] body.modal-open--auth-success .auth-success-close-btn:focus-visible,
html[data-site="statius"] body.modal-open--auth .password-toggle-btn:focus-visible {
  outline: 2px solid rgba(11, 10, 8, 0.42);
  outline-offset: 2px;
}

html[data-site="statius"] body.modal-open--auth .password-toggle-btn {
  border: 0;
  background: transparent;
  box-shadow: none;
  color: #4f473e;
  opacity: 0.8;
}

html[data-site="statius"] body.modal-open--auth .password-toggle-btn:hover,
html[data-site="statius"] body.modal-open--auth .password-toggle-btn:focus-visible {
  border: 0;
  background: transparent;
  box-shadow: none;
  color: #0b0a08;
  opacity: 1;
}

/* Statius homepage cultural directions editorial polish */
html[data-site="statius"] .statius-directions {
  padding: 88px 0 96px;
  border-top: 1px solid #e1d5c4;
  border-bottom: 1px solid #e1d5c4;
  background:
    linear-gradient(180deg, #f7f1e8 0%, #f1e8da 100%);
}

html[data-site="statius"] .statius-directions .statius-container {
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
  gap: clamp(40px, 6vw, 80px);
  align-items: start;
}

html[data-site="statius"] .statius-directions .statius-section-head {
  max-width: 390px;
  margin: 0;
  text-align: left;
}

html[data-site="statius"] .statius-directions .statius-heading {
  max-width: 360px;
  color: #0b0a08;
  font-size: clamp(42px, 4.8vw, 64px);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

html[data-site="statius"] .statius-directions .statius-subheading {
  max-width: 320px;
  margin-top: 20px;
  color: #665d4e;
  font-size: 16px;
  line-height: 1.6;
}

html[data-site="statius"] .statius-directions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-self: stretch;
}

html[data-site="statius"] .statius-category-card {
  position: relative;
  min-height: 252px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between;
  gap: 28px;
  padding: 32px;
  overflow: hidden;
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
  text-decoration: none;
  transition:
    border-color 0.18s ease,
    background 0.18s ease,
    transform 0.18s ease;
}

html[data-site="statius"] .statius-category-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(11, 10, 8, 0.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(11, 10, 8, 0.03) 1px, transparent 1px);
  background-size: 32px 32px;
  opacity: 0.28;
  mask-image: linear-gradient(135deg, transparent 0%, black 18%, transparent 72%);
}

html[data-site="statius"] .statius-category-card-link:hover,
html[data-site="statius"] .statius-category-card-link:focus-visible {
  border-color: #0b0a08;
  background: #fffaf2;
  transform: translateY(-2px);
  outline: none;
}

html[data-site="statius"] .statius-category-body {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 18px;
}

html[data-site="statius"] .statius-category-meta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 18px;
}

html[data-site="statius"] .statius-category-index,
html[data-site="statius"] .statius-category-meta {
  margin: 0;
  color: #665d4e;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html[data-site="statius"] .statius-category-meta {
  text-align: right;
}

html[data-site="statius"] .statius-category-title {
  max-width: 92%;
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(30px, 3vw, 40px);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.04em;
}

html[data-site="statius"] .statius-category-desc {
  max-width: 320px;
  margin: 0;
  color: #4e4638;
  font-size: 14px;
  line-height: 1.58;
}

html[data-site="statius"] .statius-category-arrow {
  position: relative;
  z-index: 1;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-end;
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background: #f7f1e8;
  color: #0b0a08;
  font-size: 18px;
  line-height: 1;
  transition:
    border-color 0.18s ease,
    background 0.18s ease,
    color 0.18s ease,
    transform 0.18s ease;
}

html[data-site="statius"] .statius-category-card-link:hover .statius-category-arrow,
html[data-site="statius"] .statius-category-card-link:focus-visible .statius-category-arrow {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fffdf9;
  transform: translateX(4px);
}

@media (max-width: 980px) {
  html[data-site="statius"] .statius-directions .statius-container {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }

  html[data-site="statius"] .statius-directions .statius-section-head,
  html[data-site="statius"] .statius-directions .statius-heading,
  html[data-site="statius"] .statius-directions .statius-subheading {
    max-width: 720px;
  }
}

@media (max-width: 720px) {
  html[data-site="statius"] .statius-directions {
    padding: 56px 0 64px;
  }

  html[data-site="statius"] .statius-directions-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }

  html[data-site="statius"] .statius-category-card {
    min-height: 220px;
    padding: 24px;
    border-radius: 14px;
  }

html[data-site="statius"] .statius-category-title {
    font-size: 32px;
  }

  html[data-site="statius"] .statius-category-meta-row {
    align-items: flex-start;
  }
}

/* Statius Ballet category landing: light editorial treatment, scoped to the category route only. */
html[data-site="statius"] #venue-view.ballet-category-page {
  background: #fbfaf7;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .container {
  max-width: 1280px;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-view-topbar {
  margin-bottom: 24px;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-back-btn {
  min-height: 40px;
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-back-btn:hover,
html[data-site="statius"] #venue-view.ballet-category-page .venue-back-btn:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  transform: translateY(-1px);
}

html[data-site="statius"] #venue-view.ballet-category-page .seo-breadcrumbs,
html[data-site="statius"] #venue-view.ballet-category-page .seo-breadcrumbs__sep {
  color: #665d4e;
}

html[data-site="statius"] #venue-view.ballet-category-page .seo-breadcrumbs a {
  color: #0b0a08;
  text-decoration-color: rgba(11, 10, 8, 0.32);
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-category-landing {
  gap: 32px;
  margin-bottom: 40px;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-grid {
  grid-template-columns: minmax(0, 1.06fr) minmax(360px, 0.94fr);
  gap: 24px;
  align-items: stretch;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-copy,
html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-panel,
html[data-site="statius"] #venue-view.ballet-category-page .opera-directions,
html[data-site="statius"] #venue-view.ballet-category-page .opera-process-intro,
html[data-site="statius"] #venue-view.ballet-category-page .opera-step {
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-copy {
  min-height: 430px;
  padding: 40px;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-copy::after {
  display: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-panel {
  min-height: 430px;
  padding: 24px;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-eyebrow,
html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-badge,
html[data-site="statius"] #venue-view.ballet-category-page .opera-ticket-top span,
html[data-site="statius"] #venue-view.ballet-category-page .opera-spotlight-label,
html[data-site="statius"] #venue-view.ballet-category-page .opera-section-kicker,
html[data-site="statius"] #venue-view.ballet-category-page .venue-type,
html[data-site="statius"] #venue-view.ballet-category-page .event-tag {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  border: 1px solid #d8cbb8;
  border-radius: 4px;
  background: #f3eadc;
  color: #4e4638;
  box-shadow: none;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-eyebrow {
  margin-bottom: 24px;
  padding: 8px 10px;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-badge,
html[data-site="statius"] #venue-view.ballet-category-page .opera-ticket-top span {
  padding: 7px 9px;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-ticket-top {
  color: #665d4e;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-title {
  max-width: 760px;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(42px, 5vw, 66px);
  font-weight: 600;
  line-height: 1.04;
  letter-spacing: -0.045em;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-subtitle {
  max-width: 680px;
  margin-top: 24px;
  color: #4e4638;
  font-size: 17px;
  line-height: 1.64;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-actions {
  gap: 12px;
  margin-top: 32px;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-actions .btn,
html[data-site="statius"] #venue-view.ballet-category-page .opera-nearest-event-button,
html[data-site="statius"] #venue-view.ballet-category-page .opera-events-secondary-cta,
html[data-site="statius"] #venue-view.ballet-category-page .opera-mini-link {
  min-height: 42px;
  border-radius: 8px;
  box-shadow: none;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-actions .btn-primary-gradient,
html[data-site="statius"] #venue-view.ballet-category-page .opera-nearest-event-button.is-primary,
html[data-site="statius"] #venue-view.ballet-category-page .opera-events-secondary-cta {
  border: 1px solid #0b0a08;
  background: #0b0a08;
  color: #fffdf9;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-actions .btn-outline,
html[data-site="statius"] #venue-view.ballet-category-page .opera-nearest-event-button,
html[data-site="statius"] #venue-view.ballet-category-page .opera-mini-link {
  border: 1px solid #0b0a08;
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-actions .btn:hover,
html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-actions .btn:focus-visible,
html[data-site="statius"] #venue-view.ballet-category-page .opera-nearest-event-button:hover,
html[data-site="statius"] #venue-view.ballet-category-page .opera-nearest-event-button:focus-visible,
html[data-site="statius"] #venue-view.ballet-category-page .opera-events-secondary-cta:hover,
html[data-site="statius"] #venue-view.ballet-category-page .opera-events-secondary-cta:focus-visible,
html[data-site="statius"] #venue-view.ballet-category-page .opera-mini-link:hover,
html[data-site="statius"] #venue-view.ballet-category-page .opera-mini-link:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  transform: translateY(-1px);
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-chips {
  gap: 8px;
  margin-top: 32px;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-stage-art {
  inset: 24px;
  border: 1px solid #d8cbb8;
  border-radius: 12px;
  background: linear-gradient(145deg, #f7f1e8, #fffdf9);
  opacity: 1;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-stage-art img {
  filter: saturate(0.46) sepia(0.22) contrast(0.92) brightness(1.13);
  opacity: 0.42;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-stage-art::after {
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.12), rgba(255, 253, 249, 0.74) 68%, rgba(255, 253, 249, 0.94)),
    radial-gradient(circle at 82% 14%, rgba(216, 203, 184, 0.38), transparent 38%);
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-feature-ticket {
  width: min(100%, 400px);
  margin-left: auto;
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: rgba(255, 253, 249, 0.96);
  color: #0b0a08;
  box-shadow: none;
  backdrop-filter: blur(6px);
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-ticket-title {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(24px, 2.4vw, 32px);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -0.035em;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-ticket-meta {
  color: #4e4638;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-nearest-event-footer,
html[data-site="statius"] #venue-view.ballet-category-page .opera-ticket-price {
  border-top: 1px solid #e4d8c7;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-ticket-price span,
html[data-site="statius"] #venue-view.ballet-category-page .opera-nearest-event-price span {
  color: #665d4e;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-ticket-price strong,
html[data-site="statius"] #venue-view.ballet-category-page .opera-nearest-event-price strong {
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-mini {
  gap: 10px;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-mini article {
  min-height: 82px;
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background: #fffaf2;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-mini small {
  color: #665d4e;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-mini b {
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-directions,
html[data-site="statius"] #venue-view.ballet-category-page .opera-process {
  margin-top: 8px;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-directions {
  padding: 28px;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-section-title h3,
html[data-site="statius"] #venue-view.ballet-category-page .opera-process-title,
html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header h2,
html[data-site="statius"] #venue-view.ballet-category-page .venue-title {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 600;
  letter-spacing: -0.04em;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-section-subtitle,
html[data-site="statius"] #venue-view.ballet-category-page .opera-process-intro p,
html[data-site="statius"] #venue-view.ballet-category-page .opera-step p,
html[data-site="statius"] #venue-view.ballet-category-page .venue-description,
html[data-site="statius"] #venue-view.ballet-category-page .venue-events-subtitle {
  color: #4e4638;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-spotlight {
  min-height: 250px;
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-spotlight::before {
  opacity: 0.78;
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.18), rgba(255, 253, 249, 0.9)),
    radial-gradient(circle at 84% 16%, rgba(216, 203, 184, 0.72), transparent 42%);
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-spotlight h4,
html[data-site="statius"] #venue-view.ballet-category-page .opera-step h4 {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 600;
  letter-spacing: -0.025em;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-spotlight p {
  color: #4e4638;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-mini-link::after {
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background: #f7f1e8;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-mini-link:hover::after,
html[data-site="statius"] #venue-view.ballet-category-page .opera-mini-link:focus-visible::after {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fffdf9;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-process-intro,
html[data-site="statius"] #venue-view.ballet-category-page .opera-step {
  padding: 24px;
}

html[data-site="statius"] #venue-view.ballet-category-page .opera-step-number {
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #0b0a08;
  color: #fffdf9;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-hero,
html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header {
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section {
  padding: 28px;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-filters {
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-filters input,
html[data-site="statius"] #venue-view.ballet-category-page .venue-filters select,
html[data-site="statius"] #venue-view.ballet-category-page .venue-filters button {
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-filters button:hover,
html[data-site="statius"] #venue-view.ballet-category-page .venue-filters button:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event {
  min-height: 0;
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:hover {
  border-color: #0b0a08;
  transform: translateY(-3px);
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-card-inner {
  min-height: 390px;
  border-radius: 15px;
  background: #fffdf9;
  color: #0b0a08;
  overflow: hidden;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-card-inner::before {
  inset: 16px 16px auto;
  height: 150px;
  border: 1px solid #d8cbb8;
  border-radius: 12px;
  opacity: 1;
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.08), rgba(255, 253, 249, 0.18)),
    var(--event-card-image, linear-gradient(135deg, #efe4d3, #fffdf9));
  background-position: center;
  background-size: cover;
  filter: saturate(0.74) contrast(0.94) brightness(1.04);
  transform: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .poster-strip {
  min-height: 174px;
  padding: 24px 24px 0;
  justify-content: flex-start;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .card-content {
  margin-top: 0;
  padding: 0 24px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event h3 {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.1;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-meta {
  color: #4e4638;
  font-size: 12px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-price {
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-tag {
  padding: 7px 8px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .card-action-row {
  padding: 18px 24px 24px;
  margin-top: auto;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .details-btn,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .arrow-btn {
  min-height: 34px;
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #0b0a08;
  color: #fffdf9;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .details-btn:hover,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .details-btn:focus-visible,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .arrow-btn:hover,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .arrow-btn:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
}

@media (max-width: 1040px) {
  html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-copy,
  html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-panel {
    min-height: 0;
  }
}

@media (max-width: 760px) {
  html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-copy,
  html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-panel,
  html[data-site="statius"] #venue-view.ballet-category-page .opera-directions,
  html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section {
    padding: 24px;
    border-radius: 14px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-title {
    font-size: clamp(38px, 12vw, 48px);
  }

  html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-actions {
    flex-direction: column;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-actions .btn,
  html[data-site="statius"] #venue-view.ballet-category-page .opera-nearest-event-button,
  html[data-site="statius"] #venue-view.ballet-category-page .opera-events-secondary-cta {
    width: 100%;
    justify-content: center;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .opera-hero-mini {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #venue-view.ballet-category-page .opera-feature-ticket {
    width: 100%;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .opera-nearest-event-footer,
  html[data-site="statius"] #venue-view.ballet-category-page .opera-ticket-price {
    align-items: stretch;
    flex-direction: column;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .opera-spotlight-grid,
  html[data-site="statius"] #venue-view.ballet-category-page .opera-process-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #venue-view.ballet-category-page .venue-filters {
    padding: 16px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-card-inner {
    min-height: 360px;
  }
}

/* Statius Ballet category rebuild: dedicated editorial layout, not the legacy opera/CWT structure. */
html[data-site="statius"] #venue-view.ballet-category-page {
  background: #fbfaf7;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-view-head,
html[data-site="statius"] #venue-view.ballet-category-page .seo-content-block,
html[data-site="statius"] #venue-view.ballet-category-page .related-links-block {
  display: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-view-topbar {
  max-width: 1280px;
  margin: 0 auto 18px;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-back-btn {
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-back-btn:hover,
html[data-site="statius"] #venue-view.ballet-category-page .venue-back-btn:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .seo-breadcrumbs {
  max-width: 1280px;
  margin: 0 auto 18px;
  color: #665d4e;
}

html[data-site="statius"] #venue-view.ballet-category-page .seo-breadcrumbs a {
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-landing {
  display: grid;
  gap: 56px;
  max-width: 1280px;
  margin: 0 auto 48px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 420px);
  gap: 40px;
  align-items: start;
  padding: 14px 0 6px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-hero-main {
  display: grid;
  gap: 24px;
  align-content: start;
  min-width: 0;
  padding: 10px 0 0;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-label,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-category-badge,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-kicker {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  border: 1px solid #d8cbb8;
  border-radius: 4px;
  background: #f3eadc;
  color: #4e4638;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-label,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-category-badge {
  padding: 7px 9px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-title {
  max-width: 760px;
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(48px, 6vw, 84px);
  font-weight: 600;
  line-height: 0.98;
  letter-spacing: -0.055em;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-intro {
  max-width: 640px;
  margin: 0;
  color: #4e4638;
  font-size: 18px;
  line-height: 1.64;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 4px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-button,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-card-action,
html[data-site="statius"] #venue-view.ballet-category-page .opera-events-secondary-cta {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  border: 1px solid #0b0a08;
  border-radius: 8px;
  box-shadow: none;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  text-decoration: none;
  transition:
    background 0.18s ease,
    color 0.18s ease,
    border-color 0.18s ease,
    transform 0.18s ease;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-button--primary,
html[data-site="statius"] #venue-view.ballet-category-page .opera-events-secondary-cta {
  background: #0b0a08;
  color: #fffdf9;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-button--secondary,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-card-action {
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-button:hover,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-button:focus-visible,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-card-action:hover,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-card-action:focus-visible,
html[data-site="statius"] #venue-view.ballet-category-page .opera-events-secondary-cta:hover,
html[data-site="statius"] #venue-view.ballet-category-page .opera-events-secondary-cta:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  transform: translateY(-1px);
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  max-width: 720px;
  margin-top: 8px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-fact {
  min-height: 82px;
  display: grid;
  align-content: space-between;
  gap: 12px;
  padding: 14px;
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-fact-index {
  color: #665d4e;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-fact strong {
  color: #0b0a08;
  font-size: 13px;
  line-height: 1.24;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest {
  overflow: hidden;
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-media {
  min-height: 210px;
  margin: 12px 12px 0;
  border: 1px solid #d8cbb8;
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(247, 241, 232, 0.84), rgba(255, 253, 249, 0.96)),
    radial-gradient(circle at 70% 20%, rgba(216, 203, 184, 0.9), transparent 42%);
  background-position: center;
  background-size: cover;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-media.has-image {
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.06), rgba(255, 253, 249, 0.18)),
    var(--statius-ballet-nearest-image);
  background-position: center;
  background-size: cover;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-body {
  display: grid;
  gap: 16px;
  padding: 20px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-top,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-title {
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(26px, 2.8vw, 36px);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.04em;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-meta {
  min-height: 0;
  margin: 0;
  color: #4e4638;
  font-size: 14px;
  line-height: 1.54;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-footer {
  padding-top: 16px;
  border-top: 1px solid #e4d8c7;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-price {
  display: grid;
  gap: 3px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-price span {
  color: #665d4e;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-price strong {
  color: #0b0a08;
  font-size: 24px;
  line-height: 1;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-directions,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-process {
  display: grid;
  gap: 24px;
  padding: 28px;
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-section-head,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-process-intro {
  display: grid;
  gap: 12px;
  max-width: 760px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-section-head h3,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-process-intro h3,
html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header h2 {
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.045em;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-section-head p,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-process-intro p,
html[data-site="statius"] #venue-view.ballet-category-page .venue-events-subtitle {
  margin: 0;
  color: #4e4638;
  line-height: 1.58;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-direction-grid,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-process-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-direction-card,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-step {
  display: grid;
  align-content: start;
  gap: 14px;
  min-height: 220px;
  padding: 20px;
  border: 1px solid #d8cbb8;
  border-radius: 12px;
  background: #fffaf2;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-direction-card h4,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-step h4 {
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.035em;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-direction-card p,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-step p {
  margin: 0;
  color: #4e4638;
  font-size: 14px;
  line-height: 1.55;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-card-action {
  width: fit-content;
  margin-top: auto;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-step-number {
  width: 34px;
  height: 34px;
  display: inline-grid;
  place-items: center;
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #0b0a08;
  color: #fffdf9;
  font-size: 12px;
  font-weight: 900;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-step-copy {
  display: grid;
  gap: 8px;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section {
  margin-top: 0;
  padding: 28px;
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section [data-opera-events-kicker] {
  color: #665d4e;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-filters {
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-filters select,
html[data-site="statius"] #venue-view.ballet-category-page .venue-filters input[type="text"],
html[data-site="statius"] #venue-view.ballet-category-page .venue-filters input[type="number"] {
  min-height: 46px;
  border: 1px solid #d8cbb8;
  border-radius: 8px;
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event {
  min-height: 0;
  border: 1px solid #d8cbb8;
  border-radius: 16px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:hover {
  border-color: #0b0a08;
  transform: translateY(-3px);
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-card-inner {
  min-height: 390px;
  border-radius: 15px;
  background: #fffdf9;
  color: #0b0a08;
  overflow: hidden;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-card-inner::before {
  inset: 16px 16px auto;
  height: 150px;
  border: 1px solid #d8cbb8;
  border-radius: 12px;
  opacity: 1;
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.08), rgba(255, 253, 249, 0.18)),
    var(--event-card-image, linear-gradient(135deg, #efe4d3, #fffdf9));
  background-position: center;
  background-size: cover;
  filter: saturate(0.74) contrast(0.94) brightness(1.04);
  transform: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .poster-strip {
  min-height: 174px;
  padding: 24px 24px 0;
  justify-content: flex-start;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .card-content {
  margin-top: 0;
  padding: 0 24px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event h3 {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.1;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-tag,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-price {
  border-radius: 4px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-meta {
  color: #4e4638;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-price {
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .card-action-row {
  padding: 18px 24px 24px;
  margin-top: auto;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .details-btn,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .arrow-btn {
  min-height: 34px;
  border: 1px solid #0b0a08;
  border-radius: 8px;
  background: #0b0a08;
  color: #fffdf9;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .details-btn:hover,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .details-btn:focus-visible,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .arrow-btn:hover,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .arrow-btn:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
}

@media (max-width: 980px) {
  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-hero {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest {
    max-width: 620px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-direction-grid,
  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-process-steps {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-landing {
    gap: 36px;
    margin-bottom: 36px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-title {
    font-size: clamp(38px, 12vw, 48px);
    line-height: 1.03;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-intro {
    font-size: 16px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-actions {
    flex-direction: column;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-button,
  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-card-action,
  html[data-site="statius"] #venue-view.ballet-category-page .opera-events-secondary-cta {
    width: 100%;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-facts {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-media {
    min-height: 180px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-footer {
    align-items: stretch;
    flex-direction: column;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-directions,
  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-process,
  html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section {
    padding: 22px;
    border-radius: 14px;
  }
}

/* Statius Ballet category final reduction: sharper category landing, not a homepage clone. */
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-directions,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-process {
  display: none !important;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-landing {
  gap: 32px;
  margin: 0 auto 32px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-hero {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  gap: 32px;
  padding: 32px 0;
  border-top: 1px solid #d8cbb8;
  border-bottom: 1px solid #d8cbb8;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-hero-main {
  gap: 18px;
  padding: 0;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-title {
  max-width: 720px;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-intro {
  max-width: 600px;
  font-size: 17px;
  line-height: 1.58;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-button,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-card-action,
html[data-site="statius"] #venue-view.ballet-category-page .opera-events-secondary-cta {
  border-radius: 6px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-facts {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  max-width: 760px;
  margin-top: 8px;
  border-top: 1px solid #e4d8c7;
  border-bottom: 1px solid #e4d8c7;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-fact {
  min-height: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border: 0;
  border-right: 1px solid #e4d8c7;
  border-radius: 0;
  background: transparent;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-fact:last-child {
  border-right: 0;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-fact strong {
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest {
  border-radius: 8px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-media {
  min-height: 118px;
  margin: 8px 8px 0;
  border-radius: 6px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-body {
  gap: 12px;
  padding: 16px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-title {
  font-size: clamp(22px, 2.2vw, 29px);
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-footer {
  align-items: flex-end;
  padding-top: 12px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-price strong {
  font-size: 21px;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section {
  padding: 28px 0 12px;
  border: 0;
  border-top: 1px solid #d8cbb8;
  border-radius: 0;
  background: transparent;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section h2 {
  font-size: clamp(32px, 4vw, 48px);
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-filters {
  border-radius: 8px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event {
  border-radius: 8px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:hover {
  transform: translateY(-2px);
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-card-inner {
  min-height: 340px;
  border-radius: 7px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-card-inner::before {
  inset: 12px 12px auto;
  height: 104px;
  border-radius: 6px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .poster-strip {
  min-height: 126px;
  padding: 18px 18px 0;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .card-content {
  padding: 0 18px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event h3 {
  font-size: 23px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .card-action-row {
  padding: 16px 18px 18px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .details-btn,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .arrow-btn {
  border-radius: 6px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-request-band {
  max-width: 1280px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 28px auto 0;
  padding: 20px 0;
  border-top: 1px solid #d8cbb8;
  border-bottom: 1px solid #d8cbb8;
  background: transparent;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-request-copy {
  display: grid;
  gap: 8px;
  max-width: 720px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-request-copy h3 {
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(28px, 3.2vw, 40px);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.035em;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-request-copy p {
  margin: 0;
  color: #4e4638;
  font-size: 15px;
  line-height: 1.55;
}

@media (max-width: 980px) {
  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-hero {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-landing {
    gap: 28px;
    margin-bottom: 28px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-hero {
    gap: 24px;
    padding: 24px 0;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-title {
    font-size: clamp(36px, 11vw, 46px);
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-actions,
  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-footer,
  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-request-band {
    align-items: stretch;
    flex-direction: column;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-facts {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-fact {
    border-right: 0;
    border-bottom: 1px solid #e4d8c7;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-fact:last-child {
    border-bottom: 0;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-media {
    min-height: 104px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section {
    padding: 24px 0 10px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-request-band {
    margin-top: 24px;
    padding: 18px 0;
  }
}

/* Statius Ballet category UX rebuild: sharp editorial landing, no rounded dashboard blocks. */
html[data-site="statius"] #venue-view.ballet-category-page .container {
  max-width: 1280px;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-view-topbar {
  margin: 0 auto 10px;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-back-btn {
  min-height: 34px;
  padding: 0 12px;
  border-radius: 4px;
}

html[data-site="statius"] #venue-view.ballet-category-page .seo-breadcrumbs {
  margin: 0 auto 16px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-landing {
  display: grid;
  gap: 0;
  margin: 0 auto 30px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-hero {
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, 360px);
  gap: 40px;
  align-items: stretch;
  padding: 24px 0 28px;
  border-top: 1px solid #d8cbb8;
  border-bottom: 1px solid #d8cbb8;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-hero-main {
  gap: 16px;
  max-width: 780px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-label,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-category-badge,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-kicker,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-tag,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-price {
  border-radius: 3px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-title {
  max-width: 760px;
  font-size: clamp(44px, 5.4vw, 78px);
  line-height: 0.98;
  letter-spacing: -0.055em;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-intro {
  max-width: 610px;
  font-size: 17px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-actions {
  margin-top: 8px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-button,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-link,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .details-btn,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .arrow-btn,
html[data-site="statius"] #venue-view.ballet-category-page .venue-back-btn,
html[data-site="statius"] #venue-view.ballet-category-page .venue-filters select,
html[data-site="statius"] #venue-view.ballet-category-page .venue-filters input[type="text"],
html[data-site="statius"] #venue-view.ballet-category-page .venue-filters input[type="number"] {
  border-radius: 6px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest {
  overflow: visible;
  display: grid;
  align-content: start;
  border: 0;
  border-left: 1px solid #d8cbb8;
  border-radius: 0;
  background: transparent;
  padding-left: 24px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-media {
  display: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-media.has-image {
  display: block;
  min-height: 0;
  height: 92px;
  margin: 0 0 14px;
  border-radius: 4px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-body {
  padding: 0;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-top {
  align-items: flex-start;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-title {
  font-size: clamp(24px, 2.2vw, 32px);
  line-height: 1.04;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest-footer {
  align-items: flex-end;
  border-color: #d8cbb8;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-bottom: 1px solid #d8cbb8;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-link {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  border: 0;
  border-right: 1px solid #d8cbb8;
  background: transparent;
  color: #0b0a08;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-link:last-child {
  border-right: 0;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-link::after {
  content: "→";
  font-size: 14px;
  line-height: 1;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-link:hover,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-link:focus-visible {
  background: #f3eadc;
  color: #0b0a08;
  outline: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-link--primary {
  background: #0b0a08;
  color: #fffdf9;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-link--primary:hover,
html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-link--primary:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-facts {
  display: none !important;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section {
  padding: 34px 0 14px;
  border-top: 0;
  border-bottom: 1px solid #d8cbb8;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section [data-opera-events-kicker] {
  margin-bottom: 8px;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section h2 {
  font-size: clamp(32px, 3.6vw, 46px);
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-events-subtitle {
  max-width: 620px;
}

html[data-site="statius"] #venue-view.ballet-category-page .venue-filters {
  padding: 12px 0;
  border: 0;
  border-bottom: 1px solid #d8cbb8;
  border-radius: 0;
  background: transparent;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event {
  border-radius: 6px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .event-card-inner {
  min-height: 268px;
  border-radius: 5px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.has-event-card-image) .event-card-inner::before {
  display: none;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event.has-event-card-image .event-card-inner::before {
  inset: 12px 12px auto;
  height: 88px;
  border-radius: 4px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.has-event-card-image) .poster-strip {
  min-height: 0;
  padding: 18px 18px 0;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event.has-event-card-image .poster-strip {
  min-height: 110px;
  padding: 18px 18px 0;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event .card-content {
  padding: 0 18px;
}

html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event h3 {
  font-size: 22px;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-request-band {
  margin-top: 32px;
  padding: 22px 0;
  border-radius: 0;
}

html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-request-copy h3 {
  font-size: clamp(28px, 3vw, 38px);
}

@media (max-width: 980px) {
  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-hero {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-nearest {
    max-width: none;
    border-left: 0;
    border-top: 1px solid #d8cbb8;
    padding: 20px 0 0;
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-hero {
    padding: 22px 0 24px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-title {
    font-size: clamp(34px, 10.5vw, 44px);
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-strip {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-link {
    border-right: 0;
    border-bottom: 1px solid #d8cbb8;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-action-link:last-child {
    border-bottom: 0;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .venue-events-header.opera-events-section {
    padding: 28px 0 12px;
  }

  html[data-site="statius"] #venue-view.ballet-category-page .statius-ballet-request-band {
    padding: 18px 0;
  }
}

/* Statius category editorial shell shared by Opera and Ballet. */
html[data-site="statius"] #venue-view.statius-category-page {
  background: #fbfaf7;
}

html[data-site="statius"] #venue-view.statius-category-page .container {
  max-width: 1280px;
}

html[data-site="statius"] #venue-view.statius-category-page .venue-view-head,
html[data-site="statius"] #venue-view.statius-category-page .seo-content-block,
html[data-site="statius"] #venue-view.statius-category-page .related-links-block,
html[data-site="statius"] #venue-view.statius-category-page .opera-directions,
html[data-site="statius"] #venue-view.statius-category-page .opera-process {
  display: none !important;
}

html[data-site="statius"] #venue-view.statius-category-page .venue-view-topbar {
  max-width: 1280px;
  margin: 0 auto 10px;
}

html[data-site="statius"] #venue-view.statius-category-page .venue-back-btn {
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid #0b0a08;
  border-radius: 4px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.statius-category-page .venue-back-btn:hover,
html[data-site="statius"] #venue-view.statius-category-page .venue-back-btn:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.statius-category-page .seo-breadcrumbs {
  max-width: 1280px;
  margin: 0 auto 16px;
  color: #665d4e;
}

html[data-site="statius"] #venue-view.statius-category-page .seo-breadcrumbs a {
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-landing {
  display: grid;
  gap: 0;
  max-width: 1280px;
  margin: 0 auto 30px;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, 360px);
  gap: 40px;
  align-items: stretch;
  padding: 24px 0 28px;
  border-top: 1px solid #d8cbb8;
  border-bottom: 1px solid #d8cbb8;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-hero-main {
  display: grid;
  gap: 16px;
  max-width: 780px;
  min-width: 0;
  align-content: start;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-label,
html[data-site="statius"] #venue-view.statius-category-page .statius-category-badge,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .event-tag,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .event-price {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  border: 1px solid #d8cbb8;
  border-radius: 3px;
  background: #f3eadc;
  color: #4e4638;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 10px;
  font-weight: 850;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-label,
html[data-site="statius"] #venue-view.statius-category-page .statius-category-badge {
  padding: 7px 9px;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-title {
  max-width: 760px;
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(44px, 5.4vw, 78px);
  font-weight: 600;
  line-height: 0.98;
  letter-spacing: -0.055em;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-intro {
  max-width: 610px;
  margin: 0;
  color: #4e4638;
  font-size: 17px;
  line-height: 1.58;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 8px;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-button,
html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-link,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .details-btn,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .arrow-btn,
html[data-site="statius"] #venue-view.statius-category-page .venue-filters select,
html[data-site="statius"] #venue-view.statius-category-page .venue-filters input[type="text"],
html[data-site="statius"] #venue-view.statius-category-page .venue-filters input[type="number"] {
  border-radius: 6px;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-button {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  border: 1px solid #0b0a08;
  box-shadow: none;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  text-decoration: none;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-button--primary {
  background: #0b0a08;
  color: #fffdf9;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-button--secondary {
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-button:hover,
html[data-site="statius"] #venue-view.statius-category-page .statius-category-button:focus-visible,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .details-btn:hover,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .details-btn:focus-visible,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .arrow-btn:hover,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .arrow-btn:focus-visible {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest {
  overflow: visible;
  display: grid;
  align-content: start;
  border: 0;
  border-left: 1px solid #d8cbb8;
  border-radius: 0;
  background: transparent;
  padding-left: 24px;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-media {
  display: none;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-media.has-image {
  display: block;
  min-height: 0;
  height: 92px;
  margin: 0 0 14px;
  border: 1px solid #d8cbb8;
  border-radius: 4px;
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.06), rgba(255, 253, 249, 0.18)),
    var(--statius-category-nearest-image, var(--statius-ballet-nearest-image));
  background-position: center;
  background-size: cover;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-body {
  display: grid;
  gap: 12px;
  padding: 0;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-top,
html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-footer {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-title {
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(24px, 2.2vw, 32px);
  font-weight: 600;
  line-height: 1.04;
  letter-spacing: -0.04em;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-meta {
  margin: 0;
  color: #4e4638;
  font-size: 14px;
  line-height: 1.54;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-footer {
  align-items: flex-end;
  padding-top: 12px;
  border-top: 1px solid #d8cbb8;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-price {
  display: grid;
  gap: 3px;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-price span {
  color: #665d4e;
  font-size: 10px;
  font-weight: 850;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-price strong {
  color: #0b0a08;
  font-size: 21px;
  line-height: 1;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-bottom: 1px solid #d8cbb8;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-link {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  border: 0;
  border-right: 1px solid #d8cbb8;
  background: transparent;
  color: #0b0a08;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-link:last-child {
  border-right: 0;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-link::after {
  content: "→";
  font-size: 14px;
  line-height: 1;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-link:hover,
html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-link:focus-visible {
  background: #f3eadc;
  color: #0b0a08;
  outline: none;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-link--primary {
  background: #0b0a08;
  color: #fffdf9;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-link--primary:hover,
html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-link--primary:focus-visible {
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.statius-category-page .venue-events-header.opera-events-section {
  margin-top: 0;
  padding: 34px 0 14px;
  border: 0;
  border-bottom: 1px solid #d8cbb8;
  border-radius: 0;
  background: transparent;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.statius-category-page .venue-events-header.opera-events-section [data-opera-events-kicker] {
  margin-bottom: 8px;
  color: #665d4e;
  font-size: 10px;
  font-weight: 850;
  letter-spacing: 0.12em;
}

html[data-site="statius"] #venue-view.statius-category-page .venue-events-header.opera-events-section h2 {
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(32px, 3.6vw, 46px);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.045em;
}

html[data-site="statius"] #venue-view.statius-category-page .venue-events-subtitle {
  max-width: 620px;
  color: #4e4638;
}

html[data-site="statius"] #venue-view.statius-category-page .venue-filters {
  padding: 12px 0;
  border: 0;
  border-bottom: 1px solid #d8cbb8;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.statius-category-page .venue-filters select,
html[data-site="statius"] #venue-view.statius-category-page .venue-filters input[type="text"],
html[data-site="statius"] #venue-view.statius-category-page .venue-filters input[type="number"] {
  min-height: 46px;
  border: 1px solid #d8cbb8;
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event {
  min-height: 0;
  border: 1px solid #d8cbb8;
  border-radius: 6px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:hover {
  border-color: #0b0a08;
  transform: translateY(-2px);
  box-shadow: none;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .event-card-inner {
  min-height: 268px;
  border-radius: 5px;
  background: #fffdf9;
  color: #0b0a08;
  overflow: hidden;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.has-event-card-image) .event-card-inner::before {
  display: none;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event.has-event-card-image .event-card-inner::before {
  inset: 12px 12px auto;
  height: 88px;
  border: 1px solid #d8cbb8;
  border-radius: 4px;
  opacity: 1;
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.08), rgba(255, 253, 249, 0.18)),
    var(--event-card-image, linear-gradient(135deg, #efe4d3, #fffdf9));
  background-position: center;
  background-size: cover;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.has-event-card-image) .poster-strip {
  min-height: 0;
  padding: 18px 18px 0;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event.has-event-card-image .poster-strip {
  min-height: 110px;
  padding: 18px 18px 0;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .card-content {
  margin-top: 0;
  padding: 0 18px;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event h3 {
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.1;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .event-meta {
  color: #4e4638;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .card-action-row {
  padding: 16px 18px 18px;
  margin-top: auto;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .details-btn,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event .arrow-btn {
  min-height: 34px;
  border: 1px solid #0b0a08;
  background: #0b0a08;
  color: #fffdf9;
  box-shadow: none;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-request-band {
  max-width: 1280px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 32px auto 0;
  padding: 22px 0;
  border-top: 1px solid #d8cbb8;
  border-bottom: 1px solid #d8cbb8;
  border-radius: 0;
  background: transparent;
  color: #0b0a08;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-request-copy {
  display: grid;
  gap: 8px;
  max-width: 720px;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-request-copy h3 {
  margin: 0;
  color: #0b0a08;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.035em;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-request-copy p {
  margin: 0;
  color: #4e4638;
  font-size: 15px;
  line-height: 1.55;
}

@media (max-width: 980px) {
  html[data-site="statius"] #venue-view.statius-category-page .statius-category-hero {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }

  html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest {
    max-width: none;
    border-left: 0;
    border-top: 1px solid #d8cbb8;
    padding: 20px 0 0;
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] #venue-view.statius-category-page .statius-category-hero {
    padding: 22px 0 24px;
  }

  html[data-site="statius"] #venue-view.statius-category-page .statius-category-title {
    font-size: clamp(34px, 10.5vw, 44px);
  }

  html[data-site="statius"] #venue-view.statius-category-page .statius-category-actions,
  html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-footer,
  html[data-site="statius"] #venue-view.statius-category-page .statius-category-request-band {
    align-items: stretch;
    flex-direction: column;
  }

  html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-strip {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-link {
    border-right: 0;
    border-bottom: 1px solid #d8cbb8;
  }

  html[data-site="statius"] #venue-view.statius-category-page .statius-category-action-link:last-child {
    border-bottom: 0;
  }

  html[data-site="statius"] #venue-view.statius-category-page .statius-category-button,
  html[data-site="statius"] #venue-view.statius-category-page .statius-category-request-band .statius-category-button {
    width: 100%;
  }

  html[data-site="statius"] #venue-view.statius-category-page .venue-events-header.opera-events-section {
    padding: 28px 0 12px;
  }

  html[data-site="statius"] #venue-view.statius-category-page .statius-category-request-band {
    padding: 18px 0;
  }
}

/* Statius event flow sharp editorial hardening: visual-only overrides. */
html[data-site="statius"] {
  --statius-flow-radius-section: 4px;
  --statius-flow-radius-card: 6px;
  --statius-flow-radius-chip: 4px;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) {
  color: var(--statius-flow-ink);
  overflow-x: clip;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.event-flow-topbar, .modal-header) {
  color: var(--statius-flow-ink);
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.cwt-back-part, .stepper .step) {
  border-radius: var(--statius-flow-radius-card);
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper .step {
  min-height: 38px;
  background: #fffdf9;
  color: #4e4638;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper .step.is-active {
  border-color: #0b0a08;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: inset 0 -2px 0 #0b0a08;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper .step.is-complete {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(
  .checkout-event-hero,
  .section-card,
  .checkout-event-summary-card,
  .checkout-seats-form,
  .checkout-ticket-recipients-card,
  .checkout-booking-protection-card,
  .checkout-delivery-card,
  .checkout-transfer-card,
  .checkout-order-panel,
  .checkout-payment-panel,
  .checkout-final-summary-card,
  .checkout-payment-option,
  .checkout-consents,
  .la-scala-hall-map__frame,
  .la-scala-hall-map__comment
) {
  border: 1px solid #d8cbb8;
  border-radius: var(--statius-flow-radius-card);
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step:not(.is-football-checkout-hero) .checkout-event-hero {
  border-radius: var(--statius-flow-radius-section);
  background: #fffdf9;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-hero-grid {
  align-items: stretch;
  padding: clamp(20px, 3vw, 30px);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-title,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-section-title,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-title,
html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(.modal-title, .checkout-order-title, .checkout-tier-card-control__title, .checkout-ticket-recipients-title, .checkout-booking-protection-title, .checkout-delivery-card-title, .checkout-transfer-card-title),
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.modal-title, .checkout-payment-card__title, .checkout-payment-option h5, .checkout-final-summary-title, .checkout-payment-summary-title) {
  color: #0b0a08;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step :is(.checkout-event-byline, .checkout-event-description p, .checkout-event-address-text, .checkout-event-time-item small),
html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(.modal-subtitle, .form-note, .checkout-service-disclosure, .checkout-booking-protection-text, .checkout-delivery-card-text, .checkout-transfer-summary-text, .ticket-recipients-help),
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.modal-subtitle, .checkout-payment-option p, .checkout-final-summary-meta, .checkout-payment-summary-meta, .checkout-payment-summary-info-card span) {
  color: #5d5346;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step :is(
  .checkout-event-eyebrow,
  .checkout-event-fact,
  .checkout-event-time-item,
  .checkout-event-summary-row,
  .session-chip,
  .checkout-event-summary-badge,
  .event-address-icon,
  .checkout-event-copy-address-btn,
  .event-address-map-btn
),
html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(
  .checkout-order-row,
  .checkout-order-total,
  .checkout-tier-option-card,
  .checkout-transfer-preview-chip,
  .checkout-tier-request-state,
  .checkout-price-request-status,
  .checkout-ticket-recipient-item,
  .checkout-ticket-recipient-draft,
  .checkout-recipient-details-controls
),
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(
  .checkout-payment-summary-row,
  .checkout-final-summary-row,
  .checkout-payment-summary-info-card,
  .checkout-payment-summary-row--total,
  .checkout-final-summary-total
) {
  border: 1px solid #d8cbb8;
  border-radius: var(--statius-flow-radius-card);
  background: #fbf6ed;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step :is(.checkout-event-fact span, .checkout-event-summary-label, .checkout-event-pane-label, .checkout-event-time-item span),
html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(label > span, .checkout-order-row span, .checkout-booking-protection-price-label, .checkout-delivery-price-label),
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.checkout-payment-summary-row span, .checkout-final-summary-row span, .checkout-final-summary-kicker) {
  color: #7a6d5c;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step :is(.checkout-event-fact strong, .checkout-event-summary-value, .checkout-event-time-item strong, .checkout-event-address-place),
html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(.checkout-order-row strong, .checkout-order-total strong, .checkout-tier-option-card__label, .checkout-tier-option-card__price),
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(.checkout-payment-summary-row strong, .checkout-final-summary-row strong, .checkout-final-summary-total strong, .checkout-payment-summary-row--total strong) {
  color: #0b0a08;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-eyebrow,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-summary-badge,
html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(.checkout-transfer-preview-chip, .checkout-booking-protection-price),
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-final-summary-kicker {
  border-radius: var(--statius-flow-radius-chip);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step :is(.checkout-event-photo-box, .event-hero-image-card) {
  max-width: 300px;
  border: 1px solid #d8cbb8;
  border-radius: var(--statius-flow-radius-card);
  background:
    linear-gradient(135deg, #fffdf9 0%, #f3eadc 100%),
    radial-gradient(circle at 28% 18%, rgba(194, 159, 99, 0.12), transparent 36%);
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .event-hero-image-card.has-theatre-fallback {
  aspect-ratio: 16 / 10;
  min-height: 0;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .event-hero-image.event-hero-image--theatre-fallback {
  display: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .event-hero-fallback {
  inset: 10px;
  border: 1px solid #d8cbb8;
  border-radius: var(--statius-flow-radius-card);
  background: #fbf6ed;
  color: #5d5346;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-chip:hover,
html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-chip:focus-visible,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card:hover,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card:focus-visible,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card.is-zone-hovered {
  border-color: #0b0a08;
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
  transform: translateY(-1px);
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-chip.is-active,
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card:is(.is-active, .active, .is-selected),
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map :is(.category-card.is-selected, .price-tier-card.is-selected) {
  border-color: #0b0a08;
  background: #0b0a08;
  color: #fffdf9;
  box-shadow: none;
}

html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-chip.is-active :is(.session-chip-date, .session-chip-time),
html[data-site="statius"] #tickets-page-view .checkout-flow--seat-map .checkout-tier-option-card:is(.is-active, .active, .is-selected) :is(.checkout-tier-option-card__label, .checkout-tier-option-card__price) {
  color: #fffdf9;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(input, select, textarea),
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(input, select, textarea) {
  border: 1px solid #d8cbb8;
  border-radius: var(--statius-flow-radius-card);
  background-color: #fffdf9;
  color: #0b0a08;
  -webkit-text-fill-color: #0b0a08;
  box-shadow: none;
  color-scheme: light;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(select),
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(select) {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg width='16' height='10' viewBox='0 0 16 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 2L8 8L14 2' stroke='%230b0a08' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 14px 8px;
  background-position: right 12px center;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(input, select, textarea):hover,
html[data-site="statius"] #tickets-page-view .tickets-route-shell :is(input, select, textarea):focus-visible,
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(input, select, textarea):hover,
html[data-site="statius"] #checkout-page-view .checkout-route-shell :is(input, select, textarea):focus-visible {
  border-color: #0b0a08;
  background-color: #fffdf9;
  color: #0b0a08;
  -webkit-text-fill-color: #0b0a08;
  outline: none;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell select option,
html[data-site="statius"] #checkout-page-view .checkout-route-shell select option {
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-qty-control {
  border-radius: var(--statius-flow-radius-card);
  background: #fffdf9;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-qty-input {
  color: #0b0a08 !important;
  -webkit-text-fill-color: #0b0a08 !important;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-qty-btn {
  background: #fbf6ed;
  color: #0b0a08;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-qty-btn:hover:not(:disabled),
html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-qty-btn:focus-visible:not(:disabled) {
  background: #f3eadc;
  color: #0b0a08;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-consents,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-consents--payment {
  padding: 14px;
  border: 1px solid #d8cbb8;
  border-radius: var(--statius-flow-radius-card);
  background: #fbf6ed;
  color: #0b0a08;
}

html[data-site="statius"] :is(#tickets-page-view, #checkout-page-view) :is(.consent-row, .consent-text, .consent-row a) {
  color: #0b0a08;
}

html[data-site="statius"] :is(#tickets-page-view, #checkout-page-view) .consent-row a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

html[data-site="statius"] :is(#tickets-page-view, #checkout-page-view) .consent-box {
  width: 20px;
  height: 20px;
  border: 1px solid #0b0a08;
  border-radius: 4px;
  background: #fffdf9;
}

html[data-site="statius"] :is(#tickets-page-view, #checkout-page-view) .consent-row input:checked + .consent-box {
  border-color: #0b0a08;
  background: #0b0a08;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-option,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-payment-option {
  min-height: 148px;
  border: 1px solid #d8cbb8;
  border-radius: var(--statius-flow-radius-card);
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-option--primary,
html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-card--revolut,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-payment-card--revolut {
  border-color: #d8cbb8;
  background: #fffdf9;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-payment-card--revolut::before,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-payment-card--revolut::after {
  display: none;
  content: none;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-final-summary-card,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-final-summary-card {
  border: 1px solid #d8cbb8;
  border-radius: var(--statius-flow-radius-card);
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-final-summary-row {
  min-height: 42px;
  border-radius: var(--statius-flow-radius-card);
  background: #fbf6ed;
  color: #5d5346;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-final-summary-total {
  border: 1px solid #0b0a08;
  border-radius: var(--statius-flow-radius-card);
  background: #fffdf9;
  color: #0b0a08;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total span,
html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-row--total strong,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-final-summary-total span,
html[data-site="statius"] #checkout-page-view .checkout-route-shell .checkout-final-summary-total strong {
  color: #0b0a08;
}

html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-card {
  min-height: 86px;
  border-radius: var(--statius-flow-radius-card);
  background: #fbf6ed;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta, .checkout-seats-merge-cta, .checkout-payment-merge-cta) {
  gap: 6px;
  min-height: 52px;
  height: 52px;
  border-radius: var(--statius-flow-radius-card);
  color: #fffdf9;
  filter: none;
}

html[data-site="statius"] #event-page-view .checkout-event-choice-cta::before,
html[data-site="statius"] #tickets-page-view .checkout-seats-merge-cta::before,
html[data-site="statius"] #tickets-page-view .checkout-seats-mobile-sticky-cta::before,
html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta::before {
  content: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta-part, .checkout-seats-merge-cta__part, .checkout-payment-merge-cta__text, .checkout-payment-merge-cta__arrow, .checkout-seats-mobile-sticky-cta-part) {
  min-height: 52px;
  border: 1px solid #0b0a08;
  border-radius: var(--statius-flow-radius-card);
  background: #0b0a08;
  color: #fffdf9;
  box-shadow: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta-icon, .checkout-seats-merge-cta__arrow, .checkout-payment-merge-cta__arrow) {
  width: 52px;
  flex-basis: 52px;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta:hover, .checkout-event-choice-cta:focus-visible, .checkout-seats-merge-cta:hover, .checkout-seats-merge-cta:focus-visible, .checkout-payment-merge-cta:hover, .checkout-payment-merge-cta:focus-visible) {
  gap: 6px;
  border-radius: var(--statius-flow-radius-card);
  transform: translateY(-1px);
  filter: none;
  outline: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta:hover, .checkout-event-choice-cta:focus-visible, .checkout-seats-merge-cta:hover, .checkout-seats-merge-cta:focus-visible, .checkout-payment-merge-cta:hover, .checkout-payment-merge-cta:focus-visible) :is(.checkout-event-choice-cta-part, .checkout-seats-merge-cta__part, .checkout-payment-merge-cta__text, .checkout-payment-merge-cta__arrow, .checkout-seats-mobile-sticky-cta-part) {
  margin: 0;
  border-color: #0b0a08;
  border-radius: var(--statius-flow-radius-card);
  background: #f3eadc;
  color: #0b0a08;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) :is(.checkout-event-choice-cta:disabled, .checkout-seats-merge-cta:disabled, .checkout-payment-merge-cta:disabled) :is(.checkout-event-choice-cta-part, .checkout-seats-merge-cta__part, .checkout-payment-merge-cta__text, .checkout-payment-merge-cta__arrow, .checkout-seats-mobile-sticky-cta-part) {
  background: #8f806d;
  border-color: #8f806d;
  color: #fffdf9;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-transfer-toggle-ui {
  border-color: #0b0a08;
  background: #fffdf9;
}

html[data-site="statius"] #tickets-page-view .tickets-route-shell .checkout-transfer-toggle input:checked + .checkout-transfer-toggle-ui {
  border-color: #0b0a08;
  background: #0b0a08;
}

html[data-site="statius"] #tickets-page-view .la-scala-hall-map__comment-input,
html[data-site="statius"] #tickets-page-view .la-scala-hall-map__comment-input::placeholder {
  color: #0b0a08;
}

html[data-site="statius"] #tickets-page-view .checkout-seats-mobile-sticky {
  background: linear-gradient(180deg, rgba(246, 239, 228, 0) 0%, rgba(246, 239, 228, 0.96) 28%, #f6efe4 100%);
}

@media (max-width: 780px) {
  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view).event-flow-section {
    padding-top: 18px;
    padding-bottom: 56px;
  }

  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .event-flow-topbar {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper {
    display: flex !important;
    overflow-x: auto;
    width: 100%;
  }

  html[data-site="statius"] :is(#event-page-view, #tickets-page-view, #checkout-page-view) .stepper .step {
    flex: 1 0 max(104px, 31%);
    min-height: 36px;
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-hero-grid {
    grid-template-columns: minmax(0, 1fr);
    padding: 16px;
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-facts-grid,
  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .session-grid,
  html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map > [data-payment-form] .checkout-payment-options,
  html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-summary-info-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .checkout-event-photo-box,
  html[data-site="statius"] #event-page-view .event-route-shell.checkout-event-step .event-hero-image-card {
    max-width: none;
    width: 100%;
  }

  html[data-site="statius"] #checkout-page-view .checkout-route-shell.checkout-flow--seat-map .checkout-payment-option {
    min-height: 0;
  }
}

/* Statius unified CTA layer: remove split-button arrow segments without changing handlers. */
html[data-site="statius"] {
  --statius-button-bg: #0b0a08;
  --statius-button-fg: #fffdf9;
  --statius-button-hover-bg: #f3eadc;
  --statius-button-secondary-bg: #fffdf9;
}

html[data-site="statius"] :is(
  #top,
  #events,
  #all-events-view,
  #events-calendar-view,
  #categories,
  #venues,
  #request-promo,
  #contact,
  #event-page-view,
  #tickets-page-view,
  #checkout-page-view,
  #venue-view
) :is(
  .hero-card-action-row,
  .home-mobile-hero-actions,
  .card-action-row,
  .filter-action-row,
  .request-action,
  .submit-row,
  .formula-event-actions
) {
  gap: 0;
}

html[data-site="statius"] :is(
  #top .hero-arrow-btn,
  #top .home-mobile-hero-merge-arrow,
  #events .card.event .arrow-btn,
  #events .filter-action-arrow,
  #events .mobile-all-events-arrow,
  #all-events-view .card.event .arrow-btn,
  #all-events-view .filter-action-arrow,
  #events-calendar-view .events-calendar-request-arrow,
  #categories .category-arrow,
  #venues .venue-arrow,
  #request-promo .request-arrow,
  #contact .submit-arrow,
  #event-page-view .checkout-event-choice-cta-icon,
  #tickets-page-view .checkout-seats-merge-cta__arrow,
  #tickets-page-view .checkout-seats-mobile-sticky-cta-icon,
  #checkout-page-view .checkout-payment-merge-cta__arrow,
  #venue-view .card.event .arrow-btn,
  #venue-view .formula-event-arrow,
  .statius-event-arrow,
  .statius-category-arrow
),
html[data-site="statius"] body.modal-open--auth .submit-btn-arrow {
  display: none !important;
}

html[data-site="statius"] :is(
  #events .filter-arrow,
  #all-events-view .filter-arrow,
  #events-calendar-view .events-calendar-filter-circle
) {
  width: auto !important;
  height: auto !important;
  flex: 0 0 auto;
  min-width: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: currentColor;
  box-shadow: none !important;
}

html[data-site="statius"] :is(
  #top .hero-main-btn,
  #top .home-mobile-hero-merge-cta,
  #events .events-all-link .filter-action,
  #events .events-all-link-mobile,
  #all-events-view .all-events-request-btn,
  #events-calendar-view .events-calendar-request-cta,
  #request-promo .request-btn,
  #contact .submit-btn,
  #event-page-view .checkout-event-choice-cta,
  #tickets-page-view .checkout-seats-merge-cta,
  #checkout-page-view .checkout-payment-merge-cta,
  #venue-view .formula-event-main-btn
) {
  min-height: 44px;
  border: 1px solid var(--statius-button-bg);
  border-radius: 6px !important;
  background: var(--statius-button-bg);
  color: var(--statius-button-fg);
  box-shadow: none;
  filter: none;
  text-decoration: none;
}

html[data-site="statius"] :is(
  #event-page-view .checkout-event-choice-cta,
  #tickets-page-view .checkout-seats-merge-cta,
  #checkout-page-view .checkout-payment-merge-cta
) {
  display: inline-flex !important;
  grid-template-columns: none !important;
  align-items: center;
  justify-content: center;
  gap: 0 !important;
  padding: 0 18px;
}

html[data-site="statius"] :is(
  #top .hero-main-btn:hover,
  #top .hero-main-btn:focus-visible,
  #top .home-mobile-hero-merge-cta:hover,
  #top .home-mobile-hero-merge-cta:focus-visible,
  #events .events-all-link:hover .filter-action,
  #events .events-all-link:focus-visible .filter-action,
  #events .events-all-link-mobile:hover,
  #events .events-all-link-mobile:focus-visible,
  #all-events-view .all-events-request-btn:hover,
  #all-events-view .all-events-request-btn:focus-visible,
  #events-calendar-view .events-calendar-request-cta:hover,
  #events-calendar-view .events-calendar-request-cta:focus-visible,
  #request-promo .request-btn:hover,
  #request-promo .request-btn:focus-visible,
  #contact .submit-btn:hover,
  #contact .submit-btn:focus-visible,
  #event-page-view .checkout-event-choice-cta:hover,
  #event-page-view .checkout-event-choice-cta:focus-visible,
  #tickets-page-view .checkout-seats-merge-cta:hover,
  #tickets-page-view .checkout-seats-merge-cta:focus-visible,
  #checkout-page-view .checkout-payment-merge-cta:hover,
  #checkout-page-view .checkout-payment-merge-cta:focus-visible,
  #venue-view .formula-event-main-btn:hover,
  #venue-view .formula-event-main-btn:focus-visible
) {
  border-color: var(--statius-button-bg);
  background: var(--statius-button-hover-bg);
  color: var(--statius-button-bg);
  box-shadow: none;
  filter: none;
  transform: translateY(-1px);
}

html[data-site="statius"] :is(
  #events .card.event .details-btn,
  #all-events-view .card.event .details-btn,
  #venue-view .card.event .details-btn,
  #categories .category-count,
  #venues .venue-link
) {
  min-height: 34px;
  border: 1px solid var(--statius-button-bg);
  border-radius: 6px !important;
  background: var(--statius-button-secondary-bg);
  color: var(--statius-button-bg);
  box-shadow: none;
}

html[data-site="statius"] :is(
  #events .card.event .card-action-row:hover .details-btn,
  #events .card.event .card-action-row:focus-within .details-btn,
  #all-events-view .card.event .card-action-row:hover .details-btn,
  #all-events-view .card.event .card-action-row:focus-within .details-btn,
  #venue-view .card.event .card-action-row:hover .details-btn,
  #venue-view .card.event .card-action-row:focus-within .details-btn,
  #categories .category-card:hover .category-count,
  #categories .category-card:focus-within .category-count,
  #venues .venue-card:hover .venue-link,
  #venues .venue-card:focus-within .venue-link
) {
  border-color: var(--statius-button-bg);
  background: var(--statius-button-hover-bg);
  color: var(--statius-button-bg);
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] #events .events-all-link,
html[data-site="statius"] #all-events-view .all-events-request-action-row {
  width: auto;
  min-width: 0;
}

html[data-site="statius"] #events .events-all-link .filter-action,
html[data-site="statius"] #all-events-view .all-events-request-btn,
html[data-site="statius"] #contact .submit-btn,
html[data-site="statius"] #event-page-view .checkout-event-choice-cta,
html[data-site="statius"] #tickets-page-view .checkout-seats-merge-cta,
html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta {
  width: 100%;
}

html[data-site="statius"] #top .home-mobile-hero-merge-text,
html[data-site="statius"] #event-page-view .checkout-event-choice-cta-text,
html[data-site="statius"] #tickets-page-view .checkout-seats-merge-cta__label,
html[data-site="statius"] #tickets-page-view .checkout-seats-mobile-sticky-cta-text,
html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta__text {
  flex: 1 1 auto;
  justify-content: center;
  width: 100%;
  min-height: inherit;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  box-shadow: none !important;
  margin: 0 !important;
  transform: none !important;
}

html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta__label--wrap {
  width: auto;
}

html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta--revolut {
  background: var(--statius-button-secondary-bg);
  color: var(--statius-button-bg);
}

html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta--revolut:hover,
html[data-site="statius"] #checkout-page-view .checkout-payment-merge-cta--revolut:focus-visible {
  background: var(--statius-button-hover-bg);
  color: var(--statius-button-bg);
}

html[data-site="statius"] :is(
  #event-page-view .checkout-event-choice-cta,
  #tickets-page-view .checkout-seats-merge-cta,
  #checkout-page-view .checkout-payment-merge-cta
)::before {
  content: none;
}

html[data-site="statius"] :is(
  #event-page-view .checkout-event-choice-cta:disabled,
  #event-page-view .checkout-event-choice-cta.is-disabled,
  #tickets-page-view .checkout-seats-merge-cta:disabled,
  #tickets-page-view .checkout-seats-merge-cta.is-disabled,
  #tickets-page-view .checkout-seats-merge-cta[aria-disabled="true"],
  #checkout-page-view .checkout-payment-merge-cta:disabled,
  #checkout-page-view .checkout-payment-merge-cta.is-disabled
) {
  border-color: #8f806d;
  background: #8f806d;
  color: var(--statius-button-fg);
  opacity: 0.78;
  transform: none;
}

html[data-site="statius"] :is(
  #event-page-view .checkout-event-choice-cta:hover .checkout-event-choice-cta-text,
  #event-page-view .checkout-event-choice-cta:focus-visible .checkout-event-choice-cta-text,
  #tickets-page-view .checkout-seats-merge-cta:hover .checkout-seats-merge-cta__label,
  #tickets-page-view .checkout-seats-merge-cta:focus-visible .checkout-seats-merge-cta__label,
  #checkout-page-view .checkout-payment-merge-cta:hover .checkout-payment-merge-cta__text,
  #checkout-page-view .checkout-payment-merge-cta:focus-visible .checkout-payment-merge-cta__text
) {
  border-radius: 0;
  background: transparent;
  color: inherit;
  box-shadow: none;
  margin: 0;
  transform: none;
}

html[data-site="statius"] body.modal-open--auth .submit-btn {
  grid-template-columns: minmax(0, 1fr);
  border-radius: 6px;
}

@media (max-width: 780px) {
  html[data-site="statius"] :is(
    #top .home-mobile-hero-merge-cta,
    #events .events-all-link-mobile,
    #all-events-view .all-events-request-btn,
    #events-calendar-view .events-calendar-request-cta,
    #request-promo .request-btn,
    #contact .submit-btn,
    #checkout-page-view .checkout-payment-merge-cta
  ) {
    width: 100%;
  }
}

/* Statius account sharp editorial layer */
html[data-site="statius"] body.account-body {
  --st-account-bg: #f7f1e7;
  --st-account-surface: #fffdf8;
  --st-account-ivory: #fbf7ef;
  --st-account-beige: #ede3d4;
  --st-account-beige-strong: #d5c5af;
  --st-account-ink: #11100d;
  --st-account-muted: #6f665b;
  --st-account-soft: #8c8172;
  --st-account-danger-bg: #fff2ee;
  --st-account-danger: #8e2f20;
  --st-account-success-bg: #f4f4e9;
  --st-account-success: #3d4e22;
  min-height: 100dvh;
  overflow-x: hidden;
  overflow-y: auto;
  background: var(--st-account-bg);
  color: var(--st-account-ink);
  font-family: "Hanken Grotesk", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html[data-site="statius"] body.account-body::before {
  content: none;
}

html[data-site="statius"] body.account-body * {
  letter-spacing: 0;
}

html[data-site="statius"] body.account-body :is(h1, h2, h3, .account-offer-page-title, .modal-title) {
  color: var(--st-account-ink);
  font-family: "Playfair Display", Georgia, serif;
  letter-spacing: 0;
}

html[data-site="statius"] body.account-body :is(p, span, b, strong, dt, dd, label, input, textarea, select, button, a) {
  color: inherit;
}

html[data-site="statius"] body.account-body .account-page {
  min-height: calc(100dvh - 74px);
  height: auto;
  overflow: visible;
  padding: clamp(18px, 3vw, 34px) 0 clamp(34px, 5vw, 56px);
  background: transparent;
}

html[data-site="statius"] body.account-body .account-page .container {
  width: min(100%, 1280px);
  max-width: min(100%, 1280px);
  height: auto;
  min-height: 0;
  padding-inline: clamp(16px, 3vw, 34px);
}

html[data-site="statius"] body.account-body.account-body--offer .account-page .container {
  max-width: min(100%, 1360px);
}

html[data-site="statius"] body.account-body .account-page-shell,
html[data-site="statius"] body.account-body .account-page-shell--offer,
html[data-site="statius"] body.account-body .account-content,
html[data-site="statius"] body.account-body .account-content--offer,
html[data-site="statius"] body.account-body .account-panel,
html[data-site="statius"] body.account-body .account-panel--offer {
  min-height: 0;
  height: auto;
  overflow: visible;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

html[data-site="statius"] body.account-body:not(.account-body--offer) .account-topbar,
html[data-site="statius"] body.account-body.account-body--offer .site-header {
  position: sticky;
  top: 0;
  z-index: 24;
  height: 74px;
  border-bottom: 1px solid rgba(17, 16, 13, 0.12);
  background: rgba(251, 247, 239, 0.94);
  backdrop-filter: blur(18px);
  box-shadow: none;
}

html[data-site="statius"] body.account-body:not(.account-body--offer) .account-topbar-inner,
html[data-site="statius"] body.account-body.account-body--offer .site-header .nav {
  max-width: 1280px;
  height: 100%;
  margin: 0 auto;
  padding-inline: clamp(16px, 3vw, 34px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

html[data-site="statius"] body.account-body .account-brand,
html[data-site="statius"] body.account-body .site-header .logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--st-account-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 22px;
  font-weight: 700;
  text-decoration: none;
}

html[data-site="statius"] body.account-body .account-brand-mark {
  width: 38px;
  height: 38px;
  border-radius: 4px;
  border: 1px solid rgba(17, 16, 13, 0.14);
  background: var(--st-account-surface);
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-top-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

html[data-site="statius"] body.account-body .account-language {
  display: inline-flex;
  position: relative;
  padding: 0;
  border-radius: 6px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-surface);
}

html[data-site="statius"] body.account-body .language-current,
html[data-site="statius"] body.account-body .language-option {
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .language-current {
  min-height: 38px;
  padding: 0 12px;
}

html[data-site="statius"] body.account-body .language-menu {
  right: 0;
  margin-top: 8px;
  border-radius: 6px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-surface);
  box-shadow: 0 18px 42px rgba(17, 16, 13, 0.12);
}

html[data-site="statius"] body.account-body .language-option {
  width: 100%;
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .language-option:hover,
html[data-site="statius"] body.account-body .language-option:focus-visible {
  background: var(--st-account-ivory);
}

html[data-site="statius"] body.account-body .account-page-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 390px);
  gap: clamp(18px, 3vw, 32px);
  align-items: end;
  margin: 0 0 clamp(20px, 3vw, 32px);
  padding-bottom: clamp(18px, 3vw, 28px);
  border-bottom: 1px solid rgba(17, 16, 13, 0.16);
}

html[data-site="statius"] body.account-body .account-hero-copy {
  display: grid;
  gap: 10px;
}

html[data-site="statius"] body.account-body .account-hero-eyebrow {
  display: inline-flex;
  width: fit-content;
  padding: 0 0 6px;
  border: 0;
  border-bottom: 1px solid var(--st-account-ink);
  border-radius: 0;
  background: transparent;
  color: var(--st-account-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

html[data-site="statius"] body.account-body .account-page-head h1 {
  margin: 0;
  color: var(--st-account-ink);
  font-size: clamp(42px, 5vw, 74px);
  line-height: 0.96;
  font-weight: 700;
}

html[data-site="statius"] body.account-body .account-page-head p {
  max-width: 640px;
  margin: 0;
  color: var(--st-account-muted);
  font-size: 16px;
  line-height: 1.56;
}

html[data-site="statius"] body.account-body .account-hero-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  min-width: 0;
}

html[data-site="statius"] body.account-body .account-hero-stat {
  min-width: 0;
  padding: 14px 12px;
  border-radius: 4px;
  border: 1px solid var(--st-account-beige-strong);
  background: rgba(255, 253, 248, 0.76);
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-hero-stat strong {
  display: block;
  color: var(--st-account-ink);
  font-size: 25px;
  line-height: 1;
}

html[data-site="statius"] body.account-body .account-hero-stat span {
  color: var(--st-account-muted);
  font-size: 12px;
  line-height: 1.22;
}

html[data-site="statius"] body.account-body:not(.account-body--offer) .account-layout {
  grid-template-columns: minmax(210px, 250px) minmax(0, 1fr);
  gap: clamp(18px, 2.5vw, 28px);
  align-items: start;
  height: auto;
}

html[data-site="statius"] body.account-body .account-menu {
  position: sticky;
  top: 96px;
  min-height: 0;
  padding: 10px;
  border-radius: 6px;
  border: 1px solid var(--st-account-beige-strong);
  background: rgba(255, 253, 248, 0.8);
  box-shadow: none;
  backdrop-filter: none;
}

html[data-site="statius"] body.account-body .account-menu-footer {
  display: grid;
  gap: 8px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--st-account-beige);
}

html[data-site="statius"] body.account-body .account-tab,
html[data-site="statius"] body.account-body .account-mobile-tab {
  min-height: 42px;
  border-radius: 4px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--st-account-muted);
  font-size: 13px;
  font-weight: 800;
  text-align: left;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-tab:hover,
html[data-site="statius"] body.account-body .account-tab:focus-visible,
html[data-site="statius"] body.account-body .account-tab.is-active,
html[data-site="statius"] body.account-body .account-mobile-tab:hover,
html[data-site="statius"] body.account-body .account-mobile-tab:focus-visible,
html[data-site="statius"] body.account-body .account-mobile-tab.is-active {
  border-color: var(--st-account-ink);
  background: var(--st-account-ivory);
  color: var(--st-account-ink);
  transform: none;
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-tab-badge,
html[data-site="statius"] body.account-body .account-thread-unread,
html[data-site="statius"] body.account-body .account-status-pill,
html[data-site="statius"] body.account-body .account-request-chip,
html[data-site="statius"] body.account-body .account-order-chip,
html[data-site="statius"] body.account-body .account-request-number-pill,
html[data-site="statius"] body.account-body .account-offer-extra-status,
html[data-site="statius"] body.account-body .checkout-transfer-preview-chip,
html[data-site="statius"] body.account-body .chip {
  min-height: 22px;
  border-radius: 4px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-ivory);
  color: var(--st-account-ink);
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-tab-badge {
  min-width: 20px;
  height: 20px;
  padding-inline: 6px;
  font-size: 11px;
}

html[data-site="statius"] body.account-body .account-menu-support,
html[data-site="statius"] body.account-body .account-menu-back-home,
html[data-site="statius"] body.account-body .btn,
html[data-site="statius"] body.account-body button.btn {
  min-height: 42px;
  border-radius: 6px;
  border: 1px solid var(--st-account-ink);
  background: var(--st-account-surface);
  color: var(--st-account-ink);
  box-shadow: none;
  font-family: "Hanken Grotesk", system-ui, sans-serif;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
  transform: none;
}

html[data-site="statius"] body.account-body .btn-primary,
html[data-site="statius"] body.account-body .btn.btn-primary {
  border-color: var(--st-account-ink);
  background: var(--st-account-ink);
  color: #fffdf8;
}

html[data-site="statius"] body.account-body .btn-outline,
html[data-site="statius"] body.account-body .btn.btn-outline,
html[data-site="statius"] body.account-body .btn-ghost,
html[data-site="statius"] body.account-body .btn.btn-ghost,
html[data-site="statius"] body.account-body .account-header-logout {
  border-color: var(--st-account-ink);
  background: var(--st-account-surface);
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body :is(.btn, .account-menu-support, .account-menu-back-home):hover,
html[data-site="statius"] body.account-body :is(.btn, .account-menu-support, .account-menu-back-home):focus-visible {
  border-color: var(--st-account-ink);
  background: var(--st-account-beige);
  color: var(--st-account-ink);
  transform: none;
  box-shadow: none;
  outline: 2px solid rgba(17, 16, 13, 0.16);
  outline-offset: 2px;
}

html[data-site="statius"] body.account-body :is(.btn, button):disabled,
html[data-site="statius"] body.account-body :is(.btn, button)[aria-disabled="true"] {
  border-color: var(--st-account-beige-strong);
  background: #e5dbc9;
  color: rgba(17, 16, 13, 0.5);
  opacity: 1;
  cursor: not-allowed;
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-notice,
html[data-site="statius"] body.account-body .account-auth-required,
html[data-site="statius"] body.account-body .account-ticket-board,
html[data-site="statius"] body.account-body .account-requests-panel,
html[data-site="statius"] body.account-body .account-profile-card,
html[data-site="statius"] body.account-body .account-recipient-card,
html[data-site="statius"] body.account-body .account-profile-main,
html[data-site="statius"] body.account-body .account-password-card,
html[data-site="statius"] body.account-body .account-profile-address,
html[data-site="statius"] body.account-body .account-messages-grid,
html[data-site="statius"] body.account-body .account-offer-summary,
html[data-site="statius"] body.account-body .account-request-section,
html[data-site="statius"] body.account-body .account-offer-extras,
html[data-site="statius"] body.account-body .account-offer-side,
html[data-site="statius"] body.account-body .checkout-booking-protection-card,
html[data-site="statius"] body.account-body .checkout-transfer-card,
html[data-site="statius"] body.account-body .checkout-ticket-recipients-card,
html[data-site="statius"] body.account-body .checkout-final-summary-card,
html[data-site="statius"] body.account-body .checkout-payment-panel,
html[data-site="statius"] body.account-body .checkout-payment-option {
  border-radius: 6px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-surface);
  color: var(--st-account-ink);
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] body.account-body .account-notice {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 16px;
  margin-bottom: 18px;
  padding: 16px;
}

html[data-site="statius"] body.account-body .account-notice-icon {
  width: 38px;
  height: 38px;
  border-radius: 4px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-ivory);
  color: var(--st-account-ink);
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-notice-copy {
  display: grid;
  gap: 3px;
}

html[data-site="statius"] body.account-body .account-notice-copy strong {
  color: var(--st-account-ink);
  font-size: 15px;
}

html[data-site="statius"] body.account-body .account-notice-copy span,
html[data-site="statius"] body.account-body .account-state,
html[data-site="statius"] body.account-body .form-note,
html[data-site="statius"] body.account-body .modal-subtitle,
html[data-site="statius"] body.account-body .checkout-payment-panel-text,
html[data-site="statius"] body.account-body .checkout-payment-option p,
html[data-site="statius"] body.account-body .checkout-final-summary-meta {
  color: var(--st-account-muted);
}

html[data-site="statius"] body.account-body .form-error,
html[data-site="statius"] body.account-body .account-offer-payment-status.is-error,
html[data-site="statius"] body.account-body .checkout-ticket-recipients-state.is-error {
  border-radius: 4px;
  border: 1px solid rgba(142, 47, 32, 0.18);
  background: var(--st-account-danger-bg);
  color: var(--st-account-danger);
}

html[data-site="statius"] body.account-body .form-note.is-success,
html[data-site="statius"] body.account-body .account-offer-payment-status.is-success,
html[data-site="statius"] body.account-body .checkout-ticket-recipients-state.is-success {
  border-radius: 4px;
  border: 1px solid rgba(61, 78, 34, 0.18);
  background: var(--st-account-success-bg);
  color: var(--st-account-success);
}

html[data-site="statius"] body.account-body :is(input, textarea, select),
html[data-site="statius"] body.account-body .country-field,
html[data-site="statius"] body.account-body .checkout-ticket-recipient-item select,
html[data-site="statius"] body.account-body .checkout-ticket-recipient-draft input:not([type="checkbox"]),
html[data-site="statius"] body.account-body .checkout-ticket-recipient-draft select {
  min-height: 44px;
  border-radius: 6px;
  border: 1px solid var(--st-account-beige-strong);
  background: #fffefb;
  color: var(--st-account-ink);
  box-shadow: none;
}

html[data-site="statius"] body.account-body :is(input, textarea, select):focus,
html[data-site="statius"] body.account-body :is(input, textarea, select):focus-visible,
html[data-site="statius"] body.account-body .checkout-ticket-recipient-item select:focus-visible {
  border-color: var(--st-account-ink);
  outline: 2px solid rgba(17, 16, 13, 0.14);
  outline-offset: 1px;
  box-shadow: none;
}

html[data-site="statius"] body.account-body textarea {
  min-height: 104px;
  resize: vertical;
}

html[data-site="statius"] body.account-body .account-ticket-board {
  padding: 0;
  overflow: hidden;
}

html[data-site="statius"] body.account-body .account-ticket-board-head,
html[data-site="statius"] body.account-body .account-requests-toolbar,
html[data-site="statius"] body.account-body .card-head {
  padding: 18px;
  border-bottom: 1px solid var(--st-account-beige);
  background: rgba(251, 247, 239, 0.54);
}

html[data-site="statius"] body.account-body .account-ticket-board-copy h2,
html[data-site="statius"] body.account-body .account-requests-section-head h2,
html[data-site="statius"] body.account-body .account-requests-toolbar-copy h3,
html[data-site="statius"] body.account-body .card-head h2 {
  margin: 0;
  color: var(--st-account-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(24px, 2.3vw, 34px);
  line-height: 1.05;
  font-weight: 700;
}

html[data-site="statius"] body.account-body .account-ticket-board-copy p,
html[data-site="statius"] body.account-body .account-requests-section-head p,
html[data-site="statius"] body.account-body .account-requests-toolbar-copy p,
html[data-site="statius"] body.account-body .card-head p {
  color: var(--st-account-muted);
}

html[data-site="statius"] body.account-body .account-ticket-board-title-mark {
  display: none;
}

html[data-site="statius"] body.account-body .account-ticket-board-eyebrow {
  display: inline-flex;
  color: var(--st-account-soft);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

html[data-site="statius"] body.account-body .account-ticket-board-filters,
html[data-site="statius"] body.account-body .account-requests-filters {
  display: flex;
  gap: 4px;
  padding: 4px;
  border-radius: 6px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-ivory);
}

html[data-site="statius"] body.account-body .account-ticket-filter,
html[data-site="statius"] body.account-body .account-requests-filter,
html[data-site="statius"] body.account-body .account-ticket-filter-current,
html[data-site="statius"] body.account-body .account-ticket-filter-option {
  min-height: 34px;
  border-radius: 4px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--st-account-muted);
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  box-shadow: none;
}

html[data-site="statius"] body.account-body :is(.account-ticket-filter, .account-requests-filter, .account-ticket-filter-current, .account-ticket-filter-option):hover,
html[data-site="statius"] body.account-body :is(.account-ticket-filter, .account-requests-filter).is-active {
  border-color: var(--st-account-ink);
  background: var(--st-account-surface);
  color: var(--st-account-ink);
  transform: none;
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-ticket-filter-menu,
html[data-site="statius"] body.account-body .account-ticket-choice-popover {
  border-radius: 6px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-surface);
  box-shadow: 0 18px 42px rgba(17, 16, 13, 0.14);
}

html[data-site="statius"] body.account-body .account-ticket-list {
  padding: 18px;
  display: grid;
  gap: 14px;
}

html[data-site="statius"] body.account-body .account-ticket-empty {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: clamp(22px, 4vw, 36px);
  border-top: 1px solid var(--st-account-beige);
  background: var(--st-account-ivory);
}

html[data-site="statius"] body.account-body .account-ticket-empty h3 {
  margin: 0 0 8px;
  color: var(--st-account-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(24px, 2.4vw, 36px);
}

html[data-site="statius"] body.account-body .account-ticket-empty p {
  margin: 0;
  color: var(--st-account-muted);
  line-height: 1.55;
}

html[data-site="statius"] body.account-body .account-ticket-empty-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

html[data-site="statius"] body.account-body .account-order-card,
html[data-site="statius"] body.account-body .account-ticket-card,
html[data-site="statius"] body.account-body .account-request-item,
html[data-site="statius"] body.account-body .account-saved-recipient-item,
html[data-site="statius"] body.account-body .recipient-empty {
  border-radius: 6px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-surface);
  color: var(--st-account-ink);
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] body.account-body .account-ticket-card,
html[data-site="statius"] body.account-body .account-request-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, 270px);
  gap: 18px;
  padding: 18px;
}

html[data-site="statius"] body.account-body .account-ticket-title,
html[data-site="statius"] body.account-body .account-request-name {
  color: var(--st-account-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(22px, 2vw, 30px);
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: 0;
}

html[data-site="statius"] body.account-body .account-order-dot,
html[data-site="statius"] body.account-body .account-request-dot {
  width: 9px;
  height: 9px;
  margin-top: 8px;
  border-radius: 2px;
  background: var(--st-account-ink);
  box-shadow: 0 0 0 4px rgba(17, 16, 13, 0.08);
}

html[data-site="statius"] body.account-body :is(.account-order-dot.is-request, .account-request-dot.is-no-price, .account-order-dot.is-test) {
  background: #88755e;
  box-shadow: 0 0 0 4px rgba(136, 117, 94, 0.14);
}

html[data-site="statius"] body.account-body .account-ticket-meta-grid,
html[data-site="statius"] body.account-body .account-request-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(150px, 1fr));
  gap: 10px;
  max-width: none;
}

html[data-site="statius"] body.account-body .account-ticket-meta-tile,
html[data-site="statius"] body.account-body .account-request-meta-tile,
html[data-site="statius"] body.account-body .account-ticket-status-box,
html[data-site="statius"] body.account-body .account-request-status-box,
html[data-site="statius"] body.account-body .account-order-fact,
html[data-site="statius"] body.account-body .account-request-info-grid,
html[data-site="statius"] body.account-body .account-request-comment-box {
  border-radius: 6px;
  border: 1px solid var(--st-account-beige);
  background: var(--st-account-ivory);
  color: var(--st-account-muted);
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-ticket-meta-label,
html[data-site="statius"] body.account-body .account-request-meta-label,
html[data-site="statius"] body.account-body .account-ticket-status-box span,
html[data-site="statius"] body.account-body .account-request-status-box span,
html[data-site="statius"] body.account-body .account-request-info-row b {
  color: var(--st-account-soft);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

html[data-site="statius"] body.account-body .account-ticket-meta-value,
html[data-site="statius"] body.account-body .account-request-meta-value,
html[data-site="statius"] body.account-body .account-ticket-status-box strong,
html[data-site="statius"] body.account-body .account-request-status-box strong,
html[data-site="statius"] body.account-body .account-request-side-status,
html[data-site="statius"] body.account-body .account-request-side-status.is-new,
html[data-site="statius"] body.account-body .account-request-side-status.is-progress,
html[data-site="statius"] body.account-body .account-request-side-status.is-done,
html[data-site="statius"] body.account-body .account-order-fact b {
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .account-ticket-choice {
  position: relative;
  padding: 0;
}

html[data-site="statius"] body.account-body .account-ticket-choice-trigger,
html[data-site="statius"] body.account-body .account-ticket-choice-option,
html[data-site="statius"] body.account-body .account-ticket-copy,
html[data-site="statius"] body.account-body .account-order-copy,
html[data-site="statius"] body.account-body .account-request-copy-btn {
  border-radius: 4px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-surface);
  color: var(--st-account-ink);
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-ticket-choice-trigger:hover,
html[data-site="statius"] body.account-body .account-ticket-choice-option:hover,
html[data-site="statius"] body.account-body .account-ticket-copy:hover,
html[data-site="statius"] body.account-body .account-order-copy:hover,
html[data-site="statius"] body.account-body .account-request-copy-btn:hover {
  border-color: var(--st-account-ink);
  background: var(--st-account-beige);
  color: var(--st-account-ink);
  transform: none;
}

html[data-site="statius"] body.account-body .account-requests-section {
  padding-top: 0;
  display: grid;
  gap: 16px;
}

html[data-site="statius"] body.account-body .account-requests-panel {
  overflow: hidden;
}

html[data-site="statius"] body.account-body .account-requests-list-wrap {
  padding: 18px;
  background: transparent;
}

html[data-site="statius"] body.account-body .account-request-list {
  display: grid;
  gap: 12px;
}

html[data-site="statius"] body.account-body .account-request-item:hover,
html[data-site="statius"] body.account-body .account-request-item:focus-visible,
html[data-site="statius"] body.account-body .account-request-item.is-active {
  border-color: var(--st-account-ink);
  background: var(--st-account-ivory);
  box-shadow: none;
  outline: none;
  transform: none;
}

html[data-site="statius"] body.account-body .account-request-view {
  padding: 18px;
  border-top: 1px solid var(--st-account-beige);
  background: var(--st-account-surface);
}

html[data-site="statius"] body.account-body .account-request-details-head {
  border-bottom-color: var(--st-account-beige);
}

html[data-site="statius"] body.account-body .account-request-details h4 {
  color: var(--st-account-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(24px, 2.2vw, 36px);
}

html[data-site="statius"] body.account-body .account-request-info-row {
  grid-template-columns: minmax(130px, 180px) minmax(0, 1fr);
  border-bottom-color: var(--st-account-beige);
  color: var(--st-account-muted);
}

html[data-site="statius"] body.account-body .account-request-info-row span,
html[data-site="statius"] body.account-body .account-request-comment-box p {
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .profile-layout,
html[data-site="statius"] body.account-body .account-profile-grid {
  grid-template-columns: minmax(280px, 380px) minmax(0, 1fr);
  gap: 18px;
}

html[data-site="statius"] body.account-body .account-profile-card {
  position: sticky;
  top: 96px;
}

html[data-site="statius"] body.account-body .account-card-body,
html[data-site="statius"] body.account-body .account-recipient-cards-wrap,
html[data-site="statius"] body.account-body .account-profile-main,
html[data-site="statius"] body.account-body .account-password-card,
html[data-site="statius"] body.account-body .account-profile-address {
  padding: 18px;
}

html[data-site="statius"] body.account-body .info-row,
html[data-site="statius"] body.account-body .account-address-view-grid > div,
html[data-site="statius"] body.account-body .account-saved-recipient-info-list div {
  border-color: var(--st-account-beige);
}

html[data-site="statius"] body.account-body .info-row b,
html[data-site="statius"] body.account-body .account-address-view-grid dt,
html[data-site="statius"] body.account-body .account-saved-recipient-info-list dt,
html[data-site="statius"] body.account-body .checkout-delivery-card-text,
html[data-site="statius"] body.account-body .checkout-ticket-recipients-text,
html[data-site="statius"] body.account-body .checkout-booking-protection-text,
html[data-site="statius"] body.account-body .checkout-transfer-summary-text {
  color: var(--st-account-muted);
}

html[data-site="statius"] body.account-body .info-row span,
html[data-site="statius"] body.account-body .account-address-view-grid dd,
html[data-site="statius"] body.account-body .account-saved-recipient-info-list dd,
html[data-site="statius"] body.account-body .account-saved-recipient-item-name {
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .profile-note,
html[data-site="statius"] body.account-body .account-saved-recipient-confirm,
html[data-site="statius"] body.account-body .account-saved-recipient-item--draft,
html[data-site="statius"] body.account-body .recipient-empty {
  border-radius: 6px;
  border: 1px solid var(--st-account-beige);
  background: var(--st-account-ivory);
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .account-messages-grid {
  grid-template-columns: minmax(270px, 330px) minmax(0, 1fr);
  min-height: min(720px, calc(100dvh - 210px));
  height: auto;
  overflow: hidden;
}

html[data-site="statius"] body.account-body .account-threads {
  padding: 14px;
  border-right: 1px solid var(--st-account-beige);
  background: var(--st-account-ivory);
}

html[data-site="statius"] body.account-body .account-thread-view {
  padding: 16px;
  background: var(--st-account-surface);
}

html[data-site="statius"] body.account-body .account-thread-item {
  border-radius: 6px;
  border: 1px solid var(--st-account-beige);
  background: var(--st-account-surface);
  color: var(--st-account-ink);
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] body.account-body .account-thread-item:hover,
html[data-site="statius"] body.account-body .account-thread-item.is-active {
  border-color: var(--st-account-ink);
  background: #fffaf2;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] body.account-body .account-thread-item.is-unread {
  border-color: var(--st-account-ink);
  background: #fffaf2;
  box-shadow: inset 3px 0 0 var(--st-account-ink);
}

html[data-site="statius"] body.account-body .account-thread-subject,
html[data-site="statius"] body.account-body .account-thread-item.is-unread .account-thread-subject {
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .account-thread-preview,
html[data-site="statius"] body.account-body .account-thread-meta,
html[data-site="statius"] body.account-body .account-thread-item.is-unread .account-thread-preview,
html[data-site="statius"] body.account-body .account-thread-item.is-unread .account-thread-meta {
  color: var(--st-account-muted);
}

html[data-site="statius"] body.account-body .account-chat-head {
  border-radius: 6px;
  border: 1px solid var(--st-account-beige);
  background: var(--st-account-ivory);
}

html[data-site="statius"] body.account-body .account-chat-head h4 {
  color: var(--st-account-ink);
  font-family: "Playfair Display", Georgia, serif;
}

html[data-site="statius"] body.account-body .account-message-list {
  background: transparent;
}

html[data-site="statius"] body.account-body .account-message-item {
  max-width: min(78%, 560px);
  border-radius: 6px;
  border: 1px solid var(--st-account-beige);
  background: #fffdf8;
  color: var(--st-account-ink);
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-message-item.is-user {
  margin-left: auto;
  border-color: var(--st-account-ink);
  background: var(--st-account-ivory);
}

html[data-site="statius"] body.account-body .account-message-body {
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .account-message-meta {
  color: var(--st-account-muted);
}

html[data-site="statius"] body.account-body .account-message-form {
  gap: 10px;
  border-top: 1px solid var(--st-account-beige);
  background: var(--st-account-surface);
}

html[data-site="statius"] body.account-body .account-offer-sheet,
html[data-site="statius"] body.account-body .account-offer-payment-sheet {
  display: grid;
  gap: 18px;
}

html[data-site="statius"] body.account-body .account-offer-page-head,
html[data-site="statius"] body.account-body .account-offer-payment-topbar {
  display: flex;
  align-items: center;
  gap: 14px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(17, 16, 13, 0.16);
}

html[data-site="statius"] body.account-body .account-offer-page-title,
html[data-site="statius"] body.account-body .account-offer-payment-layout .modal-title {
  margin: 0;
  font-size: clamp(36px, 4vw, 62px);
  line-height: 0.98;
}

html[data-site="statius"] body.account-body .account-offer-page-subtitle,
html[data-site="statius"] body.account-body .account-offer-payment-request-label {
  color: var(--st-account-muted);
}

html[data-site="statius"] body.account-body .account-offer-layout {
  grid-template-columns: minmax(0, 1fr) minmax(360px, 430px);
  gap: clamp(18px, 2.5vw, 28px);
  align-items: start;
}

html[data-site="statius"] body.account-body .account-offer-content {
  display: grid;
  gap: 14px;
}

html[data-site="statius"] body.account-body .account-offer-summary,
html[data-site="statius"] body.account-body .account-request-section,
html[data-site="statius"] body.account-body .account-offer-extras {
  padding: 18px;
}

html[data-site="statius"] body.account-body .account-offer-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

html[data-site="statius"] body.account-body .account-offer-grid p,
html[data-site="statius"] body.account-body .account-offer-side-row dt,
html[data-site="statius"] body.account-body .checkout-final-summary-row span,
html[data-site="statius"] body.account-body .checkout-final-summary-kicker {
  color: var(--st-account-muted);
}

html[data-site="statius"] body.account-body .account-offer-grid strong,
html[data-site="statius"] body.account-body .account-offer-grid span,
html[data-site="statius"] body.account-body .account-offer-side-row dd,
html[data-site="statius"] body.account-body .checkout-final-summary-row strong {
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .account-request-section h5,
html[data-site="statius"] body.account-body .account-offer-extras h5,
html[data-site="statius"] body.account-body .checkout-ticket-recipients-title,
html[data-site="statius"] body.account-body .checkout-booking-protection-title,
html[data-site="statius"] body.account-body .checkout-transfer-card-title,
html[data-site="statius"] body.account-body .checkout-payment-panel-title,
html[data-site="statius"] body.account-body .checkout-payment-option h3,
html[data-site="statius"] body.account-body .checkout-final-summary-title {
  color: var(--st-account-ink);
  font-family: "Playfair Display", Georgia, serif;
}

html[data-site="statius"] body.account-body .account-offer-extra-card,
html[data-site="statius"] body.account-body .checkout-ticket-recipients-card {
  padding: 16px;
}

html[data-site="statius"] body.account-body .checkout-transfer-toggle {
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .checkout-transfer-toggle-ui {
  border-color: var(--st-account-beige-strong);
  background: var(--st-account-beige);
  box-shadow: none;
}

html[data-site="statius"] body.account-body .checkout-transfer-toggle input[type="checkbox"]:checked + .checkout-transfer-toggle-ui {
  border-color: var(--st-account-ink);
  background: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .checkout-transfer-toggle input[type="checkbox"]:focus-visible + .checkout-transfer-toggle-ui {
  outline: 2px solid rgba(17, 16, 13, 0.18);
  outline-offset: 2px;
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-offer-side {
  position: sticky;
  top: 96px;
  padding: 18px;
}

html[data-site="statius"] body.account-body .account-offer-side-kicker,
html[data-site="statius"] body.account-body .checkout-payment-panel-badge,
html[data-site="statius"] body.account-body .checkout-payment-option-provider {
  display: inline-flex;
  width: fit-content;
  border-radius: 4px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-ivory);
  color: var(--st-account-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

html[data-site="statius"] body.account-body .account-offer-side-title {
  color: var(--st-account-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 28px;
}

html[data-site="statius"] body.account-body .account-offer-side-row,
html[data-site="statius"] body.account-body .checkout-final-summary-row,
html[data-site="statius"] body.account-body .checkout-ticket-recipient-item,
html[data-site="statius"] body.account-body .checkout-ticket-recipient-draft {
  border-radius: 6px;
  border: 1px solid var(--st-account-beige);
  background: var(--st-account-ivory);
}

html[data-site="statius"] body.account-body .account-offer-side-total,
html[data-site="statius"] body.account-body .checkout-final-summary-total {
  border-radius: 6px;
  border: 1px solid var(--st-account-ink);
  background: var(--st-account-ink);
  color: #fffdf8;
}

html[data-site="statius"] body.account-body .account-offer-side-total span,
html[data-site="statius"] body.account-body .account-offer-side-total strong,
html[data-site="statius"] body.account-body .checkout-final-summary-total span,
html[data-site="statius"] body.account-body .checkout-final-summary-total strong {
  color: #fffdf8;
}

html[data-site="statius"] body.account-body .checkout-consents {
  display: grid;
  gap: 10px;
  padding: 12px;
  border-radius: 6px;
  border: 1px solid var(--st-account-beige);
  background: var(--st-account-ivory);
}

html[data-site="statius"] body.account-body .consent-row {
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .consent-box,
html[data-site="statius"] body.account-body .checkout-ticket-recipient-draft-save input[type="checkbox"] {
  border-radius: 4px;
  border-color: var(--st-account-ink);
  background: var(--st-account-surface);
  box-shadow: none;
}

html[data-site="statius"] body.account-body .consent-row input[type="checkbox"]:checked + .consent-box,
html[data-site="statius"] body.account-body .checkout-ticket-recipient-draft-save input[type="checkbox"]:checked {
  background: var(--st-account-ink);
  border-color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .consent-row a {
  color: var(--st-account-ink);
  text-decoration: underline;
  text-underline-offset: 3px;
}

html[data-site="statius"] body.account-body .account-offer-payment-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.72fr);
  gap: clamp(18px, 2.4vw, 28px);
  align-items: start;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-offer-payment-layout > .modal-header {
  grid-column: 1 / -1;
  margin: 0;
  padding: 0 0 6px;
}

html[data-site="statius"] body.account-body .checkout-final-summary-card,
html[data-site="statius"] body.account-body .checkout-payment-panel {
  margin: 0;
  padding: 18px;
}

html[data-site="statius"] body.account-body .checkout-payment-options {
  display: grid;
  gap: 12px;
}

html[data-site="statius"] body.account-body .checkout-payment-option {
  padding: 16px;
}

html[data-site="statius"] body.account-body .checkout-payment-option--primary,
html[data-site="statius"] body.account-body .checkout-payment-option--secondary {
  border-color: var(--st-account-beige-strong);
  background: var(--st-account-surface);
}

html[data-site="statius"] body.account-body .account-offer-payment-stepper {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}

html[data-site="statius"] body.account-body .account-offer-payment-stepper .step {
  min-height: 34px;
  border-radius: 4px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-surface);
  color: var(--st-account-muted);
}

html[data-site="statius"] body.account-body .account-offer-payment-stepper .step.is-active,
html[data-site="statius"] body.account-body .account-offer-payment-stepper .step.is-complete {
  border-color: var(--st-account-ink);
  background: var(--st-account-ink);
  color: #fffdf8;
}

html[data-site="statius"] body.account-body .modal-backdrop[data-account-modal-backdrop] {
  background: rgba(17, 16, 13, 0.38);
  backdrop-filter: blur(10px);
}

html[data-site="statius"] body.account-body .modal[data-account-modal] .modal-dialog {
  border-radius: 24px;
  border: 1px solid rgba(17, 16, 13, 0.12);
  background: var(--st-account-surface);
  color: var(--st-account-ink);
  box-shadow: 0 24px 80px rgba(17, 16, 13, 0.2);
}

html[data-site="statius"] body.account-body .modal-close {
  width: 38px;
  height: 38px;
  border-radius: 6px;
  border: 1px solid var(--st-account-beige-strong);
  background: var(--st-account-surface);
  color: var(--st-account-ink);
}

html[data-site="statius"] body.account-body .modal-close:hover,
html[data-site="statius"] body.account-body .modal-close:focus-visible {
  background: var(--st-account-beige);
  border-color: var(--st-account-ink);
}

@media (max-width: 1120px) {
  html[data-site="statius"] body.account-body .account-page-head,
  html[data-site="statius"] body.account-body:not(.account-body--offer) .account-layout,
  html[data-site="statius"] body.account-body .account-offer-layout,
  html[data-site="statius"] body.account-body .account-offer-payment-layout,
  html[data-site="statius"] body.account-body .profile-layout,
  html[data-site="statius"] body.account-body .account-profile-grid {
    grid-template-columns: 1fr;
  }

  html[data-site="statius"] body.account-body .account-menu,
  html[data-site="statius"] body.account-body .account-profile-card,
  html[data-site="statius"] body.account-body .account-offer-side {
    position: static;
  }

  html[data-site="statius"] body.account-body:not(.account-body--offer) .account-menu {
    display: none !important;
  }

  html[data-site="statius"] body.account-body:not(.account-body--offer) .account-mobile-tabs {
    display: flex;
  }

  html[data-site="statius"] body.account-body .account-ticket-card,
  html[data-site="statius"] body.account-body .account-request-item {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  html[data-site="statius"] body.account-body {
    overflow-x: hidden;
  }

  html[data-site="statius"] body.account-body:not(.account-body--offer) .account-topbar,
  html[data-site="statius"] body.account-body.account-body--offer .site-header {
    height: auto;
    min-height: 64px;
  }

  html[data-site="statius"] body.account-body:not(.account-body--offer) .account-topbar-inner,
  html[data-site="statius"] body.account-body.account-body--offer .site-header .nav {
    min-height: 64px;
    padding-inline: 16px;
  }

  html[data-site="statius"] body.account-body .account-brand,
  html[data-site="statius"] body.account-body .site-header .logo {
    font-size: 20px;
  }

  html[data-site="statius"] body.account-body .account-header-logout {
    min-height: 36px;
    padding-inline: 11px;
    font-size: 12px;
  }

  html[data-site="statius"] body.account-body .account-language {
    display: none;
  }

  html[data-site="statius"] body.account-body .account-page {
    padding-top: 18px;
  }

  html[data-site="statius"] body.account-body .account-page .container {
    width: 100%;
    max-width: 100%;
    padding-inline: 16px;
  }

  html[data-site="statius"] body.account-body .account-page-head {
    gap: 16px;
    margin-bottom: 18px;
  }

  html[data-site="statius"] body.account-body .account-page-head h1,
  html[data-site="statius"] body.account-body .account-offer-page-title,
  html[data-site="statius"] body.account-body .account-offer-payment-layout .modal-title {
    font-size: clamp(36px, 15vw, 52px);
    line-height: 0.98;
  }

  html[data-site="statius"] body.account-body .account-hero-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }

  html[data-site="statius"] body.account-body .account-hero-stat {
    min-height: 62px;
    padding: 10px 8px;
  }

  html[data-site="statius"] body.account-body .account-hero-stat strong {
    font-size: 21px;
  }

  html[data-site="statius"] body.account-body .account-hero-stat span {
    font-size: 10px;
  }

  html[data-site="statius"] body.account-body:not(.account-body--offer) .account-mobile-tabs {
    display: flex;
    width: auto;
    margin: 0 -16px 18px;
    padding: 0 16px 8px;
    gap: 8px;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    position: sticky;
    top: 64px;
    z-index: 9;
    background: rgba(247, 241, 231, 0.94);
    border-bottom: 1px solid rgba(17, 16, 13, 0.1);
  }

  html[data-site="statius"] body.account-body:not(.account-body--offer) .account-mobile-tabs::-webkit-scrollbar {
    display: none;
  }

  html[data-site="statius"] body.account-body .account-mobile-tab {
    flex: 0 0 auto;
    min-height: 34px;
    white-space: nowrap;
    padding: 0 12px;
  }

  html[data-site="statius"] body.account-body .account-notice,
  html[data-site="statius"] body.account-body .account-ticket-empty {
    grid-template-columns: 1fr;
    align-items: start;
  }

  html[data-site="statius"] body.account-body .account-notice-action,
  html[data-site="statius"] body.account-body .account-ticket-empty-actions,
  html[data-site="statius"] body.account-body .account-ticket-empty-actions .btn,
  html[data-site="statius"] body.account-body .account-profile-main-actions,
  html[data-site="statius"] body.account-body .account-profile-main-actions .btn,
  html[data-site="statius"] body.account-body .account-password-footer .btn,
  html[data-site="statius"] body.account-body .account-request-actions .btn,
  html[data-site="statius"] body.account-body .account-offer-side-cta .btn,
  html[data-site="statius"] body.account-body .checkout-payment-panel .btn {
    width: 100%;
  }

  html[data-site="statius"] body.account-body .account-ticket-board-head,
  html[data-site="statius"] body.account-body .account-requests-toolbar {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
  }

  html[data-site="statius"] body.account-body .account-ticket-board-filters--desktop {
    display: none;
  }

  html[data-site="statius"] body.account-body .account-ticket-filter-dropdown {
    display: block;
    position: relative;
    justify-self: start;
  }

  html[data-site="statius"] body.account-body .account-ticket-meta-grid,
  html[data-site="statius"] body.account-body .account-request-meta-grid,
  html[data-site="statius"] body.account-body .account-offer-grid,
  html[data-site="statius"] body.account-body .account-profile-main-grid,
  html[data-site="statius"] body.account-body .account-password-grid,
  html[data-site="statius"] body.account-body .checkout-ticket-recipient-draft-grid {
    grid-template-columns: 1fr;
  }

  html[data-site="statius"] body.account-body .account-messages-grid {
    grid-template-columns: 1fr;
    min-height: 620px;
  }

  html[data-site="statius"] body.account-body .account-messages-grid.is-mobile-thread-open .account-threads {
    display: none;
  }

  html[data-site="statius"] body.account-body .account-threads {
    border-right: 0;
    border-bottom: 1px solid var(--st-account-beige);
  }

  html[data-site="statius"] body.account-body .account-message-item {
    max-width: 100%;
  }

  html[data-site="statius"] body.account-body .account-offer-page-head,
  html[data-site="statius"] body.account-body .account-offer-payment-topbar {
    align-items: flex-start;
    flex-direction: column;
  }

  html[data-site="statius"] body.account-body .account-offer-payment-topbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
  }

  html[data-site="statius"] body.account-body .account-offer-payment-topbar > .btn {
    justify-self: start;
  }

  html[data-site="statius"] body.account-body .account-offer-payment-stepper {
    width: 100%;
    margin-left: 0;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    flex: none;
    order: 0;
    overflow: hidden;
  }

  html[data-site="statius"] body.account-body .account-offer-payment-stepper .step {
    flex: 1 1 0;
    min-width: 0;
  }

  html[data-site="statius"] body.account-body .account-offer-side-row,
  html[data-site="statius"] body.account-body .account-request-info-row {
    grid-template-columns: 1fr;
  }

  html[data-site="statius"] body.account-body .account-offer-side-row dd {
    max-width: none;
    text-align: left;
  }

  html[data-site="statius"] body.account-body .account-offer-payment-layout,
  html[data-site="statius"] body.account-body .account-offer-payment-layout > .modal-header,
  html[data-site="statius"] body.account-body .account-offer-payment-layout > [data-order-summary],
  html[data-site="statius"] body.account-body .account-offer-payment-layout > [data-payment-form],
  html[data-site="statius"] body.account-body .account-offer-payment-layout .checkout-final-summary-wrap,
  html[data-site="statius"] body.account-body .account-offer-payment-layout .checkout-payment-options,
  html[data-site="statius"] body.account-body .account-offer-payment-layout .checkout-payment-option {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    justify-self: stretch;
  }
}

/* Statius venue detail pages. Scoped to the active SPA venue view only. */
html[data-site="statius"] #venue-view .statius-venue-page {
  --st-venue-bg: #fbfaf7;
  --st-venue-surface: #fffdf9;
  --st-venue-surface-soft: #f3eadc;
  --st-venue-line: #d8cbb9;
  --st-venue-line-strong: #0b0a08;
  --st-venue-ink: #090806;
  --st-venue-muted: #6f675d;
  --statius-serif: "Playfair Display", Georgia, "Times New Roman", serif;
  overflow-x: hidden;
  background: var(--st-venue-bg);
  color: var(--st-venue-ink);
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

html[data-site="statius"] #venue-view .statius-venue-page,
html[data-site="statius"] #venue-view .statius-venue-page :is(.hero, .section, .seo-guide-section) {
  background-color: var(--st-venue-bg);
  background-image: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .container {
  width: min(100% - 32px, 1280px);
  max-width: 1280px;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-hero {
  min-height: 0;
  padding: clamp(42px, 6vw, 76px) 0 clamp(30px, 4vw, 52px);
  display: block;
  align-items: initial;
  isolation: auto;
  overflow: visible;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-hero::before,
html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-hero::after {
  display: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-hero-grid,
html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.55fr);
  gap: clamp(22px, 4vw, 56px);
  align-items: stretch;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-hero-main {
  max-width: 860px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-back-row {
  margin: 0 0 18px;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-breadcrumbs {
  margin: 0 0 18px;
  color: var(--st-venue-muted);
  font-size: 12px;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-breadcrumbs__link,
html[data-site="statius"] #venue-view .statius-venue-page .seo-breadcrumbs__current,
html[data-site="statius"] #venue-view .statius-venue-page .seo-breadcrumbs__sep {
  color: var(--st-venue-muted);
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-breadcrumbs__link:hover,
html[data-site="statius"] #venue-view .statius-venue-page .seo-breadcrumbs__link:focus-visible {
  color: var(--st-venue-ink);
}

html[data-site="statius"] #venue-view .statius-venue-page .pill {
  border: 1px solid var(--st-venue-line);
  border-radius: 3px;
  background: var(--st-venue-surface);
  color: var(--st-venue-muted);
  box-shadow: none;
  font-size: 10px;
  letter-spacing: 0.12em;
}

html[data-site="statius"] #venue-view .statius-venue-page h1,
html[data-site="statius"] #venue-view .statius-venue-page h2,
html[data-site="statius"] #venue-view .statius-venue-page h3 {
  color: var(--st-venue-ink);
  font-family: var(--statius-serif);
  letter-spacing: -0.025em;
}

html[data-site="statius"] #venue-view .statius-venue-page :is(.seo-guide-hero-grid, .seo-venue-hero-grid) h1 {
  max-width: 17ch;
  margin: 16px 0 12px;
  color: var(--st-venue-ink);
  font-size: clamp(54px, 5.6vw, 88px);
  line-height: 0.95;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-hero-main > p {
  max-width: 66ch;
  color: #2d2924;
  font-size: clamp(16px, 1.6vw, 19px);
  line-height: 1.58;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-hero-caption {
  max-width: 62ch;
  margin-top: 16px;
  color: var(--st-venue-muted);
  font-size: 14px;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-facts-strip {
  width: 100%;
  margin-top: 24px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-fact,
html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-mini-card,
html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-practical-card,
html[data-site="statius"] #venue-view .statius-venue-page .seo-map-block,
html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-cta-card,
html[data-site="statius"] #venue-view .statius-venue-page .faq-card {
  border: 1px solid var(--st-venue-line);
  border-radius: 6px;
  background: var(--st-venue-surface);
  background-image: none;
  color: var(--st-venue-ink);
  box-shadow: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-fact {
  padding: 12px;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-fact-label,
html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-hero-panel-kicker,
html[data-site="statius"] #venue-view .statius-venue-page .event-tag {
  color: var(--st-venue-muted);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-fact-value {
  color: var(--st-venue-ink);
  font-size: 14px;
  font-weight: 650;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-hero-panel {
  align-self: stretch;
  border: 1px solid var(--st-venue-line-strong);
  border-radius: 6px;
  padding: clamp(20px, 2.4vw, 30px);
  background: var(--st-venue-surface);
  background-image: none;
  color: var(--st-venue-ink);
  box-shadow: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-hero-panel h2 {
  max-width: 16ch;
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1.02;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-hero-panel-list {
  color: #2d2924;
  font-size: 15px;
  line-height: 1.58;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-hero-panel-note {
  border-top: 1px solid var(--st-venue-line);
  color: var(--st-venue-muted);
}

html[data-site="statius"] #venue-view .statius-venue-page .hero-actions,
html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-hero-actions,
html[data-site="statius"] #venue-view .statius-venue-page .seo-map-block__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

html[data-site="statius"] #venue-view .statius-venue-page .btn,
html[data-site="statius"] #venue-view .statius-venue-page .link-chip {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px !important;
  box-shadow: none;
  filter: none;
  font-family: "Hanken Grotesk", "SF Pro Text", system-ui, sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
  text-decoration: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .btn-primary,
html[data-site="statius"] #venue-view .statius-venue-page .btn-primary-gradient {
  border: 1px solid var(--st-venue-line-strong);
  background: var(--st-venue-ink);
  color: var(--st-venue-surface);
}

html[data-site="statius"] #venue-view .statius-venue-page .btn-outline,
html[data-site="statius"] #venue-view .statius-venue-page .link-chip {
  border: 1px solid var(--st-venue-line-strong);
  background: var(--st-venue-surface);
  color: var(--st-venue-ink);
}

html[data-site="statius"] #venue-view .statius-venue-page .btn:hover,
html[data-site="statius"] #venue-view .statius-venue-page .btn:focus-visible,
html[data-site="statius"] #venue-view .statius-venue-page .link-chip:hover,
html[data-site="statius"] #venue-view .statius-venue-page .link-chip:focus-visible {
  border-color: var(--st-venue-line-strong);
  background: var(--st-venue-surface-soft);
  color: var(--st-venue-ink);
  box-shadow: none;
  filter: none;
  transform: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-section {
  padding: clamp(26px, 4vw, 56px) 0;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-section--events-focus {
  border-top: 1px solid var(--st-venue-line);
  border-bottom: 1px solid var(--st-venue-line);
  background: #f7f1e7;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-events-header {
  margin-bottom: 18px;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-events-header h2 {
  margin-bottom: 8px;
  font-size: clamp(30px, 4vw, 52px);
  line-height: 1;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-events-header p,
html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-practical-subtitle,
html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-list,
html[data-site="statius"] #venue-view .statius-venue-page .seo-disclosure-note,
html[data-site="statius"] #venue-view .statius-venue-page .faq-answer {
  color: #3f382f;
  line-height: 1.62;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-events-shell {
  border: 1px solid var(--st-venue-line);
  border-radius: 6px;
  padding: clamp(14px, 2vw, 22px);
  background: var(--st-venue-surface);
  box-shadow: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-events-slider {
  overflow: visible;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-events-track {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 12px;
  overflow: visible;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-event-card.card.event {
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  border: 1px solid var(--st-venue-line);
  border-radius: 6px;
  padding: 16px;
  background: #fffdf9;
  background-image: none;
  color: var(--st-venue-ink);
  box-shadow: none;
  filter: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-event-card.card.event:hover {
  transform: none;
  border-color: var(--st-venue-line-strong);
  box-shadow: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-event-card .event-tag {
  align-self: flex-start;
  border: 1px solid var(--st-venue-line);
  border-radius: 3px;
  padding: 4px 7px;
  background: #f7f1e7;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-event-card h3 {
  margin: 0;
  color: var(--st-venue-ink);
  font-size: clamp(21px, 2.2vw, 28px);
  line-height: 1.08;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-event-card .event-meta,
html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-event-card .event-price {
  margin: 0;
  color: var(--st-venue-muted);
  font-size: 13px;
  line-height: 1.45;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-event-card .event-price {
  margin-top: auto;
  color: var(--st-venue-ink);
  font-weight: 700;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-event-card .btn {
  width: 100%;
  margin-top: 4px;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-practical-card,
html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-cta-card {
  padding: clamp(18px, 2.4vw, 30px);
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-grid {
  gap: 12px;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-mini-card {
  padding: 15px;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-mini-card h3 {
  margin: 0 0 6px;
  font-size: 20px;
  line-height: 1.12;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-map-block {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 0.42fr);
  gap: 18px;
  padding: clamp(18px, 2.4vw, 30px);
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-map-block__preview {
  min-height: 180px;
  border: 1px solid var(--st-venue-line);
  border-radius: 6px;
  background: #f7f1e7;
  background-image: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-map-block__pin {
  border: 1px solid var(--st-venue-line-strong);
  border-radius: 4px;
  background: var(--st-venue-surface);
  color: var(--st-venue-ink);
  box-shadow: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-map-block__pin-dot {
  background: var(--st-venue-ink);
  box-shadow: none;
}

html[data-site="statius"] #venue-view .statius-venue-page .link-chip-list {
  gap: 8px;
}

html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-section--faq-light {
  background: var(--st-venue-bg);
}

html[data-site="statius"] #venue-view .statius-venue-page .faq-list {
  max-width: 980px;
  gap: 10px;
}

html[data-site="statius"] #venue-view .statius-venue-page .faq-card {
  overflow: hidden;
}

html[data-site="statius"] #venue-view .statius-venue-page .faq-question {
  color: var(--st-venue-ink);
  border-radius: 6px;
}

html[data-site="statius"] #venue-view .statius-venue-page .faq-question:hover,
html[data-site="statius"] #venue-view .statius-venue-page .faq-question:focus-visible {
  background: var(--st-venue-surface-soft);
  color: var(--st-venue-ink);
}

html[data-site="statius"] #venue-view .statius-venue-page .faq-toggle {
  border: 1px solid var(--st-venue-line);
  border-radius: 4px;
  background: var(--st-venue-surface);
  color: var(--st-venue-ink);
}

@media (max-width: 900px) {
  html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-hero-grid,
  html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-hero-grid,
  html[data-site="statius"] #venue-view .statius-venue-page .seo-map-block {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-facts-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html[data-site="statius"] #venue-view .statius-venue-page :is(.seo-guide-hero-grid, .seo-venue-hero-grid) h1 {
    font-size: clamp(44px, 8vw, 68px);
  }
}

@media (max-width: 520px) {
  html[data-site="statius"] #venue-view .statius-venue-page .container {
    width: min(100% - 24px, 1280px);
  }

  html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-hero {
    padding-top: 30px;
  }

  html[data-site="statius"] #venue-view .statius-venue-page :is(.seo-guide-hero-grid, .seo-venue-hero-grid) h1 {
    font-size: clamp(40px, 12.5vw, 52px);
  }

  html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-facts-strip,
  html[data-site="statius"] #venue-view .statius-venue-page .seo-venue-events-track {
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #venue-view .statius-venue-page .hero-actions,
  html[data-site="statius"] #venue-view .statius-venue-page .seo-guide-hero-actions,
  html[data-site="statius"] #venue-view .statius-venue-page .seo-map-block__actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  html[data-site="statius"] #venue-view .statius-venue-page .btn,
  html[data-site="statius"] #venue-view .statius-venue-page .link-chip {
    width: 100%;
  }
}

/* Statius event-card unification: all public event lists match the homepage media-card. */
html[data-site="statius"] :is(
  #all-events-view,
  #venue-view.statius-category-page,
  #venue-view.ballet-category-page,
  #venue-view .statius-venue-page,
  #venue-view .seo-guide-page--la-scala
) {
  --st-event-card-bg: #14100c;
  --st-event-card-ink: #fff;
  --st-event-card-muted: rgba(255, 255, 255, 0.86);
  --st-event-card-soft: #f3eadc;
  --st-event-card-border: #0a0a0a;
  --st-event-card-placeholder:
    radial-gradient(78% 52% at 50% 10%, rgba(216, 172, 112, 0.24), transparent 62%),
    radial-gradient(120% 85% at 50% 118%, rgba(122, 38, 40, 0.34), transparent 60%),
    linear-gradient(160deg, #2b211a 0%, #1a1411 55%, #0c0907 100%);
  --st-event-card-overlay:
    linear-gradient(to bottom, rgba(0, 0, 0, 0.24), rgba(0, 0, 0, 0.05) 42%, rgba(0, 0, 0, 0.88));
}

html[data-site="statius"] #all-events-view .card.event {
  min-height: 430px;
  height: auto;
  padding: 0;
  border: 1px solid var(--st-event-card-border);
  border-radius: 8px;
  background: #000;
  color: var(--st-event-card-ink);
  box-shadow: none;
  overflow: hidden;
}

html[data-site="statius"] #all-events-view .card.event:hover {
  border-color: var(--st-event-card-border);
  transform: translateY(-3px);
  box-shadow: 0 24px 42px rgba(45, 34, 22, 0.18);
}

html[data-site="statius"] #all-events-view .card.event .event-card-inner {
  position: relative;
  min-height: 428px;
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 7px;
  background: var(--st-event-card-bg);
  overflow: hidden;
}

html[data-site="statius"] #all-events-view .card.event .event-card-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  display: block;
  width: auto;
  aspect-ratio: auto;
  background: var(--event-card-image, var(--st-event-card-placeholder));
  background-position: center;
  background-size: cover;
  filter: brightness(0.86) saturate(0.9);
  transform: scale(1.02);
  transition: transform 0.22s ease, filter 0.22s ease;
}

html[data-site="statius"] #all-events-view .card.event:hover .event-card-inner::before {
  transform: scale(1.035);
  filter: brightness(0.9) saturate(0.94);
}

html[data-site="statius"] #all-events-view .card.event .event-card-inner::after {
  content: "";
  position: absolute;
  inset: 0;
  display: block;
  pointer-events: none;
  background: var(--st-event-card-overlay);
}

html[data-site="statius"] #all-events-view .card.event .poster-strip,
html[data-site="statius"] #all-events-view .card.event .card-content,
html[data-site="statius"] #all-events-view .card.event .card-action-row {
  position: relative;
  z-index: 1;
}

html[data-site="statius"] #all-events-view .card.event .poster-strip {
  min-height: 0;
  padding: 24px 24px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}

html[data-site="statius"] #all-events-view .card.event .card-content {
  flex: 0 0 auto;
  margin-top: auto;
  padding: 0 24px;
}

html[data-site="statius"] #all-events-view .card.event .event-tag,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card) .event-tag,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card) .event-tag,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event .event-tag {
  min-height: 0;
  padding: 4px 8px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.16);
  color: var(--st-event-card-ink);
  box-shadow: none;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-transform: uppercase;
}

html[data-site="statius"] #all-events-view .card.event h3 {
  margin: 0;
  color: var(--st-event-card-ink);
  font-family: var(--statius-serif, "Playfair Display", Georgia, "Times New Roman", serif);
  font-size: 28px;
  line-height: 1.04;
  font-weight: 700;
  letter-spacing: -0.035em;
  display: block;
  overflow: visible;
}

html[data-site="statius"] #all-events-view .card.event .event-meta,
html[data-site="statius"] #all-events-view .card.event .event-price,
html[data-site="statius"] #all-events-view .card.event .event-price.is-request {
  width: auto;
  min-height: 0;
  margin: 10px 0 0;
  padding: 0;
  display: block;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--st-event-card-muted);
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0;
  line-height: 1.4;
  text-transform: none;
}

html[data-site="statius"] #all-events-view .card.event .event-price,
html[data-site="statius"] #all-events-view .card.event .event-price.is-request {
  color: var(--st-event-card-ink);
  font-size: 16px;
}

html[data-site="statius"] #all-events-view .card.event .card-action-row {
  margin: 0;
  padding: 22px 24px 24px;
  display: block;
}

html[data-site="statius"] #all-events-view .card.event .card-action-row::before {
  display: none;
}

html[data-site="statius"] #all-events-view .card.event .details-btn,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card) .btn,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card) .btn,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event .btn {
  width: 100%;
  min-height: 32px;
  height: 32px;
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--st-event-card-ink);
  border-radius: 4px !important;
  background: transparent;
  color: var(--st-event-card-ink);
  box-shadow: none;
  filter: none;
  font-size: 9px;
  font-weight: 780;
  letter-spacing: 0.1em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
}

html[data-site="statius"] #all-events-view .card.event .details-btn:hover,
html[data-site="statius"] #all-events-view .card.event .details-btn:focus-visible,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card) .btn:hover,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card) .btn:focus-visible,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card) .btn:hover,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card) .btn:focus-visible,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event .btn:hover,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event .btn:focus-visible {
  border-color: var(--st-event-card-ink);
  background: var(--st-event-card-ink);
  color: #000;
  box-shadow: none;
  filter: none;
  transform: none;
}

html[data-site="statius"] #all-events-view .card.event .arrow-btn {
  display: none !important;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card),
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card),
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event {
  position: relative;
  min-height: 430px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  border: 1px solid var(--st-event-card-border);
  border-radius: 8px;
  background: var(--st-event-card-bg);
  background-image: none;
  color: var(--st-event-card-ink);
  box-shadow: none;
  filter: none;
  overflow: hidden;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card)::before,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card)::before,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: var(--event-card-image, var(--st-event-card-placeholder));
  background-position: center;
  background-size: cover;
  filter: brightness(0.86) saturate(0.9);
  transform: scale(1.02);
  transition: transform 0.22s ease, filter 0.22s ease;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card)::after,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card)::after,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: var(--st-event-card-overlay);
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card):hover,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card):hover,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event:hover {
  border-color: var(--st-event-card-border);
  transform: translateY(-3px);
  box-shadow: 0 24px 42px rgba(45, 34, 22, 0.18);
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card):hover::before,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card):hover::before,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event:hover::before {
  transform: scale(1.035);
  filter: brightness(0.9) saturate(0.94);
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card) > *,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card) > *,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event > * {
  position: relative;
  z-index: 1;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card) h3,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card) h3,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event h3 {
  margin: auto 0 0;
  color: var(--st-event-card-ink);
  font-family: var(--statius-serif, "Playfair Display", Georgia, "Times New Roman", serif);
  font-size: 28px;
  line-height: 1.04;
  letter-spacing: -0.035em;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card) .event-meta,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card) .event-meta,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event .event-meta,
html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card) .event-price,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card) .event-price,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event .event-price {
  width: auto;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--st-event-card-muted);
  box-shadow: none;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0;
  line-height: 1.4;
  text-transform: none;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card) .event-price,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card) .event-price,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event .event-price {
  color: var(--st-event-card-ink);
  font-size: 16px;
}

html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card) .btn,
html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card) .btn,
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event .btn {
  margin-top: 4px;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest,
html[data-site="statius"] #venue-view.ballet-category-page .statius-category-nearest {
  border: 1px solid var(--st-event-card-border);
  border-radius: 8px;
  background: var(--st-event-card-bg);
  color: var(--st-event-card-ink);
  box-shadow: none;
  overflow: hidden;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-media,
html[data-site="statius"] #venue-view.ballet-category-page .statius-category-nearest-media {
  background-image: var(--statius-category-nearest-image, var(--statius-ballet-nearest-image, var(--st-event-card-placeholder)));
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  filter: brightness(0.86) saturate(0.9);
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-body,
html[data-site="statius"] #venue-view.ballet-category-page .statius-category-nearest-body {
  background: transparent;
  color: var(--st-event-card-ink);
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-title,
html[data-site="statius"] #venue-view.ballet-category-page .statius-category-nearest-title {
  color: var(--st-event-card-ink);
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-meta,
html[data-site="statius"] #venue-view.ballet-category-page .statius-category-nearest-meta,
html[data-site="statius"] #venue-view.statius-category-page .statius-category-price span,
html[data-site="statius"] #venue-view.ballet-category-page .statius-category-price span {
  color: var(--st-event-card-muted);
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-price strong,
html[data-site="statius"] #venue-view.ballet-category-page .statius-category-price strong {
  color: var(--st-event-card-ink);
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-link,
html[data-site="statius"] #venue-view.ballet-category-page .statius-category-nearest-link {
  border: 1px solid var(--st-event-card-ink);
  border-radius: 4px;
  background: transparent;
  color: var(--st-event-card-ink);
  box-shadow: none;
}

html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-link:hover,
html[data-site="statius"] #venue-view.statius-category-page .statius-category-nearest-link:focus-visible,
html[data-site="statius"] #venue-view.ballet-category-page .statius-category-nearest-link:hover,
html[data-site="statius"] #venue-view.ballet-category-page .statius-category-nearest-link:focus-visible {
  background: var(--st-event-card-ink);
  color: #000;
}

@media (max-width: 640px) {
  html[data-site="statius"] #all-events-view .card.event,
  html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card),
  html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card),
  html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event {
    min-height: 400px;
  }

  html[data-site="statius"] #all-events-view .card.event h3,
  html[data-site="statius"] #venue-view.statius-category-page .events-track .card.event:not(.formula-event-card) h3,
  html[data-site="statius"] #venue-view.ballet-category-page .events-track .card.event:not(.formula-event-card) h3,
  html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-event-card.card.event h3 {
    font-size: 25px;
  }
}

/* Statius venue event tracks keep homepage-style cards in a horizontal carousel. */
html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-events-slider {
  max-width: 100%;
  overflow: visible;
}

html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-events-track {
  --st-venue-event-gap: 24px;
  --st-venue-event-card-width: clamp(340px, calc((100% - (var(--st-venue-event-gap) * 2)) / 3), 420px);
  display: flex;
  grid-template-columns: none;
  grid-auto-flow: unset;
  gap: var(--st-venue-event-gap);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 0 2px 10px;
  overflow-x: auto;
  overflow-y: visible;
  overscroll-behavior-inline: contain;
  scroll-padding-inline: 2px;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
}

html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-events-track > :is(.seo-venue-event-card.card.event, .statius-event-card) {
  flex: 0 0 var(--st-venue-event-card-width);
  width: var(--st-venue-event-card-width);
  max-width: 420px;
  min-width: 0;
  scroll-snap-align: start;
}

@media (max-width: 1100px) {
  html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-events-track {
    --st-venue-event-gap: 22px;
    --st-venue-event-card-width: clamp(320px, calc((100% - var(--st-venue-event-gap)) / 2), 400px);
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-events-track {
    --st-venue-event-gap: 16px;
    --st-venue-event-card-width: min(86vw, 360px);
    padding-bottom: 8px;
    scroll-snap-type: x mandatory;
  }

  html[data-site="statius"] #venue-view :is(.statius-venue-page, .seo-guide-page--la-scala) .seo-venue-events-track > :is(.seo-venue-event-card.card.event, .statius-event-card) {
    max-width: calc(100vw - 32px);
  }
}

/* =====================================================================
   STATIUS HEADER / ACCOUNT HEADER UNIFICATION
   Keeps CWT defaults untouched while aligning account and public headers.
   ===================================================================== */
html[data-site="statius"] .site-header .auth-trigger-badge {
  top: -7px;
  right: -7px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border: 1px solid #0b0a08;
  border-radius: 4px;
  background: #0b0a08;
  color: #fffaf2;
  box-shadow: 0 6px 14px rgba(17, 16, 13, 0.18);
  font-family: "Hanken Grotesk", system-ui, sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0;
}

html[data-site="statius"] .site-header .auth-trigger-btn.has-notifications {
  border-color: #0b0a08;
  color: #0b0a08;
}

html[data-site="statius"] .site-header .auth-trigger-btn.has-notifications:hover .auth-trigger-badge,
html[data-site="statius"] .site-header .auth-trigger-btn.has-notifications:focus-visible .auth-trigger-badge {
  border-color: #0b0a08;
  background: #fffaf2;
  color: #0b0a08;
}

html[data-site="statius"] .site-header .language-menu,
html[data-site="statius"] .site-header .language-option,
html[data-site="statius"] .site-header .language-option-code {
  border-radius: 6px;
}

html[data-site="statius"] .site-header .language-option-code {
  border-color: #c8baa4;
  background: #fbf7ef;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] body.account-body:not(.account-body--offer) .account-topbar {
  min-height: 75px;
  height: 75px;
  border-bottom: 1px solid #dcdcdc;
  background: #fbfbfb;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  box-shadow: none;
}

html[data-site="statius"] body.account-body:not(.account-body--offer) .account-topbar-inner {
  width: min(100% - 160px, 1280px);
  max-width: 1280px;
  height: 75px;
  padding: 0;
}

html[data-site="statius"] body.account-body .account-brand {
  gap: 12px;
  color: #0b0a08;
  font-family: var(--statius-serif, "Playfair Display", Georgia, serif);
  font-size: 21px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.035em;
  text-transform: none;
}

html[data-site="statius"] body.account-body .account-brand-mark {
  width: 28px;
  height: 40px;
  flex: 0 0 28px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid #0b0a08;
  border-radius: 999px 999px 4px 4px;
  background: #0b0a08;
  color: #f3eadc;
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-brand-mark::before {
  content: "S";
  font-family: var(--statius-serif, "Playfair Display", Georgia, serif);
  font-size: 20px;
  line-height: 1;
}

html[data-site="statius"] body.account-body .account-brand-mark img {
  display: none;
}

html[data-site="statius"] body.account-body .account-top-actions {
  gap: 12px;
}

html[data-site="statius"] body.account-body .account-language {
  height: 38px;
  border: 1px solid #0b0a08;
  border-radius: 4px;
  background: #fffdf9;
  color: #0b0a08;
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-language:hover,
html[data-site="statius"] body.account-body .account-language[data-open="true"],
html[data-site="statius"] body.account-body .account-language.is-open {
  background: #f3eadc;
  border-color: #0b0a08;
}

html[data-site="statius"] body.account-body .account-language .language-current {
  min-height: 36px;
  height: 36px;
  min-width: 62px;
  padding: 0 11px;
  gap: 6px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #0b0a08;
  box-shadow: none;
  font-family: "Hanken Grotesk", system-ui, sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  transform: none;
}

html[data-site="statius"] body.account-body .account-language .language-current:hover,
html[data-site="statius"] body.account-body .account-language[data-open="true"] .language-current,
html[data-site="statius"] body.account-body .account-language.is-open .language-current {
  border: 0;
  background: transparent;
  color: #0b0a08;
  box-shadow: none;
  transform: none;
}

html[data-site="statius"] body.account-body .account-language .language-current:focus-visible {
  outline: 2px solid rgba(11, 10, 8, 0.35);
  outline-offset: 3px;
}

html[data-site="statius"] body.account-body .account-language .language-current-code,
html[data-site="statius"] body.account-body .account-language .language-option-code {
  min-width: 0;
  width: auto;
  height: auto;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-language .language-menu {
  width: 172px;
  margin-top: 8px;
  padding: 6px;
  border: 1px solid #c8baa4;
  border-radius: 6px;
  background: #fffdf9;
  color: #15120d;
  box-shadow: 0 18px 42px rgba(45, 34, 22, 0.16);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

html[data-site="statius"] body.account-body .account-language .language-option {
  min-height: 34px;
  padding: 0 10px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #3f382f;
  font-family: "Hanken Grotesk", system-ui, sans-serif;
  font-size: 12px;
  font-weight: 650;
  box-shadow: none;
}

html[data-site="statius"] body.account-body .account-language .language-option:hover,
html[data-site="statius"] body.account-body .account-language .language-option:focus-visible {
  background: #f3eadc;
  color: #0b0a08;
  transform: none;
}

html[data-site="statius"] body.account-body .account-header-logout,
html[data-site="statius"] body.account-body .account-header-logout.btn.btn-outline {
  min-height: 38px;
  height: 38px;
  padding: 0 18px;
  border: 1px solid #0b0a08;
  border-radius: 4px;
  background: #fffdf9;
  color: #0b0a08;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html[data-site="statius"] body.account-body .account-header-logout:hover,
html[data-site="statius"] body.account-body .account-header-logout:focus-visible,
html[data-site="statius"] body.account-body .account-header-logout.btn.btn-outline:hover,
html[data-site="statius"] body.account-body .account-header-logout.btn.btn-outline:focus-visible {
  background: #f3eadc;
  border-color: #0b0a08;
  color: #0b0a08;
}

@media (max-width: 1100px) {
  html[data-site="statius"] body.account-body:not(.account-body--offer) .account-topbar-inner {
    width: min(100% - 48px, 1280px);
  }
}

@media (max-width: 640px) {
  html[data-site="statius"] .site-header .auth-trigger-badge {
    top: -5px;
    right: -5px;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    font-size: 9px;
  }

  html[data-site="statius"] body.account-body:not(.account-body--offer) .account-topbar {
    height: auto;
    min-height: 64px;
  }

  html[data-site="statius"] body.account-body:not(.account-body--offer) .account-topbar-inner {
    width: 100%;
    min-height: 64px;
    padding-inline: 16px;
  }

  html[data-site="statius"] body.account-body .account-brand {
    font-size: 20px;
  }

  html[data-site="statius"] body.account-body .account-brand-mark {
    width: 26px;
    height: 36px;
    flex-basis: 26px;
  }
}
