/* Isolated styles for the unlisted self-help CMS previews. */
.sh-back { margin: 0 0 20px; font-size: 14px; }
.sh-back a { color: #f4e225; text-decoration: underline; text-underline-offset: .2em; }
.sh-back a:focus-visible { outline: 3px solid #f4e225; outline-offset: 5px; }
.sh-hub .sh-hub-group { scroll-margin-top: 150px; margin-bottom: 40px; }
.sh-hub .sh-hub-heading { padding: 12px 2px 0; }
.sh-hub .sh-hub-heading .sh-eyebrow { margin-bottom: 8px; }
.sh-hub-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.sh-hub a.sh-hub-card { display: flex; flex-direction: column; padding: 24px; border: 1px solid #484b3b; border-radius: 18px; background: #292c23; text-decoration: none; min-width: 0; }
.sh-hub a.sh-hub-card:hover { border-color: #b7ae4a; background: #323628; }
.sh-hub .sh-hub-label { color: #b8bda6; font-size: 11px; line-height: 1.6; letter-spacing: .06em; }
.sh-hub .sh-hub-card h3 { color: #f5f4e9; font-size: 18px; line-height: 1.4; margin: 12px 0; }
.sh-hub .sh-hub-card p { color: #c4c8b8; font-size: 14px; line-height: 1.7; margin-bottom: 20px; }
.sh-hub-read { color: #f4e225; font-size: 13px; font-weight: 700; margin-top: auto; }
.sh-hub-count { color: #d9d888; padding-left: 6px; font-size: 12px; }
.sh-hub .sh-meta strong { color: #f4e225; font-size: 19px; }
@media (max-width: 600px) { .sh-hub-grid { grid-template-columns: minmax(0, 1fr); } .sh-hub a.sh-hub-card { padding: 22px; } }
.tremml-selfhelp-shell { max-width: 1160px; margin: 0 auto 48px; }
.tremml-selfhelp { --sh-text: #f6f5ec; --sh-muted: #c5c6b9; --sh-accent: #f4e225; color: var(--sh-text); }
.tremml-selfhelp *, .tremml-selfhelp *::before, .tremml-selfhelp *::after { box-sizing: border-box; }
.tremml-selfhelp a { color: var(--sh-accent); text-decoration: underline; text-underline-offset: .2em; overflow-wrap: anywhere; }
.tremml-selfhelp a:hover { color: #fff6a3; }
.tremml-selfhelp a:focus-visible, .tremml-selfhelp summary:focus-visible { outline: 3px solid var(--sh-accent); outline-offset: 5px; }
.sh-preview { display: flex; align-items: center; gap: 10px; color: #dddcca; font-size: 13px; line-height: 1.5; padding: 13px 20px; border: 1px solid #48493a; border-radius: 12px; background: #2c2d23; margin-bottom: 20px; }
.sh-preview-dot { width: 7px; height: 7px; border-radius: 50%; background: #f4e225; flex-shrink: 0; }
.sh-hero { border: 1px solid #444638; border-radius: 24px; padding: clamp(24px, 4vw, 48px); background: linear-gradient(125deg, #33362a, #23261f 75%); }
.tremml-selfhelp .sh-eyebrow { color: var(--sh-accent); font-size: 12px; font-weight: 800; letter-spacing: .12em; line-height: 1.6; text-transform: uppercase; margin: 0 0 18px; }
.sh-eyebrow span { margin: 0 10px; opacity: .45; }
.tremml-selfhelp h1 { color: var(--sh-text); font-size: clamp(30px, 3.8vw, 49px); letter-spacing: -.035em; line-height: 1.12; font-weight: 800; max-width: 900px; margin: 0 0 24px; text-wrap: balance; overflow-wrap: break-word; }
.tremml-selfhelp .sh-intro p { color: #dddcd1; font-size: 18px; line-height: 1.75; max-width: 850px; margin: 0 0 12px; }
.sh-meta { display: flex; flex-wrap: wrap; gap: 8px 24px; color: #b5b7a9; font-size: 13px; line-height: 1.5; margin-top: 28px; padding-top: 20px; border-top: 1px solid #46483a; }
.sh-layout { display: grid; grid-template-columns: 245px minmax(0, 1fr); gap: 32px; margin-top: 32px; align-items: start; }
.sh-sidebar { position: sticky; top: 140px; }
.sh-toc { padding: 24px 20px; border: 1px solid #414335; border-radius: 18px; background: #25281f; }
.sh-toc ol { padding: 0; margin: 0; list-style: none; counter-reset: sh-nav; }
.sh-toc li { counter-increment: sh-nav; display: flex; gap: 10px; padding: 13px 0; border-top: 1px solid #414335; font-size: 14px; line-height: 1.5; }
.sh-toc li::before { content: counter(sh-nav, decimal-leading-zero); color: #a7ab92; font-size: 11px; padding-top: 3px; }
.sh-toc li a { color: #eeeeDF; text-decoration: none; }
.sh-toc li a:hover { color: var(--sh-accent); }
.sh-note { padding: 24px 6px; }
.sh-note strong { font-size: 14px; line-height: 1.6; color: #e3e5d7; }
.tremml-selfhelp .sh-note p { color: #aeb1a0; font-size: 13px; line-height: 1.7; margin: 8px 0 0; }
.sh-body { min-width: 0; }
.sh-section { padding: 28px 32px; border: 1px solid #424437; border-radius: 20px; background: #292c23; margin-bottom: 20px; scroll-margin-top: 150px; }
.tremml-selfhelp h2 { color: #f6f5ec; font-weight: 750; font-size: 24px; line-height: 1.3; letter-spacing: -.025em; margin: 0 0 18px; }
.tremml-selfhelp h3 { color: #f5e765; font-size: 19px; line-height: 1.45; font-weight: 700; margin: 27px 0 12px; }
.tremml-selfhelp p { font-size: 16px; line-height: 1.85; color: #d6d8ca; margin: 0 0 18px; }
.sh-section > :last-child { margin-bottom: 0; }
.sh-section--safety { border-color: #827546; border-left: 4px solid #e8c85b; background: #363226; }
.sh-section--safety h2 { color: #ffe49b; }
.sh-section--service { border-color: #8e8935; background: #363922; }
.sh-contact-link { display: inline-block; margin: 7px 0; padding: 12px 17px; border-radius: 9px; background: var(--sh-accent); color: #23251c !important; font-weight: 750; font-size: 15px; line-height: 1.5; text-decoration: none !important; }
.sh-contact-link:hover { background: #fff079; }
.sh-reference { top: -.3em; font-size: 11px; white-space: nowrap; }
.sh-reference a { text-decoration: none; padding: 2px; }
.sh-sources { border: 1px solid #424437; border-radius: 16px; padding: 18px 24px; background: #24271f; }
.sh-sources summary { cursor: pointer; color: #e5e7da; font-size: 15px; line-height: 1.5; font-weight: 650; }
.sh-sources[open] summary { margin-bottom: 18px; }
.tremml-selfhelp .sh-sources p, .sh-sources li { font-size: 13px; line-height: 1.7; }
.sh-sources ol { margin: 12px 0 0; padding-left: 20px; }
.sh-sources li { padding: 5px 0; }
@media (max-width: 900px) {
  .sh-layout { grid-template-columns: minmax(0, 1fr); gap: 20px; margin-top: 20px; }
  .sh-sidebar { position: static; }
  .sh-toc { padding: 20px; }
  .sh-toc ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; }
  .sh-note { display: none; }
}
@media (max-width: 540px) {
  .sh-preview { padding: 12px 14px; font-size: 12px; }
  .sh-hero { border-radius: 18px; padding: 25px 20px; }
  .tremml-selfhelp .sh-intro p { font-size: 16px; line-height: 1.75; }
  .sh-meta { font-size: 12px; margin-top: 20px; }
  .sh-toc ol { grid-template-columns: minmax(0, 1fr); }
  .sh-toc li { padding: 10px 0; }
  .sh-section { padding: 24px 20px; border-radius: 16px; }
  .tremml-selfhelp h2 { font-size: 22px; }
  .tremml-selfhelp h3 { font-size: 18px; }
  .sh-sources { padding: 18px 20px; }
}
@media print {
  .sh-sidebar, .sh-preview { display: none; }
  .sh-layout { display: block; }
  .tremml-selfhelp, .tremml-selfhelp p, .tremml-selfhelp h1, .tremml-selfhelp h2, .tremml-selfhelp h3 { color: #111; }
  .sh-section, .sh-hero { background: #fff; box-shadow: none; }
}
