.rj-home{
  --navy:#062033;
  --navy2:#0F0F0F;
  --gold:#C8A96B;
  --gold-soft:#d8c193;
  --gold-deep:#9a8048;
  --cream:#F5F4F1;
  --paper:#FAFAF7;
  --ink:#0F0F0F;
  --ink-2:#1A1A1A;
  --ink-3:#6E6E73;
  --rule:rgba(15,15,15,.08);
  --rule-strong:rgba(15,15,15,.14);
  --shadow-soft:0 1px 2px rgba(15,15,15,.04), 0 14px 32px rgba(15,15,15,.06);
  --shadow-card:0 1px 2px rgba(15,15,15,.04), 0 20px 50px rgba(15,15,15,.08);
  --r-sm:6px;
  --r-md:12px;
  --r-lg:20px;
}

/* ============================================================
   PREMIUM HEADER — BESPOKE (`.rj-phd`, defined in home-body.html)
   The chrome header (`#masthead` / `.rjc-hdr`) carries a hard-coded NAVY
   (#062033) on its inner `.rjc-hdr__bar` from the cross-origin chrome CSS we
   cannot edit — it bled through every container-level ink override (and drove
   the navy mobile menu too). So we HIDE the chrome header on the front page
   and render a header we 100% control. Built straight from the footer .rj-pft
   DNA: ink ground, gold hairline on the lower edge, Cormorant wordmark +
   Cormorant-italic gold column headings, cream Inter links w/ gold hover,
   gold CTA pill. No navy anywhere, desktop or mobile.
   ============================================================ */

/* hide the old chrome header + its utility/sticky bars on the front page */
body.rj-home-steel #masthead,
body.rj-home-steel header.rjc-hdr,
body.rj-home-steel .elementor-location-header,
body.rj-home-steel .rjc-offers,
body.rj-home-steel .rjc-offer-bar,
body.rj-home-steel .rjc-stickybar{ display:none !important }

/* ---- shell ---------------------------------------------------------- */
.rj-phd{
  position:fixed; top:0; left:0; right:0; z-index:200;
  background:var(--ink);
  font-family:'Inter',sans-serif;
  transition:box-shadow .5s ease;
}
.rj-phd::after{           /* gold hairline, lower edge (footer carries it on top → bookend) */
  content:""; position:absolute; left:0; right:0; bottom:0; height:1px;
  background:linear-gradient(90deg, transparent, rgba(200,169,107,.5), transparent);
}
body.rj-home-steel.is-scrolled .rj-phd{ box-shadow:0 12px 40px rgba(15,15,15,.30) }

/* announcement strip */
.rj-phd__ann{
  text-align:center; padding:7px 16px;
  border-bottom:1px solid rgba(200,169,107,.16);
}
.rj-phd__ann a{
  color:var(--gold); text-decoration:none;
  font-size:.64rem; font-weight:600; letter-spacing:.26em; text-transform:uppercase;
}

/* bar */
.rj-phd__bar{
  position:relative;
  display:flex; align-items:center; gap:26px;
  max-width:1400px; margin:0 auto; padding:0 48px; height:66px;
}
@media(max-width:1280px){ .rj-phd__bar{ padding:0 24px; gap:16px } }

/* brand wordmark — the footer's .rj-pft__mark, scaled to the bar */
.rj-phd__brand{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-style:italic; font-weight:500;
  font-size:1.7rem; line-height:1; letter-spacing:-.01em;
  color:var(--cream); text-decoration:none; white-space:nowrap;
  transition:color .25s ease;
}
.rj-phd__brand:hover{ color:var(--gold) }
/* real logo (black-on-transparent PNG) inverted to read on the ink ground */
.rj-phd__brand{ display:inline-flex; align-items:center }
.rj-phd__brand img{
  display:block; height:38px; width:auto;
  filter:brightness(0) invert(1); opacity:.95; transition:opacity .25s ease;
}
.rj-phd__brand:hover img{ opacity:1 }
@media(max-width:1024px){ .rj-phd__brand img{ height:30px } }

/* nav + menu */
.rj-phd__nav{ margin-left:auto; display:flex; align-items:center }
.rj-phd__menu{ display:flex; align-items:center; gap:2px; list-style:none; margin:0; padding:0 }
.rj-phd__menu > li{ position:static; margin:0 }
.rj-phd__menu > li::before{ display:none }
.rj-phd__menu a,
.rj-phd__top{
  display:inline-flex; align-items:center; gap:7px;
  font-family:'Inter',sans-serif; font-size:.8rem; font-weight:400; letter-spacing:.05em;
  color:rgba(245,244,241,.88); text-decoration:none;
  padding:10px 12px; margin:0; background:none; border:0; cursor:pointer;
  transition:color .25s ease;
}
.rj-phd__menu > li > a:hover,
.rj-phd__top:hover,
.rj-phd__has:hover .rj-phd__top,
.rj-phd__has.is-open .rj-phd__top{ color:var(--gold) }
.rj-phd__car{
  width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-1px); transition:transform .3s ease;
}
.rj-phd__has:hover .rj-phd__car,
.rj-phd__has.is-open .rj-phd__car{ transform:rotate(-135deg) translateY(2px) }

/* mega dropdown — wide ink panel, footer column DNA */
.rj-mega{
  position:absolute; left:0; right:0; top:100%;
  background:var(--ink);
  border-top:1px solid rgba(200,169,107,.22);
  box-shadow:0 28px 60px rgba(0,0,0,.5);
  opacity:0; visibility:hidden; transform:translateY(8px);
  transition:opacity .3s ease, transform .3s ease, visibility .3s;
}
.rj-phd__has:hover > .rj-mega,
.rj-phd__has:focus-within > .rj-mega,
.rj-phd__has.is-open > .rj-mega{ opacity:1; visibility:visible; transform:none }
.rj-mega__grid{
  display:grid; grid-template-columns:repeat(5,1fr); gap:34px;
  max-width:1400px; margin:0 auto; padding:38px 48px;
}
.rj-mega--sm .rj-mega__grid{ grid-template-columns:repeat(3,minmax(0,260px)); max-width:1400px }
.rj-mega__col h4{
  font-family:'Cormorant Garamond',Georgia,serif; font-style:italic; font-weight:400;
  font-size:1.3rem; color:var(--gold); margin:0 0 18px; padding-bottom:12px;
  border-bottom:1px solid rgba(200,169,107,.22); letter-spacing:-.004em;
}
.rj-mega__col h4 a{ color:var(--gold); text-decoration:none }
.rj-mega__col h4 a:hover{ color:var(--gold-soft) }
.rj-mega__col ul{ list-style:none; margin:0; padding:0 }
.rj-mega__col li{ margin:0 0 11px; padding:0 }
.rj-mega__col li::before{ display:none }
.rj-mega__col ul a{
  display:inline; padding:0; color:rgba(245,244,241,.82); text-decoration:none;
  font-size:.86rem; font-weight:300; letter-spacing:.01em; transition:color .2s ease;
}
.rj-mega__col ul a:hover{ color:var(--gold) }
.rj-mega__all{
  display:inline-block; margin-top:16px; padding:0; color:var(--gold);
  font-size:.74rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase;
}

/* phone (bar) — Cormorant italic, like the footer phone */
.rj-phd__tel{
  font-family:'Cormorant Garamond',Georgia,serif; font-style:italic; font-weight:500;
  font-size:1.18rem; letter-spacing:.01em; color:var(--cream); text-decoration:none; white-space:nowrap;
  transition:color .25s ease;
}
.rj-phd__tel:hover{ color:var(--gold) }

/* CTA pill — gold, ink text (same as the footer/form submit) */
.rj-phd__cta{
  background:var(--gold); color:var(--ink); border:1px solid var(--gold); border-radius:980px;
  padding:11px 24px; white-space:nowrap;
  font-family:'Inter',sans-serif; font-size:.7rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  text-decoration:none; transition:background .35s ease, color .35s ease;
}
.rj-phd__cta:hover{ background:transparent; color:var(--gold) }

/* KILL the theme's navy button :focus/:active background (rgb(14,49,71)) inside the
   header — it was the last navy hiding on the focused accordion/dropdown toggles.
   Everything stays transparent in every state EXCEPT the gold CTA pill. */
.rj-phd a:not(.rj-phd__cta),
.rj-phd a:not(.rj-phd__cta):hover,
.rj-phd a:not(.rj-phd__cta):focus,
.rj-phd a:not(.rj-phd__cta):active,
.rj-phd button,
.rj-phd button:hover,
.rj-phd button:focus,
.rj-phd button:active{ background-color:transparent !important; box-shadow:none !important }
/* visible, on-brand keyboard focus ring */
.rj-phd a:focus-visible,
.rj-phd button:focus-visible{ outline:1px solid rgba(200,169,107,.65); outline-offset:3px }

/* drawer-only bits hidden on desktop */
.rj-phd__navfoot{ display:none }
.rj-phd__burger{ display:none }

/* the fixed header overlays the hero (hero stays full-bleed behind it) */
body.rj-home-steel .rj-hero{ margin-top:0 }

/* ---- mobile / tablet ------------------------------------------------ */
@media(max-width:1024px){
  .rj-phd__bar{ height:58px }
  .rj-phd__burger{
    display:inline-flex; flex-direction:column; justify-content:center; gap:5px;
    margin-left:auto; width:34px; height:34px; padding:6px; background:none; border:0; cursor:pointer;
  }
  .rj-phd__burger span{ display:block; height:1.5px; width:100%; background:var(--cream); transition:transform .3s ease, opacity .3s ease }
  .rj-phd.is-open .rj-phd__burger span:nth-child(1){ transform:translateY(6.5px) rotate(45deg) }
  .rj-phd.is-open .rj-phd__burger span:nth-child(2){ opacity:0 }
  .rj-phd.is-open .rj-phd__burger span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg) }

  .rj-phd__bar > .rj-phd__tel,
  .rj-phd__bar > .rj-phd__cta{ display:none }

  .rj-phd__nav{
    position:fixed; top:0; right:0; margin:0;
    width:min(400px,88vw); height:100vh; height:100dvh;
    background:var(--ink); border-left:1px solid rgba(200,169,107,.22);
    flex-direction:column; align-items:stretch;
    padding:84px 30px 40px; overflow-y:auto;
    transform:translateX(100%); transition:transform .45s cubic-bezier(.16,1,.3,1);
  }
  .rj-phd.is-open .rj-phd__nav{ transform:none }
  .rj-phd__menu{ flex-direction:column; align-items:stretch; gap:0; width:100% }
  .rj-phd__menu > li{ border-bottom:1px solid rgba(245,244,241,.08) }
  .rj-phd__menu > li > a,
  .rj-phd__top{ width:100%; justify-content:space-between; padding:15px 2px; font-size:.95rem; color:var(--cream) }

  .rj-mega{
    position:static; opacity:1; visibility:visible; transform:none;
    background:none; border:0; box-shadow:none;
    max-height:0; overflow:hidden; transition:max-height .4s ease;
  }
  .rj-phd__has.is-open > .rj-mega{ max-height:6000px }
  .rj-mega__grid,
  .rj-mega--sm .rj-mega__grid{ grid-template-columns:1fr; gap:4px; max-width:none; margin:0; padding:4px 0 8px }
  .rj-mega__col{ display:flex; flex-direction:column }
  /* second-level category accordion: each category collapses to its heading */
  .rj-mega__col h4{ font-size:1.02rem; margin:0; padding:14px 2px; display:flex; align-items:flex-start; justify-content:space-between; gap:12px; cursor:pointer; border-bottom:1px solid rgba(245,244,241,.08) }
  .rj-mega__col h4::after{ content:""; flex:0 0 auto; width:8px; height:8px; margin:5px 2px 0 0; border-right:1.7px solid var(--gold); border-bottom:1.7px solid var(--gold); transform:rotate(45deg); transition:transform .3s ease; opacity:.8 }
  .rj-mega__col h4.rj-cat-open::after{ transform:rotate(-135deg) }
  .rj-mega__col > ul{ max-height:0; overflow:hidden; transition:max-height .4s ease; margin:0; padding:0 }
  .rj-mega__col h4.rj-cat-open + ul{ max-height:1600px; padding:6px 0 14px }
  .rj-mega__col li{ margin:0 0 11px }
  .rj-mega__col ul a{ font-size:.92rem }
  .rj-mega__all{ margin-top:10px }

  .rj-phd__navfoot{
    display:flex; flex-direction:column; gap:18px; align-items:flex-start;
    margin-top:26px; padding-top:24px; border-top:1px solid rgba(200,169,107,.2);
  }
  .rj-phd__tel--drawer{ display:inline-block; font-size:1.45rem }
  .rj-phd__cta--drawer{ display:inline-block }

  .rj-phd::before{   /* scrim behind the drawer */
    content:""; position:fixed; inset:0; background:rgba(15,15,15,.55);
    opacity:0; visibility:hidden; transition:opacity .4s ease, visibility .4s; z-index:-1;
  }
  .rj-phd.is-open::before{ opacity:1; visibility:visible }
}



/* ===== rj-phd GLOBAL HEADER — additions (off-home) ===== */
header.rjc-hdr,#masthead,.elementor-location-header{display:none!important}
.rj-phd-mount{position:relative}
.rj-phd *{box-sizing:border-box}


/* ===== R6 white-header parity with homepage (2026-06-04) =====
   Ports the home-steel.css white-header treatment so off-home pages match the homepage. */
.rj-home{ --blue-tint:#CDDEEA; --blue:#3E6E8E; }
.rj-phd { background:#FFFFFF !important }
.rj-phd::after { background:linear-gradient(90deg, transparent, var(--blue-tint), transparent) !important }
.rj-phd__ann { border-bottom-color:var(--blue-tint) !important }
.rj-phd__ann a { color:var(--blue) !important }
.rj-phd__brand img { filter:none !important }
.rj-phd__menu a, .rj-phd__top { color:var(--ink) !important }
.rj-phd__menu > li > a:hover, .rj-phd__top:hover, .rj-phd__has:hover .rj-phd__top, .rj-phd__has.is-open .rj-phd__top { color:var(--blue) !important }
.rj-phd__tel { color:var(--ink) !important }
.rj-phd__tel:hover { color:var(--blue) !important }
.rj-phd__burger span { background:var(--ink) !important }
.rj-phd__nav { background:#FFFFFF !important; border-left-color:var(--blue-tint) !important }
.rj-phd__menu > li { border-bottom-color:var(--rule) !important }
.rj-phd__navfoot { border-top-color:var(--blue-tint) !important }
.rj-phd::before { background:rgba(27,42,51,.40) !important }

/* --- homepage header/mega theme synced for all pages --- */
/* HEADER (.rj-phd) → solid white, black logo, ink/steel nav, steel hairline */
.rj-phd{background:#FFFFFF !important}
.rj-phd__menu > li > a:hover,
.rj-phd__top:hover,
.rj-phd__has:hover .rj-phd__top,
.rj-phd__has.is-open .rj-phd__top{color:var(--blue) !important}
/* mega panel → white with steel headings */
.rj-mega{background:#FFFFFF !important; border-top-color:var(--blue-tint) !important; box-shadow:0 28px 60px rgba(27,42,51,.16) !important}
/* mobile drawer: mega is a flat accordion, NOT a floating white card */
@media(max-width:1024px){.rj-mega{background:none !important; box-shadow:none !important; border-top:0 !important}}
.rj-mega__col h4, .rj-mega__col h4 a{color:var(--blue) !important; border-bottom-color:var(--blue-tint) !important}
.rj-mega__col ul a{color:var(--ink-2) !important}
.rj-mega__col ul a:hover{color:var(--gold-deep) !important}
.rj-mega__all{color:var(--gold-deep) !important}
.rj-phd__menu > li > a, .rj-phd__top{color:var(--ink) !important}

/* ===== 2026-08-16 client menu refinement =====
   One straight (non-italic) face for every menu word, black links, dark-navy
   open/hover state — replaces the Cormorant-italic light-blue group headings. */
.rj-mega__col h4, .rj-mega__col h4 a{
  font-family:'Inter',sans-serif !important; font-style:normal !important;
  font-weight:600 !important; font-size:.95rem !important; letter-spacing:.02em;
  color:var(--ink) !important;
}
.rj-mega__col h4 a:hover{ color:var(--navy) !important }
.rj-mega__col h4.rj-cat-open, .rj-mega__col h4.rj-cat-open a{ color:var(--navy) !important }
@media(max-width:1024px){ .rj-mega__col h4{ font-size:.95rem !important; padding:14px 2px } }
.rj-phd__menu > li > a:hover,
.rj-phd__top:hover,
.rj-phd__has:hover .rj-phd__top,
.rj-phd__has.is-open .rj-phd__top{ color:var(--navy) !important }
.rj-mega__col ul a{ color:var(--ink-2) !important }
.rj-mega__col ul a:hover{ color:var(--navy) !important }
.rj-mega__all{ color:var(--navy) !important }
.rj-phd__ann a{ color:var(--navy) !important }
/* the phone number was the last italic-serif menu word — straighten it too */
.rj-phd__tel{ font-family:'Inter',sans-serif !important; font-style:normal !important; font-weight:600 !important; font-size:.92rem !important; letter-spacing:.02em }
.rj-phd__tel--drawer{ font-size:1.05rem !important }
