
    :root {
      --navy: #1A2E44; --navy-mid: #22384F; --teal: #4A9E7F; --teal-light: #6FBF9B;
      --sand: #F4F1EA; --sand-dark: #E5DECF; --white: #FCFBF9; --gray: #5B6B7A;
      --text: #243441; --serif: 'Source Serif 4', Georgia, serif;
      --sans: 'Libre Franklin', system-ui, -apple-system, sans-serif;
      --red: #B5493B; --red-bg: #FBF0EE;
    }
    * { margin:0; padding:0; box-sizing:border-box; }
    html { scroll-behavior: smooth; }
    body { font-family: var(--sans); color: var(--text); background: var(--white); line-height:1.6; }

    /* NAV */
    nav { position: sticky; top:0; z-index:100; background: var(--navy); display:flex; justify-content:space-between; align-items:center; padding: 1rem 8%; }
    .nav-brand { font-family: var(--sans); font-size:1.1rem; font-weight:700; color:var(--white); text-decoration:none; }
    .nav-brand span { color: var(--teal-light); }
    .nav-back { font-size:0.9rem; color: rgba(255,255,255,0.75); text-decoration:none; }
    .nav-back:hover { color: var(--teal-light); }

    /* HERO */
    .guide-hero { background: var(--navy); color: var(--white); padding: 3.5rem 8% 4rem; }
    .guide-hero .eyebrow { font-size:0.85rem; font-weight:600; color: var(--teal-light); margin-bottom:0.8rem; }
    .guide-hero h1 { font-family: var(--sans); font-weight:800; font-size: clamp(2rem,4vw,3.2rem); line-height:1.1; letter-spacing:-0.02em; margin-bottom:1rem; max-width:800px; }
    .guide-hero p { font-family: var(--serif); font-size:1.1rem; line-height:1.7; color: rgba(255,255,255,0.72); max-width:640px; }

    /* DISCLAIMER */
    .disclaimer { background: var(--sand); border-left:3px solid var(--teal); padding:1.2rem 1.5rem; margin: 2.5rem 8%; font-family:var(--serif); font-size:0.95rem; font-style:italic; color:#4a5d6e; line-height:1.7; }

    /* LAYOUT */
    .guide-layout { display:grid; grid-template-columns: 260px 1fr; gap: 3rem; padding: 1rem 8% 5rem; max-width:1400px; margin:0 auto; }
    .toc { position: sticky; top:90px; align-self:start; max-height: calc(100vh - 110px); overflow-y:auto; padding-right:1rem; }
    .toc-title { font-size:0.78rem; font-weight:700; letter-spacing:0.05em; text-transform:uppercase; color:var(--gray); margin-bottom:0.8rem; }
    .toc a { display:block; font-size:0.9rem; color:var(--text); text-decoration:none; padding:0.35rem 0; border-left:2px solid transparent; padding-left:0.8rem; margin-left:-0.8rem; transition:all 0.15s; }
    .toc a:hover { color: var(--teal); border-left-color: var(--teal); }
    .toc a.sub { font-size:0.84rem; padding-left:1.6rem; color:var(--gray); }
    .toc-section { font-size:0.72rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:var(--teal); margin:1.2rem 0 0.4rem; }

    /* CONTENT */
    .content { min-width:0; max-width:760px; }
    .content h2 { font-family:var(--sans); font-weight:800; font-size: clamp(1.6rem,2.6vw,2.2rem); color:var(--navy); line-height:1.15; letter-spacing:-0.01em; margin: 3rem 0 1.2rem; padding-top:1rem; }
    .content h2:first-child { margin-top:0; }
    .content h3 { font-family:var(--sans); font-weight:700; font-size:1.3rem; color:var(--navy); margin:2.2rem 0 0.6rem; }
    .content h4 { font-family:var(--sans); font-weight:700; font-size:1rem; color:var(--teal); margin:1.4rem 0 0.4rem; letter-spacing:0.01em; }
    .content p { font-family:var(--serif); font-size:1.05rem; line-height:1.8; color:var(--text); margin-bottom:1.1rem; }
    .content ul, .content ol { font-family:var(--serif); font-size:1.05rem; line-height:1.8; color:var(--text); margin:0 0 1.2rem 1.4rem; }
    .content li { margin-bottom:0.4rem; }
    .content strong { font-weight:700; color:var(--navy); font-family:var(--sans); font-size:0.97em; }
    .content .lead { font-size:1.15rem; color:#3a4a57; }

    .condition-block { border-top:1px solid var(--sand-dark); padding-top:2rem; margin-top:2.5rem; }
    .condition-block h2 { color:var(--navy); margin-top:0; }
    .condition-num { display:inline-block; font-family:var(--sans); font-weight:800; font-size:0.9rem; color:var(--teal); background:var(--sand); border-radius:50%; width:2rem; height:2rem; line-height:2rem; text-align:center; margin-right:0.6rem; vertical-align:middle; }

    .callout { background: var(--sand); border-radius:4px; padding:1.3rem 1.5rem; margin:1.5rem 0; }
    .callout.hope { border-left:3px solid var(--teal); }
    .callout p:last-child { margin-bottom:0; }
    .callout .callout-label { font-family:var(--sans); font-weight:700; font-size:0.85rem; color:var(--teal); display:block; margin-bottom:0.4rem; }

    .warning-box { background: var(--red-bg); border-left:3px solid var(--red); border-radius:4px; padding:1.1rem 1.4rem; margin:1.3rem 0; }
    .warning-box .warning-label { font-family:var(--sans); font-weight:700; font-size:0.85rem; color:var(--red); display:block; margin-bottom:0.3rem; }
    .warning-box p { margin-bottom:0; font-size:0.98rem; }

    /* EMERGENCY SECTION */
    .emergency { background: var(--navy); color:var(--white); border-radius:6px; padding:2.5rem; margin:3rem 0; }
    .emergency h2 { color:var(--white); margin-top:0; }
    .emergency p, .emergency li { color: rgba(255,255,255,0.85); }
    .emergency strong { color:var(--teal-light); }
    .emergency .urgent { background: rgba(181,73,59,0.25); border-left:3px solid var(--red); padding:1.2rem 1.4rem; border-radius:4px; margin:1.2rem 0; }
    .emergency .urgent strong { color:#ff9b8a; }

    /* CTA */
    .guide-cta { background: var(--sand); text-align:center; padding: 4rem 8%; }
    .guide-cta h2 { font-family:var(--sans); font-weight:800; font-size:clamp(1.6rem,3vw,2.4rem); color:var(--navy); margin-bottom:0.8rem; }
    .guide-cta p { font-family:var(--serif); font-size:1.1rem; color:#4a5d6e; max-width:560px; margin:0 auto 2rem; }
    .btn-primary { display:inline-block; background:var(--teal); color:var(--white); padding:0.9rem 2rem; border-radius:3px; text-decoration:none; font-weight:600; font-size:0.95rem; }
    .btn-primary:hover { background: #3d8469; }

    footer { background:var(--navy); color:rgba(255,255,255,0.6); padding:2.5rem 8%; font-size:0.85rem; text-align:center; }
    footer a { color: var(--teal-light); text-decoration:none; }

    @media (max-width: 900px){
      .guide-layout { grid-template-columns: 1fr; }
      .toc { position:static; max-height:none; border-bottom:1px solid var(--sand-dark); padding-bottom:1.5rem; margin-bottom:1rem; }
    }
  
/* ===== Shared additions for new pages ===== */
.site-nav { gap: 1rem; flex-wrap: wrap; }
.nav-links2 { display:flex; align-items:center; gap:1.4rem; flex-wrap:wrap; }
.nav-links2 a { font-size:0.88rem; color:rgba(255,255,255,0.82); text-decoration:none; }
.nav-links2 a:hover { color: var(--teal-light); }
.nav-links2 a.nav-cta2 { background: var(--teal); color: var(--white); padding:0.5rem 1rem; border-radius:3px; font-weight:600; }
.crumbs { font-size:0.82rem; color:var(--gray); padding:0.9rem 8%; background:var(--white); border-bottom:1px solid var(--sand-dark); }
.crumbs a { color:var(--teal); text-decoration:none; }
.byline-wrap { padding: 1.4rem 8% 0; max-width:1400px; margin:0 auto; }
.byline { font-size:0.92rem; color:var(--text); border-left:3px solid var(--teal); padding:0.2rem 0 0.2rem 0.9rem; }
.byline a { color:var(--navy); font-weight:700; text-decoration:none; }
.byline span { color:var(--gray); }
.guide-layout.single { grid-template-columns: 1fr; }
.guide-layout.single .content { margin: 0 auto; }
.content a { color: var(--teal); }
sup.cite { font-size:0.68em; line-height:0; margin-left:1px; }
sup.cite a { text-decoration:none; font-family:var(--sans); font-weight:700; }
.table-wrap { overflow-x:auto; margin:1.4rem 0 1.8rem; border:1px solid var(--sand-dark); border-radius:4px; }
.table-wrap table { border-collapse:collapse; width:100%; min-width:640px; font-size:0.9rem; }
.table-wrap th { background:var(--navy); color:var(--white); text-align:left; padding:0.7rem 0.8rem; font-family:var(--sans); font-weight:700; font-size:0.85rem; vertical-align:bottom; }
.table-wrap td { padding:0.7rem 0.8rem; border-top:1px solid var(--sand-dark); vertical-align:top; font-family:var(--sans); line-height:1.55; color:var(--text); }
.table-wrap tr:nth-child(even) td { background:var(--sand); }
.table-wrap td strong { font-size:1em; }
.sources { border-top:1px solid var(--sand-dark); margin-top:3rem; padding-top:1.5rem; }
.sources h2 { font-size:1.3rem !important; margin:0 0 1rem !important; }
.sources ol { font-family:var(--sans) !important; font-size:0.86rem !important; line-height:1.6 !important; color:var(--gray) !important; }
.sources li { margin-bottom:0.5rem; }
.sources a { color:var(--teal); font-weight:600; white-space:nowrap; }
.card-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(230px,1fr)); gap:1rem; margin:1.4rem 0 2rem; }
.link-card { display:block; background:var(--white); border:1px solid var(--sand-dark); border-top:2px solid var(--teal); padding:1.2rem 1.3rem; text-decoration:none; transition:border-color .15s; }
.link-card:hover { border-color: var(--teal); }
.link-card .lc-title { font-family:var(--sans); font-weight:700; color:var(--navy); font-size:1.02rem; margin-bottom:0.35rem; }
.link-card .lc-desc { font-family:var(--sans); font-size:0.86rem; color:#4a5a67; line-height:1.55; }
.related { background:var(--sand); border-radius:4px; padding:1.3rem 1.5rem; margin:2rem 0; }
.related h3 { margin:0 0 0.6rem !important; font-size:1.05rem !important; }
.related ul { margin-bottom:0 !important; }
.checklist li { margin-bottom:0.55rem; }
footer .footer-links2 a { color: inherit; }
footer a { color: inherit; }
@media (max-width: 900px) {
  .nav-links2 a:not(.nav-cta2) { display:none; }
  .guide-layout { grid-template-columns: 1fr !important; }
  .toc { position: static; max-height:none; border-bottom:1px solid var(--sand-dark); padding-bottom:1rem; }
}

ul.pubs { list-style:none; margin-left:0 !important; }
ul.pubs li { margin-bottom:1rem; font-family:var(--sans); font-size:0.98rem; line-height:1.5; }
ul.pubs li a { color:var(--navy); text-decoration:none; border-bottom:1px solid var(--teal); }
.pub-meta2 { font-size:0.86rem; color:var(--gray); }
details summary { cursor:pointer; font-family:var(--sans); font-weight:600; color:var(--teal); margin-bottom:1rem; }
