/* Growth Strategy · 03 research ledger — ruled rows question → method → output, photo beside */
.cgs-ledger{background:var(--paper-2)}
.cgs-lg{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(20px,2.4vw,32px);align-items:start}
.cgs-lg__table{grid-column:1 / span 8;min-width:0;border-top:2px solid var(--ink)}
.cgs-lg__side{grid-column:9 / 13;min-width:0;position:sticky;top:var(--cgs-sticky)}

.cgs-lg__cols,.cgs-lg__row{display:grid;grid-template-columns:52px minmax(0,1.25fr) minmax(0,1fr) 164px;column-gap:clamp(16px,2vw,28px)}
.cgs-lg__cols{padding:14px 0;border-bottom:1px solid var(--line-3)}
.cgs-lg__cols span{font-family:var(--f);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--faint);line-height:1.3}
.cgs-lg__row{position:relative;padding:30px 0 28px;border-bottom:1px solid var(--line-3);cursor:default;outline:0;transition:background var(--d2) var(--e)}
.cgs-lg__row::before{content:"";position:absolute;left:0;top:-1px;bottom:-1px;width:3px;background:var(--blue);transform:scaleY(0);transform-origin:top;transition:transform .45s var(--e)}
.cgs-lg__row.is-on::before{transform:none}
.cgs-lg__row:focus-visible{box-shadow:inset 0 0 0 2px var(--blue)}
.cgs-lg__n{padding-left:16px;font-family:var(--f);font-size:var(--t-sm);color:var(--faint);font-variant-numeric:tabular-nums;line-height:1.5;transition:color var(--d2)}
.cgs-lg__row.is-on .cgs-lg__n{color:var(--blue)}
.cgs-lg__h{margin:0;font-family:var(--f-h);font-weight:500;font-size:clamp(1.12rem,1.45vw,1.36rem);letter-spacing:-.012em;line-height:1.22;color:var(--ink)}
.cgs-lg__ask{margin:10px 0 0;font-size:var(--t-body);line-height:1.6;color:var(--txt)}
.cgs-lg__m p{margin:0;font-size:var(--t-sm);line-height:1.65;color:var(--txt)}
.cgs-lg__m p+p{margin-top:10px}
.cgs-lg__m .cgs-lg__d{color:var(--muted)}
.cgs-lg__m p:first-child::before{content:"Method";display:none;margin-bottom:6px;font-family:var(--f);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.cgs-lg__cols span:nth-child(4){text-align:right}
.cgs-lg__o{display:flex;justify-content:flex-end;align-items:flex-start}
.cgs-lg__tag{display:inline-block;padding:7px 10px;border:1px solid var(--line-3);border-radius:var(--r-xs);background:var(--paper);font-family:var(--f);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);line-height:1.35;text-align:right;transition:border-color var(--d2),color var(--d2)}
.cgs-lg__row.is-on .cgs-lg__tag{border-color:var(--blue);color:var(--blue-d)}

/* photo stack + caption */
.cgs-lg__frame{position:relative;aspect-ratio:4/5;max-width:100%;border-radius:var(--r-sm);overflow:hidden;background:var(--paper-4)}
.cgs-lg__ph{position:absolute;inset:0;border-radius:0;opacity:0;clip-path:inset(0 0 100% 0);transition:opacity .01s linear .7s,clip-path .7s var(--e)}
.cgs-lg__ph.is-on{opacity:1;clip-path:inset(0);z-index:1;transition:clip-path .7s var(--e)}
.cgs-lg__ph img{transform:scale(1.06);transition:transform 1.4s var(--e)}
.cgs-lg__ph.is-on img{transform:none}
.cgs-lg__cap{display:flex;gap:14px;align-items:baseline;margin-top:14px;padding-top:12px;border-top:1px solid var(--line-3)}
.cgs-lg__cn{flex:none;font-family:var(--f);font-size:var(--t-xs);color:var(--faint);font-variant-numeric:tabular-nums}
.cgs-lg__cn b{font-weight:500;color:var(--ink)}
.cgs-lg__ct{font-size:var(--t-sm);color:var(--txt);line-height:1.5}

@media (max-width:1100px){
  .cgs-lg__cols,.cgs-lg__row{grid-template-columns:44px minmax(0,1fr) minmax(0,1fr)}
  .cgs-lg__cols span:nth-child(4){display:none}
  .cgs-lg__o{grid-column:2 / -1;justify-content:flex-start;margin-top:16px}
}
@media (max-width:1023px){
  .cgs-lg__table{grid-column:1 / -1}
  .cgs-lg__side{display:none}
}
@media (max-width:640px){
  .cgs-lg__cols{display:none}
  .cgs-lg__m p:first-child::before{display:block}
  .cgs-lg__row{grid-template-columns:36px minmax(0,1fr);row-gap:14px;padding:24px 0}
  .cgs-lg__n{padding-left:12px}
  .cgs-lg__m,.cgs-lg__o{grid-column:2 / -1;margin-top:0}
  .cgs-lg__tag{text-align:left}
}
