.style-guide-hero {
  background-image: url("../assets/beer-hero-glasses.png");
  background-position: center 58%;
}

.style-guide-hero .hero-lead { max-width: 760px; }

.family-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 34px 0;
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}

.family-grid article {
  min-height: 310px;
  padding: 30px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.family-code,
.style-family,
.choice-key {
  color: var(--green);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .1em;
}

.family-grid h3 { margin: 58px 0 14px; font-size: 1.35rem; }
.family-grid p { font-size: .9rem; }
.family-grid .family-examples { margin-bottom: 0; color: var(--green-light); font-weight: 700; }

.style-table th:first-child { min-width: 150px; }
.style-table td:last-child { min-width: 190px; }
.beer-swatch {
  width: 13px;
  height: 13px;
  display: inline-block;
  margin-right: 9px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 50%;
  vertical-align: -1px;
}
.swatch-pale { background: #c98231; }
.swatch-ipa { background: #d96825; }
.swatch-pils { background: #efd66a; }
.swatch-weizen { background: #e9bd5c; }
.swatch-stout { background: #281b17; }
.table-caption { color: var(--muted) !important; font-size: .78rem; }

.style-list { border-top: 1px solid var(--line); }
.style-list > article {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 30px;
  padding: 44px 0 54px;
  border-bottom: 1px solid var(--line);
}
.style-number {
  color: var(--green);
  font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
  font-size: 1.4rem;
}
.style-list h3 { margin: 8px 0 8px; font-size: clamp(1.7rem, 3vw, 2.4rem); }
.style-catch { color: var(--ink) !important; font-family: "Yu Mincho", "Hiragino Mincho ProN", serif; font-size: 1.08rem; }
.style-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 24px 0 0;
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.style-facts div { padding: 14px 16px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.style-facts dt { color: var(--muted); font-size: .68rem; }
.style-facts dd { margin: 4px 0 0; color: var(--ink); font-size: .84rem; font-weight: 700; }

.style-choice-table div { min-height: 215px; }
.style-choice-table h3 { margin-top: 32px; }
.style-choice-table a { color: var(--green-light); font-weight: 800; }

.faq-list { border-top: 1px solid var(--line); }
.faq-list details { border-bottom: 1px solid var(--line); }
.faq-list summary { padding: 22px 36px 22px 0; color: var(--ink); font-size: 1rem; font-weight: 700; cursor: pointer; }
.faq-list p { padding: 0 0 24px; margin: 0; }

@media (max-width: 680px) {
  .style-guide-hero { background-position: 64% center; }
  .family-grid { grid-template-columns: 1fr; }
  .family-grid article { min-height: auto; padding: 24px; }
  .family-grid h3 { margin-top: 34px; }
  .style-list > article { grid-template-columns: 1fr; gap: 10px; padding: 36px 0 44px; }
  .style-facts { grid-template-columns: 1fr; }
}
