.hero--about {
  position: relative;
}
.hero--about .ticket-row {
  align-items: stretch;
}
.about-hero-card {
  position: relative;
}
.about-hero-main {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  min-width: 0;
}
.about-hero-topline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
}
.about-hero-stamp {
  flex-shrink: 0;
}
.about-hero-meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-lg);
  align-items: flex-start;
}
.about-pass {
  min-width: 0;
}
.about-pass-label {
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wide);
  color: var(--color-text-muted);
}
.about-pass-number {
  margin-top: var(--space-xs);
  font-family: var(--font-mono);
  font-size: var(--text-lg);
  letter-spacing: 0.18em;
}
.about-pass-number span {
  color: var(--color-accent-soft);
}
.about-pass-note {
  margin-top: var(--space-xs);
  font-size: var(--text-xs);
  color: var(--color-text-soft);
}
.about-hero-badges {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.about-hero-media {
  min-width: 0;
}
.about-hero-figure {
  box-shadow: var(--shadow-strong), var(--shadow-glow-red);
}
.about-hero-caption {
  position: absolute;
  inset-inline: var(--space-md);
  bottom: var(--space-md);
  font-size: var(--text-xs);
  color: var(--color-text-soft);
  z-index: 1;
}
.section--about-mission {
  position: relative;
}
.section--about-mission::before {
  content: "";
  position: absolute;
  inset-inline: 0;
  top: 0;
  height: 40%;
  background: radial-gradient(circle at top, rgba(248, 113, 113, 0.18), transparent 60%);
  pointer-events: none;
}
.section--about-mission .container {
  position: relative;
}
.about-mission-grid {
  margin-top: var(--space-xl);
}
.about-mission-block {
  min-width: 0;
}
.about-mission-pills {
  margin-top: var(--space-xl);
}
.section--about-team {
  position: relative;
}
.about-team-grid {
  align-items: center;
}
.about-team-text {
  min-width: 0;
}
.about-team-media {
  min-width: 0;
}
.about-team-figure {
  margin-bottom: var(--space-lg);
}
.about-team-caption {
  padding: var(--space-sm) var(--space-md);
  font-size: var(--text-xs);
  color: var(--color-text-soft);
}
.about-team-stats {
  padding: var(--space-lg);
}
.section--about-process {
  position: relative;
}
.section--about-process::before {
  content: "";
  position: absolute;
  inset-inline: 0;
  top: 0;
  height: 30%;
  background: radial-gradient(circle at top, rgba(15, 23, 42, 0.9), transparent 65%);
  pointer-events: none;
}
.section--about-process .container {
  position: relative;
}
.about-process-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
  gap: var(--space-2xl);
  align-items: flex-start;
}
.about-process-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--space-lg);
}
.about-process-step {
  position: relative;
  padding-left: 3.25rem;
}
.about-step-header {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.about-step-number {
  position: absolute;
  left: 0;
  top: 0.1rem;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: var(--radius-pill);
  border: 1px solid var(--color-border-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  background: radial-gradient(circle at top, rgba(248, 113, 113, 0.3), rgba(15, 23, 42, 0.95));
  box-shadow: 0 12px 30px var(--color-shadow-soft);
}
.about-step-title {
  font-size: var(--text-lg);
}
.about-step-text {
  margin-top: var(--space-xs);
}
.about-process-aside {
  align-self: stretch;
}
.section--about-why {
  position: relative;
}
.section--about-why::before {
  content: "";
  position: absolute;
  inset-inline: 0;
  top: 0;
  height: 35%;
  background: radial-gradient(circle at top, rgba(248, 113, 113, 0.22), transparent 65%);
  pointer-events: none;
}
.section--about-why .container {
  position: relative;
}
.about-why-grid {
  align-items: flex-start;
}
.about-why-cards {
  margin-bottom: var(--space-xl);
}
.about-why-note {
  max-width: var(--container-sm);
}
.about-why-figure {
  margin-bottom: var(--space-lg);
}
.about-why-caption {
  padding: var(--space-sm) var(--space-md);
  font-size: var(--text-xs);
  color: var(--color-text-soft);
}
.about-why-cta .btn-group {
  width: 100%;
}
.about-why-cta .btn {
  max-width: 100%;
}
@media (max-width: 1023.98px) {
  .about-process-layout {
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  }
}
@media (max-width: 899.98px) {
  .about-hero-topline {
    align-items: flex-start;
  }
  .about-hero-meta {
    flex-direction: column;
  }
}
@media (max-width: 767.98px) {
  .hero--about {
    padding-block: var(--space-3xl);
  }
  .about-hero-card {
    padding: var(--space-lg);
  }
  .about-hero-caption {
    position: static;
    margin-top: var(--space-sm);
  }
  .about-process-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .about-process-aside {
    order: -1;
  }
  .about-process-step {
    padding-left: 2.75rem;
  }
}
@media (max-width: 599.98px) {
  .about-hero-topline {
    flex-direction: column;
    align-items: flex-start;
  }
  .about-hero-badges {
    width: 100%;
  }
}
