.landing {
  --ink:#2c2020;
  --wine:#3d080e;
  --paper:#eeede6;
  --rule:#c6a27c;
  color-scheme:light;
  color:var(--ink);
  background:var(--paper);
}
.landing main { max-width:none; padding:0; }
.landing .wrap, .landing .masthead, .landing .site-footer {
  width:min(100%,76rem);
  margin-inline:auto;
  padding-inline:clamp(1.25rem,5vw,4rem);
}
.landing .masthead { min-height:4.4rem; padding-block:.9rem; }
.landing .masthead .brand, .landing .eyebrow, .landing .number { color:var(--wine); }
.edition { font-size:.76rem; text-transform:uppercase; letter-spacing:.12em; }
.masthead nav { display:flex; gap:1.4rem; font-size:.85rem; }
.landing h1, .landing h2, .landing h3 { font-family:Georgia,serif; font-weight:400; }
.landing h1 { font-size:clamp(3rem,6.3vw,5.6rem); text-wrap:initial; }
.landing h2 { font-size:clamp(2.35rem,5.1vw,4.2rem); }
.landing h3 { font-size:clamp(1.45rem,2.75vw,2.1rem); line-height:1.12; margin:.15rem 0 .6rem; }
.hero-band,.purchase-band { background:var(--wine); color:#f4e8d1; }
.hero-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:clamp(2rem,6vw,5.3rem); align-items:center; padding-block:clamp(2.8rem,7vw,6rem); }
.hero-band .eyebrow,.purchase-band .eyebrow { color:#e8bd8b; }
.hero-lead { font-size:clamp(1rem,1.9vw,1.25rem); margin:1.4rem 0 .7rem; max-width:35rem; }
.hero-detail { color:#e0caba; max-width:34rem; margin:0 0 1.4rem; }
.landing .buy { gap:1.15rem; background:#ebc69a; border-color:#ebc69a; }
.landing .buy:hover { background:#fff1db; }
.hero-meta { display:flex; flex-wrap:wrap; gap:.55rem; margin:1rem 0 0; font-size:.84rem; color:#e0caba; }
.landing .cover { padding:.85rem; margin:0; border:1px solid #9c6251; background:#270409; box-shadow:0 1.6rem 3.5rem #1c02066b; transform:none; }
.cover img { border:1px solid #885641; }
.cover figcaption { display:flex; justify-content:space-between; gap:1rem; color:#dfbd9a; font-size:.65rem; letter-spacing:.1em; text-transform:uppercase; padding:.75rem .15rem .1rem; }
.paper-section { padding-block:clamp(3.5rem,8vw,6rem); }
.landing .eyebrow span { margin-right:.55rem; }
.section-intro { max-width:42rem; margin:1rem 0 1.65rem; }
.situation-list { border-bottom:1px solid var(--rule); }
.situation-list article { display:grid; grid-template-columns:2.3rem minmax(0,.9fr) minmax(0,1.45fr); gap:1.2rem; padding:1.35rem 0; border-top:1px solid var(--rule); align-items:start; }
.number { font-size:.8rem; letter-spacing:.12em; font-weight:700; }
.situation-list p,.contents p { margin:0; }
.situation-list .chapter { color:#6a2731; font-weight:700; font-size:.8rem; margin:.4rem 0 0; }
.contents { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; margin:1.7rem 0 2.2rem; }
.contents article { border-top:1px solid var(--rule); padding-top:.8rem; }
.preview { display:grid; grid-template-columns:1fr 1fr; gap:1.35rem; }
.preview a { display:block; text-decoration:none; border:1px solid var(--rule); }
.preview a > span { display:flex; justify-content:space-between; padding:.6rem .8rem; border-top:1px solid var(--rule); font-size:.82rem; color:var(--wine); }
.preview a:hover > span { text-decoration:underline; }
.purchase-grid { display:grid; grid-template-columns:1.4fr .6fr; gap:1.5rem; align-items:center; padding-block:clamp(2.5rem,6vw,4.4rem); }
.purchase-grid p { max-width:37rem; }
.purchase-price { border-left:1px solid #a66e63; padding-left:1.5rem; }
.purchase-price .price { font-size:clamp(2.4rem,5vw,4rem); color:#f3ce9c; margin:0; }
.purchase-price p { color:#e0caba; margin:.2rem 0 0; }
.landing .site-footer { border-top:0; }
.landing .site-footer .brand,.landing .seller,.landing .site-footer nav { color:#4f3031; }
.landing a:focus-visible { outline:2px solid currentColor; }
.hero-band .buy:focus-visible { outline-color:#fff1db; }
@media(max-width:760px) {
  .edition { display:none; }
  .hero-grid,.purchase-grid { grid-template-columns:1fr; }
  .hero-grid { gap:1.65rem; }
  .situation-list article { grid-template-columns:2rem minmax(0,1fr); column-gap:.55rem; row-gap:.2rem; }
  .situation-list article > div { grid-column:2; }
  .contents { grid-template-columns:1fr; gap:1rem; }
  .purchase-price { border-left:0; border-top:1px solid #a66e63; padding:1rem 0 0; }
}
@media(max-width:460px) { .preview { grid-template-columns:1fr; } .masthead nav { gap:.65rem; } }
