/* Momo Jord — "Om" editorial page (template-mj-om.php). Scoped under .mj-scope.
   .ed-hero / .ed-hero-meta / .breadcrumbs / .eyebrow / .btn come from the shared
   scoped editorial CSS; this adds the Om-specific story / stat / principles /
   gallery / contact sections. */

.mj-scope .om-page .ed-hero{ min-height:640px; }

/* Chapter-numbered story */
.mj-scope .story-section{ padding:80px 0; }
.mj-scope .story-section.story-alt{ background:var(--paper-2); border-top:1px solid var(--hairline); border-bottom:1px solid var(--hairline); }
.mj-scope .story-shell{ display:grid; grid-template-columns:220px 1fr 220px; gap:56px; align-items:start; }
.mj-scope .story-shell .col-num{ position:sticky; top:100px; font-family:var(--ff-mono); font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-mute); border-top:1px solid var(--hairline); padding-top:12px; }
.mj-scope .story-shell .col-num b{ display:block; font-family:var(--ff-display); font-style:italic; font-weight:var(--display-weight); font-size:64px; line-height:1; letter-spacing:-.02em; color:var(--brand); text-transform:none; margin-top:6px; }
.mj-scope .story-text{ max-width:60ch; }
.mj-scope .story-text h2{ font-family:var(--ff-display); font-weight:var(--display-weight); font-size:clamp(40px,4.6vw,72px); line-height:1; letter-spacing:-.025em; margin-bottom:24px; }
.mj-scope .story-text h2 em{ font-style:italic; color:var(--brand); }
.mj-scope .story-text p{ font-size:17px; line-height:1.6; color:var(--ink-soft); margin-bottom:16px; }
.mj-scope .story-text p strong{ color:var(--ink); font-weight:600; }
.mj-scope .story-text blockquote{ margin:32px 0; padding:0 0 0 24px; border-left:3px solid var(--brand); font-family:var(--ff-display); font-weight:var(--display-weight); font-style:italic; font-size:26px; line-height:1.3; color:var(--ink); letter-spacing:-.005em; }
.mj-scope .story-aside{ position:sticky; top:100px; background:var(--paper-2); padding:24px; border-radius:6px; font-size:13px; color:var(--ink-soft); }
.mj-scope .story-section.story-alt .story-aside{ background:var(--bg); }
.mj-scope .story-aside h5{ font-family:var(--ff-mono); font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-mute); margin-bottom:14px; }

/* Big stat row */
.mj-scope .stat-strip{ display:grid; grid-template-columns:repeat(4,1fr); padding:80px 0; border-top:1px solid var(--hairline); border-bottom:1px solid var(--hairline); }
.mj-scope .stat{ text-align:center; border-right:1px solid var(--hairline); padding:0 24px; }
.mj-scope .stat:last-child{ border-right:0; }
.mj-scope .stat .n{ font-family:var(--ff-display); font-weight:var(--display-weight); font-style:italic; font-size:clamp(56px,8vw,96px); line-height:1; letter-spacing:-.025em; color:var(--brand); }
.mj-scope .stat .l{ margin-top:8px; font-family:var(--ff-mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-mute); }

/* Principles grid */
.mj-scope .principles-section{ padding:96px 0; background:var(--paper-2); }
.mj-scope .princ-head{ text-align:center; max-width:700px; margin:0 auto 48px; }
.mj-scope .princ-head h2{ font-family:var(--ff-display); font-weight:var(--display-weight); font-size:clamp(36px,4vw,64px); letter-spacing:-.025em; line-height:1.02; }
.mj-scope .princ-head h2 em{ font-style:italic; color:var(--brand); }
.mj-scope .princ-head p{ margin-top:14px; color:var(--ink-soft); font-size:16px; }
.mj-scope .princ-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--hairline); border:1px solid var(--hairline); border-radius:10px; overflow:hidden; }
.mj-scope .princ{ background:var(--bg); padding:40px 28px; }
.mj-scope .princ .num{ font-family:var(--ff-mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-mute); }
.mj-scope .princ h3{ font-family:var(--ff-display); font-weight:var(--display-weight); font-size:28px; letter-spacing:-.01em; line-height:1.1; margin:12px 0 16px; }
.mj-scope .princ h3 em{ font-style:italic; color:var(--brand); }
.mj-scope .princ p{ font-size:14px; line-height:1.6; color:var(--ink-soft); }

/* Photo gallery */
.mj-scope .gallery-strip{ padding:96px 0; }
.mj-scope .gs-head{ display:flex; justify-content:space-between; align-items:end; margin-bottom:32px; gap:20px; }
.mj-scope .gs-head h2{ font-family:var(--ff-display); font-weight:var(--display-weight); font-size:clamp(36px,4vw,56px); line-height:1.02; letter-spacing:-.02em; }
.mj-scope .gs-head h2 em{ font-style:italic; color:var(--brand); }
.mj-scope .gs-follow{ font-size:14px; border-bottom:1px solid currentColor; padding-bottom:2px; color:var(--ink); white-space:nowrap; }
.mj-scope .gs-follow:hover{ color:var(--brand); }
.mj-scope .gs-grid{ display:grid; grid-template-columns:1.3fr 1fr 1fr; grid-template-rows:auto auto; gap:12px; }
.mj-scope .gs-img{ border-radius:8px; overflow:hidden; background:var(--paper-2); aspect-ratio:4/5; }
.mj-scope .gs-img.tall{ grid-row:span 2; aspect-ratio:4/7; }
.mj-scope .gs-img.wide{ grid-column:span 2; aspect-ratio:16/9; }
.mj-scope .gs-img img{ width:100%; height:100%; object-fit:cover; }

/* Contact strip */
.mj-scope .contact-strip{ background:var(--ink); color:var(--paper); padding:96px 0; text-align:center; }
.mj-scope .contact-strip h2{ font-family:var(--ff-display); font-weight:var(--display-weight); font-size:clamp(40px,5vw,72px); line-height:1.05; letter-spacing:-.025em; }
.mj-scope .contact-strip h2 em{ font-style:italic; color:var(--gold); }
.mj-scope .contact-strip p{ color:color-mix(in oklab,var(--paper) 80%,transparent); max-width:48ch; margin:16px auto 28px; }
.mj-scope .contact-strip .contact-ctas{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.mj-scope .contact-strip .btn{ display:inline-flex; align-items:center; justify-content:center; padding:14px 26px; border-radius:999px; font-family:var(--ff-sans); font-weight:600; font-size:15px; }
.mj-scope .contact-strip .btn-gold{ background:var(--gold); color:var(--ink); border:0; }
.mj-scope .contact-strip .btn-gold:hover{ background:#ffd87a; }
.mj-scope .contact-strip .btn-ghost{ color:var(--paper); border:1px solid color-mix(in oklab,var(--paper) 30%,transparent); background:transparent; }
.mj-scope .contact-strip .btn-ghost:hover{ border-color:var(--paper); }

@media (max-width:980px){
  .mj-scope .story-shell{ grid-template-columns:1fr; gap:32px; }
  .mj-scope .story-shell .col-num,.mj-scope .story-aside{ position:static; }
  .mj-scope .story-shell .col-num b{ display:inline; font-size:34px; margin:0 0 0 8px; }
  .mj-scope .stat-strip{ grid-template-columns:repeat(2,1fr); gap:32px 0; }
  .mj-scope .stat:nth-child(2){ border-right:0; }
  .mj-scope .princ-grid{ grid-template-columns:1fr; }
  .mj-scope .gs-grid{ grid-template-columns:1fr; }
  .mj-scope .gs-img,.mj-scope .gs-img.tall,.mj-scope .gs-img.wide{ grid-column:auto; grid-row:auto; aspect-ratio:4/3; }
}
@media (max-width:600px){
  .mj-scope .story-section,.mj-scope .gallery-strip,.mj-scope .principles-section,.mj-scope .contact-strip{ padding:56px 0; }
  .mj-scope .stat-strip{ padding:48px 0; }
}
