/* ============================================================
   Rockwell Health - "Editorial" · Legal & compliance pages
   (Privacy Policy, Terms & Conditions, Notice of Privacy
   Practices). Page-only section styles layered on the shared
   editorial system (../style.css, READ-ONLY): :root tokens,
   base type, header, footer, .ed-wrap, .ed-btn*, .ed-textlink,
   .ed-close* light closer, focus ring, reduced motion.
   Everything below is namespaced ed-lg- so it never collides
   with shared components or sibling pages. One identical sheet
   is shared by all three legal pages.
   Brand: navy #262168 / red #e0271c only (+ warm neutrals).

   Spine:
     1 · open   type-led interior masthead (kicker + H1 + lede)
     2 · body   one readable measure (~68ch) of ruled sections,
                 with a quiet "On this page" rail (sticky on
                 desktop, a card on top when the layout stacks)
     3 · close   shared light closer (.ed-close)
   ============================================================ */

/* ============================================================
   1 · Masthead - type-led editorial opening, left-hung to the
   grid gutter so its left edge lines up with the reading column.
   ============================================================ */
.ed-lg-open{
  background:
    radial-gradient(120% 140% at 88% -10%, #fffdf9 0%, rgba(255,253,249,0) 46%),
    linear-gradient(180deg, var(--paper) 0%, var(--paper) 60%, var(--paper-2) 100%);
  border-bottom:1px solid var(--line);
}
.ed-lg-open-in{
  max-width:68ch;
  padding-block:clamp(56px,8vw,110px) clamp(34px,5vw,60px);
}
.ed-lg-kicker{
  display:flex; align-items:center; gap:.85em;
  font-family:"Figtree",sans-serif; font-weight:600;
  font-size:.74rem; letter-spacing:.2em; text-transform:uppercase;
  color:var(--red-ink); margin-bottom:clamp(20px,2.4vw,30px);
}
.ed-lg-kicker::before{
  content:""; width:34px; height:1.5px; background:var(--red); flex:none;
}
.ed-lg-open h1{
  font-size:clamp(2.4rem,5vw,4rem);
  line-height:1.04; letter-spacing:-.026em; color:var(--navy);
}
.ed-lg-lede{
  margin-top:clamp(20px,2.6vw,30px); max-width:62ch;
  font-size:clamp(1.08rem,1.3vw,1.28rem);
  line-height:1.6; color:var(--body); text-wrap:pretty;
}
.ed-lg-meta{
  margin-top:clamp(20px,2.4vw,28px);
  font-family:"Figtree",sans-serif; font-size:.88rem; color:var(--body-2);
}
.ed-lg-meta strong{ color:var(--navy); font-weight:600; }

/* ============================================================
   2 · Body - reading column + "On this page" rail.
   DOM order is [rail, prose] so the rail hangs to the RIGHT on
   desktop (explicit grid placement) yet sits on TOP when the
   layout stacks (source order). The reading column is capped to
   a comfortable ~68ch measure.
   ============================================================ */
.ed-lg-body{
  padding-block:clamp(46px,6.5vw,90px);
  background:var(--paper);
}
.ed-lg-body-in{
  display:grid;
  grid-template-columns:minmax(0,68ch) minmax(0,15rem);
  gap:clamp(32px,5vw,74px);
  align-items:start;
}

/* --- reading column --- */
.ed-lg-prose{ grid-column:1; grid-row:1; min-width:0; }
.ed-lg-prose > :first-child{ margin-top:0; }

/* template / working-draft flag - uses the house "kicker" motif
   (short red rule + small-caps label), NOT a side-tab accent
   border, to flag the template clearly while staying on-brand */
.ed-lg-draft{
  margin:0 0 clamp(28px,3.4vw,42px);
  padding:clamp(16px,1.9vw,22px) clamp(18px,2vw,24px);
  background:var(--card);
  border:1px solid var(--line-2);
  border-radius:var(--r-sm);
  box-shadow:var(--sh-1);
}
.ed-lg-draft-tag{
  display:flex; align-items:center; gap:.7em; margin:0 0 9px;
  font-family:"Figtree",sans-serif; font-weight:700;
  font-size:.7rem; letter-spacing:.16em; text-transform:uppercase;
  color:var(--red-ink);
}
.ed-lg-draft-tag::before{
  content:""; width:26px; height:2px; border-radius:2px;
  background:var(--red); flex:none;
}
.ed-lg-draft-note{
  margin:0;
  font-family:"Spectral",serif; font-style:italic; font-weight:500;
  font-size:clamp(1rem,1.05vw,1.1rem); line-height:1.5;
  color:var(--body); text-wrap:pretty;
}

/* HIPAA required statement (Notice of Privacy Practices only) */
.ed-lg-statement{
  margin:0 0 clamp(30px,3.6vw,44px);
  padding:clamp(20px,2.4vw,30px) clamp(22px,2.6vw,32px);
  background:
    radial-gradient(130% 130% at 100% 0%, #fffdf9 0%, rgba(255,253,249,0) 60%),
    var(--paper-2);
  border:1px solid var(--line-2);
  border-radius:var(--r);
  box-shadow:var(--sh-1);
}
.ed-lg-statement p{
  margin:0; max-width:56ch;
  font-family:"Spectral",serif; font-weight:500;
  font-size:clamp(1.14rem,1.5vw,1.42rem); line-height:1.4;
  letter-spacing:-.008em; color:var(--navy); text-wrap:pretty;
}

/* sections - hairline-ruled between, anchor offset for sticky header */
.ed-lg-sec{ scroll-margin-top:96px; }
.ed-lg-sec + .ed-lg-sec{
  margin-top:clamp(30px,3.6vw,46px);
  padding-top:clamp(30px,3.6vw,46px);
  border-top:1px solid var(--line);
}
.ed-lg-prose h2{
  font-size:clamp(1.42rem,2.1vw,1.85rem); font-weight:600;
  letter-spacing:-.014em; line-height:1.18; color:var(--navy);
  text-wrap:balance;
}
.ed-lg-prose h3{
  margin-top:clamp(20px,2.2vw,28px);
  font-size:clamp(1.1rem,1.35vw,1.26rem); font-weight:600;
  letter-spacing:-.008em; line-height:1.28; color:var(--navy);
}
.ed-lg-prose p{
  margin-top:1.05em; max-width:68ch;
  font-size:1.02rem; line-height:1.72; color:var(--body); text-wrap:pretty;
}
.ed-lg-prose h2 + p,
.ed-lg-prose h3 + p{ margin-top:.8em; }
.ed-lg-prose ul,
.ed-lg-prose ol{
  margin:1.05em 0 0; padding-left:1.5em; max-width:68ch;
}
.ed-lg-prose ul{ list-style:disc; }
.ed-lg-prose ol{ list-style:decimal; }
.ed-lg-prose li{ margin-top:.5em; padding-left:.15em; line-height:1.66; }
.ed-lg-prose li:first-child{ margin-top:.35em; }
.ed-lg-prose ul li::marker{ color:var(--red); }
.ed-lg-prose ol li::marker{ color:var(--navy); font-weight:600; }
.ed-lg-prose strong{ color:var(--navy); font-weight:700; }
.ed-lg-prose em{ font-style:italic; }
.ed-lg-prose a{
  color:var(--red-ink); font-weight:600;
  text-decoration:underline; text-decoration-thickness:1px;
  text-underline-offset:2px; border-radius:var(--r-xs);
  transition:color var(--fast) var(--ease);
}
.ed-lg-prose a:hover{ color:var(--navy); }

/* a compact two-up contact block for the closing "Contact" section */
.ed-lg-contact{
  margin-top:1.2em;
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(16px,2vw,24px); max-width:68ch;
}
.ed-lg-contact div{
  padding:clamp(16px,1.8vw,20px) clamp(18px,2vw,22px);
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-sm); box-shadow:var(--sh-1);
}
.ed-lg-contact-k{
  font-family:"Figtree",sans-serif; font-weight:600;
  font-size:.72rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--navy); margin:0 0 8px;
  display:flex; align-items:center; gap:8px;
}
.ed-lg-contact-k::before{
  content:""; width:7px; height:7px; border-radius:var(--r-pill);
  background:var(--red); flex:none;
}
.ed-lg-contact p{ margin:0; font-size:.98rem; line-height:1.55; color:var(--body); }
.ed-lg-contact a{ font-weight:600; }

/* --- "On this page" rail --- */
.ed-lg-toc{
  grid-column:2; grid-row:1;
  position:sticky; top:96px; align-self:start;
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r); box-shadow:var(--sh-1);
  padding:clamp(16px,1.5vw,22px) clamp(16px,1.5vw,22px) clamp(10px,1.1vw,14px);
}
.ed-lg-toc-h{
  font-family:"Figtree",sans-serif; font-weight:600;
  font-size:.72rem; letter-spacing:.16em; text-transform:uppercase;
  color:var(--navy); margin:0 0 12px;
  padding-bottom:12px; border-bottom:1px solid var(--line);
}
.ed-lg-toc ol{ list-style:none; margin:0; padding:0; }
.ed-lg-toc a{
  display:block;
  font-family:"Figtree",sans-serif; font-size:.9rem; line-height:1.4;
  color:var(--body-2); padding:7px 0; border-radius:var(--r-xs);
  transition:color var(--fast) var(--ease);
}
.ed-lg-toc a:hover{ color:var(--red-ink); }

/* ============================================================
   Responsive - 1024 (tablet): single column; the rail becomes a
   card on top (source order), non-sticky, full reading width.
   ============================================================ */
@media (max-width:1024px){
  .ed-lg-body-in{ grid-template-columns:minmax(0,68ch); gap:clamp(26px,4vw,38px); }
  .ed-lg-prose{ grid-column:1; }
  .ed-lg-toc{ grid-column:1; grid-row:auto; position:static; max-width:68ch; }
}

/* ============================================================
   Responsive - 560 (phone, 390 target)
   ============================================================ */
@media (max-width:560px){
  .ed-lg-open h1{ font-size:clamp(2.1rem,10vw,2.7rem); }
  .ed-lg-contact{ grid-template-columns:1fr; }
}

/* ============================================================
   Reduced motion - the shared sheet neutralizes transitions
   globally; this is a defensive no-op for the link hovers above.
   ============================================================ */
@media (prefers-reduced-motion:reduce){
  .ed-lg-prose a,.ed-lg-toc a{ transition:none; }
}
