/* LOCO 4.0 in the portfolio editorial case system. */
.case-modal-detail.loco-page .experience-layout { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 34px; align-items: start; }
.case-modal-detail.loco-page .experience-points { display: grid; gap: 0; border-top: 1px solid var(--line); }
.case-modal-detail.loco-page .experience-points article { padding: 20px 0 21px; border-bottom: 1px solid var(--line); }
.case-modal-detail.loco-page .experience-points article > span { color: var(--accent); font: 12px var(--serif); letter-spacing: .08em; }
.case-modal-detail.loco-page .experience-points h3 { margin: 9px 0 6px; color: var(--ink); font: 500 19px/1.45 var(--serif); }
.case-modal-detail.loco-page .experience-points p { margin: 0; color: #53605a; font-size: 13px; line-height: 1.75; }
.case-modal-detail.loco-page .governance-summary { display: grid; grid-template-columns: .8fr 1.7fr; gap: 35px; align-items: center; margin: 12px 0 38px; padding: 25px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.case-modal-detail.loco-page .governance-lead { padding-right: 24px; border-right: 1px solid var(--line); }
.case-modal-detail.loco-page .governance-lead strong { color: var(--accent); font: 500 54px/.95 var(--serif); letter-spacing: -.04em; }
.case-modal-detail.loco-page .governance-lead > span { margin-left: 10px; color: var(--muted); font-size: 13px; }
.case-modal-detail.loco-page .governance-lead p { margin: 10px 0 0; color: #53605a; font-size: 13px; }
.case-modal-detail.loco-page .governance-lead p b { color: var(--ink); }
.case-modal-detail.loco-page .governance-figures { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.case-modal-detail.loco-page .governance-figures strong { display: block; color: var(--ink); font: 500 30px/1.1 var(--serif); }
.case-modal-detail.loco-page .governance-figures span { display: block; margin-top: 8px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.case-modal-detail.loco-page .research-results { display: grid; grid-template-columns: minmax(220px, .65fr) minmax(0, 1.35fr); gap: 42px; align-items: center; margin: 36px 0 52px; padding: 26px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.case-modal-detail.loco-page .research-heading > span, .case-modal-detail.loco-page .outcome-heading > span { color: var(--ink); font: 500 20px/1.4 var(--serif); }
.case-modal-detail.loco-page .research-heading p { max-width: 340px; margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.7; }
.case-modal-detail.loco-page .research-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.case-modal-detail.loco-page .research-metrics article { display: grid; grid-template-columns: 1fr; align-content: start; }
.case-modal-detail.loco-page .research-metrics strong { color: var(--accent); font: 500 clamp(30px, 4vw, 46px)/1.05 var(--serif); letter-spacing: -.04em; }
.case-modal-detail.loco-page .research-metrics span { margin-top: 9px; color: #53605a; font-size: 12px; line-height: 1.55; }
.case-modal-detail.loco-page .research-metrics a, .case-modal-detail.loco-page .outcome-heading a { width: fit-content; margin-top: 10px; color: var(--muted); font-size: 11px; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.case-modal-detail.loco-page .outcome-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.case-modal-detail.loco-page .outcome-heading a { margin: 0; }
.case-modal-detail.loco-page .business-outcomes { display: grid; grid-template-columns: 1.45fr .7fr .9fr; gap: 30px; padding-top: 21px; }
.case-modal-detail.loco-page .business-outcome h3 { margin: 0 0 10px; color: var(--moss); font: 500 15px/1.4 var(--serif); }
.case-modal-detail.loco-page .business-outcome dl { margin: 0; }
.case-modal-detail.loco-page .business-outcome dl > div { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-top: 1px solid var(--line); }
.case-modal-detail.loco-page .business-outcome dt { color: #53605a; font-size: 12px; line-height: 1.5; }
.case-modal-detail.loco-page .business-outcome dd { flex: 0 0 auto; margin: 0; color: var(--ink); font: 500 15px/1.5 var(--serif); }
.case-modal-detail.loco-page { --ink: var(--case-text); --muted: var(--case-muted); --accent: var(--case-accent); --moss: var(--case-text); --line: var(--case-line); --loco-accent: var(--case-accent); --loco-rule: var(--case-line); --serif: var(--font-sans); --sans: var(--font-sans); }
.case-modal-detail.loco-page .case-hero { padding: 18px 0 42px; }
.case-modal-detail.loco-page .visual-heading { max-width: none; }
.case-modal-detail.loco-page .visual-heading h2 { font-family: var(--font-sans); font-size: clamp(25px, 3vw, 36px); }
.case-modal-detail.loco-page .primary-outcomes { gap: 12px; border: 0; }
.case-modal-detail.loco-page .primary-outcomes article { padding: 22px 16px; border: 1px solid var(--case-line); border-radius: 14px; background: var(--case-panel); }
.case-modal-detail.loco-page .primary-outcomes strong { font-family: var(--font-sans); font-size: clamp(28px, 3.2vw, 40px); }
.case-modal-detail.loco-page .primary-outcomes span,
.case-modal-detail.loco-page .business-outcome dt,
.case-modal-detail.loco-page .experience-points p,
.case-modal-detail.loco-page .governance-lead p,
.case-modal-detail.loco-page .contributors-details summary { color: var(--case-muted); }
.case-modal-detail.loco-page .research-results { margin: 28px 0; }
.case-modal-detail.loco-page .research-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.case-modal-detail.loco-page .research-metrics strong { display: block; font-size: 32px; }
.case-modal-detail.loco-page .research-metrics span { font-size: 11px; color: var(--case-muted); }
.case-modal-detail.loco-page .experience-layout { grid-template-columns: 1fr; }
.case-modal-detail.loco-page .experience-points { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.case-modal-detail.loco-page .experience-points h3 { font-family: var(--font-sans); }
.case-modal-detail.loco-page .factory-cover { display: block; border: 1px solid var(--case-line); border-radius: 16px; background: var(--case-panel); }
.case-modal-detail.loco-page .factory-cover a { display: block; line-height: 0; }
.case-modal-detail.loco-page .factory-cover img { width: 100%; height: auto; object-fit: contain; }
.case-modal-detail.loco-page .visual-style-overview { grid-column: 1 / -1; }
.case-modal-detail.loco-page .loco-ip-group img,
.case-modal-detail.loco-page .loco-ip-card img { aspect-ratio: auto; object-fit: contain; }
.case-modal-detail.loco-page .loco-system-stats { gap: 12px; }
.case-modal-detail.loco-page .loco-system-stats strong { font-family: var(--font-sans); }
.case-modal-detail.loco-page .visual-case { padding-top: 48px; }
.loco-standalone { background: #0d0d12; color: #f3f2f6; --paper: #0d0d12; --ink: #f3f2f6; --muted: #a5a5b2; --line: rgba(255,255,255,.13); --accent: #f05245; }
html:has(.loco-standalone) { background: #0d0d12; }
.loco-standalone .project-main { width: min(1100px, calc(100% - 88px)); margin: 0 auto; }
.loco-standalone .topbar { border-bottom: 1px solid var(--line); }
.loco-standalone .brand-name { font-family: var(--font-sans); font-size: 15px; }
.loco-standalone .brand-mark { filter: brightness(0) invert(1); }
.loco-standalone .nav { color: #c2c2cc; }
.loco-standalone .case-hero { padding-top: 56px !important; }
.loco-standalone .crumbs { padding-top: 24px; color: var(--muted); }
.loco-standalone .case-cta { background: #14141b; border-top: 1px solid var(--line); }
.loco-standalone .case-footer { margin-bottom: 28px; }
@media(max-width: 760px) {
 .case-modal-detail.loco-page .primary-outcomes, .case-modal-detail.loco-page .loco-system-stats { grid-template-columns: 1fr 1fr; }
 .case-modal-detail.loco-page .primary-outcomes article { padding: 18px 12px; }
 .case-modal-detail.loco-page .primary-outcomes strong { font-size: 28px; }
 .case-modal-detail.loco-page .research-results, .case-modal-detail.loco-page .business-outcomes, .case-modal-detail.loco-page .governance-summary, .case-modal-detail.loco-page .experience-points { grid-template-columns: 1fr; gap: 20px; }
 .case-modal-detail.loco-page .governance-figures { grid-template-columns: 1fr 1fr; }
 .case-modal-detail.loco-page .governance-lead { border-right: 0; }
 .case-modal-detail.loco-page .business-outcome:first-child { grid-row: auto; }
 .case-modal-detail.loco-page .loco-ip-roster { grid-template-columns: 1fr; }
 .loco-standalone .project-main { width: calc(100% - 40px); }
 .loco-standalone .topbar.shell { width: calc(100% - 40px); }
 .loco-standalone .nav { gap: 16px; }
}

.case-modal-overlay.has-loco-case .case-modal-sheet { padding-top: 94px; }
.case-modal-overlay.has-loco-case .modal-close { top: 24px; }
@media(max-width: 760px) {
 .case-modal-overlay.has-loco-case .case-modal-sheet { padding-top: 76px; }
 .case-modal-overlay.has-loco-case .modal-close { top: 16px; right: 20px; }
 .case-modal-detail.loco-page .case-lead { font-size: 14px; }
}

/* Lead with a single-line project title and three verified headline results. */
.case-modal-detail.loco-page.aligned-case .case-hero h1 {
  max-width:none;
  white-space:nowrap;
  font-size:clamp(32px,4vw,56px);
}
.case-modal-detail.loco-page .loco-hero-stats {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:30px;
}
.case-modal-detail.loco-page .loco-hero-stat {
  display:flex;
  align-items:center;
  gap:20px;
  min-width:0;
  min-height:164px;
  padding:25px 28px;
  border:1px solid var(--case-line);
  border-radius:16px;
  background:var(--case-panel);
}
.case-modal-detail.loco-page .loco-hero-stat>strong {
  display:flex;
  align-items:baseline;
  gap:3px;
  color:var(--case-accent);
  font:500 clamp(42px,4vw,58px)/1 var(--font-mono);
  letter-spacing:-.07em;
  white-space:nowrap;
}
.case-modal-detail.loco-page .loco-hero-stat>strong small { font-size:.36em; letter-spacing:0; }
.case-modal-detail.loco-page .loco-hero-stat>div { display:grid; gap:8px; min-width:0; }
.case-modal-detail.loco-page .loco-hero-stat span { color:var(--case-text); font-size:15px; font-weight:550; line-height:1.5; }
.case-modal-detail.loco-page .loco-hero-stat>div>small { color:var(--case-muted); font-size:11px; line-height:1.6; }
@media(max-width:1100px) {
  .case-modal-detail.loco-page .loco-hero-stat { flex-direction:column; align-items:flex-start; justify-content:center; }
}
@media(max-width:760px) {
  .case-modal-detail.loco-page.aligned-case .case-hero h1 { font-size:clamp(17px,4.5vw,30px); }
  .case-modal-detail.loco-page .loco-hero-stats { grid-template-columns:1fr; gap:14px; }
  .case-modal-detail.loco-page .loco-hero-stat { flex-direction:row; align-items:center; justify-content:flex-start; min-height:132px; padding:24px; }
}
