:root {
  color-scheme: dark;
  --ink: #10100f;
  --paper: #f7f3e9;
  --gold: #deb56a;
  --muted: #cdc8bd;
  --rule: #444138;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--ink); color: var(--paper); font: 1rem/1.55 system-ui, sans-serif; }
.frame { width: min(calc(100% - 3rem), 68rem); margin-inline: auto; }
a { color: var(--paper); text-underline-offset: .22em; }
a:focus-visible { outline: 2px solid var(--gold); outline-offset: 5px; }
.masthead, footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.masthead { padding-block: 1.1rem; border-bottom: 1px solid var(--rule); }
.wordmark { display: block; width: 9rem; height: auto; }
.masthead a { font-size: .875rem; }
.lead { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(15rem, 1fr); align-items: center; gap: clamp(2rem, 6vw, 6rem); padding-block: clamp(2rem, 6vw, 5rem); }
.label { margin: 0; color: var(--gold); font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
h1, h2, dt { font-family: Georgia, serif; line-height: 1.12; }
h1 { margin: .3em 0 .25em; font-size: clamp(3rem, 6.5vw, 5.5rem); font-weight: 500; letter-spacing: -.04em; }
h2 { margin: .35em 0; font-size: clamp(1.7rem, 3vw, 2.35rem); font-weight: 500; }
.dek { color: var(--muted); font-size: 1.18rem; max-width: 35rem; }
.jump { display: inline-block; margin-top: .55rem; color: var(--gold); font-weight: 600; }
.offer { position: relative; padding: 1.45rem; border-top: 3px double #937343; background: var(--paper); color: #201d19; }
.offer h2 { padding-right: 3rem; margin-top: 0; font-size: 1.48rem; }
.stamp { float: right; width: 3.1rem; height: auto; }
.price { clear: both; margin: .65rem 0; font: 500 3.5rem/1.1 Georgia, serif; }
.price span { font: 600 .85rem/1.4 system-ui, sans-serif; white-space: nowrap; }
.availability { border-top: 1px solid #bdb6a6; padding-top: .85rem; margin-bottom: 0; font-size: .9rem; font-weight: 600; }
#coverage { border-top: 1px solid var(--rule); padding-block: 2rem; }
.features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; margin: 1.5rem 0 0; }
dt { padding-top: .8rem; border-top: 2px solid var(--gold); font-size: 1.3rem; }
dd { margin: .55rem 0 0; color: var(--muted); }
.details { max-width: 48rem; padding-block: .4rem 2rem; }
.details p { color: var(--muted); }
footer { border-top: 1px solid var(--rule); padding-block: 1.4rem; }
footer span { color: var(--gold); font-family: Georgia, serif; font-style: italic; }
@media (max-width: 42rem) {
  .frame { width: min(calc(100% - 2rem), 36rem); }
  .lead, .features { grid-template-columns: 1fr; gap: 1.45rem; }
  .features { gap: 1.15rem; }
}
