:root {
  --ink: #17252e;
  --muted: #5b686f;
  --green: #17252e;
  --brand: #f5b900;
  --mint: #f7efd1;
  --cream: #faf8f2;
  --line: #e4e1d8;
}

body.supportia-site a { color: #775300; }
.s-kicker { color: #805b00; }
.s-hero {
  padding: clamp(52px, 7vw, 78px) 0;
  background: linear-gradient(135deg, #faf8f2 0%, #fff8dc 58%, #f7efd1 100%);
}
.s-hero h1 { max-width: 760px; font-size: clamp(2.7rem, 6.2vw, 4.75rem); }
.s-hero p { max-width: 720px; }
.s-hero button, .s-panel button, .s-btn, .s-finder-form button, .s-feedback button { background: #17252e; }
.s-btn-alt { background: #fff!important; }
.s-card, .s-help-card, .s-choices a { transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.s-card:hover, .s-help-card:hover, .s-choices a:hover { transform: translateY(-2px); border-color: #d5bd62; box-shadow: 0 12px 30px rgba(23,37,46,.09); }
.s-home-finder { margin-top: -34px; position: relative; z-index: 2; }
.s-home-topics { padding-top: 34px; }
.s-topic-actions { margin-bottom: 26px; }
.s-card p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.s-trust-note { padding: 22px 24px; border-left: 5px solid var(--brand); background: var(--cream); }
.s-guide-tools { border-color: #ded9ca; border-left: 5px solid var(--brand); background: #faf8f2; }
.s-guide-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 24px; padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.s-guide-toc summary { min-height: 44px; display: flex; align-items: center; color: var(--ink); }
.s-guide-toc ol { padding-left: 1.35rem; }
.s-guide-toc li { break-inside: avoid; margin: 7px 0; }
.s-guide-toc a { color: #604500; }
.s-article-meta { font-size: .86rem; }
.s-history-note { border-left-color: var(--brand); }
.s-current-update { margin: 0 0 34px; padding: 26px 28px; border: 1px solid #ded9ca; border-top: 6px solid var(--brand); border-radius: 16px; background: #fffdf7; }
.s-current-update h2 { margin: .25rem 0 .6rem; font-size: clamp(1.45rem, 3vw, 1.9rem); }
.s-current-update li { margin: 8px 0; }
.s-symptoms { padding-bottom: 18px; }
.s-symptoms .s-help-card { background: #faf8f2; }

@media (max-width: 800px) {
  .s-hero { padding: 46px 0 58px; }
  .s-hero h1 { font-size: clamp(2.45rem, 11vw, 3.4rem); }
  .s-home-finder { margin-top: -26px; }
  .s-guide-facts { grid-template-columns: 1fr; }
  .s-current-update { padding: 21px; }
}
