/* =========================================================
   FACTS BAR
   ========================================================= */

.facts-bar {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  background: var(--color-surface);
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}

.facts-bar__item {
  padding: var(--space-md);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-xs);
}

.facts-bar__item:not(:last-child) {
  border-right: 1px solid var(--color-border);
}

.facts-bar__icon {
  width: 28px;
  height: 28px;
  color: var(--color-primary);
  margin-bottom: 4px;
}

.facts-bar__icon svg {
  width: 100%;
  height: 100%;
}

.facts-bar__label {
  font-size: var(--font-size-caption);
  color: var(--color-text-muted);
}

.facts-bar__value {
  font-weight: var(--font-weight-bold);
  font-size: 17px;
  color: var(--color-text);
}

.facts-bar__value--success { color: var(--color-primary); }
.facts-bar__value--warning { color: var(--color-tertiary); }
.facts-bar__value--muted   { color: var(--color-text-muted); }


/* =========================================================
   EVENT CONTENT
   ========================================================= */

.event-content {
  background: var(--color-beige);
}

.event-content__grid {
  display: grid;
  grid-template-columns: 1fr 400px;
  gap: var(--space-2xl);
  align-items: start;
}

.event-content__text p {
  color: var(--color-text-muted);
  line-height: var(--line-height-body);
}

.event-content__text p:last-child {
  margin-bottom: 0;
}


/* =========================================================
   BOOKING SIDEBAR
   ========================================================= */

.event-booking {
  padding: var(--space-lg);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-soft);
  position: sticky;
  top: 96px;
}

.event-booking__title {
  margin: 6px 0 var(--space-md);
  color: var(--color-text);
  font-size: 26px;
  line-height: 1.2;
}

.event-booking__list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.event-booking__list li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--space-sm);
  padding: 10px 0;
  border-bottom: 1px solid var(--color-border);
}

.event-booking__list li:last-child {
  border-bottom: none;
}

.event-booking__list span {
  font-size: var(--font-size-caption);
  color: var(--color-text-muted);
  flex-shrink: 0;
}

.event-booking__list strong {
  font-size: 15px;
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
  text-align: right;
}

.event-booking__actions {
  margin-top: var(--space-md);
}

.btn--full {
  width: 100%;
  justify-content: center;
}

.event-booking__note {
  margin: var(--space-md) 0 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-caption);
  line-height: var(--line-height-body);
}


/* =========================================================
   FAQ / PRACTICAL INFO
   ========================================================= */

.event-info__list {
  display: grid;
  gap: var(--space-sm);
  margin-top: var(--space-lg);
}

.event-info__item {
  padding: 0;
}

.event-info__summary {
  list-style: none;
  cursor: pointer;
  padding: var(--space-md);
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
  position: relative;
  user-select: none;
  transition: color var(--transition-default);
}

.event-info__summary::-webkit-details-marker {
  display: none;
}

.event-info__summary::after {
  content: '+';
  position: absolute;
  right: var(--space-md);
  top: 50%;
  transform: translateY(-50%);
  font-size: 22px;
  font-weight: var(--font-weight-regular);
  color: var(--color-text-muted);
  transition: color var(--transition-default);
}

.event-info__item[open] .event-info__summary {
  color: var(--color-primary);
}

.event-info__item[open] .event-info__summary::after {
  content: '–';
  color: var(--color-primary);
}

.event-info__content {
  padding: 0 var(--space-md) var(--space-md);
  color: var(--color-text-muted);
  line-height: var(--line-height-body);
}


/* =========================================================
   EYEBROW BACK LINK  (same pattern as gallery detail)
   ========================================================= */

.page-hero__eyebrow-link {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  transition: color var(--transition-default);
}

.page-hero__eyebrow-link:hover {
  color: var(--color-secondary);
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 960px) {
  .event-content__grid {
    grid-template-columns: 1fr;
  }

  .event-booking {
    position: static;
  }
}

@media (max-width: 768px) {
  .facts-bar {
    grid-template-columns: 1fr 1fr;
  }

  .facts-bar__item {
    border-right: none;
    border-bottom: 1px solid var(--color-border);
  }

  .facts-bar__item:nth-child(odd) {
    border-right: 1px solid var(--color-border);
  }

  .facts-bar__item:nth-last-child(-n+2) {
    border-bottom: none;
  }

  .event-booking {
    padding: var(--space-md);
  }

  .event-booking__title {
    font-size: 22px;
  }
}
