/* shared styles for inner pages (support, privacy) on top of landing.css */
.page-main { max-width: 780px; margin: 0 auto; padding: 120px clamp(16px, 4vw, 48px) 80px; }
.page-main section { padding: 0 0 clamp(40px, 6vh, 64px); border: none; }
.page-updated { font-size: 13px; color: var(--muted); margin-top: -28px; }

.faq details {
  border: 1px solid var(--hairline); border-radius: 14px;
  background: var(--card); margin-bottom: 10px; padding: 0 18px;
}
.faq summary {
  cursor: pointer; font-weight: 600; padding: 14px 0; list-style: none;
}
.faq summary::before { content: "+ "; color: var(--amber); font-family: "JetBrains Mono", monospace; }
.faq details[open] summary::before { content: "− "; }
.faq details p { margin: 0 0 16px; font-size: 14.5px; color: var(--muted); }

.contact-card {
  border: 1px solid var(--hairline); border-left: 3px solid var(--amber);
  border-radius: 14px; background: var(--card); padding: 20px 24px; max-width: 560px;
}
.contact-card p { margin: 0 0 8px; }
.contact-card .mail { font-family: "JetBrains Mono", monospace; font-size: 17px; }
.contact-card .mail a { color: var(--amber); }

.policy-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; margin: 24px 0; }
.policy-cards article { background: var(--card); border: 1px solid var(--hairline); border-radius: 14px; padding: 18px 20px; }
.policy-cards h3 { margin: 0 0 6px; font-size: 15px; }
.policy-cards p { margin: 0; font-size: 14px; color: var(--muted); }
.policy-copy p { color: var(--muted); font-size: 15px; max-width: 64ch; }
.policy-copy b { color: var(--ink); }
