/* ============================================================
   INTEGRIS — white paper / guide article pages
   Loaded after site.css. Owns long-form article typography only.
   ============================================================ */
.gd-meta{display:flex;flex-wrap:wrap;gap:10px 28px;margin-top:26px;font-family:var(--mono);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--nickel-300)}
.gd-meta b{color:#fff;font-weight:500}
.gd-wrap{display:grid;grid-template-columns:minmax(0,1fr) 268px;gap:clamp(32px,5vw,72px);align-items:start}
@media (max-width:940px){.gd-wrap{grid-template-columns:1fr}}

/* summary card */
.gd-about{background:#fff;border:1px solid var(--nickel-200);padding:clamp(26px,3.4vw,40px);margin-bottom:clamp(36px,4vw,56px)}
.gd-about .k{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--pewter,#6b7480)}
.gd-about p{margin:14px 0 0;font-size:17px;line-height:1.68;color:var(--ink-soft)}
.gd-about p.first{font-family:var(--serif);font-size:clamp(19px,2vw,23px);line-height:1.5;color:var(--ink)}

/* contents */
.gd-toc{border-top:1px solid var(--nickel-200);margin:0 0 clamp(36px,4vw,52px)}
.gd-toc a{display:grid;grid-template-columns:34px 1fr;gap:14px;padding:13px 0;border-bottom:1px solid var(--nickel-200);color:var(--ink);text-decoration:none;align-items:baseline}
.gd-toc a:hover{background:#fff}
.gd-toc .n{font-family:var(--mono);font-size:12px;color:var(--nickel-400)}
.gd-toc .t{font-weight:600;font-size:16px}
.gd-toc .d{display:block;font-weight:400;font-size:14.5px;color:var(--ink-soft);margin-top:3px}

/* body */
.gd-body>section{padding:clamp(30px,3.6vw,46px) 0;border-top:1px solid var(--nickel-200)}
.gd-body>section:first-child{border-top:none;padding-top:0}
.gd-body .sec-no{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--nickel-400)}
.gd-body h2{font-family:var(--serif);font-weight:400;font-size:clamp(27px,3.2vw,38px);line-height:1.12;letter-spacing:-.01em;margin:12px 0 0}
.gd-body .dek{font-family:var(--mono);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--pewter,#6b7480);margin-top:12px}
.gd-body .stand{font-family:var(--serif);font-size:clamp(19px,2.1vw,24px);line-height:1.48;color:var(--ink);margin:22px 0 0;text-wrap:pretty}
.gd-body p{margin:18px 0 0;font-size:17px;line-height:1.72;color:var(--ink-soft);text-wrap:pretty}
.gd-body h3{font-size:17px;font-weight:700;margin:30px 0 0;color:var(--ink)}
.gd-body .cols{display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(28px,3vw,44px)}
@media (max-width:760px){.gd-body .cols{grid-template-columns:1fr}}

/* aside boxes */
.gd-aside{background:var(--navy-950);color:#fff;padding:24px 26px;margin:28px 0 0}
.gd-aside .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--nickel-400)}
.gd-aside h4{font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.2;margin:10px 0 0}
.gd-aside ul{list-style:none;padding:0;margin:16px 0 0}
.gd-aside li{padding:9px 0 9px 18px;position:relative;font-size:15px;line-height:1.6;color:var(--nickel-200);border-bottom:1px solid rgba(154,163,175,.2)}
.gd-aside li:last-child{border-bottom:none}
.gd-aside li::before{content:"";position:absolute;left:0;top:17px;width:7px;height:1px;background:var(--nickel-400)}
.gd-pull{border-left:3px solid var(--navy-900);padding:6px 0 6px 22px;margin:28px 0 0}
.gd-pull p{font-family:var(--serif);font-size:clamp(20px,2.2vw,25px);line-height:1.42;color:var(--ink);margin:0}
.gd-pull .attr{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--pewter,#6b7480);margin-top:12px}

/* figure: usage ladder */
.gd-fig{border:1px solid var(--nickel-200);background:#fff;padding:clamp(22px,2.6vw,32px);margin:30px 0 0}
.gd-fig .cap{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--nickel-400)}
.gd-fig h4{font-weight:700;font-size:16px;margin:8px 0 0;color:var(--ink)}
.gd-fig .rows{margin-top:22px;display:grid;gap:12px}
.gd-fig .r{display:grid;grid-template-columns:minmax(120px,1.1fr) minmax(0,2.4fr);gap:16px;align-items:center}
.gd-fig .r .lb{font-size:14.5px;color:var(--ink)}
.gd-fig .r .track{position:relative;height:26px;background:var(--nickel-100,#e7eaee)}
.gd-fig .r .bar{position:absolute;top:0;bottom:0;background:var(--navy-900);display:flex;align-items:center;padding-left:10px}
.gd-fig .r .bar span{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:#fff;white-space:nowrap}
.gd-fig .r .bar.open{background:linear-gradient(90deg,var(--navy-900),var(--navy-800,#23486c))}
.gd-fig .axis{display:grid;grid-template-columns:minmax(120px,1.1fr) minmax(0,2.4fr);gap:16px;margin-top:10px}
.gd-fig .axis .t{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;color:var(--nickel-400)}
.gd-fig .src{margin-top:18px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:var(--nickel-400)}

/* figure: grouped lists */
.gd-fig .grp{display:grid;gap:clamp(18px,2.4vw,30px);margin-top:22px}
.gd-fig .grp.two{grid-template-columns:1fr 1fr}
.gd-fig .grp.three{grid-template-columns:repeat(3,1fr)}
@media (max-width:760px){.gd-fig .grp.two,.gd-fig .grp.three{grid-template-columns:1fr}}
.gd-fig .grp .hd{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--navy-900);padding-bottom:8px;border-bottom:1.5px solid var(--navy-950)}
.gd-fig .grp .sub{font-size:13.5px;color:var(--ink-soft);margin:10px 0 0}
.gd-fig .grp ol{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:2px}
.gd-fig .grp li{display:grid;grid-template-columns:26px 1fr;gap:8px;padding:8px 0;border-bottom:1px dotted var(--nickel-300);font-size:14.5px;line-height:1.45;color:var(--ink)}
.gd-fig .grp li:last-child{border-bottom:none}
.gd-fig .grp li b{font-family:var(--mono);font-size:12px;color:var(--nickel-400);font-weight:500}
.gd-fig .note{margin-top:18px;font-size:13.5px;color:var(--ink-soft)}

/* figure: weekly rhythm */
.gd-week{margin-top:22px}
.gd-week .days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.gd-week .d{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--nickel-400);text-align:center;padding-bottom:6px}
.gd-week .lane{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:6px}
.gd-week .cell{height:30px;background:var(--nickel-100,#e7eaee)}
.gd-week .cell.hi{background:var(--navy-900)}
.gd-week .cell.mid{background:var(--navy-800,#23486c);opacity:.55}
.gd-week .lb{font-family:var(--mono);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);margin:14px 0 0}
.gd-week .key{display:flex;flex-wrap:wrap;gap:18px;margin-top:16px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:var(--nickel-400)}
.gd-week .key span{display:flex;align-items:center;gap:7px}
.gd-week .key i{width:12px;height:12px;display:inline-block}

/* market update: stat row + data table */
.gd-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--nickel-200);border:1px solid var(--nickel-200);margin:0 0 clamp(30px,3.6vw,44px)}
@media (max-width:700px){.gd-stats{grid-template-columns:repeat(2,1fr)}}
.gd-stats div{background:#fff;padding:20px 18px}
.gd-stats .v{font-family:var(--serif);font-size:clamp(26px,3vw,36px);line-height:1;color:var(--ink)}
.gd-stats .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--pewter,#6b7480);margin-top:10px;line-height:1.5}
.gd-bars{display:grid;gap:9px;margin-top:20px}
.gd-bars .r{display:grid;grid-template-columns:minmax(112px,1fr) minmax(0,2.6fr) 54px;gap:12px;align-items:center;font-size:14px}
.gd-bars .track{height:22px;background:var(--nickel-100,#e7eaee)}
.gd-bars .bar{height:100%;background:var(--navy-900)}
.gd-bars .bar.alt{background:var(--nickel-400)}
.gd-bars .n{font-family:var(--mono);font-size:12px;color:var(--ink);text-align:right}
.gd-table{width:100%;border-collapse:collapse;margin-top:22px;font-size:14px}
.gd-table th{text-align:left;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--pewter,#6b7480);font-weight:500;border-bottom:1.5px solid var(--navy-950);padding:0 12px 8px 0;vertical-align:bottom}
.gd-table td{border-bottom:1px solid var(--nickel-200);padding:10px 12px 10px 0;color:var(--ink-soft);vertical-align:top}
.gd-table td:first-child{color:var(--ink);font-weight:600;white-space:nowrap}
.gd-table td.num{font-family:var(--mono);font-size:13px;white-space:nowrap}
.gd-table tr.tot td{border-bottom:none;border-top:1.5px solid var(--navy-950);color:var(--ink);font-weight:600}
.gd-table .rep{font-size:13px;color:var(--nickel-400)}
.gd-scroll{overflow-x:auto}

/* sticky rail */
.gd-rail{position:sticky;top:96px;display:grid;gap:22px}
@media (max-width:940px){.gd-rail{position:static}}
.gd-card{border:1px solid var(--nickel-200);background:#fff;padding:22px}
.gd-card .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--nickel-400)}
.gd-card h4{font-size:16px;font-weight:700;margin:10px 0 0;line-height:1.3}
.gd-card p{font-size:14px;line-height:1.6;color:var(--ink-soft);margin:8px 0 0}
.gd-card .btn{margin-top:16px}
.gd-rail .rel{display:grid}
.gd-rail .rel a{display:block;padding:12px 0;border-bottom:1px solid var(--nickel-200);font-size:14.5px;line-height:1.45;color:var(--ink);text-decoration:none}
.gd-rail .rel a:last-child{border-bottom:none}
.gd-rail .rel a:hover{color:var(--navy-800,#23486c)}
.gd-rail .rel .kind{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--nickel-400);margin-bottom:4px}

/* author */
.gd-author{border-top:1px solid var(--nickel-200);margin-top:clamp(32px,4vw,48px);padding-top:clamp(26px,3vw,36px);display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:start}
.gd-author .ph{width:96px;height:96px;flex:0 0 auto}
.gd-author .nm{font-family:var(--serif);font-size:22px}
.gd-author .ro{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--pewter,#6b7480);margin-top:6px}
.gd-author p{font-size:15px;line-height:1.65;color:var(--ink-soft);margin:12px 0 0;max-width:52em}
