/* The festival programme leads; navigation and calls to action stay quiet. */
.sos-public-home .coded-hero-content,
.sos-public-home .coded-psy-hero[data-scroll-motion="reduced"] .coded-hero-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  column-gap: clamp(32px, 6vw, 100px);
  row-gap: 28px;
  padding-block: 104px 54px !important;
}

.sos-public-home .coded-brand-composition,
.sos-public-home .coded-psy-hero[data-scroll-motion="reduced"] .coded-brand-composition {
  grid-area: auto;
  grid-column: 1 / -1;
  grid-row: 1;
  width: min(250px, 42vw);
  justify-self: center;
}
.sos-public-home .coded-logo-art { width: 100%; margin-inline: auto; }

.sos-public-home .hero-intro,
.sos-public-home .coded-psy-hero[data-scroll-motion="reduced"] .hero-intro {
  grid-area: auto;
  grid-column: 1;
  grid-row: 2;
  max-width: 680px;
  text-align: left;
  justify-self: start;
}

.sos-public-home .hero-intro h2 { margin: 0 0 12px; }
.sos-public-home .hero-intro > p:last-child { margin: 0; max-width: 52ch; }

.sos-public-home .coded-event-focus-group,
.sos-public-home .coded-psy-hero[data-scroll-motion="reduced"] .coded-event-focus-group {
  grid-area: auto;
  grid-column: 2;
  grid-row: 2;
  justify-self: end;
  align-self: end;
  margin: 0 0 3px;
}

.sos-public-home .coded-event-focus-group .coded-event-focus {
  min-width: 0;
  white-space: nowrap;
}

.sos-public-home .experience-quick-nav-inner {
  display: flex;
  align-items: center;
  gap: clamp(16px, 3vw, 52px);
  border: 0;
  border-bottom: 1px solid #343c42;
  overflow-x: auto;
  scrollbar-width: none;
}
.sos-public-home .experience-quick-nav-inner::-webkit-scrollbar { display: none; }
.sos-public-home .experience-quick-nav a {
  flex: 0 0 auto;
  min-height: 58px;
  display: inline-flex;
  align-items: center;
  padding: 10px 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  text-decoration: none;
}
.sos-public-home .experience-quick-nav a + a { border: 0; }
.sos-public-home .experience-quick-nav a strong {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
}
.sos-public-home .experience-quick-nav a small { display: none; }
.sos-public-home .experience-quick-nav a:hover,
.sos-public-home .experience-quick-nav a:focus-visible {
  color: #a3ded1;
  background: transparent;
  outline-offset: -3px;
}
.sos-public-home .experience-quick-nav a:first-child { border-bottom: 2px solid #a3ded1; }

.sos-public-home #collaborations,
.sos-public-home #upcoming-events { scroll-margin-top: 150px; }

.sos-public-home .current-festival-block:has(#current-event-empty-state:not([hidden])) { display: none; }
.sos-public-home .current-festival-block:has(#current-event-empty-state:not([hidden])) + .festival-showcase-divider { display: none; }

@media (max-width: 760px) {
  .sos-public-home .coded-hero-content,
  .sos-public-home .coded-psy-hero[data-scroll-motion="reduced"] .coded-hero-content {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 18px;
    padding: 94px 20px 28px !important;
  }
  .sos-public-home .coded-brand-composition,
  .sos-public-home .coded-psy-hero[data-scroll-motion="reduced"] .coded-brand-composition {
    width: min(184px, 52vw);
    grid-column: 1;
    grid-row: 1;
    margin-bottom: 8px;
  }
  .sos-public-home .hero-intro,
  .sos-public-home .coded-psy-hero[data-scroll-motion="reduced"] .hero-intro { grid-column: 1; }
  .sos-public-home .hero-intro h2 { font-size: clamp(30px, 9vw, 42px); }
  .sos-public-home .coded-event-focus-group,
  .sos-public-home .coded-psy-hero[data-scroll-motion="reduced"] .coded-event-focus-group {
    grid-column: 1;
    grid-row: 3;
    justify-self: stretch;
    width: 100%;
  }
  .sos-public-home .coded-event-focus-group .coded-event-focus { width: 100%; }
  .sos-public-home .experience-quick-nav-inner { gap: 24px; }
  .sos-public-home .experience-quick-nav a { min-height: 52px; padding: 8px 0; }
}
