/* Hours Grid */
    .hours-grid {
      display: grid;
      grid-template-columns: minmax(140px, 190px) minmax(220px, max-content);
      width: fit-content;
      max-width: 100%;
      margin: 0 auto;
      gap: 8px 32px;
      text-align: left;
      align-items: start;
      align-content: start;
    }
    .hours-grid .day,
    .hours-grid .time {
      padding: 12px 12px;
      font-size: clamp(14px, 2.5vw, 18px);
      border-bottom: 1px solid #e8e8e8;
      border-radius: 6px;
      margin-bottom: 8px;
      display: inline-block;
      width: auto;
      background: transparent;
      box-shadow: none;
    }
    .hours-grid .day {
      font-weight: 700;
      color: #dce6ff;
    }
    .hours-grid .time {
      color: #dce6ff;
      text-align: left;
      white-space: nowrap;
      overflow-x: visible;
    }
    .hours-grid .time:last-of-type {
      margin-bottom: 20px;
    }

    /* Section spacing */
    .schedule-section {
      padding: 28px 28px 20px;
    }
    .schedule-section h1 {
      font-size: clamp(20px, 4vw, 28px);
      margin: 0 0 10px 0;
      color: #111;
      letter-spacing: 0.3px;
    }
    .schedule-section .location {
      font-size: clamp(13px, 2vw, 16px);
      color: #555;
      margin: 0 0 20px 0;
      text-align: center;
    }
    .schedule-section .location a {
      color: #3b78ee;
      text-decoration: none;
    }
    .schedule-section .location a:hover {
      text-decoration: underline;
    }

    /* Divider */
    .section-divider {
      display: none;
    }

    /* Questions CTA area */
    .cta-section {
      padding: 16px 20px 32px;
      text-align: center;
    }
    .cta-section h2 {
      font-size: clamp(16px, 3vw, 22px);
      color: #3b78ee;
      margin: 0 0 16px 0;
    }

    /* Calendar section title override */
    .calendar-section {
      padding-top: 8px;
    }

    @media screen and (max-width: 768px) {
      .hours-grid {
        max-width: 100%;
        gap: 0 14px;
      }
      .hours-grid .day,
      .hours-grid .time {
        padding: 10px 8px;
        font-size: 14px;
      }
      .schedule-section {
        padding: 20px 12px 16px;
      }
    }

    /* Hard override for schedule page card readability */
    body.program-page .schedule-section.inner-section-sched {
      background: linear-gradient(180deg, var(--site-surface, #1f2a44) 0%, var(--site-surface-deep, #182033) 100%) !important;
      border: 1px solid var(--site-border, #3a4f7a) !important;
      border-radius: 10px !important;
      box-shadow: var(--site-card-shadow, 0 6px 18px rgba(0, 0, 0, 0.35)) !important;
      color: var(--site-text-soft, #dce6ff) !important;
    }

    body.program-page .schedule-section.inner-section-sched .day,
    body.program-page .schedule-section.inner-section-sched .time,
    body.program-page .schedule-section.inner-section-sched .location,
    body.program-page .schedule-section.inner-section-sched .location a {
      color: var(--site-text-soft, #dce6ff) !important;
    }

    body.program-page .actions-container {
      background: var(--site-surface-soft, #1a2236) !important;
      color: var(--site-text-soft, #dce6ff) !important;
      border: 1px solid var(--site-border, #3a4f7a) !important;
    }

    body.program-page #dailysched {
      background: linear-gradient(180deg, #f5f8ff 0%, #edf3ff 100%) !important;
      color: #1f2a44 !important;
      border: 1px solid #c9d8f7 !important;
      border-radius: 10px !important;
    }

    body.program-page #calendar-header,
    body.program-page #day-info-title {
      color: #ffffff !important;
      text-shadow: none !important;
      font-size: clamp(1.35rem, 2.2vw, 2rem) !important;
      font-weight: 700 !important;
      letter-spacing: 0.02em !important;
    }

    body.program-page #day-info-title strong,
    body.program-page #day-info-title span {
      color: inherit !important;
      font-size: inherit !important;
      font-weight: inherit !important;
      letter-spacing: inherit !important;
    }

    body.program-page #dailysched #day-info-content,
    body.program-page #dailysched #day-info-content *,
    body.program-page #dailysched .schedule-item {
      color: #1f2a44 !important;
    }

    body.program-page #dailysched .schedule-item strong {
      color: #143b9e !important;
    }
