/* ═══════════════════════════════════════════════════════════════
   SOSNOVSKY · CASE PAGES v2
   Shared layout for case-detail pages
   ═══════════════════════════════════════════════════════════════ */

.case-hero{max-width:var(--max);margin:0 auto;padding:48px 24px 56px;border-bottom:1px solid var(--border-soft)}
.case-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.case-chip{font-family:var(--mono);font-size:11px;color:var(--text-dim);padding:5px 11px;border:1px solid var(--border);border-radius:5px;letter-spacing:0.3px;background:var(--bg-card)}
.case-chip.country{color:var(--accent-light);border-color:rgba(108,92,231,0.35)}
.case-brand-row{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--border-soft)}
.case-logo{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:15px;font-weight:700;color:#fff;letter-spacing:0;flex-shrink:0;background:linear-gradient(135deg,var(--accent),#8478e0)}
.case-brand-info b{display:block;font-size:18px;color:var(--text-bright);font-weight:700;letter-spacing:-0.01em;margin-bottom:3px}
.case-brand-info span{font-family:var(--mono);font-size:11.5px;color:var(--text-dim);text-transform:uppercase;letter-spacing:0.4px;line-height:1.5}
.case-hero h1{font-size:clamp(30px,4.2vw,48px);font-weight:800;line-height:1.06;letter-spacing:-0.025em;color:var(--text-bright);margin-bottom:18px;text-wrap:balance}
.case-hero h1 em{font-style:normal;color:var(--accent-light)}
.case-hero p.sub{font-size:17px;color:var(--text-dim);max-width:760px;line-height:1.6;margin-bottom:0}

.case-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:14px;overflow:hidden;margin-top:36px}
@media(max-width:900px){.case-stats{grid-template-columns:repeat(2,1fr)}}
.case-stat{padding:22px 20px;background:var(--bg-card)}
.case-stat b{display:block;font-family:var(--mono);font-size:22px;font-weight:700;color:var(--text-bright);letter-spacing:-0.02em;line-height:1}
.case-stat.lead b{color:var(--accent-light)}
.case-stat .lbl{font-size:12.5px;color:var(--text);margin-top:8px;line-height:1.35}
.case-stat .note{font-family:var(--mono);font-size:10.5px;color:var(--text-dim);text-transform:uppercase;letter-spacing:0.4px;margin-top:6px;line-height:1.4}

.owner-quote{margin-top:36px;padding:28px 32px;border:1px solid var(--border);border-radius:14px;background:var(--bg-card);display:grid;grid-template-columns:48px 1fr;gap:20px;align-items:start}
@media(max-width:600px){.owner-quote{grid-template-columns:1fr}}
.owner-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#6c5ce7,#a29bfe);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:14px;color:#fff;font-weight:700}
.owner-quote .q{font-size:16px;line-height:1.55;color:var(--text);margin-bottom:14px;text-wrap:pretty}
.owner-quote .q::before{content:'"';color:var(--accent-light);font-size:22px;font-family:Georgia,serif;line-height:0;vertical-align:0.1em;margin-right:2px}
.owner-quote .q::after{content:'"';color:var(--accent-light);font-size:22px;font-family:Georgia,serif;line-height:0;vertical-align:0.1em}
.owner-quote .by{font-family:var(--mono);font-size:11px;color:var(--text-dim);letter-spacing:0.3px;display:flex;flex-wrap:wrap;gap:6px 10px}
.owner-quote .by b{font-family:var(--sans);color:var(--text);font-weight:600;font-size:13px;letter-spacing:-0.005em;text-transform:none}

.context-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}
@media(max-width:760px){.context-grid{grid-template-columns:1fr}}
.context-card{padding:24px 26px;border:1px solid var(--border);border-radius:14px;background:var(--bg-card)}
.context-card h3{font-family:var(--mono);font-size:11.5px;color:var(--accent-light);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:16px;font-weight:600;padding-bottom:12px;border-bottom:1px solid var(--border-soft)}
.context-card.bad h3{color:var(--red)}
.context-card ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.context-card li{font-size:13.5px;color:var(--text);line-height:1.55;padding-left:18px;position:relative}
.context-card.good li::before{content:'+';position:absolute;left:0;top:0;font-family:var(--mono);font-weight:700;color:var(--green)}
.context-card.bad li::before{content:'−';position:absolute;left:0;top:0;font-family:var(--mono);font-weight:700;color:var(--red)}

.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:14px;overflow:hidden}
@media(max-width:760px){.action-grid{grid-template-columns:1fr}}
.action{padding:26px;background:var(--bg-card)}
.action .n{font-family:var(--mono);font-size:11px;color:var(--accent-light);letter-spacing:0.5px;margin-bottom:14px;font-weight:600}
.action h3{font-size:17px;font-weight:700;color:var(--text-bright);letter-spacing:-0.01em;line-height:1.3;margin-bottom:10px}
.action p{font-size:14px;color:var(--text-dim);line-height:1.6}
.action p b{color:var(--text)}

.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:760px){.result-grid{grid-template-columns:1fr}}
.result-card{padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--bg-card)}
.result-card .n{font-family:var(--mono);font-size:11px;color:var(--accent-light);letter-spacing:0.5px;margin-bottom:12px;font-weight:600}
.result-card h3{font-size:16px;font-weight:600;color:var(--text-bright);letter-spacing:-0.005em;line-height:1.3;margin-bottom:8px}
.result-card p{font-size:13.5px;color:var(--text-dim);line-height:1.6}
.result-card b{color:var(--text-bright);font-weight:600}

/* ─── CHANNELS TABLE — was / did / became ─── */
.ch-table{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--bg-card)}
.ch-thead{display:grid;grid-template-columns:1.2fr 1fr 1.6fr 1.2fr;gap:0;background:var(--bg-soft);border-bottom:1px solid var(--border)}
.ch-thead > div{padding:14px 18px;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:0.5px;color:var(--text-dim);font-weight:600;border-right:1px solid var(--border-soft)}
.ch-thead > div:last-child{border-right:none}
.ch-row{display:grid;grid-template-columns:1.2fr 1fr 1.6fr 1.2fr;gap:0;border-bottom:1px solid var(--border-soft)}
.ch-row:last-child{border-bottom:none}
.ch-row > div{padding:18px;font-size:13.5px;color:var(--text-dim);line-height:1.55;border-right:1px solid var(--border-soft)}
.ch-row > div:last-child{border-right:none}
.ch-row > div.name{font-size:14px;color:var(--text)}
.ch-row > div.name b{display:block;color:var(--text-bright);font-weight:600;letter-spacing:-0.005em;margin-bottom:3px;font-size:14.5px}
.ch-row > div.name span{font-family:var(--mono);font-size:10.5px;color:var(--text-dim);text-transform:uppercase;letter-spacing:0.4px}
.ch-row > div.result{color:var(--text)}
.ch-row > div.result b{color:var(--text-bright);font-weight:600}
.ch-row.highlight{background:rgba(108,92,231,0.04)}
@media(max-width:880px){
  .ch-thead{display:none}
  .ch-row{grid-template-columns:1fr}
  .ch-row > div{border-right:none;border-bottom:1px dashed var(--border-soft)}
  .ch-row > div:last-child{border-bottom:none}
  .ch-row > div::before{content:attr(data-l) ' · ';color:var(--accent-light);font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:0.4px}
  .ch-row > div.name::before{display:none}
}

/* Tools / stack chips */
.case-stack{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.stack-chip{font-family:var(--mono);font-size:11px;color:var(--text);padding:5px 10px;border:1px solid var(--border);border-radius:4px;letter-spacing:0.3px;background:var(--bg-card)}
.stack-chip.tool{color:var(--accent-light);border-color:rgba(108,92,231,0.3)}

/* Logo colors per case */
.logo.mbl{background:linear-gradient(135deg,#6c5ce7,#8f7dff)}
.logo.atl{background:linear-gradient(135deg,#ff8a65,#d84315)}
.logo.mx{background:linear-gradient(135deg,#37474f,#90a4ae)}
.logo.ae{background:linear-gradient(135deg,#c2185b,#7b1fa2)}
.logo.mn{background:linear-gradient(135deg,#f4c95d,#f39c12);color:#241700}
.logo.rr{background:linear-gradient(135deg,#455a64,#7f8c8d)}
.logo.gr{background:linear-gradient(135deg,#37474f,#546e7a)}
.logo.pe{background:linear-gradient(135deg,#e91e63,#ff80ab)}
.logo.ck{background:linear-gradient(135deg,#00838f,#4dd0e1)}
.logo.mi{background:linear-gradient(135deg,#5e35b1,#9575cd)}
