.past-feedback-button {
  min-height: 42px;
  padding: 10px 15px;
  border: 1px solid rgba(255,255,255,.48);
  border-radius: 999px;
  background: #fff;
  color: #0c3157;
  box-shadow: 0 9px 22px rgba(0,0,0,.12);
  font-size: .68rem;
  font-weight: 850;
  cursor: pointer;
}

.past-feedback-button::after { content: " →"; }
.past-feedback-button:active { transform: scale(.98); }
.past-feedback-action {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin-top: 15px;
}
.past-feedback-action span {
  color: rgba(255,255,255,.62);
  font-size: .62rem;
}
.feedback-submit-form .form-grid { margin-bottom: 4px; }

@media (min-width: 600px) {
  .past-feedback-action {
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
  }
}

/* Keep the mobile hero content-height so the featured retreat follows directly. */
@media (max-width: 899px) {
  .hero {
    min-height: auto;
    align-items: start;
    padding-top: 34px;
    padding-bottom: 22px;
  }

  .hero-inner { transform: none; }
}

/* Keep the event/community drawer above the shared sticky header. */
.drawer-backdrop { z-index: 1000000; }

/* Production event form states: local pricing/donation and Renaissance stays. */
.routed-event-form { gap: 14px; }
.routed-form-section {
  display: grid;
  gap: 11px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255,255,255,.58);
}
.routed-form-section h3 {
  margin: 0;
  font: 600 1.05rem/1 var(--serif);
}
.event-payment-box,
.routed-price-preview {
  display: grid;
  gap: 5px;
  padding: 13px;
  border: 1px solid rgba(198,145,63,.38);
  border-radius: 14px;
  background: #fff3d9;
  color: #5e4727;
}
.event-payment-box.is-donation { border-color: rgba(31,122,87,.28); background: #edf7ef; color: #245640; }
.event-payment-box strong,
.routed-price-preview strong { font-size: .72rem; }
.event-payment-box span,
.routed-price-preview span { font-size: .63rem; line-height: 1.45; }
.routed-field-help {
  display: block;
  min-height: 1.2em;
  color: #53708a;
  font-size: .58rem;
  letter-spacing: 0;
  text-transform: none;
}
.routed-form-section .check-label a { text-decoration: underline; }

/* Compact Trip Help override: small on phones, restrained on desktop. */
.trip-help {
  padding-top: 16px;
  padding-bottom: 24px;
}
.trip-help-card {
  gap: 12px;
  padding: 16px;
  border-radius: 20px;
}
.trip-help-copy .hn-section-kicker {
  margin-bottom: 0;
  padding: 6px 9px;
  font-size: .56rem;
}
.trip-help-copy h2 {
  max-width: 11ch;
  margin-top: 9px;
  font-size: clamp(2rem, 10vw, 3rem);
}
.trip-help-copy > p {
  margin-top: 10px;
  font-size: .7rem;
  line-height: 1.55;
}
.trip-help-points {
  gap: 6px;
  margin: 12px 0;
}
.trip-help-points span { font-size: .62rem; }
.trip-help-cta {
  min-height: 46px;
  border-radius: 13px;
  font-size: .68rem;
}
.trip-help-note { margin-top: 8px !important; }
.trip-help-route {
  min-height: 145px;
  padding: 16px;
  border-radius: 17px;
}
.trip-help-route strong {
  max-width: 220px;
  font-size: 1.5rem;
}

@media (min-width: 760px) {
  .trip-help-card {
    grid-template-columns: minmax(0,1.5fr) minmax(220px,.5fr);
    gap: 20px;
    padding: 23px;
  }
  .trip-help-copy h2 { font-size: clamp(2.5rem,4vw,3.25rem); }
  .trip-help-copy > p { font-size: .75rem; }
  .trip-help-cta { min-width: 250px; min-height: 48px; }
  .trip-help-route { min-height: 215px; padding: 19px; }
  .trip-help-route strong { font-size: 1.65rem; }
}
