:root{--dossier-accent:#76522d;--dossier-soft:#e9e1d4;--dossier-rule:#c9c5bb}

/* Minerals & Metals — shared editorial system */
.commodity-hero{padding:92px 8.2vw 76px;background:var(--paper);border-bottom:1px solid var(--line)}
.commodity-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.72fr);gap:7vw;align-items:end}
.commodity-hero h1{font:500 clamp(58px,6.6vw,100px)/.94 var(--serif);letter-spacing:-.052em;margin:24px 0 0;max-width:900px}
.commodity-hero h1 em{font-style:italic;color:var(--dossier-accent);font-weight:400}
.commodity-dek{font-size:15px;line-height:1.72;color:#454a43;max-width:600px;margin:0}
.back-link{display:inline-flex;align-items:center;gap:10px;margin-top:25px;padding-bottom:7px;border-bottom:1px solid var(--ink);font:700 9px/1.2 var(--sans);letter-spacing:.11em;text-transform:uppercase}
.back-link:hover{color:var(--dossier-accent);border-color:var(--dossier-accent)}
.commodity-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ink);margin-top:48px}
.commodity-stat{padding:18px 20px 14px 0;min-width:0;border-bottom:1px solid var(--line)}
.commodity-stat+.commodity-stat{padding-left:20px;border-left:1px solid var(--line)}
.commodity-stat b,.section-label{font:700 8px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase}
.commodity-stat b{display:block;color:#6a6d65}
.commodity-stat span{display:block;margin-top:8px;font:500 17px/1.3 var(--serif);overflow-wrap:anywhere}
.dossier-kicker{font:700 8px/1.3 var(--mono);letter-spacing:.18em;color:#777a72}

.dossier-section{padding:96px 8.2vw 104px;background:var(--cream)}
.dossier-section.alt{background:var(--paper)}
.dossier-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.62fr);gap:7vw;align-items:end;margin-bottom:44px}
.dossier-head h2{font:500 clamp(42px,4.5vw,68px)/.98 var(--serif);letter-spacing:-.045em;margin:17px 0 0;max-width:720px}
.dossier-head h2 em{font-style:italic;color:var(--dossier-accent);font-weight:400}
.dossier-head p{margin:0;color:#454a43;max-width:570px;font-size:14px;line-height:1.72}

/* Landing-page commodity cards */
.dossier-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--ink)}
.dossier-card{display:flex;flex-direction:column;min-width:0;min-height:245px;padding:25px 23px 23px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:rgba(255,255,255,.22);transition:background .2s ease,transform .2s ease}
a.dossier-card:hover{background:rgba(255,255,255,.68);transform:translateY(-2px)}
.dossier-card small{font:700 8px/1.35 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#6b6e67}
.dossier-card h3{font:500 clamp(24px,2.2vw,34px)/1.02 var(--serif);letter-spacing:-.03em;margin:44px 0 12px;overflow-wrap:anywhere}
.dossier-card p{font-size:11.5px;line-height:1.58;color:#4b514a;margin:0;max-width:34ch}
.dossier-card:not(a){cursor:default}

.signal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--ink)}
.signal-card{padding:26px;min-height:160px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.signal-card small,.spec-primary small,.source-grid small{font:700 8px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#6a6d65;display:block}
.signal-card strong{display:block;font:500 23px/1.18 var(--serif);margin-top:30px;overflow-wrap:anywhere}

.spec-panel{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.spec-primary{padding:31px 34px 32px 0;border-right:1px solid var(--line)}
.spec-primary h3{font:500 clamp(27px,2.6vw,38px)/1.12 var(--serif);letter-spacing:-.025em;margin:25px 0 0;overflow-wrap:anywhere}
.spec-note{padding:31px 0 32px 34px}
.spec-note b,.intel-row b{font:700 8px/1.3 var(--mono);letter-spacing:.11em;text-transform:uppercase;color:var(--dossier-accent)}
.spec-note p{font-size:12px;line-height:1.7;margin:12px 0 0;color:#4b514a}

.chain{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--ink)}
.chain>div{padding:27px 26px;min-height:200px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.chain span{font:700 9px/1 var(--mono);color:#888b82}
.chain b{display:block;font:500 27px/1.05 var(--serif);margin:31px 0 12px}
.chain p{font-size:11.5px;line-height:1.58;color:#4d534c;margin:0}

.dossier-list{border-top:1px solid var(--ink)}
.intel-row{display:grid;grid-template-columns:minmax(150px,.28fr) minmax(0,.72fr);gap:5vw;padding:18px 0;border-bottom:1px solid var(--line)}
.intel-row b{padding-top:2px}
.intel-row span{font-size:12px;line-height:1.68;color:#273129;overflow-wrap:anywhere}

.edge-box{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:7vw;background:var(--olive);color:var(--white);padding:82px 8.2vw}
.edge-box h2{font:500 clamp(40px,4vw,62px)/.98 var(--serif);letter-spacing:-.045em;margin:0;max-width:760px}
.edge-box h2 em{color:#ffd18a;font-style:italic}
.edge-box p{margin:0;color:#f2eee4;font-size:13px;line-height:1.72;max-width:650px}
.edge-box ul{margin:24px 0 0;padding-left:18px;color:#f2eee4}
.edge-box li{margin:8px 0;font-size:12px;line-height:1.5}

.playbook{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--ink)}
.playbook>div{padding:25px 24px;min-height:215px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.playbook span{font:700 9px/1 var(--mono);color:var(--dossier-accent)}
.playbook b{display:block;font:500 24px/1.08 var(--serif);margin:32px 0 12px}
.playbook p{font-size:11px;line-height:1.58;color:#4b514a;margin:0}

.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.source-grid a{display:block;padding:26px;border:1px solid var(--ink);background:rgba(255,255,255,.18);transition:transform .2s ease,background .2s ease}
.source-grid a:hover{transform:translateY(-2px);background:rgba(255,255,255,.5)}
.source-grid b{display:block;font:500 24px/1.08 var(--serif);margin:22px 0 10px}
.source-grid span{display:block;font-size:11px;line-height:1.58;color:#4c514b}

.dossier-nav{display:flex;justify-content:space-between;gap:24px;padding:21px 8.2vw;border-top:1px solid var(--line);background:var(--paper);font:700 8px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.dossier-nav a{max-width:45%;overflow-wrap:anywhere}
.dossier-nav a:hover{color:var(--dossier-accent)}
.dossier-nav a:last-child{text-align:right}

@media(max-width:1100px){
  .commodity-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .commodity-stat:nth-child(3){border-left:0;padding-left:0}
  .commodity-stat:nth-child(3),.commodity-stat:nth-child(4){border-top:0}
  .dossier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dossier-card{min-height:230px}
}
@media(max-width:900px){
  .commodity-hero-grid,.dossier-head,.edge-box{grid-template-columns:1fr;gap:32px}
  .dossier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .signal-grid,.chain,.playbook{grid-template-columns:1fr 1fr}
  .spec-panel{grid-template-columns:1fr}
  .spec-primary{border-right:0;border-bottom:1px solid var(--line);padding-right:0}
  .spec-note{padding-left:0}
  .source-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .commodity-hero{padding:66px 6vw 54px}
  .commodity-hero-grid{gap:28px}
  .commodity-hero h1{font-size:56px;line-height:.96}
  .commodity-stats{grid-template-columns:1fr;margin-top:36px}
  .commodity-stat,.commodity-stat+.commodity-stat{padding:14px 0;border-left:0}
  .dossier-section{padding:68px 6vw 76px}
  .dossier-head{margin-bottom:32px}
  .dossier-head h2{font-size:42px;line-height:1}
  .dossier-grid,.signal-grid,.chain,.playbook{grid-template-columns:1fr}
  .dossier-card{min-height:0;padding:21px}
  .dossier-card h3{margin-top:28px}
  .edge-box{padding:64px 6vw}
  .intel-row{grid-template-columns:1fr;gap:7px}
  .dossier-nav{padding:18px 6vw}
}