/* Scope styles to the Office Hours view page */
.view-office-hours .views-row {
  display: grid;
  grid-template-columns: 1fr 2fr; /* Name | Address/Office Hours */
  gap: 0.75rem;
  align-items: start;
  padding: 0.75rem 0;
  border-bottom: 1px solid #e5e7eb;
}

/* Headings: create a faux table header */
.view-office-hours .view-header,
.view-office-hours .view-content::before {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 0.75rem;
  font-weight: 600;
  color: #374151;
  margin-bottom: 0.5rem;
}

.view-office-hours .view-content::before {
  content: "Name\tAddress / Office Hours";
}

/* Normalize field labels and text */
.view-office-hours .views-field-title,
.view-office-hours .views-field-field-address-office-hours-1 {
  margin: 0;
}

/* Name cell */
.view-office-hours .views-field-title .field-content {
  font-weight: 600;
  color: #111827;
}

/* Address/Office Hours cell */
.view-office-hours .views-field-field-address-office-hours-1 .field-content {
  color: #1f2937;
  white-space: pre-wrap; /* preserve line breaks from field */
}

/* Optional: table-like zebra striping for readability */
.view-office-hours .views-row:nth-child(odd) {
  background: #f9fafb;
}

/* Optional: responsive stacking on small screens */
@media (max-width: 640px) {
  .view-office-hours .views-row,
  .view-office-hours .view-content::before,
  .view-office-hours .view-header {
    grid-template-columns: 1fr; /* stack */
  }
  .view-office-hours .view-content::before {
    content: "Entries"; /* minimal header on mobile */
  }
}