/* ════════════════════════════════════════════════════════════
   RSM BRIEFING — Pass 2 · DeepSeek V4 Flash
   "The Briefing / Editorial Index"
   Editorial index composition: full-width lead story,
   image-rich Field Notes band, narrow decisions column,
   and a future case-study framework.
   Dark / mint · clean sans + mono labels · hairline rules.
   Self-contained — does not depend on the operator stack.
   ════════════════════════════════════════════════════════════ */

:root{
  --bg:#050706;
  --surface:#0a0e0c;
  --surface-2:#0d1210;
  --mint:#4fe39a;
  --mint-soft:#2c4a3a;
  --ink:#eef3ef;
  --ink-2:#b9c4bd;
  --ink-3:#6f7a73;
  --hair:rgba(255,255,255,.08);
  --hair-soft:rgba(255,255,255,.05);
  --sans:"Space Grotesk",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;
  --max:1180px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:var(--sans);
  -webkit-font-smoothing:antialiased;
  line-height:1.5;
  overflow-x:hidden;
}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
::selection{background:rgba(79,227,154,.25)}

.mono{
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ink-3);
}

/* ─── MASTHEAD ─────────────────────────────────────────── */
.mast{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:18px 28px;
  border-bottom:1px solid var(--hair);
  position:sticky;top:0;z-index:50;
  background:rgba(5,7,6,.86);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.mast__brand{display:flex;align-items:baseline;gap:10px}
.mast__brand b{font-weight:600;font-size:16px;letter-spacing:-.01em}
.mast__brand span{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.mast__nav{display:flex;gap:4px}
.mast__nav a{
  font-family:var(--mono);
  font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--ink-3);
  padding:7px 12px;border-radius:6px;
  transition:color .2s,background .2s;
}
.mast__nav a:hover{color:var(--ink);background:rgba(255,255,255,.05)}
.mast__nav a.is-active{color:var(--mint)}
.mast__note{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--ink-3)}
@media(max-width:760px){
  .mast{flex-wrap:wrap;padding:14px 18px}
  .mast__nav{order:3;width:100%;overflow-x:auto}
  .mast__note{display:none}
}

/* ─── SHELL ────────────────────────────────────────────── */
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
@media(max-width:560px){.wrap{padding:0 18px}}

/* Section rules */
.section{padding:64px 0;border-top:1px solid var(--hair)}
.section__kicker{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  margin-bottom:28px;
}
.section__kicker .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mint)}
.section__kicker .meta{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}

/* ─── LEAD STORY (full width feature) ──────────────────── */
.lead{padding:72px 0 8px;border-top:0}
.lead__header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:12px}
.lead__tag{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mint)}
.lead__meta{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--ink-3)}
.lead h1{
  font-size:clamp(34px,5.4vw,66px);
  font-weight:500;letter-spacing:-.035em;line-height:1.03;
  max-width:19ch;margin:18px 0 22px;
}
.lead h1 em{font-style:normal;color:var(--ink-3)}
.lead__lede{
  font-size:clamp(16px,1.6vw,19px);line-height:1.62;color:var(--ink-2);
  max-width:62ch;
}
.lead__byline{
  margin-top:20px;
  font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);
}
.lead__byline b{color:var(--ink);font-weight:500}
.lead__art{
  margin-top:40px;
  border:1px solid var(--hair);
  border-radius:10px;
  overflow:hidden;
  background:var(--surface);
}
.lead__art svg{width:100%;height:auto}
.lead__art figcaption{
  display:flex;justify-content:space-between;gap:16px;
  padding:14px 18px;border-top:1px solid var(--hair-soft);
  font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);
}
.lead__action{margin-top:16px}
.lead__action a{
  display:inline-flex;align-items:center;gap:10px;
  font-size:15px;font-weight:500;color:var(--mint);
}
.lead__action a .arr{transition:transform .2s}
.lead__action a:hover .arr{transform:translateX(4px)}

/* ─── EDITORIAL BAND + DECISIONS COLUMN ────────────────── */
.editorial{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:56px;
  padding:64px 0;
  border-top:1px solid var(--hair);
}
.editorial__band .section__kicker{margin-bottom:32px}

.notes{display:grid;grid-template-columns:1fr 1fr;gap:28px}
@media(max-width:840px){.notes{grid-template-columns:1fr}}

.note{
  display:flex;flex-direction:column;
  border:1px solid var(--hair);
  border-radius:10px;
  overflow:hidden;
  background:var(--surface);
  transition:border-color .25s,transform .25s;
}
.note:hover{border-color:rgba(79,227,154,.4);transform:translateY(-2px)}
.note__art{aspect-ratio:3/2;overflow:hidden;border-bottom:1px solid var(--hair-soft)}
.note__art img,.note__art svg{width:100%;height:100%;object-fit:cover}
.note__body{display:flex;flex-direction:column;gap:12px;padding:22px 22px 24px}
.note__row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.note__tag{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--mint)}
.note__time{font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--ink-3)}
.note h3{font-size:22px;font-weight:500;letter-spacing:-.02em;line-height:1.18}
.note p{font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.note__read{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:14px;font-size:14px;font-weight:500;color:var(--ink)}
.note__read .arr{transition:transform .2s}
.note__read:hover{color:var(--mint)}
.note__read:hover .arr{transform:translateX(4px)}

/* Narrow decisions / services column */
.decisions{
  border-left:1px solid var(--hair);
  padding-left:40px;
  align-self:start;
  position:sticky;top:84px;
}
.decisions .section__kicker{display:block;margin-bottom:24px}
.decisions .section__kicker .lbl{color:var(--ink);}
.decisions__lede{font-size:14px;line-height:1.6;color:var(--ink-2);margin-bottom:28px}
.decisions__list{border-top:1px solid var(--hair)}
.decisions__item{
  padding:18px 0;
  border-bottom:1px solid var(--hair-soft);
}
.decisions__item .num{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--ink-3)}
.decisions__item h4{
  font-size:17px;font-weight:500;margin:6px 0 4px;letter-spacing:-.01em;
}
.decisions__item p{font-size:13px;line-height:1.55;color:var(--ink-3)}
.decisions__item.is-open h4{color:var(--mint)}
.decisions__note{
  margin-top:24px;padding:16px 18px;
  border:1px dashed rgba(255,255,255,.14);
  border-radius:8px;
  font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);
  line-height:1.7;
}
@media(max-width:960px){
  .editorial{grid-template-columns:1fr;gap:48px}
  .decisions{border-left:0;padding-left:0;position:static;border-top:1px solid var(--hair);padding-top:40px}
}

/* ─── CASE STUDIES — future framework, no invented claims ─ */
.cases{
  padding:64px 0;
  border-top:1px solid var(--hair);
}
.cases__notice{
  display:flex;gap:14px;align-items:flex-start;
  padding:18px 20px;margin-bottom:40px;
  border:1px solid rgba(79,227,154,.22);
  border-radius:10px;
  background:rgba(79,227,154,.05);
}
.cases__notice .mark{font-family:var(--mono);color:var(--mint);font-size:13px;line-height:1.4}
.cases__notice p{font-size:14px;line-height:1.6;color:var(--ink-2)}
.cases__notice p b{color:var(--ink);font-weight:500}

.case-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:960px){.case-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.case-grid{grid-template-columns:1fr}}

.case{
  border:1px solid var(--hair);
  border-radius:10px;
  background:var(--surface);
  padding:22px 20px;
  display:flex;flex-direction:column;gap:14px;
  min-height:220px;
}
.case__head{display:flex;align-items:center;justify-content:space-between}
.case__step{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--mint)}
.case__res{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.case h4{font-size:19px;font-weight:500;letter-spacing:-.02em}
.case__body{font-size:13.5px;line-height:1.6;color:var(--ink-2)}
.case__slot{
  margin-top:auto;padding-top:14px;border-top:1px dashed rgba(255,255,255,.14);
  font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);
}
.case__slot::before{content:"◆  reserved · "}
.cases__foot{margin-top:36px;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:16px}
.cases__foot .note{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);line-height:1.7}
.cases__foot a{
  display:inline-flex;align-items:center;gap:10px;
  padding:12px 20px;border:1px solid rgba(255,255,255,.16);border-radius:8px;
  font-size:14px;font-weight:500;color:var(--ink);
  transition:border-color .2s,color .2s;
}
.cases__foot a:hover{border-color:var(--mint);color:var(--mint)}
.cases__foot a .arr{transition:transform .2s}
.cases__foot a:hover .arr{transform:translateX(4px)}

/* ─── FOOTER ───────────────────────────────────────────── */
.foot{
  border-top:1px solid var(--hair);
  padding:40px 0 56px;
}
.foot__grid{display:flex;flex-wrap:wrap;justify-content:space-between;gap:32px;align-items:flex-end}
.foot__brand b{font-weight:600;font-size:16px}
.foot__brand div{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin-top:6px}
.foot__contact{text-align:right}
.foot__contact a{font-size:15px;font-weight:500;color:var(--mint)}
.foot__contact div{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:6px}
.foot__legal{
  margin-top:36px;padding-top:20px;border-top:1px solid var(--hair-soft);
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;
  font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);
}
.foot__legal .ok{color:var(--mint)}

@media(prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
}