.home-page {
  overflow: clip;
}

.home-page section {
  margin-block: var(--space-10);
}

.home-hero {
  margin-block-start: var(--space-8) !important;
}

.home-hero__grid,
.home-fold__grid,
.home-kitchen__grid,
.home-card-notes__grid,
.home-private__grid,
.home-archive__grid,
.home-society__grid,
.home-closing__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: 20px;
  row-gap: var(--space-5);
  position: relative;
}

.home-hero__story { grid-column: 1 / span 7; grid-row: 1 / span 2; min-width: 0; position: relative; z-index: 1; }
.home-hero__story h1 { max-width: 13ch; font-size: clamp(3.2rem, 6.7vw, 6.2rem); }
.home-hero__deck { max-width: 38rem; font-size: var(--text-md); line-height: var(--leading-lead); }
.home-hero__lead { max-width: 42rem; border-top: 2px solid var(--color-burgundy); padding-top: var(--space-4); }
.home-hero__lead .button { margin-top: var(--space-2); }
.home-hero__watermark { position: absolute; z-index: 0; inset: 2.6rem auto auto 0; color: var(--color-soot); font-family: var(--font-heading); font-size: clamp(5rem, 15vw, 13rem); font-weight: 700; letter-spacing: -0.08em; line-height: .8; opacity: .055; pointer-events: none; white-space: nowrap; }
.home-hero__dish { grid-column: 10 / span 3; grid-row: 1; width: 100%; min-width: 0; }
.home-hero__dish-frame { aspect-ratio: 4 / 5; }
.home-hero__notice { grid-column: 8 / span 2; grid-row: 2; width: 100%; min-width: 0; align-self: end; }
.home-hero__notice h2 { font-size: var(--text-xl); }

.home-fold__heading { grid-column: 1 / span 7; grid-row: 1; min-width: 0; }
.home-fold__heading h2 { max-width: 18ch; }
.home-fold__photo { grid-column: 1 / -1; grid-row: 2; width: 100%; min-width: 0; }
.home-fold__photo-frame { aspect-ratio: 16 / 9; filter: grayscale(1) contrast(.96); transition: filter var(--transition-standard); }
.home-fold__photo:hover .home-fold__photo-frame { filter: grayscale(1) contrast(1.08); }
.home-fold__column { border-top: var(--border-subtle); padding-top: var(--space-4); min-width: 0; }
.home-fold__column--one { grid-column: 1 / span 4; grid-row: 3; max-width: 27rem; }
.home-fold__column--two { grid-column: 5 / span 4; grid-row: 3; max-width: 27rem; }
.home-fold__quiet { grid-column: 9 / span 4; grid-row: 3; min-width: 0; }

.home-kitchen__article { grid-column: 3 / span 6; grid-row: 1 / span 2; width: 100%; max-width: 42rem; min-width: 0; justify-self: center; }
.home-kitchen__quote { grid-column: 1 / span 3; grid-row: 2; width: 100%; max-width: 30rem; min-width: 0; align-self: start; }
.home-kitchen__notice { grid-column: 9 / span 3; grid-row: 2; width: 100%; max-width: 22rem; min-width: 0; justify-self: end; align-self: end; }
.home-kitchen__notice .button-secondary { margin-top: var(--space-2); }

.home-card-notes__grid { border-top: var(--rule-double); padding-top: var(--space-6); }
.home-card-notes__heading { grid-column: 1 / -1; grid-row: 1; min-width: 0; }
.home-card-notes__primary { grid-column: 1 / span 5; grid-row: 2; max-width: 32rem; min-width: 0; }
.home-card-notes__etiquette { grid-column: 6 / span 3; grid-row: 2; max-width: 24rem; min-width: 0; }
.home-card-notes__holdem { grid-column: 9 / span 2; grid-row: 2; max-width: 24rem; min-width: 0; }
.home-card-notes__engraving { grid-column: 11 / span 2; grid-row: 2; width: 100%; min-width: 0; margin: 0; }
.home-card-notes__engraving .image-frame { aspect-ratio: 4 / 5; }
.home-card-notes__invitation { grid-column: 11 / span 2; grid-row: 3; width: 100%; min-width: 0; align-self: start; }
.home-card-notes__invitation .button { width: 100%; margin-top: var(--space-2); }
.home-card-notes__holdem h3 { font-size: var(--text-xl); }

.home-conduct__panel { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 20px; row-gap: var(--space-5); border-top: var(--rule-double); border-bottom: var(--rule-double); background: var(--surface-raised); padding-block: var(--space-7); }
.home-conduct__heading { grid-column: 1 / -1; grid-row: 1; min-width: 0; }
.home-conduct__item { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); gap: var(--space-3); min-width: 0; }
.home-conduct__item:nth-of-type(1) { grid-column: 1 / span 4; grid-row: 2; }
.home-conduct__item:nth-of-type(2) { grid-column: 5 / span 4; grid-row: 2; }
.home-conduct__item:nth-of-type(3) { grid-column: 9 / span 4; grid-row: 2; }
.home-conduct__number { color: var(--color-burgundy); font-family: var(--font-heading); font-size: 2.5rem; font-weight: 700; line-height: 1; }
.home-conduct__item h3 { font-size: var(--text-xl); }
.home-conduct__item p { max-width: 28rem; }

.home-private__grid { border-top: var(--rule-double); padding-top: var(--space-6); }
.home-private__heading { grid-column: 1 / -1; grid-row: 1; min-width: 0; }
.home-private__primary { grid-column: 1 / span 6; grid-row: 2; max-width: 36rem; min-width: 0; border-inline-start: 3px solid var(--color-burgundy); padding-inline-start: var(--space-4); }
.home-private__secondary { grid-column: 7 / span 3; grid-row: 2; max-width: 26rem; min-width: 0; }
.home-private__notice { grid-column: 10 / span 3; grid-row: 2; width: 100%; max-width: 22rem; min-width: 0; justify-self: end; }
.home-private__seal { display: inline-block; width: .75rem; height: .75rem; margin-inline-end: var(--space-2); border-radius: 50%; background: var(--color-burgundy); vertical-align: middle; }

.home-archive { background: var(--surface-inset); padding-block: var(--space-7); }
.home-archive__heading { grid-column: 1 / -1; grid-row: 1; min-width: 0; }
.home-archive__heading h2 { font-size: var(--text-2xl); }
.home-archive__slip { min-width: 0; border-top: var(--border-subtle); padding-top: var(--space-4); }
.home-archive__slip:nth-of-type(1) { grid-column: 1 / span 4; grid-row: 2; max-width: 23rem; }
.home-archive__slip:nth-of-type(2) { grid-column: 5 / span 4; grid-row: 2; max-width: 23rem; margin-top: var(--space-4); }
.home-archive__slip:nth-of-type(3) { grid-column: 9 / span 4; grid-row: 2; max-width: 23rem; margin-top: var(--space-2); }
.home-archive__slip h3 { font-size: var(--text-xl); }
.home-archive__slip .button-secondary { margin-top: var(--space-2); }

.home-society__feature { grid-column: 1 / span 7; grid-row: 1; max-width: 38rem; min-width: 0; }
.home-society__notes { grid-column: 9 / span 4; grid-row: 1; display: flex; flex-direction: column; gap: var(--space-5); min-width: 0; background: var(--surface-quote); padding: var(--space-5); }
.home-society__note { width: 100%; min-width: 0; border-bottom: var(--border-subtle); padding-bottom: var(--space-4); }
.home-society__note:last-child { border-bottom: 0; padding-bottom: 0; }
.home-society__note h3 { font-size: var(--text-xl); }
.home-society__note p { max-width: 21rem; }

.home-visit__panel { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 20px; row-gap: var(--space-5); border-top: var(--rule-double); border-bottom: var(--rule-double); background: var(--surface-raised); padding: clamp(var(--space-5), 5vw, var(--space-8)); }
.home-visit__story { grid-column: 1 / span 7; grid-row: 1 / span 2; max-width: 38rem; min-width: 0; }
.home-visit__desk { grid-column: 9 / span 4; grid-row: 1; min-width: 0; border-block: var(--border-subtle); padding-block: var(--space-4); }
.home-visit__desk span { display: block; color: var(--color-soot-muted); font-size: var(--text-2xs); font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.home-visit__address { font-family: var(--font-heading); font-size: clamp(1.45rem, 3vw, 2rem); font-weight: 700; line-height: var(--leading-subhead); }
.home-visit__actions { grid-column: 9 / span 4; grid-row: 2; display: flex; flex-wrap: wrap; gap: var(--space-3); min-width: 0; }
.home-visit__actions > * { min-width: 0; }

.home-closing__line { grid-column: 4 / span 6; grid-row: 1; width: 100%; max-width: 34rem; min-width: 0; justify-self: center; text-align: center; }
.home-closing__flourish { display: block; margin-bottom: var(--space-4); color: var(--color-burgundy); font-size: 1.5rem; }
.home-closing__line h2 { font-size: clamp(1.7rem, 3vw, 2.25rem); }
.home-closing__line a { display: inline-block; margin-top: var(--space-2); }

@media (max-width: 69.9375rem) {
  .home-hero__grid,
  .home-fold__grid,
  .home-kitchen__grid,
  .home-card-notes__grid,
  .home-private__grid,
  .home-archive__grid,
  .home-society__grid,
  .home-closing__grid,
  .home-conduct__panel,
  .home-visit__panel { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .home-hero__story { grid-column: 1 / -1; grid-row: 1; }
  .home-hero__story h1 { max-width: 15ch; }
  .home-hero__dish { grid-column: 1 / span 3; grid-row: 2; }
  .home-hero__notice { grid-column: 4 / span 3; grid-row: 2; align-self: stretch; }
  .home-fold__heading { grid-column: 1 / -1; }
  .home-fold__column--one { grid-column: 1 / span 3; }
  .home-fold__column--two { grid-column: 4 / span 3; }
  .home-fold__quiet { display: none; }
  .home-kitchen__article { grid-column: 1 / -1; grid-row: 1; justify-self: start; }
  .home-kitchen__quote { grid-column: 1 / span 4; grid-row: 2; }
  .home-kitchen__notice { grid-column: 1 / span 4; grid-row: 3; justify-self: start; }
  .home-card-notes__heading { grid-column: 1 / -1; }
  .home-card-notes__primary { grid-column: 1 / span 4; grid-row: 2; }
  .home-card-notes__etiquette { grid-column: 1 / span 3; grid-row: 3; }
  .home-card-notes__holdem { grid-column: 4 / span 3; grid-row: 3; }
  .home-card-notes__engraving { grid-column: 5 / span 2; grid-row: 2; }
  .home-card-notes__invitation { grid-column: 5 / span 2; grid-row: 3; }
  .home-conduct__item:nth-of-type(1) { grid-column: 1 / span 3; }
  .home-conduct__item:nth-of-type(2) { grid-column: 4 / span 3; }
  .home-conduct__item:nth-of-type(3) { grid-column: 1 / -1; grid-row: 3; max-width: 32rem; }
  .home-private__primary { grid-column: 1 / -1; grid-row: 2; }
  .home-private__secondary { grid-column: 1 / span 3; grid-row: 3; }
  .home-private__notice { grid-column: 4 / span 3; grid-row: 3; }
  .home-archive__slip:nth-of-type(1) { grid-column: 1 / span 3; }
  .home-archive__slip:nth-of-type(2) { grid-column: 4 / span 3; }
  .home-archive__slip:nth-of-type(3) { grid-column: 1 / -1; grid-row: 3; }
  .home-society__feature { grid-column: 1 / -1; }
  .home-society__notes { grid-column: 1 / -1; grid-row: 2; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-society__note { border-bottom: 0; padding-bottom: 0; }
  .home-visit__story { grid-column: 1 / -1; grid-row: 1; }
  .home-visit__desk { grid-column: 1 / -1; grid-row: 2; max-width: 34rem; }
  .home-visit__actions { grid-column: 1 / -1; grid-row: 3; }
  .home-closing__line { grid-column: 2 / span 4; }
}

@media (max-width: 43.75rem) {
  .home-page section { margin-block: var(--space-8); }
  .home-hero { margin-block-start: var(--space-6) !important; }
  .home-hero__grid,
  .home-fold__grid,
  .home-kitchen__grid,
  .home-card-notes__grid,
  .home-private__grid,
  .home-archive__grid,
  .home-society__grid,
  .home-closing__grid,
  .home-conduct__panel,
  .home-visit__panel { grid-template-columns: minmax(0, 1fr); row-gap: var(--space-5); }
  .home-hero__story,
  .home-hero__dish,
  .home-hero__notice,
  .home-fold__heading,
  .home-fold__photo,
  .home-fold__column--one,
  .home-fold__column--two,
  .home-kitchen__article,
  .home-kitchen__quote,
  .home-kitchen__notice,
  .home-card-notes__heading,
  .home-card-notes__primary,
  .home-card-notes__etiquette,
  .home-card-notes__holdem,
  .home-card-notes__engraving,
  .home-card-notes__invitation,
  .home-conduct__heading,
  .home-conduct__item:nth-of-type(1),
  .home-conduct__item:nth-of-type(2),
  .home-conduct__item:nth-of-type(3),
  .home-private__heading,
  .home-private__primary,
  .home-private__secondary,
  .home-private__notice,
  .home-archive__heading,
  .home-archive__slip:nth-of-type(1),
  .home-archive__slip:nth-of-type(2),
  .home-archive__slip:nth-of-type(3),
  .home-society__feature,
  .home-society__notes,
  .home-visit__story,
  .home-visit__desk,
  .home-visit__actions,
  .home-closing__line { grid-column: 1; grid-row: auto; justify-self: stretch; max-width: none; }
  .home-hero__story h1 { max-width: 12ch; font-size: clamp(2.7rem, 12vw, 4.35rem); }
  .home-hero__watermark { top: 3.5rem; font-size: clamp(4.5rem, 23vw, 7rem); }
  .home-hero__dish { order: 2; }
  .home-hero__notice { order: 3; }
  .home-fold__photo { order: 1; }
  .home-fold__heading { order: 2; }
  .home-fold__column--one { order: 3; }
  .home-fold__column--two { order: 4; }
  .home-kitchen__quote { max-width: 30rem; }
  .home-kitchen__notice { max-width: 22rem; }
  .home-card-notes__engraving { max-width: 22rem; }
  .home-card-notes__invitation { max-width: 22rem; }
  .home-conduct__panel { padding-block: var(--space-5); }
  .home-conduct__item p { max-width: 32rem; }
  .home-private__notice { justify-self: start; }
  .home-archive { padding-block: var(--space-5); }
  .home-archive__slip:nth-of-type(2),
  .home-archive__slip:nth-of-type(3) { margin-top: 0; }
  .home-society__notes { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
  .home-society__note { border-bottom: var(--border-subtle); padding-bottom: var(--space-4); }
  .home-society__note:last-child { border-bottom: 0; padding-bottom: 0; }
  .home-visit__panel { padding: var(--space-5); }
  .home-visit__actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
  .home-visit__actions .button,
  .home-visit__actions .button-secondary { width: 100%; }
  .home-closing__line { text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
  .home-page *,
  .home-page *::before,
  .home-page *::after { transition-duration: 0ms !important; animation-duration: 0ms !important; }
}
