:root {
  --paper: #f7f5ef;
  --white: #fffdf8;
  --ink: #1a1a2e;
  --muted: #626270;
  --line: #d7cfbf;
  --orange: #c9a96e;
  --cyan: #e2c892;
}

.topbar { background: rgba(247, 245, 239, .9); }
.hero-media::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(145deg, rgba(26,26,46,.12), rgba(201,169,110,.08)); mix-blend-mode: color; }
.rare { background: var(--paper); }
.rare-head { grid-template-columns: 160px 1.1fr .55fr; }
.rare-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.rare-card { min-height: 410px; padding: 36px; border: 1px solid var(--ink); background: var(--white); display: flex; flex-direction: column; }
.rare-card > span { color: #8b744a; font-family: var(--mono); font-size: .61rem; letter-spacing: .04em; }
.rare-card h3 { max-width: 490px; margin: 72px 0 18px; font-size: clamp(1.65rem, 3vw, 2.8rem); letter-spacing: -.045em; }
.rare-card p { color: var(--muted); font-size: .88rem; max-width: 580px; }
.rare-card b { margin-top: auto; padding-top: 25px; border-top: 1px solid var(--line); color: #675738; font-size: .78rem; }
.rare-card:nth-child(1) { background: var(--ink); color: #fff; }
.rare-card:nth-child(1) p { color: #c0bec7; }
.rare-card:nth-child(1) b { color: var(--cyan); border-color: rgba(255,255,255,.18); }
.faq { background: var(--paper); border-top: 1px solid var(--line); }
.faq-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 100px; align-items: start; }
.faq h2 { font-size: clamp(2.8rem, 5vw, 5.2rem); }
.faq-list details { padding: 23px 0; border-top: 1px solid var(--line); }
.faq-list details:last-child { border-bottom: 1px solid var(--line); }
.faq-list summary { cursor: pointer; list-style: none; font-size: 1.06rem; font-weight: 700; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; float: right; color: var(--orange); font-family: var(--mono); }
.faq-list details[open] summary::after { content: "−"; }
.faq-list p { margin: 16px 42px 0 0; color: var(--muted); }
.cta-email { display: block; width: max-content; margin-top: 18px; color: #75613c; text-underline-offset: 4px; font-size: .78rem; }

@media (max-width: 820px) {
  .faq-grid { grid-template-columns: 1fr; gap: 38px; }
  .rare-head { grid-template-columns: 1fr; }
  .rare-grid { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
  .rare-card { min-height: 360px; padding: 28px 24px; }
}
