.content-hero { padding: 18vh var(--pad-page) 1vh; max-width: var(--maxw); margin-inline: auto; }
.content-hero h1 { font-size: var(--fs-display); margin: 0.2em 0 0; }
.content-wrap { max-width: 760px; margin: 0 auto; padding: 3vh var(--pad-page) 12vh; }
.content-wrap .lead { margin-bottom: 1.5rem; }

/* FAQ accordion (native <details> — works without JS) */
.faq-list { margin-top: 2rem; border-top: 1px solid var(--hair); }
.faq-list details { border-bottom: 1px solid var(--hair-strong); }
.faq-list summary { cursor: pointer; list-style: none; padding: 1.4rem 0; font-family: var(--font-serif); font-size: 1.2rem; color: var(--ivory); display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; font-family: var(--font-mono); color: var(--accent); font-size: 1.4rem; line-height: 1; }
.faq-list details[open] summary::after { content: "\2212"; }
.faq-list .a { color: var(--ivory-dim); font-size: 1rem; line-height: 1.7; padding: 0 0 1.4rem; }
.faq-list .a a { color: var(--gold); }

/* Contact cards */
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-top: 1.5rem; }
.contact-grid .c { border: 1px solid var(--hair-strong); border-radius: 3px; padding: 1.75rem; }
.contact-grid .c h2 { font-size: var(--fs-h3); }
.contact-grid .c p { color: var(--ivory-dim); font-size: 0.95rem; line-height: 1.7; margin-top: 0.5rem; }
.contact-grid .c a { color: var(--gold); }
.contact-cta { margin-top: 2rem; display: flex; gap: 14px; flex-wrap: wrap; }

@media (max-width: 600px) { .contact-grid { grid-template-columns: 1fr; } }
