/* Homepage FAQ. Open answers, same paper and hairlines as the ledger above. */
.proof-section.home-faq { padding-block: 8px 96px; background: var(--paper, #f3f0e9); }
.home-faq-layout { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: 72px; align-items: start; border-top: 1px solid var(--line, #d3d2c8); padding-top: 64px; }
.home-faq-copy { position: static; }
.home-faq-copy .proof-kicker { margin: 0 0 22px; padding: 0; font-size: 13px; line-height: 1.5; }
.home-faq-copy h2 { max-width: 10ch; font-size: clamp(42px, 4vw, 58px); line-height: 1.05; letter-spacing: -.04em; text-wrap: initial; }
.home-faq-copy > p { margin-top: 22px; max-width: 28ch; font-size: 18px; line-height: 1.6; color: var(--muted, #697069); }
.home-faq-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid #aebaa0; }
.home-faq-list > li { border-bottom: 1px solid var(--line, #d3d2c8); }
.home-faq-list details { margin: 0; }
.home-faq-list summary { display: grid; grid-template-columns: 36px minmax(0, 1fr) 36px; gap: 8px 18px; align-items: center; min-height: 84px; padding: 22px 0; cursor: pointer; list-style: none; }
.home-faq-list summary::-webkit-details-marker { display: none; }
.home-faq-list summary::marker { content: ""; }
.home-faq-list summary:hover h3 { color: #3f5a32; }
.home-faq-n { font-family: var(--mono, Plex, monospace); font-size: 12px; letter-spacing: .04em; color: #657953; }
.home-faq-list h3 { margin: 0; font-size: clamp(26px, 2.2vw, 32px); line-height: 1.18; letter-spacing: -.03em; text-wrap: initial; }
.home-faq-mark { position: relative; width: 32px; height: 32px; justify-self: end; border: 1px solid #8ea084; border-radius: 50%; background: transparent; transition: background 160ms ease, border-color 160ms ease; }
.home-faq-mark::before, .home-faq-mark::after { content: ""; position: absolute; left: 50%; top: 50%; background: #24302a; transform: translate(-50%, -50%); }
.home-faq-mark::before { width: 12px; height: 1.5px; }
.home-faq-mark::after { width: 1.5px; height: 12px; }
.home-faq-list summary:hover .home-faq-mark { border-color: #24302a; background: #24302a; }
.home-faq-list summary:hover .home-faq-mark::before, .home-faq-list summary:hover .home-faq-mark::after { background: #f3f0e9; }
.home-faq-list details[open] .home-faq-mark { border-color: #24302a; background: #24302a; }
.home-faq-list details[open] .home-faq-mark::before, .home-faq-list details[open] .home-faq-mark::after { background: #f3f0e9; }
.home-faq-list details[open] .home-faq-mark::after { display: none; }
.home-faq-a { margin: 0 54px 26px 54px; }
.home-faq-list p { margin: 0; max-width: 62ch; font-size: 18px; line-height: 1.6; color: #3d4a40; }
.home-faq-list p + p { margin-top: 12px; }
.home-faq-parts { margin: 16px 0 0; padding: 0; list-style: none; max-width: 62ch; }
.home-faq-parts li { display: grid; grid-template-columns: 132px minmax(0, 1fr); gap: 16px; padding: 11px 0; border-top: 1px solid var(--line, #d3d2c8); font-size: 17px; line-height: 1.5; color: #3d4a40; }
.home-faq-parts li:last-child { border-bottom: 1px solid var(--line, #d3d2c8); }
.home-faq-parts b { font-family: var(--serif, Georgia, serif); font-weight: 400; font-size: 18px; letter-spacing: -.02em; color: var(--ink, #24302a); }
@media (max-width: 1100px) {
  .home-faq-layout { gap: 42px; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); }
  .home-faq-copy h2 { font-size: 44px; }
}
@media (max-width: 800px) {
  .proof-section.home-faq { padding-block: 4px 64px; }
  .home-faq-layout { grid-template-columns: 1fr; gap: 32px; padding-top: 42px; }
  .home-faq-copy { position: static; }
  .home-faq-copy h2 { max-width: none; font-size: 42px; }
  .home-faq-copy > p { max-width: 42ch; }
  .home-faq-list h3 { font-size: 28px; }
  .home-faq-list summary { grid-template-columns: 28px minmax(0, 1fr) 32px; gap: 10px; min-height: 76px; }
  .home-faq-a { margin-left: 38px; margin-right: 42px; }
}
@media (max-width: 500px) {
  .home-faq-copy .proof-kicker { font-size: 12px; margin-bottom: 18px; }
  .home-faq-copy h2 { font-size: 38px; }
  .home-faq-copy > p { margin-top: 16px; font-size: 17px; }
  .home-faq-list summary { min-height: 72px; padding-block: 18px; }
  .home-faq-list h3 { font-size: 26px; }
  .home-faq-list p { font-size: 17px; }
  .home-faq-a { margin-left: 0; margin-right: 0; }
  .home-faq-parts li { grid-template-columns: 1fr; gap: 4px; }
}
