/* ============================================================
   Rockwell Health — "Our Care" page styles
   Builds ONLY this page's composition on top of the shared
   editorial system (../style.css owns tokens, header, footer,
   buttons, .ed-eyebrow, .ed-textlink, utilities, reduced-motion).
   Page sub-prefix: ed-oc-

   Art direction for this page (distinct from the homepage's
   metronome of eyebrow -> H2 -> lede -> grid):
   - one running folio/department label, not an eyebrow per section
   - a genuinely featured Primary Care spread (edge-bleeding photo,
     oversized standfirst, an indexed inclusion list)
   - specialties as a mixed set (one wide lead row + a tighter index)
   - navy used ONCE, deliberately, as an asymmetric thesis band
   - a LIGHT cream closer so two dark slabs never stack
   ============================================================ */

/* Local rhythm helpers (do not redefine shared :root tokens) */
.ed-oc-intro,
.ed-oc-primary,
.ed-oc-spec,
.ed-oc-connected,
.ed-oc-close{ --oc-bleed: clamp(22px,5vw,56px); }

/* ============================================================
   1 · Page intro — asymmetric masthead.
   Tall type column + a stacked photo pair (warm people plate on
   top, real Astoria interior as a small captioned plate offset
   beneath it). Reads as an editorial opening, not a hero.
   ============================================================ */
.ed-oc-intro{
  background:linear-gradient(180deg, var(--paper) 0%, var(--paper) 58%, var(--paper-2) 100%);
  border-bottom:1px solid var(--line);
}
.ed-oc-intro-in{
  display:grid;
  grid-template-columns:1.06fr .94fr;
  gap:clamp(34px,5.5vw,86px);
  align-items:center;
  padding-block:clamp(54px,7.5vw,108px);
}
.ed-oc-intro-copy{ max-width:38ch; }

/* running folio/department label — replaces the plain eyebrow.
   Spectral italic word + a short red rule; set once as the page's
   masthead mark rather than repeated above every section. */
.ed-oc-folio{
  display:flex; align-items:center; gap:.9em;
  font-family:"Spectral",serif; font-style:italic; font-weight:500;
  font-size:1.04rem; letter-spacing:0; color:var(--navy);
  margin-bottom:clamp(20px,2.2vw,28px);
}
.ed-oc-folio-mk{ width:34px; height:2px; background:var(--red); flex:none; border-radius:2px; }

.ed-oc-intro h1{
  font-size:clamp(2.5rem,4.8vw,4.05rem);
  line-height:1.03; letter-spacing:-.028em; color:var(--navy);
}
.ed-oc-intro h1 em{ font-style:italic; font-weight:600; color:var(--red); }
.ed-oc-intro-lede{
  margin-top:24px; max-width:48ch;
  font-size:clamp(1.08rem,1.3vw,1.24rem);
  line-height:1.62; color:var(--body-2);
}
.ed-oc-intro-cta{
  margin-top:36px;
  display:flex; flex-wrap:wrap; align-items:center;
  gap:18px clamp(20px,2.4vw,30px);
}

/* photo pair — primary plate carries, place plate overlaps lower-left */
.ed-oc-intro-art{
  position:relative;
  justify-self:end;
  width:100%; max-width:520px;
  padding-bottom:clamp(46px,5vw,64px);
  padding-left:clamp(36px,4vw,58px);
}
.ed-oc-intro-fig{ margin:0; position:relative; }
.ed-oc-intro-fig img{ width:100%; height:100%; object-fit:cover; display:block; }

.ed-oc-intro-fig--people{
  border-radius:var(--r-lg); overflow:hidden;
  aspect-ratio:5 / 5.1;
  background:radial-gradient(120% 95% at 70% 8%, #fffdf9 0%, #f4ede2 78%);
  border:1px solid rgba(255,255,255,.7);
  box-shadow:var(--sh-3);
}
.ed-oc-intro-fig--people img{ object-position:center 28%; }
.ed-oc-intro-fig--people::after{
  content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(40,34,80,.06);
}

/* small captioned interior plate, offset to overlap the people plate */
.ed-oc-intro-fig--place{
  position:absolute; left:0; bottom:0;
  width:clamp(150px,40%,208px);
  border-radius:var(--r); overflow:hidden;
  aspect-ratio:3 / 2;
  border:4px solid var(--paper);
  box-shadow:var(--sh-2);
}
.ed-oc-intro-fig--place img{ aspect-ratio:3 / 2; }
.ed-oc-intro-fig--place figcaption{
  position:absolute; left:0; right:0; bottom:0;
  padding:14px 12px 8px;
  font-family:"Figtree",sans-serif; font-weight:600;
  font-size:.66rem; letter-spacing:.13em; text-transform:uppercase;
  color:var(--on-navy);
  background:linear-gradient(0deg, rgba(20,16,63,.86), rgba(20,16,63,.1) 78%, transparent);
}

/* ============================================================
   2 · Primary Care — the featured centerpiece.
   A photograph that bleeds to the page edge on one side, a wide
   copy column, then a full-width indexed inclusion list. This is
   the heaviest, most art-directed block so it clearly leads.
   ============================================================ */
.ed-oc-primary{ background:var(--paper); padding-block:var(--sec); }

.ed-oc-primary-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);
  align-items:stretch;
  gap:clamp(36px,4.5vw,80px);
  /* contained + centered in the page width, aligned to the list below */
  max-width:var(--wrap);
  margin-inline:auto;
  padding-inline:var(--gut);
}
.ed-oc-primary-photo{
  margin:0; position:relative; overflow:hidden;
  border-radius:var(--r-lg);
  min-height:360px;
  background:var(--paper-2);
}
.ed-oc-primary-photo img{
  width:100%; height:100%; object-fit:cover; object-position:center 28%;
}
.ed-oc-primary-photo figcaption{
  position:absolute; left:0; bottom:0;
  padding:clamp(18px,2vw,26px) clamp(20px,2.4vw,30px);
}
.ed-oc-primary-photo figcaption span{
  display:inline-block;
  font-family:"Figtree",sans-serif; font-weight:600;
  font-size:.72rem; letter-spacing:.12em; text-transform:uppercase;
  color:var(--on-navy);
  background:rgba(17,13,52,.78);
  backdrop-filter:saturate(140%) blur(3px);
  padding:9px 14px; border-radius:var(--r-pill);
}

/* copy column sits in the right half of the centered grid */
.ed-oc-primary-copy{
  align-self:center;
  padding:0;
  max-width:none;
}
.ed-oc-tag{
  display:inline-flex; align-items:center; gap:.6em;
  font-family:"Figtree",sans-serif; font-weight:700; font-size:.74rem;
  letter-spacing:.16em; text-transform:uppercase; color:var(--red-ink);
  margin-bottom:18px;
}
.ed-oc-tag::before{ content:""; width:26px; height:2px; background:var(--red); border-radius:2px; flex:none; }
.ed-oc-primary-copy h2{
  font-size:clamp(2.6rem,4.6vw,4rem);
  font-weight:700; letter-spacing:-.026em; line-height:1; color:var(--navy);
}
.ed-oc-primary-stand{
  margin-top:22px; max-width:42ch;
  font-family:"Spectral",serif; font-weight:400;
  font-size:clamp(1.22rem,1.7vw,1.56rem); line-height:1.42;
  letter-spacing:-.008em; color:var(--navy);
  text-wrap:pretty;
}
.ed-oc-primary-body{
  margin-top:18px; max-width:50ch;
  font-size:1.04rem; line-height:1.62; color:var(--body-2);
}
.ed-oc-primary-go{
  margin-top:clamp(24px,2.6vw,32px);
  display:inline-flex; align-items:center; gap:.5em;
  font-family:"Figtree",sans-serif; font-weight:600; font-size:1.04rem; color:var(--navy);
  border-bottom:1.5px solid var(--line-2); padding-bottom:4px;
  transition:gap var(--fast) var(--ease), color var(--fast) var(--ease), border-color var(--fast) var(--ease);
}
.ed-oc-primary-go svg{ width:1.1em; height:1.1em; transition:transform var(--fast) var(--ease); }
.ed-oc-primary-go:hover{ color:var(--red-ink); gap:.72em; border-color:var(--red); }
.ed-oc-primary-go:hover svg{ transform:translateX(3px); }
.ed-oc-primary-go:focus-visible{ box-shadow:var(--focus); border-color:transparent; }

/* indexed inclusion list — a real two-column index with a ruled
   header, not a checkbox grid. Sits under the spread, full wrap. */
.ed-oc-incl-wrap{ margin-top:clamp(40px,5vw,72px); }
.ed-oc-incl-h{
  font-family:"Figtree",sans-serif; font-weight:600;
  font-size:.74rem; letter-spacing:.16em; text-transform:uppercase;
  color:var(--navy);
  padding-bottom:14px; margin-bottom:6px;
  border-bottom:1px solid var(--line-2);
}
.ed-oc-incl{
  display:grid; grid-template-columns:1fr 1fr;
  column-gap:clamp(28px,4vw,72px);
}
.ed-oc-incl li{
  display:grid; grid-template-columns:auto 1fr; align-items:start; gap:.85em;
  padding:15px 0;
  border-bottom:1px solid var(--line);
  font-size:1.02rem; line-height:1.42; color:var(--body);
  text-wrap:pretty;
}
.ed-oc-incl li::before{
  content:""; margin-top:.18em;
  width:18px; height:18px; flex:none;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23bc2014' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")
    center / 18px 18px no-repeat;
}

/* ============================================================
   3 · Specialty support — clearly secondary, but given editorial
   life: a Spectral-italic standfirst, one wide photo-led LEAD row
   (Behavioral Health), then a tighter index of four with captioned
   crops. The hierarchy break (1 wide + 4 tight) kills the list feel.
   ============================================================ */
.ed-oc-spec{
  padding-block:var(--sec);
  background:var(--paper-2);
  border-top:1px solid var(--line);
}
.ed-oc-spec-head{
  max-width:58ch;
  margin-bottom:clamp(34px,4vw,52px);
}
.ed-oc-spec-head h2{
  font-size:clamp(2rem,3.5vw,2.9rem); font-weight:600;
  letter-spacing:-.02em; line-height:1.08; color:var(--navy);
}
.ed-oc-spec-standfirst{
  margin-top:18px; max-width:54ch;
  font-family:"Spectral",serif; font-style:italic; font-weight:400;
  font-size:clamp(1.12rem,1.4vw,1.34rem); line-height:1.5;
  letter-spacing:-.006em; color:var(--body);
  text-wrap:pretty;
}

/* --- LEAD specialty row (Behavioral Health) --- */
.ed-oc-lead{
  display:grid; grid-template-columns:1.18fr .82fr;
  align-items:stretch;
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-lg); overflow:hidden;
  box-shadow:var(--sh-2);
  margin-bottom:clamp(16px,1.8vw,24px);
  transition:transform var(--med) var(--ease), box-shadow var(--med) var(--ease), border-color var(--med) var(--ease);
}
.ed-oc-lead:hover{ transform:translateY(-3px); box-shadow:var(--sh-3); border-color:var(--line-2); }
.ed-oc-lead:focus-visible{ box-shadow:var(--focus); }
.ed-oc-lead-photo{ margin:0; position:relative; overflow:hidden; min-height:clamp(280px,30vw,380px); background:var(--paper-2); }
.ed-oc-lead-photo img{ width:100%; height:100%; object-fit:cover; transition:transform .7s var(--ease-expo); }
.ed-oc-lead:hover .ed-oc-lead-photo img{ transform:scale(1.04); }
.ed-oc-lead-body{ display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:clamp(28px,3.4vw,52px); }
.ed-oc-lead-kicker{
  font-family:"Figtree",sans-serif; font-weight:700; font-size:.72rem;
  letter-spacing:.16em; text-transform:uppercase; color:var(--red-ink);
  margin-bottom:14px;
  display:inline-flex; align-items:center; gap:.6em;
}
.ed-oc-lead-kicker::before{ content:""; width:22px; height:2px; background:var(--red); border-radius:2px; }
.ed-oc-lead-body h3{
  font-size:clamp(1.7rem,2.4vw,2.3rem); font-weight:600;
  letter-spacing:-.018em; line-height:1.08; color:var(--navy);
}
.ed-oc-lead-body p{
  margin-top:14px; max-width:46ch;
  font-size:1.04rem; line-height:1.6; color:var(--body-2);
}
.ed-oc-lead-go{
  margin-top:clamp(20px,2.2vw,28px);
  display:inline-flex; align-items:center; gap:.5em;
  font-family:"Figtree",sans-serif; font-weight:600; font-size:1rem; color:var(--red-ink);
  transition:gap var(--fast) var(--ease), color var(--fast) var(--ease);
}
.ed-oc-lead-go svg{ width:1.05em; height:1.05em; transition:transform var(--fast) var(--ease); }
.ed-oc-lead:hover .ed-oc-lead-go{ color:var(--navy); gap:.72em; }
.ed-oc-lead:hover .ed-oc-lead-go svg{ transform:translateX(3px); }

/* --- index of four supporting teams --- */
.ed-oc-areas{
  display:grid; grid-template-columns:1fr 1fr;
  gap:clamp(16px,1.8vw,24px);
}
.ed-oc-area-link{
  display:flex; flex-direction:column; height:100%;
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-lg); overflow:hidden;
  box-shadow:var(--sh-1);
  transition:transform var(--med) var(--ease),
             box-shadow var(--med) var(--ease),
             border-color var(--med) var(--ease);
}
.ed-oc-area-link:hover{ transform:translateY(-4px); box-shadow:var(--sh-2); border-color:var(--line-2); }
.ed-oc-area-link:focus-visible{ box-shadow:var(--focus); }

.ed-oc-area-photo{ margin:0; position:relative; overflow:hidden; aspect-ratio:16/10; background:var(--paper-2); }
.ed-oc-area-photo img{ width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease-expo); }
.ed-oc-area-link:hover .ed-oc-area-photo img{ transform:scale(1.05); }

.ed-oc-area-body{ display:flex; flex-direction:column; align-items:flex-start; flex:1; padding:clamp(22px,2.4vw,32px); }
.ed-oc-area-body h3{
  font-size:clamp(1.3rem,1.7vw,1.55rem); font-weight:600;
  letter-spacing:-.014em; line-height:1.14; color:var(--navy);
}
.ed-oc-area-body p{
  margin-top:12px; max-width:52ch;
  font-size:.99rem; line-height:1.56; color:var(--body-2);
}
.ed-oc-area-go{
  margin-top:auto; padding-top:clamp(16px,1.8vw,22px);
  display:inline-flex; align-items:center; gap:.5em;
  font-family:"Figtree",sans-serif; font-weight:600; font-size:.97rem;
  color:var(--red-ink);
  transition:gap var(--fast) var(--ease), color var(--fast) var(--ease);
}
.ed-oc-area-go svg{ width:1.05em; height:1.05em; transition:transform var(--fast) var(--ease); }
.ed-oc-area-link:hover .ed-oc-area-go{ color:var(--navy); gap:.72em; }
.ed-oc-area-link:hover .ed-oc-area-go svg{ transform:translateX(3px); }

/* gentle staggered rise, gated like the shared sheet's reveals so
   headless / reduced-motion renders ship visible by default */
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .ed-oc-lead{
      animation:ed-rise .7s var(--ease) both;
      animation-timeline:view(); animation-range:entry 2% cover 20%;
    }
    .ed-oc-area{
      animation:ed-rise .7s var(--ease) both;
      animation-timeline:view(); animation-range:entry 4% cover 24%;
    }
    .ed-oc-area:nth-child(2){ animation-range:entry 7% cover 27%; }
    .ed-oc-area:nth-child(3){ animation-range:entry 10% cover 30%; }
    .ed-oc-area:nth-child(4){ animation-range:entry 13% cover 33%; }
  }
}

/* ============================================================
   4 · Your care, connected — the ONE navy band on the page.
   Asymmetric: a stated thesis + italic pull-line on the left held
   against a ruled list of four practices on the right. No 01-04
   markers; the rule and the dt/dd rhythm carry the structure.
   ============================================================ */
.ed-oc-connected{
  padding-block:var(--sec);
  background:linear-gradient(168deg, var(--navy) 0%, var(--navy-deeper) 100%);
  color:var(--on-navy);
}
.ed-oc-connected-in{
  display:grid; grid-template-columns:1.02fr .98fr;
  gap:clamp(40px,5vw,92px); align-items:start;
}
.ed-oc-connected-lead{ max-width:46ch; }
.ed-oc-connected-eyebrow{
  display:inline-flex; align-items:center; gap:.7em;
  font-family:"Figtree",sans-serif; font-weight:700; font-size:.72rem;
  letter-spacing:.16em; text-transform:uppercase; color:#ff8a80;
  margin-bottom:clamp(16px,1.8vw,22px);
}
.ed-oc-connected-eyebrow::before{ content:""; width:24px; height:2px; background:var(--red); border-radius:2px; }
.ed-oc-connected-lead h2{
  color:var(--on-navy);
  font-size:clamp(2.2rem,4vw,3.4rem); font-weight:600;
  letter-spacing:-.024em; line-height:1.04;
}
.ed-oc-connected-lede{
  margin-top:20px; max-width:42ch;
  font-size:clamp(1.06rem,1.2vw,1.22rem); line-height:1.62; color:var(--on-navy-2);
}
.ed-oc-connected-quote{
  margin:clamp(28px,3.2vw,40px) 0 0;
  padding-top:clamp(24px,2.6vw,32px);
  border-top:1px solid var(--on-navy-rule);
  max-width:40ch;
  font-family:"Spectral",serif; font-style:italic; font-weight:400;
  font-size:clamp(1.32rem,1.9vw,1.74rem); line-height:1.36;
  letter-spacing:-.01em; color:var(--on-navy);
  text-wrap:pretty;
}

/* the four practices: ruled rows, label + explanation, no numbers */
.ed-oc-practice{ margin:0; border-top:1px solid var(--on-navy-rule); }
.ed-oc-practice-row{
  display:grid; grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);
  gap:clamp(14px,2vw,40px);
  padding:clamp(22px,2.4vw,30px) 0;
  border-bottom:1px solid var(--on-navy-rule);
}
.ed-oc-practice-row dt{
  font-family:"Spectral",serif; font-weight:600;
  font-size:clamp(1.16rem,1.5vw,1.4rem); line-height:1.22;
  letter-spacing:-.012em; color:var(--on-navy);
}
.ed-oc-practice-row dd{
  margin:0; max-width:44ch;
  font-size:1rem; line-height:1.6; color:var(--on-navy-2);
  text-wrap:pretty;
}

@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .ed-oc-practice-row{
      animation:ed-rise .7s var(--ease) both;
      animation-timeline:view(); animation-range:entry 3% cover 28%;
    }
    .ed-oc-practice-row:nth-child(2){ animation-range:entry 6% cover 31%; }
    .ed-oc-practice-row:nth-child(3){ animation-range:entry 9% cover 34%; }
    .ed-oc-practice-row:nth-child(4){ animation-range:entry 12% cover 37%; }
  }
}

/* ============================================================
   5 · Closing CTA — LIGHT cream closer (no second navy slab).
   Asymmetric: serif invitation left, the two actions held in a
   hairline-ruled panel right, with a plain-text call line. Distinct
   shape from the homepage's centered navy closer; same CTA content.
   ============================================================ */
.ed-oc-close{
  padding-block:clamp(64px,8vw,116px);
  background:linear-gradient(180deg, var(--paper-2) 0%, var(--paper) 100%);
  border-top:1px solid var(--line);
}
.ed-oc-close-in{
  display:grid; grid-template-columns:1.1fr .9fr;
  gap:clamp(34px,5vw,80px); align-items:center;
}
.ed-oc-close-copy{ max-width:30ch; }
.ed-oc-close-eyebrow{
  display:inline-flex; align-items:center; gap:.7em;
  font-family:"Figtree",sans-serif; font-weight:700; font-size:.74rem;
  letter-spacing:.16em; text-transform:uppercase; color:var(--red-ink);
  margin-bottom:clamp(16px,1.8vw,22px);
}
.ed-oc-close-eyebrow::before{ content:""; width:24px; height:2px; background:var(--red); border-radius:2px; }
.ed-oc-close-copy h2{
  font-size:clamp(2.3rem,4.2vw,3.5rem); font-weight:600;
  letter-spacing:-.024em; line-height:1.04; color:var(--navy);
}
.ed-oc-close-copy p{
  margin-top:20px; max-width:44ch;
  font-size:1.12rem; line-height:1.62; color:var(--body-2);
}

/* actions panel — hairline-ruled, sits to the right */
.ed-oc-close-actions{
  display:flex; flex-direction:column; align-items:flex-start; gap:16px;
  padding:clamp(28px,3vw,40px);
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-lg); box-shadow:var(--sh-2);
}
.ed-oc-close-actions .ed-btn{ width:100%; justify-content:center; }
.ed-oc-close-call{
  margin-top:6px; padding-top:18px;
  width:100%; border-top:1px solid var(--line);
  font-size:.92rem; line-height:1.5; color:var(--body-2);
  display:flex; flex-direction:column; gap:5px;
}
.ed-oc-close-num{ white-space:nowrap; }
.ed-oc-close-call a{
  color:var(--navy); font-weight:600; border-radius:var(--r-xs);
  transition:color var(--fast) var(--ease);
}
.ed-oc-close-call a:hover{ color:var(--red-ink); }

/* ============================================================
   Responsive — 1024 (tablet)
   ============================================================ */
@media (max-width:1024px){
  /* intro stacks; photo pair recomposes to sit side by side */
  .ed-oc-intro-in{ grid-template-columns:1fr; gap:clamp(34px,5vw,48px); }
  .ed-oc-intro-copy{ max-width:none; }
  .ed-oc-intro-lede{ max-width:62ch; }
  .ed-oc-intro-art{
    justify-self:stretch; max-width:600px; margin-inline:auto;
    padding-left:clamp(44px,7vw,72px); padding-bottom:clamp(40px,6vw,56px);
  }

  /* primary spread → stack, photo on top, drop the viewport bleed */
  .ed-oc-primary-grid{ grid-template-columns:1fr; margin-inline:0; padding-inline:0; }
  .ed-oc-primary-photo{ min-height:0; aspect-ratio:16/9; border-radius:var(--r-lg) var(--r-lg) 0 0; }
  .ed-oc-primary-copy{
    align-self:auto; max-width:none;
    padding:clamp(30px,4vw,46px) var(--oc-bleed);
  }
  /* keep primary copy aligned to the wrap on tablet */
  .ed-oc-primary{ overflow:hidden; }
  .ed-oc-primary-grid{
    max-width:var(--wrap); margin-inline:auto;
    border:1px solid var(--line); border-radius:var(--r-lg);
    background:var(--card); box-shadow:var(--sh-2); overflow:hidden;
  }

  /* lead specialty stacks */
  .ed-oc-lead{ grid-template-columns:1fr; }
  .ed-oc-lead-photo{ min-height:0; aspect-ratio:16/9; }
}

/* ============================================================
   Responsive — 760
   ============================================================ */
@media (max-width:760px){
  /* supporting four → single column */
  .ed-oc-areas{ grid-template-columns:1fr; }
  /* inclusion index → single column */
  .ed-oc-incl{ grid-template-columns:1fr; }

  /* connected band stacks; practices keep their two-col rhythm a bit longer */
  .ed-oc-connected-in{ grid-template-columns:1fr; gap:clamp(32px,5vw,44px); }
  .ed-oc-connected-lead{ max-width:none; }

  /* close stacks */
  .ed-oc-close-in{ grid-template-columns:1fr; gap:clamp(28px,5vw,40px); }
  .ed-oc-close-copy{ max-width:none; }
  .ed-oc-close-actions{ width:100%; }
}

/* ============================================================
   Responsive — 560 (phone / 390 target)
   ============================================================ */
@media (max-width:560px){
  .ed-oc-intro-cta{ gap:16px; }
  .ed-oc-intro-cta .ed-btn{ width:100%; justify-content:center; }
  .ed-oc-intro-art{ padding-left:clamp(34px,9vw,52px); }
  .ed-oc-intro-fig--place{ width:clamp(128px,42%,168px); }

  /* practices → single column, label sits above explanation */
  .ed-oc-practice-row{ grid-template-columns:1fr; gap:8px; }
  .ed-oc-practice-row dd{ max-width:56ch; }

  .ed-oc-primary-stand{ max-width:none; }
  .ed-oc-primary-body{ max-width:none; }
}

/* ============================================================
   Reduced motion — neutralize this page's reveals defensively
   (shared sheet already zeroes transitions globally)
   ============================================================ */
@media (prefers-reduced-motion:reduce){
  .ed-oc-lead,.ed-oc-area,.ed-oc-practice-row{ animation:none; opacity:1; transform:none; }
  .ed-oc-lead:hover,.ed-oc-area-link:hover{ transform:none; }
  .ed-oc-lead:hover .ed-oc-lead-photo img,
  .ed-oc-area-link:hover .ed-oc-area-photo img{ transform:none; }
  .ed-oc-lead:hover .ed-oc-lead-go,
  .ed-oc-area-link:hover .ed-oc-area-go,
  .ed-oc-primary-go:hover{ gap:.5em; }
  .ed-oc-lead:hover .ed-oc-lead-go svg,
  .ed-oc-area-link:hover .ed-oc-area-go svg,
  .ed-oc-primary-go:hover svg{ transform:none; }
}
