.door-guide {
  --paper: #f8f4ed;
  --ink: #2b2521;
  --muted: #61564d;
  --accent: #922b36;
  --line: #dfd5ca;
  background: var(--paper);
  color: var(--ink);
}
.door-guide a { color: inherit; text-underline-offset: .25em; }
.door-guide a:hover { color: var(--accent); }
.door-guide a:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.door-guide-wrap { width: min(1180px, calc(100% - 64px)); margin-inline: auto; }
.door-guide-hero { display: grid; grid-template-columns: .85fr 1.15fr; gap: 3.5rem; align-items: center; padding-block: 4rem; }
.door-guide h1,.door-guide h2,.door-guide h3 { font-family: "Instrument Serif", Georgia, serif; font-weight: 500; line-height: 1.08; margin: 0 0 .6em; }
.door-guide h1 { font-size: clamp(2.65rem, 5.5vw, 5.25rem); letter-spacing: -.045em; margin-bottom: .28em; }
.door-guide h2 { font-size: clamp(2rem, 4vw, 3.1rem); letter-spacing: -.03em; }
.door-guide h3 { font-size: 1.65rem; }
.door-guide-kicker { font-size: .77rem; text-transform: uppercase; letter-spacing: .14em; font-weight: 700; color: var(--accent); }
.door-guide p { margin: 0 0 1em; }
.door-guide-lede { max-width: 42ch; color: var(--muted); font-size: 1.08rem; }
.door-guide .door-guide-button { display: inline-block; padding: .7rem 1rem; background: var(--accent); color: white; text-decoration: none; font-weight: 700; }
.door-guide .door-guide-button:hover { color: white; background: #72202a; }
.door-guide .door-guide-button:focus-visible { outline-offset: 4px; }
.door-guide-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .8rem 1.15rem; }
.door-guide figure { margin: 0; }
.door-guide figure img { display: block; width: 100%; }
.door-guide-hero img { height: clamp(300px, 41vw, 510px); object-fit: cover; }
.door-guide-hero img.door-guide-radius { object-position: 44% center; }
.door-guide-hero img.door-guide-catalog { object-fit: contain; background: #fff; padding: 1rem; }
.door-guide figcaption { color: var(--muted); margin-top: .45rem; font-size: .82rem; }
.door-guide-section { border-top: 1px solid var(--line); padding-block: 3rem; }
.door-guide-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.4rem; }
.door-guide-card { border: 1px solid var(--line); background: #f1e9de; }
.door-guide-card img { height: 275px; object-fit: cover; }
.door-guide-card img.door-guide-catalog { object-fit: contain; background: #fff; padding: 1rem; }
.door-guide-card figcaption { padding-inline: 1.1rem; }
.door-guide-card-copy { padding: 1.1rem; }
.door-guide-card-copy p { max-width: 48ch; }
.door-guide-details { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem 3rem; }
.door-guide-details p { max-width: 56ch; }
@media (max-width: 760px) {
  .door-guide-wrap { width: calc(100% - 36px); }
  .door-guide-hero, .door-guide-grid, .door-guide-details { grid-template-columns: 1fr; }
  .door-guide-hero { padding-block: 2.25rem; gap: 1.4rem; }
  .door-guide-hero img { height: min(95vw, 400px); }
  .door-guide-card img { height: 240px; }
}
