/* Amsterdam Book Club — shared inner-page typography and controls.
   Scoped to .abc-inner so the homepage retains its established design. */
body.abc-inner {
  --inner-cream: #F6F1EA;
  --inner-teal: #2A6B84;
  --inner-orange: #F08135;
  --inner-ink: #1f1f1f;
  --inner-muted: #5e5a56;
  margin: 0;
  background: var(--inner-cream);
  color: var(--inner-ink);
  font-family: Times, "Times New Roman", serif;
  font-size: 17px;
  line-height: 1.65;
}
.abc-inner *, .abc-inner *::before, .abc-inner *::after { box-sizing: border-box; }
.abc-inner .container {
  width: min(var(--inner-content-width, 1200px), calc(100% - 80px));
  margin-inline: auto;
}
.abc-inner main :is(h1,h2,h3,h4) { font-family: Fraunces, Georgia, "Times New Roman", serif; color: var(--inner-teal); }
.abc-inner main h1 { font-size: clamp(38px, 4vw, 54px); font-weight: 400; line-height: 1.15; letter-spacing: -.03em; }
.abc-inner main p { text-wrap: pretty; }
.abc-inner main a { text-underline-offset: 4px; }
.abc-inner main img { max-width: 100%; }
.abc-inner main :is(a,button,input,select,textarea,summary):focus-visible {
  outline: 3px solid var(--inner-teal);
  outline-offset: 4px;
}
.abc-inner .inner-intro { padding-block: 64px 48px; }
.abc-inner main.page { padding-bottom: 88px; }
.abc-inner main.page .inner-intro { text-align: center; }
.abc-inner .inner-intro h1 { margin: 0 0 20px; }
.abc-inner .inner-intro > p { margin: 0 auto; max-width: 760px; color: var(--inner-muted); font-size: 18px; line-height: 1.7; }
.abc-inner .inner-intro > p + p { margin-top: 16px; }
.abc-inner main .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 48px;
  padding: 12px 22px;
  border: 1px solid var(--inner-teal);
  border-radius: 5px;
  background: var(--inner-teal);
  box-shadow: none;
  color: #fff;
  font-family: Times, "Times New Roman", serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  cursor: pointer;
}
.abc-inner main .btn:hover { color: #fff; background: #20566b; border-color: #20566b; text-decoration: none; }
.abc-inner main .btn.secondary,
.abc-inner main .btn.btn-secondary { background: transparent; color: var(--inner-teal); }
.abc-inner main .btn.secondary:hover,
.abc-inner main .btn.btn-secondary:hover { background: #e7eeeb; }
.abc-inner .inner-skip {
  position: absolute;
  z-index: 100;
  top: -100px;
  left: 20px;
  padding: 10px 18px;
  background: #fff;
  color: #2A6B84;
}
.abc-inner .inner-skip:focus { top: 12px; }
.abc-inner main [id], .abc-inner main[id] { scroll-margin-top: calc(var(--hiw-header-height, 117px) + 28px); }
@media (max-width: 760px) {
  .abc-inner .container { width: calc(100% - 40px); }
  .abc-inner .inner-intro { padding-block: 42px 32px; }
  .abc-inner .inner-intro > p { font-size: 17px; }
  .abc-inner main.page { padding-bottom: 60px; }
}
@media (prefers-reduced-motion: reduce) {
  .abc-inner *, .abc-inner *::before, .abc-inner *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
