/* decision-making */
.page-dm{--W:var(--cream);--K:var(--ink);--rw:var(--line-warm);--mw:#9A9895;--fw:var(--cream-2)}
body.page-dm{background:var(--K);color:#fff}

/* PAGE GRID */
.dm-page{display:grid;grid-template-columns:52px 1fr;flex:1}
.dm-sidebar{border-right:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;min-height:100%}
.dm-sidebar span{font-size:var(--eyebrow-size);letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.5);writing-mode:vertical-rl;transform:rotate(180deg)}
.dm-main{display:flex;flex-direction:column}

/* TOP — WHITE */
.dm-top{display:grid;grid-template-columns:1fr 38%;border-bottom:1px solid rgba(0,0,0,.1);min-height:calc(50vh - 30px);background:#fff}
.dm-top-left{padding:60px 56px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid rgba(0,0,0,.1)}
.dm-eyebrow{font-size:var(--eyebrow-size);font-weight:500;letter-spacing:.26em;text-transform:uppercase;color:var(--ink);margin-bottom:24px;display:block}
.dm-title{font-family:var(--font-display);font-weight:600;font-size:clamp(31px,4.05vw,54px);letter-spacing:-0.018em;line-height:1.15;margin-bottom:20px;color:var(--ink)}
.dm-title em{font-family:var(--font-display);font-weight:600;font-style:normal;color:var(--ink);background:linear-gradient(180deg, transparent 56%, var(--hl, var(--focus)) 56%, var(--hl, var(--focus)) 92%, transparent 92%);padding:0 .06em;margin:0 -.06em;display:inline}
.dm-sub{font-size:15px;font-weight:400;line-height:1.7;color:var(--text-2);max-width:420px;margin-bottom:40px}
.dm-sub strong{font-weight:600;color:var(--ink)}
.dm-cta{display:inline-flex;align-items:center;gap:12px;background:var(--ink);color:#fff;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:16px 36px;text-decoration:none;border:1px solid var(--ink);transition:background .2s,color .2s;align-self:flex-start}
.dm-cta:hover{background:transparent;color:var(--ink)}
.dm-top-right{background:rgba(0,0,0,.02);display:flex;align-items:center;justify-content:center;overflow:hidden;padding:32px}
.dm-cover{width:100%;max-width:300px;object-fit:contain;box-shadow:8px 8px 0 rgba(0,0,0,.12);border:1px solid rgba(0,0,0,.1);display:block}


/* BOTTOM — CREAM */
.dm-bottom{background:var(--W);color:var(--K);display:grid;grid-template-columns:1fr 1fr;min-height:calc(50vh - 30px)}
.dm-bottom-left{padding:52px 56px;border-right:1px solid var(--rw);display:flex;flex-direction:column;justify-content:center}
.dm-bottom-right{padding:52px 56px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.dm-section-label{font-size:var(--eyebrow-size);letter-spacing:.26em;text-transform:uppercase;color:var(--ink);margin-bottom:24px;display:block;opacity:.6}

/* FRAMEWORK LIST */
.dm-frameworks{display:flex;flex-direction:column}
.dm-fw{display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--rw)}
.dm-fw:last-child{border-bottom:none}
.dm-fw-n{font-family:var(--font-display);font-weight:600;font-size:11px;letter-spacing:.1em;color:var(--mw)}
.dm-fw-name{font-family:var(--font-display);font-weight:600;font-size:clamp(12px,1.17vw,15px);letter-spacing:-0.006em;color:var(--K)}

/* QUOTE */
.dm-pull-quote{font-family:var(--font-body);font-weight:300;font-style:italic;font-size:clamp(16px,1.8vw,22px);line-height:1.6;color:var(--K);padding-left:22px;border-left:1.5px solid var(--K);margin-bottom:14px}
.dm-pull-author{font-size:var(--eyebrow-size);letter-spacing:.18em;text-transform:uppercase;color:var(--mw);margin-bottom:44px;display:block}
.dm-cta-k{display:inline-flex;align-items:center;gap:12px;background:var(--K);color:#fff;font-size:13px;letter-spacing:.14em;text-transform:uppercase;padding:16px 36px;text-decoration:none;border:1px solid var(--K);transition:background .2s,color .2s;align-self:flex-start;font-weight:600}
.dm-cta-k:hover{background:transparent;color:var(--K)}


@media(max-width:900px){
  .dm-page{grid-template-columns:1fr}
  .dm-sidebar{display:none}
  .dm-top{grid-template-columns:1fr}
  .dm-top-right{min-height:260px}
  .dm-bottom{grid-template-columns:1fr}
  .dm-bottom-left{border-right:none;border-bottom:1px solid var(--rw)}
  .dm-top-left,.dm-bottom-left,.dm-bottom-right{padding:44px 28px}
}
.dm-bottom-right svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.dm-bottom-right .dm-quote-wrap{position:relative;z-index:1}
