/* Copy and navigation refinements within the approved High Gear design. */
/* The edited lower portrait removes the wheel; the lower-right strip replaces
   the old claims. Keep the original face, logo, gauge and animated needle.
   Blend the jacket above the old wheel without touching the original face. */
.hero-art::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: #030814 url('high-gear-hero-imagination.webp') center / 100% 100% no-repeat;
  clip-path: polygon(0 48%, 40% 48%, 40% 73%, 100% 73%, 100% 100%, 0 100%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 48%, #000 53%);
  mask-image: linear-gradient(to bottom, transparent 48%, #000 53%);
  pointer-events: none;
}
.topbar .brand span { color: #8ab7ff; }
.transport-photo-intro .transport-hero-visual { max-width: 820px; margin: 0 auto; }
.transport-photo-intro h1 {
  margin: 0;
  font-size: clamp(1.25rem, 3vw, 1.75rem);
  line-height: 1.3;
  letter-spacing: 0;
  text-transform: none;
}
.topbar .navlinks { gap: 20px; }
.topbar .navlinks .button { white-space: nowrap; }
.specialty-heading { margin-top: 44px; }
.specialty-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.roadmap-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.optional-details summary { cursor: pointer; font-weight: 700; padding-block: 10px; }
.optional-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; padding-top: 10px; }
.field-help { display: block; margin-top: 6px; color: #bfcde0; font-size: .875rem; font-weight: 400; }
form input, form select, form textarea { font-size: 1rem; min-width: 0; }
.optional-details .button { margin-top: 12px; }
.book-grid > *, .story-grid > *, .grid > *, .optional-fields > * { min-width: 0; }
.contact-list > a, .optional-details p { overflow-wrap: anywhere; }
.program-links a, .service-nav a { min-height: 44px; display: inline-flex; align-items: center; }
.service-nav { gap: 10px 22px; }
.button { padding-block: 10px; text-align: center; }
#show-options, #industry-events, #comedy-clubs { scroll-margin-top: 90px; }
#show-faqs { scroll-margin-top: 90px; }
.workshop-details { margin-top: 24px; border: 1px solid rgba(126,173,255,.3); border-radius: 9px; padding: 0 18px 14px; }
.workshop-details summary { min-height: 48px; padding-block: 12px; font-weight: 800; line-height: 1.4; cursor: pointer; }
.workshop-details summary:focus-visible { outline: 3px solid #9dc1ff; outline-offset: 4px; }
.workshop-details:not([open]) { padding-bottom: 0; }
@media (max-width: 1050px) {
  .topbar .navlinks { display: none; }
  .topbar .mobile-menu { display: block; }
}
@media (max-width: 760px) {
  .specialty-grid, .optional-fields, .roadmap-grid { grid-template-columns: minmax(0, 1fr); }
  .roadmap-step { min-height: 0; }
  .mobile-menu nav { max-height: calc(100dvh - 130px); overflow-y: auto; }
}
@media (max-width: 380px) {
  .topbar > nav { gap: 8px; }
  .topbar .brand { font-size: .75rem; letter-spacing: 0; }
  .mobile-controls { gap: 6px; }
  .mobile-shop, .mobile-controls .mobile-menu summary { padding-inline: 10px; }
  .social-link { flex-wrap: wrap; }
}
