/* The cup copy stays readable when motion is unavailable or reduced. */
body.izaar-typography #cup-section {
  overflow: clip;
}
body.izaar-typography #cup-text {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* Session listings on Home, separate from the standalone booking tool. */
body.izaar-typography [data-view="intro"] #book {
  padding: clamp(32px, 5vw, 64px) clamp(18px, 4vw, 48px) clamp(52px, 8vw, 104px) !important;
}
body.izaar-typography [data-view="intro"] #book > div {
  max-width: 980px !important;
}
body.izaar-typography [data-view="intro"] #book > div > div {
  grid-template-columns: 120px minmax(0, 1fr) auto auto !important;
  padding: 24px clamp(18px, 3vw, 36px) !important;
  gap: 20px !important;
}
@media (max-width: 700px) {
  body.izaar-typography [data-view="intro"] #book > div > div {
    grid-template-columns: minmax(0, 1fr) auto !important;
    padding: 18px !important;
    gap: 10px 12px !important;
  }
  body.izaar-typography [data-view="intro"] #book > div > div > :nth-child(-n+2) {
    grid-column: 1 / -1;
  }
  body.izaar-typography [data-view="intro"] #book > div > div > :nth-child(3) {
    text-align: start !important;
  }
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  body.izaar-typography [data-view="intro"] #book > div > div {
    transition: transform 180ms ease, box-shadow 180ms ease;
  }
  body.izaar-typography [data-view="intro"] #book > div > div:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .28);
  }
}
