/* ================================================================
   RANK RESCUE 2026 — GLOBAL LAYER (loads on every page)
   Red / White / Black editorial system. John-approved 2026-09-05.
   Contains: brand tokens, site header + footer, inner-page remap
   of legacy rr-brand.css variables (fonts + orange -> red).
   ================================================================ */
:root{
  --rr-red:#D6001C; --rr-red-dark:#A80016; --rr-black:#111114;
  --rr-off:#F6F5F2; --rr-white:#FFFFFF; --rr-muted:#6A6A70;
  --rr-rule:#E2E0DB; --rr-rule-dark:#2A2A2E;
  --rr-disp:'Archivo',sans-serif; --rr-mono:'IBM Plex Mono',monospace;

  /* ---- legacy rr-brand.css remap (inner pages) ---- */
  --f-display:'Archivo',sans-serif;
  --f-sans:'Archivo',sans-serif;
  --f-serif:'Archivo',sans-serif;
  --f-mono:'IBM Plex Mono',monospace;
  --orange-50:#FBEDEF; --orange-100:#F6C9CF; --orange-300:#E4536B;
  --orange-500:#D6001C; --orange-600:#B80018; --orange-700:#980014;
  --amber-300:#E4536B; --amber-500:#D6001C;
  --cream-50:#F7F6F3; --cream-100:#EFEEE9; --cream-200:#E5E3DC;
  --primary:#D6001C; --primary-hover:#B80018; --primary-deep:#980014;
  --bg-soft:#FBEDEF;
}

/* ---------- SITE HEADER (identical on every page) ---------- */
.rrhd-wrap{position:sticky;top:0;z-index:500;background:var(--rr-white);border-bottom:1px solid var(--rr-rule)}
.rrhd{max-width:1200px;margin:0 auto;padding-inline:28px;display:flex;align-items:center;gap:14px;height:72px}
.rrhd .rrhd-mark{height:40px;width:40px;display:block}
.rrhd .rrhd-word{font-family:var(--rr-disp);font-variation-settings:'wdth' 122;font-weight:800;font-size:21px;letter-spacing:.02em;white-space:nowrap;color:var(--rr-black);text-decoration:none;line-height:1}
.rrhd .rrhd-word em{font-style:normal;color:var(--rr-red)}
.rrhd-nav{margin-left:auto;display:flex;align-items:center;gap:30px;font-family:var(--rr-disp);font-size:15px;font-weight:500}
.rrhd-nav a{color:var(--rr-black);text-decoration:none}
.rrhd-nav a:not(.rrhd-cta):hover{color:var(--rr-red)}
.rrhd-cta{display:inline-flex;align-items:center;background:var(--rr-red);color:#fff !important;font-weight:700;font-size:14px;padding:8px 18px;min-height:42px;transition:background .18s;border-radius:0}
.rrhd-cta:hover{background:var(--rr-red-dark)}
.rrhd-burger{display:none;margin-left:auto;background:none;border:0;width:44px;height:44px;cursor:pointer;position:relative;padding:0}
.rrhd-burger span{position:absolute;left:10px;right:10px;height:2px;background:var(--rr-black)}
.rrhd-burger span:nth-child(1){top:15px}.rrhd-burger span:nth-child(2){top:21px}.rrhd-burger span:nth-child(3){top:27px}
@media (max-width:860px){
  .rrhd-nav{display:none;position:fixed;inset:72px 0 auto 0;background:var(--rr-white);flex-direction:column;align-items:flex-start;padding:28px;gap:22px;border-bottom:1px solid var(--rr-rule);z-index:490}
  .rrhd-nav.open{display:flex}
  .rrhd-burger{display:block}
}

/* ---------- SITE FOOTER (identical on every page) ---------- */
.rrft{border-top:1px solid var(--rr-rule);background:var(--rr-white)}
.rrft-in{max-width:1200px;margin:0 auto;padding:34px 28px;display:flex;align-items:center;gap:26px;font-family:var(--rr-disp);font-size:14px;color:var(--rr-muted);flex-wrap:wrap}
.rrft-in img{height:26px;width:26px}
.rrft-links{margin-left:auto;display:flex;gap:22px}
.rrft a{color:var(--rr-muted);text-decoration:none}
.rrft a:hover{color:var(--rr-red)}

/* ---------- inner-page tidy-ups ---------- */
/* Kadence's own header/footer are replaced; belt-and-braces hide if they render */
body:not(.rr-fp2026) #masthead, body:not(.rr-fp2026) #colophon{display:none !important}
/* kill legacy motion-atelier noise + cursor spotlight if the old JS runs anywhere */
.rr-spotlight, .rr-noise, .rr-grain{display:none !important}
/* legacy serif italic accents -> upright display red */
body:not(.rr-fp2026) em.rr-serif, body:not(.rr-fp2026) .rr-italic-accent{font-style:normal;color:var(--rr-red)}

/* 2026-09-05 calm pass: retire the Motion Atelier layer on inner pages.
   - body::before = animated orange mesh, body::after = noise overlay: gone.
   - scroll-driven view() reveals hid content until scroll (and permanently in
     unsupported browsers/odd zoom states): timeline forced back to auto, so
     `animation: rr-reveal both` completes instantly and content is always visible. */
body:not(.rr-fp2026)::before, body:not(.rr-fp2026)::after{display:none !important;animation:none !important}
body:not(.rr-fp2026) .entry-content *{animation-timeline:auto !important}
