/* R50 · Insights (prototype). Editorial grammar on the frozen P43 / S49 system: white for reading, black for the work, hairlines, mono for dates and methods. */
.i50{--ink:#111;--rule:rgba(17,17,17,.1);--dim:rgba(17,17,17,.62);--soft:#FAFAFA;--seen:var(--pink);--found:var(--cyan);--chosen:#5B7A00;--intel:#4F48D6;--brand:#111}
.i50 .mono{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;text-transform:uppercase}
.i50 .dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex:none;background:currentColor}
.i50 .d-seen{background:var(--pink)}.i50 .d-found{background:var(--cyan)}.i50 .d-chosen{background:var(--lime)}.i50 .d-intel{background:#8C86FF}.i50 .d-brand{background:#111}
.i50 a{color:inherit}
.i50 .ar-i{width:14px;height:14px;flex:none}

/* ---------- landing: masthead ---------- */
.ix-m{padding:152px 0 72px}
.ix-m .hl{grid-column:1/8}
.ix-m .hr{grid-column:9/13;align-self:end}
.ix-m h1.disp{font-size:clamp(46px,6.4vw,104px);line-height:.94;letter-spacing:-.045em;margin:0 0 28px}
.ix-m .ans{max-width:46ch}
.ix-m .stamp{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:26px;color:var(--dim)}
.ix-fmt{margin:0;padding:0;border-bottom:1px solid var(--rule)}
.ix-fmt>div{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:14px;padding:14px 0;border-top:1px solid var(--rule)}
.ix-fmt dt{font-weight:600;font-size:15px;letter-spacing:-.005em}
.ix-fmt dd{margin:0;font-size:14px;line-height:1.45;color:var(--dim)}
.ix-fmt dt .n{font-family:var(--mono);font-size:11px;font-weight:500;color:var(--dim);margin-left:8px}

/* ---------- landing: lead field note on the black stage ---------- */
.ix-lead{padding:0}
.ix-lead .w{padding-top:96px;padding-bottom:96px}
.ix-lead .g{align-items:center}
.ix-lead figure{grid-column:1/6;margin:0;background:#141414;border-radius:14px;overflow:hidden;aspect-ratio:4/5;position:relative}
.ix-lead figure img{width:100%;height:100%;object-fit:cover;display:block}
.ix-lead figcaption{position:absolute;left:14px;bottom:12px;font-size:12px;color:rgba(255,255,255,.8);background:rgba(11,11,13,.62);padding:5px 9px;border-radius:6px}
.ix-lead .tx{grid-column:7/13}
.ix-lead .ix-kick{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.72)}
.ix-lead h2{margin:18px 0 0;font:600 clamp(34px,4.2vw,64px)/1.0 var(--sans);letter-spacing:-.035em}
.ix-lead p.sum{margin:22px 0 0;font-size:clamp(17px,1.35vw,20px);line-height:1.5;color:rgba(255,255,255,.72);max-width:46ch}
.ix-lead .acts2{margin-top:30px}

/* ---------- landing: answers index ---------- */
.ix-ask .top{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:24px 40px}
.ix-ask .top .lead{margin-top:14px}
.ix-q{display:flex;flex-direction:column;gap:12px;min-width:min(420px,100%)}
.ix-q label{color:var(--dim)}
.ix-q input{all:unset;box-sizing:border-box;width:100%;font:500 clamp(18px,1.6vw,22px)/1.3 var(--sans);padding:10px 0 12px;border-bottom:2px solid var(--ink)}
.ix-q input::placeholder{color:rgba(17,17,17,.38)}
.ix-tabs{display:flex;flex-wrap:wrap;gap:8px}
.ix-tabs button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:500;padding:7px 12px;border:1px solid var(--rule);border-radius:999px}
.ix-tabs button[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:#fff}
.ix-tabs button:focus-visible{outline:2px solid var(--purple);outline-offset:2px}
.ix-acts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 48px;margin-top:56px}
.ix-act h3{display:flex;align-items:center;gap:10px;margin:0 0 6px;font-size:13px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}
.ix-act ol{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--rule)}
.ix-act li a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 18px;align-items:center;padding:16px 0;border-top:1px solid var(--rule);text-decoration:none}
.ix-act li b{font-size:clamp(17px,1.35vw,19px);font-weight:600;letter-spacing:-.01em;line-height:1.3}
.ix-act li .own{grid-column:1;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--dim)}
.ix-act li .ar-i{grid-column:2;grid-row:1/3;opacity:.45;transition:transform .2s var(--ease),opacity .2s}
.ix-act li a:hover b{text-decoration:underline;text-underline-offset:4px}
.ix-act li a:hover .ar-i{opacity:1;transform:translateX(3px)}
.ix-act li[hidden]{display:none}
.ix-empty{margin-top:28px;color:var(--dim)}

/* ---------- landing: rows (decide, from the work, inclusive, archive) ---------- */
.ix-rows{margin-top:40px;border-bottom:1px solid var(--rule)}
.ix-rows a,.ix-rows .row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,6fr) minmax(0,3fr) auto;gap:6px 24px;align-items:center;min-height:72px;padding:14px 0;border-top:1px solid var(--rule);text-decoration:none}
.ix-rows .f{color:var(--dim)}
.ix-rows b{font-size:clamp(17px,1.35vw,20px);font-weight:600;letter-spacing:-.01em;line-height:1.3}
.ix-rows .own{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--dim)}
.ix-rows .ar-i{opacity:.45}
.ix-rows a:hover b{text-decoration:underline;text-underline-offset:4px}
.dark .ix-rows,.smoke .ix-rows{--rule:rgba(255,255,255,.12)}
.dark .ix-rows .f,.dark .ix-rows .own{color:rgba(255,255,255,.66)}
.ix-work{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;margin-top:48px}
.ix-work .rowsw{grid-column:1/-1}

/* review-mode-only sections (prototype; production renders none of this) */
.rn-sec{display:none}
body.notes .rn-sec{display:block}

/* ---------- landing: read by service ---------- */
.ix-svc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 32px;margin-top:48px}
.ix-svc h3{display:flex;align-items:center;gap:10px;margin:0 0 10px;font-size:13px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}
.ix-svc ul{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--rule)}
.ix-svc li{border-top:1px solid var(--rule)}
.ix-svc li a,.ix-svc li span.x{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;font-size:15px;font-weight:500;text-decoration:none}
.ix-svc li a:hover{text-decoration:underline;text-underline-offset:3px}
.ix-svc li .c{font-family:var(--mono);font-size:11.5px;color:var(--dim)}
.ix-svc li.gap{display:none}
body.notes .ix-svc li.gap{display:block}
.ix-svc li.gap span.x{color:var(--dim)}

/* ---------- landing: all insights ---------- */
.ix-all details{border-top:1px solid var(--rule)}
.ix-all details:last-child{border-bottom:1px solid var(--rule)}
.ix-all summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:64px;font-size:clamp(17px,1.4vw,20px);font-weight:600}
.ix-all summary::-webkit-details-marker{display:none}
.ix-all summary .c{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--dim)}
.ix-all ul{list-style:none;margin:0 0 20px;padding:0;columns:2;column-gap:48px}
.ix-all li{break-inside:avoid;padding:7px 0;font-size:15px;line-height:1.4}
.ix-all li a{text-decoration:none}
.ix-all li a:hover{text-decoration:underline;text-underline-offset:3px}
.ix-all li .f{font-family:var(--mono);font-size:10.5px;color:var(--dim);margin-left:6px;letter-spacing:.03em;text-transform:uppercase}

/* ---------- landing: authors ---------- */
.ix-auth{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:24px;margin-top:40px;padding-top:22px;border-top:1px solid var(--rule)}
.ix-auth b{font-size:20px;font-weight:600;letter-spacing:-.01em}
.ix-auth p{margin:6px 0 0;color:var(--dim);font-size:15.5px;line-height:1.55;max-width:60ch}

/* ---------- article ---------- */
.ia-h{padding:148px 0 56px}
.ia-h .hl{grid-column:1/9}
.ia-h .hr{grid-column:9/13;align-self:end}
.ia-h h1.disp{font-size:clamp(40px,5.2vw,84px);line-height:.98;letter-spacing:-.04em;margin:0}
.ia-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 22px;color:var(--dim)}
.ia-chips a{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:13.5px;font-weight:500;color:var(--ink)}
.ia-chips a:hover{text-decoration:underline;text-underline-offset:3px}
.ia-short{margin:34px 0 0;max-width:62ch;padding:22px 24px 22px 22px;background:var(--soft);border-left:3px solid var(--acx,#111);border-radius:0 10px 10px 0}
.ia-short .mono{display:block;color:var(--dim);margin-bottom:8px}
.ia-short p{margin:0;font-size:clamp(18px,1.45vw,21px);line-height:1.5;font-weight:500;letter-spacing:-.005em}
.ia-by{display:grid;gap:14px;font-size:14px;color:var(--dim)}
.ia-by .who{display:flex;align-items:center;gap:12px;color:var(--ink);font-weight:600}
.ia-by .who .av{width:40px;height:40px;border-radius:50%;background:#EFEFEF;display:grid;place-items:center;font-size:13px;font-weight:600;color:#555}
.ia-by dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 14px}
.ia-by dt{font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase}
.ia-by dd{margin:0;color:var(--ink)}
.ia-b{padding:72px 0 104px}
.ia-b .w{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.ia-body{grid-column:3/11;font-size:18px;line-height:1.68;color:#1d1d1f}
.ia-body>*{max-width:68ch}
.ia-body h2{margin:64px 0 0;font:600 clamp(26px,2.4vw,36px)/1.12 var(--sans);letter-spacing:-.025em;color:#111;scroll-margin-top:140px}
.ia-body h2:first-child{margin-top:0}
.ia-body h3{margin:36px 0 0;font-size:21px;font-weight:600;letter-spacing:-.01em;color:#111}
.ia-body p{margin:18px 0 0}
.ia-body p.sum{font-weight:500;color:#111}
.ia-body ul,.ia-body ol{margin:18px 0 0;padding-left:1.15em}
.ia-body li{margin:8px 0 0}
.ia-body a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(17,17,17,.35)}
.ia-body a:hover{text-decoration-color:currentColor}
.ia-body sup a{text-decoration:none;font-family:var(--mono);font-size:11px;padding:0 2px;color:var(--dim)}
.ia-t{width:100%;max-width:none!important;margin:26px 0 0;border-collapse:collapse;font-size:15.5px;line-height:1.45}
.ia-tw{max-width:none!important;overflow-x:auto;-webkit-overflow-scrolling:touch}
.ia-t th{text-align:left;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--dim);padding:10px 16px 10px 0;border-bottom:1px solid #111}
.ia-t td{padding:14px 16px 14px 0;border-bottom:1px solid var(--rule);vertical-align:top}
.ia-t td:first-child{font-weight:600;color:#111;min-width:9em}
.ia-fig{max-width:none!important;margin:40px 0 0;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,4fr);gap:24px;align-items:end}
.ia-fig .fr{background:#0B0B0D;border-radius:14px;overflow:hidden;aspect-ratio:4/5}
.ia-fig .fr img{width:100%;height:100%;object-fit:cover;display:block}
.ia-fig figcaption{font-size:14px;line-height:1.5;color:var(--dim)}
.ia-fig figcaption b{display:block;color:#111;font-weight:600;margin-bottom:4px}
.held50{margin:26px 0 0;padding:20px 22px;border:1px dashed rgba(17,17,17,.35);border-radius:10px;background:#fff}
.held50 .mono{display:block;color:var(--dim);margin-bottom:8px}
.held50 p{margin:0;font-size:16px;line-height:1.55}
.ia-src{max-width:none!important;margin:72px 0 0;padding-top:22px;border-top:1px solid #111}
.ia-src h2{margin:0;font-size:15px;font-family:var(--mono);font-weight:500;letter-spacing:.04em;text-transform:uppercase}
.ia-src ol{margin:14px 0 0;padding-left:1.4em;font-size:14.5px;line-height:1.55;color:var(--dim)}
.ia-src li{margin:8px 0 0}
.ia-src a{color:#111}
.ia-svc{grid-column:1/-1;margin-top:88px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px 48px;padding:40px 0;border-top:1px solid #111;border-bottom:1px solid var(--rule)}
.ia-svc .k{display:flex;align-items:center;gap:10px;color:var(--dim)}
.ia-svc h2{margin:14px 0 0;font:600 clamp(28px,3vw,44px)/1.05 var(--sans);letter-spacing:-.03em}
.ia-svc p{margin:0;font-size:17px;line-height:1.55;color:var(--dim);max-width:52ch}
.ia-svc .acts2{margin-top:22px}
.ia-rel{grid-column:1/-1;margin-top:64px}
.ia-rel h2{margin:0;font-size:15px;font-family:var(--mono);font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--dim)}
.ia-q{max-width:none!important}
.ia-q .q49{margin-top:36px}
.ia-note{max-width:none!important;margin:20px 0 0}

@media (max-width:1100px){
 .ix-svc{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ia-body{grid-column:2/12}
}
@media (max-width:900px){
 .ix-m{padding:120px 0 48px}
 .ix-m .hl,.ix-m .hr,.ia-h .hl,.ia-h .hr{grid-column:1/-1}
 .ix-m .hr{margin-top:36px}
 .ix-lead figure{grid-column:1/-1;aspect-ratio:4/5;max-height:72svh}
 .ix-lead .tx{grid-column:1/-1;margin-top:32px}
 .ix-lead .w{padding-top:64px;padding-bottom:64px}
 .ix-acts{grid-template-columns:minmax(0,1fr);gap:40px}
 .ix-rows a,.ix-rows .row{grid-template-columns:minmax(0,1fr) auto;gap:4px 16px}
 .ix-rows .f{grid-column:1;grid-row:1}
 .ix-rows b{grid-column:1;grid-row:2}
 .ix-rows .own{grid-column:1;grid-row:3}
 .ix-rows .ar-i{grid-column:2;grid-row:1/4}
 .ix-svc{grid-template-columns:minmax(0,1fr)}
 .ix-all ul{columns:1}
 .ix-auth{grid-template-columns:minmax(0,1fr)}
 .ia-h{padding:116px 0 40px}
 .ia-h .hr{margin-top:28px}
 .ia-b{padding:48px 0 72px}
 .ia-body{grid-column:1/-1;font-size:17px}
 .ia-fig{grid-template-columns:minmax(0,1fr)}
 .ia-svc{grid-template-columns:minmax(0,1fr);margin-top:64px}
}

/* R77: article images now carry width and height (space reserved before they load); keep their proportions when max-width scales them down */
.ia-body img{height:auto}

/* R81 (full-site audit, 390 px): a long unbroken link in an article body widened the whole mobile layout (up to 655 px on a 390 px screen); text and links in the body may wrap anywhere they must */
.ia-body{overflow-wrap:break-word}.ia-body a{overflow-wrap:anywhere}
