.house-rules-page {
  overflow: hidden;
}

.hrp-intro__layout,
.hrp-considerate__layout,
.hrp-entry__grid,
.hrp-casino__grid,
.hrp-responsible__grid,
.hrp-dining-row,
.hrp-check {
  min-width: 0;
}

.hrp-intro__layout {
  display: grid;
  grid-template-columns: minmax(0, 62fr) minmax(0, 32fr);
  gap: var(--space-7);
  align-items: center;
}

.hrp-intro__content {
  grid-column: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
}

.hrp-intro__media {
  grid-column: 2;
  grid-row: 1;
  width: 100%;
  min-width: 0;
  aspect-ratio: 16 / 9;
}

.hrp-intro__media img {
  width: 100%;
  height: 100%;
  object-position: 58% center;
}

.hrp-intro__copy {
  width: min(100%, 58rem);
  min-width: 0;
}

.hrp-intro__lead {
  margin-bottom: 0;
  font-size: var(--font-size-lead);
  line-height: var(--line-height-lead);
}

.hrp-intro__anchors {
  display: flex;
  width: auto;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-3);
  padding-top: var(--space-3);
  border-top: 1px solid var(--border-color);
}

.hrp-intro__anchors a {
  font-family: var(--font-heading);
  font-size: var(--font-size-meta);
  font-weight: var(--font-weight-medium);
}

.hrp-entry__heading {
  width: min(100%, 52rem);
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  margin-bottom: var(--space-6);
}

.hrp-entry__heading h2,
.hrp-responsible__heading h2 {
  margin-bottom: 0;
}

.hrp-entry__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}

.hrp-entry__panel {
  min-width: 0;
}

.hrp-entry__panel h3 {
  max-width: 34rem;
}

.hrp-entry__panel p {
  max-width: 34rem;
  margin-bottom: 0;
}

.hrp-entry__note {
  grid-column: 1 / -1;
  width: min(100%, 62rem);
  min-width: 0;
  margin: 0;
  padding-top: var(--space-5);
  border-top: 1px solid var(--border-color);
}

.hrp-considerate__layout {
  display: grid;
  grid-template-columns: minmax(0, 38fr) minmax(0, 62fr);
  gap: var(--space-7);
  align-items: start;
}

.hrp-considerate__intro {
  grid-column: 1;
  min-width: 0;
}

.hrp-considerate__lead {
  max-width: 42rem;
  margin-bottom: 0;
  font-size: var(--font-size-lead);
  line-height: var(--line-height-lead);
}

.hrp-considerate__panels {
  grid-column: 2;
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}

.hrp-conduct-card {
  min-width: 0;
  padding: var(--space-5);
  border: 1px solid var(--border-color);
  background: var(--color-slate-raised);
}

.hrp-conduct-card--respect {
  border-left: 3px solid var(--color-filament-amber);
  background: var(--color-smoked-slate);
}

.hrp-conduct-card h3,
.hrp-conduct-card p {
  max-width: 31rem;
}

.hrp-conduct-card p {
  margin-bottom: 0;
}

.hrp-considerate__closing {
  grid-column: 1 / -1;
  width: min(100%, 56rem);
  min-width: 0;
  margin: 0;
  padding-top: var(--space-5);
  border-top: 1px solid var(--border-color);
}

.hrp-dining__reading {
  width: min(100%, var(--container-reading));
  min-width: 0;
}

.hrp-dining__heading {
  width: min(100%, 52rem);
  min-width: 0;
  margin-bottom: var(--space-6);
}

.hrp-dining__heading p {
  margin-bottom: 0;
}

.hrp-dining__rows {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
}

.hrp-dining-row {
  display: grid;
  grid-template-columns: 4.5rem minmax(0, 1fr);
  gap: var(--space-4);
  padding-block: var(--space-5);
  border-top: 1px solid var(--border-color);
}

.hrp-dining-row__number {
  grid-column: 1;
  min-width: 0;
  color: var(--color-filament-amber);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: var(--font-weight-semibold);
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
}

.hrp-dining-row__copy {
  grid-column: 2;
  min-width: 0;
  max-width: 50rem;
}

.hrp-dining-row__copy p {
  margin-bottom: 0;
}

.hrp-casino {
  background: var(--color-cast-iron);
}

.hrp-casino__intro {
  width: min(100%, 55rem);
  min-width: 0;
  margin-bottom: var(--space-6);
}

.hrp-casino__intro p {
  margin-bottom: 0;
}

.hrp-casino__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-4);
}

.hrp-casino-card {
  min-width: 0;
  padding: var(--space-5);
  border: 1px solid var(--border-color);
  background: var(--color-slate-raised);
}

.hrp-casino-card--staff {
  grid-column: span 4;
}

.hrp-casino-card--space {
  grid-column: span 5;
  border-left: 3px solid var(--color-sage);
  background: var(--color-smoked-slate);
}

.hrp-casino-card--pause {
  grid-column: span 3;
  background: var(--color-smoked-slate);
}

.hrp-casino-card p {
  margin-bottom: 0;
}

.hrp-responsible__heading {
  width: min(100%, 54rem);
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  margin-bottom: var(--space-6);
}

.hrp-responsible__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: var(--space-4);
}

.hrp-responsible__wellbeing {
  min-width: 0;
}

.hrp-responsible__wellbeing h3,
.hrp-responsible__wellbeing p {
  max-width: 34rem;
}

.hrp-responsible__wellbeing p {
  margin-bottom: 0;
}

.hrp-responsible__staff {
  min-width: 0;
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
}

.hrp-responsible__media {
  width: 100%;
  min-width: 0;
  aspect-ratio: 4 / 3;
}

.hrp-responsible__media img {
  width: 100%;
  height: 100%;
  object-position: center;
}

.hrp-responsible__staff-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-4);
  padding: var(--space-5);
}

.hrp-responsible__staff-copy h3,
.hrp-responsible__staff-copy p {
  max-width: 30rem;
  margin: 0;
}

.hrp-responsible__closing {
  width: min(100%, 54rem);
  min-width: 0;
  margin: var(--space-5) 0 0;
  padding-left: var(--space-3);
  border-left: 3px solid var(--color-sage);
}

.hrp-support__reading {
  width: min(100%, var(--container-reading));
  min-width: 0;
}

.hrp-support__block {
  width: min(100%, 48rem);
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-6);
  border: 1px solid rgba(74, 107, 93, 0.9);
  border-left: 3px solid var(--color-sage);
  background: var(--color-sage-tint);
}

.hrp-support__block h3,
.hrp-support__block p {
  margin: 0;
}

.hrp-support__phone {
  min-height: 3rem;
  display: inline-flex;
  align-items: center;
  color: var(--color-soft-warm-white);
  font-family: var(--font-heading);
  font-size: clamp(1.5rem, 4vw, 2rem);
  font-weight: var(--font-weight-semibold);
  font-variant-numeric: tabular-nums;
}

.hrp-support__website {
  min-height: 3rem;
  display: inline-flex;
  align-items: center;
  font-family: var(--font-heading);
  font-weight: var(--font-weight-medium);
}

.hrp-support__context {
  width: min(100%, 44rem);
  min-width: 0;
  margin: var(--space-5) 0 0;
}

.hrp-faq__reading {
  width: min(100%, var(--container-reading));
  min-width: 0;
  margin-inline: auto;
}

.hrp-faq__list {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  border-top: 1px solid var(--border-color);
}

.hrp-faq__item {
  min-width: 0;
  border-bottom: 1px solid var(--border-color);
}

.hrp-faq__item h3 {
  margin: 0;
}

.hrp-faq__trigger {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 3rem;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-4) 0;
  border: 0;
  background: transparent;
  color: var(--color-soft-warm-white);
  font-family: var(--font-heading);
  font-size: var(--font-size-lead);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-lead);
  letter-spacing: var(--tracking-heading);
  text-align: left;
}

.hrp-faq__trigger:hover {
  color: var(--color-filament-amber-hover);
}

.hrp-faq__trigger span {
  flex: 0 0 auto;
  color: var(--color-filament-amber);
  font-size: 1.5rem;
  line-height: 1;
  transition: transform var(--transition-standard);
}

.hrp-faq__trigger[aria-expanded="true"] span {
  transform: rotate(45deg);
}

.hrp-faq__answer {
  width: min(100%, 45rem);
  min-width: 0;
  padding-bottom: var(--space-5);
}

.hrp-faq__answer p {
  margin-bottom: 0;
}

.hrp-faq__location {
  width: min(100%, 48rem);
  min-width: 0;
  margin: var(--space-5) 0 0;
}

.hrp-before__column {
  width: min(100%, 60%);
  min-width: 0;
}

.hrp-before__list {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
}

.hrp-check {
  display: grid;
  grid-template-columns: 1rem minmax(0, 1fr);
  gap: var(--space-4);
  padding-block: var(--space-4);
  border-top: 1px solid var(--border-color);
}

.hrp-check__marker {
  grid-column: 1;
  width: 3px;
  min-width: 3px;
  height: 100%;
  background: var(--color-industrial-grey);
}

.hrp-check--amber .hrp-check__marker {
  background: var(--color-filament-amber);
}

.hrp-check--sage .hrp-check__marker {
  background: var(--color-sage);
}

.hrp-check__copy {
  grid-column: 2;
  min-width: 0;
  max-width: 46rem;
}

.hrp-check__copy h3 {
  margin-bottom: var(--space-2);
  font-size: var(--font-size-lead);
}

.hrp-check__copy p {
  margin-bottom: 0;
}

@media (min-width: 48rem) {
  .hrp-conduct-card {
    padding: var(--space-6);
  }

  .hrp-casino-card {
    padding: var(--space-6);
  }
}

@media (max-width: 55rem) {
  .hrp-considerate__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .hrp-considerate__intro,
  .hrp-considerate__panels,
  .hrp-considerate__closing {
    grid-column: 1;
  }

  .hrp-considerate__panels {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 56.25rem) {
  .hrp-casino__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .hrp-casino-card--staff,
  .hrp-casino-card--space,
  .hrp-casino-card--pause {
    grid-column: 1;
  }
}

@media (max-width: 51.25rem) {
  .hrp-responsible__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .hrp-responsible__wellbeing,
  .hrp-responsible__staff {
    grid-column: 1;
  }
}

@media (max-width: 47.5rem) {
  .hrp-intro__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-5);
  }

  .hrp-intro__media {
    grid-column: 1;
    grid-row: 1;
  }

  .hrp-intro__content {
    grid-column: 1;
    grid-row: 2;
  }

  .hrp-entry__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .hrp-entry__panel,
  .hrp-entry__note {
    grid-column: 1;
  }

  .hrp-before__column {
    width: 100%;
  }
}

@media (max-width: 39rem) {
  .hrp-considerate__panels {
    grid-template-columns: minmax(0, 1fr);
  }

  .hrp-conduct-card {
    grid-column: 1;
  }

  .hrp-dining-row {
    grid-template-columns: 2.5rem minmax(0, 1fr);
  }

  .hrp-dining-row__number {
    font-size: var(--font-size-lead);
  }

  .hrp-support__block {
    padding: var(--space-5);
  }
}

@media (prefers-reduced-motion: reduce) {
  .hrp-faq__trigger span {
    transition: none;
  }
}
