/* ============================================================
   Rockwell Health - "Editorial" · Accepted Insurances (interior page)
   Page-only section styles. Reuses the shared design system
   (../../style.css, READ-ONLY): :root tokens, base type, header,
   footer, .ed-wrap, .ed-btn*, .ed-textlink, focus ring, reduced
   motion. Everything below is namespaced ed-in- so it never
   collides with shared components or sibling pages.
   Brand: navy #262168 / red #e0271c only (+ warm neutrals).

   Spine:
     1 · open      type-led editorial masthead
     2 · carriers  even logo-wall grid + hairline coverage note
     3 · close     light asymmetric closer (deliberately not navy)
   ============================================================ */

/* ============================================================
   1 · Masthead - type-led editorial opening
   Hanging department label with a red rule, an oversized Spectral
   statement capped to a tight measure, and one supporting lede.
   ============================================================ */
.ed-in-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-in-open-in{
  padding-block:clamp(60px,9vw,120px) clamp(44px,6vw,78px);
}
.ed-in-open-label{
  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(22px,2.6vw,32px);
}
.ed-in-open-label::before{
  content:""; width:34px; height:1.5px; background:var(--red); flex:none;
}
.ed-in-open h1{
  font-size:clamp(2.5rem,6vw,4.8rem);
  line-height:1.02; letter-spacing:-.028em; color:var(--navy);
  max-width:16ch;
}
.ed-in-open h1 em{ font-style:italic; font-weight:600; color:var(--red); }
.ed-in-open-lede{
  margin-top:clamp(26px,3.4vw,40px); max-width:58ch;
  font-size:clamp(1.1rem,1.35vw,1.3rem);
  line-height:1.6; color:var(--body); text-wrap:pretty;
}

/* ============================================================
   2 · Carrier index - an even logo wall
   Uniform white cards. Each logo sits in a FIXED-height well and is
   capped in both axes, so tall marks and long wordmarks share one
   optical band and the wall reads even. A small label sits beneath.
   ============================================================ */
.ed-in-carriers{
  padding-block:var(--sec);
  background:var(--paper);
}
.ed-in-grid{
  display:grid; grid-template-columns:repeat(5,1fr);
  gap:clamp(14px,1.5vw,22px);
}
.ed-in-card{
  display:flex; flex-direction:column; align-items:center;
  gap:clamp(13px,1.3vw,17px);
  padding:clamp(22px,2.2vw,30px) clamp(12px,1.3vw,18px);
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r); box-shadow:var(--sh-1);
  transition:transform var(--fast) var(--ease),
             box-shadow var(--fast) var(--ease),
             border-color var(--fast) var(--ease);
}
.ed-in-card:hover{
  transform:translateY(-3px); box-shadow:var(--sh-2); border-color:var(--line-2);
}
/* the well: one shared vertical band for every logo, contained on
   both axes so nothing overflows and no logo towers over its neighbours */
.ed-in-logo{
  display:grid; place-items:center;
  width:100%; height:60px;
}
.ed-in-logo img{
  max-height:52px; max-width:100%;
  width:auto; height:auto;
  object-fit:contain;
}
/* square symbols under-fill an equal-width cell, and some carry internal
   whitespace in their source art; a slightly taller box lifts their visible
   mark to sit level with the wide wordmarks around them */
.ed-in-logo--lg img{ max-height:58px; }
.ed-in-name{
  font-family:"Figtree",sans-serif; font-weight:600;
  font-size:.82rem; letter-spacing:.005em; line-height:1.3;
  color:var(--body-2); text-align:center; text-wrap:balance;
}

/* coverage note - quiet, hangs from a hairline rule */
.ed-in-note-block{
  margin-top:clamp(32px,3.6vw,48px);
  padding-top:clamp(22px,2.4vw,30px);
  border-top:1px solid var(--line-2);
}
.ed-in-note{
  max-width:66ch;
  font-family:"Spectral",serif; font-style:italic; font-weight:400;
  font-size:clamp(1.04rem,1.2vw,1.2rem); line-height:1.5;
  letter-spacing:-.004em; color:var(--body-2); text-wrap:pretty;
}
.ed-in-phones{
  margin-top:clamp(16px,1.8vw,22px);
  display:flex; flex-wrap:wrap; align-items:center; gap:.5em clamp(14px,1.6vw,22px);
}
.ed-in-phone{ display:inline-flex; align-items:center; gap:.7em; }
.ed-in-phone-k{
  display:inline-flex; align-items:center; gap:.6em;
  font-family:"Figtree",sans-serif; font-weight:600;
  font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--navy);
}
.ed-in-phone-k::before{
  content:""; width:7px; height:7px; flex:none;
  border-radius:var(--r-pill); background:var(--red);
}
.ed-in-phone a{
  font-family:"Spectral",serif; font-weight:600; font-size:1.18rem;
  letter-spacing:-.01em; color:var(--navy); border-radius:var(--r-xs);
  transition:color var(--fast) var(--ease);
}
.ed-in-phone a:hover{ color:var(--red-ink); }
.ed-in-phone-sep{ color:var(--line-2); }

@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .ed-in-card{
      animation:ed-rise .6s var(--ease) both;
      animation-timeline:view(); animation-range:entry 0% cover 18%;
    }
  }
}

/* ============================================================
   3 · Closing CTA - light asymmetric band (deliberately not navy)
   Copy left, a stacked primary action + contact textlink right,
   on the shared warm card surface.
   ============================================================ */
.ed-in-close{
  padding-block:clamp(56px,7vw,104px);
  background:var(--paper-2);
  border-top:1px solid var(--line);
}
.ed-in-close-in{
  display:grid; grid-template-columns:1.25fr auto;
  align-items:center; gap:clamp(28px,4vw,56px);
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-lg); box-shadow:var(--sh-2);
  padding:clamp(30px,4vw,56px);
}
.ed-in-close-rule{
  display:block; width:38px; height:2px; border-radius:2px;
  background:var(--red); margin-bottom:clamp(16px,1.8vw,22px);
}
.ed-in-close-copy h2{
  font-size:clamp(1.9rem,3.2vw,2.7rem); font-weight:600;
  letter-spacing:-.022em; line-height:1.06; color:var(--navy);
}
.ed-in-close-copy p{
  margin-top:14px; max-width:52ch;
  font-size:clamp(1.04rem,1.2vw,1.16rem); line-height:1.58; color:var(--body-2);
}
.ed-in-close-actions{
  display:flex; flex-direction:column; align-items:flex-start; gap:clamp(16px,1.8vw,20px);
}

/* ============================================================
   Responsive - 1024 (tablet): grid to 3 columns, closer stacks
   ============================================================ */
@media (max-width:1024px){
  .ed-in-grid{ grid-template-columns:repeat(3,1fr); }
  .ed-in-close-in{ grid-template-columns:1fr; gap:clamp(22px,5vw,30px); }
  .ed-in-close-actions{ align-items:stretch; }
  .ed-in-close-actions .ed-btn{ justify-content:center; }
  .ed-in-close-actions .ed-textlink{ justify-content:center; }
}

/* ============================================================
   Responsive - 560 (phone, 390 target): grid to 2 columns
   ============================================================ */
@media (max-width:560px){
  .ed-in-open h1{ font-size:clamp(2.1rem,10vw,2.9rem); max-width:none; }
  .ed-in-grid{ grid-template-columns:repeat(2,1fr); gap:12px; }
  .ed-in-logo{ height:56px; }
  .ed-in-logo img{ max-height:48px; }
  .ed-in-logo--lg img{ max-height:54px; }
}

/* ============================================================
   Reduced motion - neutralize this page's reveals defensively
   ============================================================ */
@media (prefers-reduced-motion:reduce){
  .ed-in-card{ animation:none; opacity:1; transform:none; }
  .ed-in-card:hover{ transform:none; }
}
