.odm-case{--odm-surface:#f2f3f4;--odm-surface-raised:#fff;--odm-ink:#111318;--odm-muted:#646a73;--odm-line:rgba(28,34,43,.12)}
html.route-odm body.case-detail-page #constructionCase .case-brand-line{display:flex;align-items:center;gap:12px;margin-bottom:26px;color:rgb(95,102,114)!important;font-size:18px!important;font-weight:400!important;line-height:1.2!important;letter-spacing:.04em!important}
html.route-odm body.case-detail-page #constructionCase .case-brand-divider{width:1px;height:24px;flex:0 0 1px;background:rgb(111,114,120)}
html.route-odm body.case-detail-page #constructionCase .case-brand-en{letter-spacing:.12em}
body.case-detail-page .odm-case .construction-hero-grid{grid-template-columns:minmax(0,.92fr) minmax(27.5rem,1.08fr);gap:clamp(3rem,7vw,7rem)}
.odm-case .construction-hero-copy{min-width:0}.odm-case .construction-hero h1{max-width:12ch}.odm-case .case-hero-quote{margin-top:34px}

/* ODM now uses the same two-column, media-led hero proportions as the other case studies. */
.odm-case .odm-placeholder{padding:clamp(1.75rem,4vw,3.5rem);border:1px dashed rgba(79,111,137,.32);background:var(--odm-surface)!important;box-shadow:var(--ui-shadow-low)}
.odm-case .odm-placeholder>div{width:min(100%,44rem);max-width:none;padding:clamp(1.5rem,3vw,2.5rem);border:1px solid rgba(28,34,43,.08);border-radius:calc(var(--ui-radius) - 2px);background:rgba(255,255,255,.76);text-align:center}
.odm-case .odm-placeholder span{display:block;margin-bottom:14px;color:var(--case-blue);font-size:11px;font-weight:600;letter-spacing:.12em}
.odm-case .odm-placeholder b{display:block;color:var(--odm-ink);font-size:clamp(1.45rem,2.3vw,2.15rem);font-weight:400;line-height:1.16}
.odm-case .odm-placeholder p{max-width:39rem;margin:20px auto 0;color:var(--odm-muted);font-size:14px;line-height:1.75}
.odm-case .odm-hero-placeholder{aspect-ratio:16/10;min-height:0}
.odm-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:36px;border-top:1px solid var(--case-line);border-bottom:1px solid var(--case-line)}
.odm-principles article{min-width:0;padding:24px}.odm-principles article+article{border-left:1px solid var(--case-line)}.odm-principles strong{font-size:16px}.odm-principles p{margin:8px 0 0;color:var(--odm-muted);font-size:13px;line-height:1.65}
.odm-case .odm-background-section .dossier-turning-grid{align-items:start}.odm-case .odm-background-section .dossier-turning-grid>header{position:static;top:auto}.odm-case .odm-background-section .dossier-turning-grid>header h2{max-width:none}
.odm-case>.control-room-section{background:transparent!important;color:var(--odm-ink)!important}.odm-case .control-room-grid{align-items:stretch}
.odm-case .control-room-grid>header{display:flex;min-width:0;flex-direction:column;justify-content:center;align-items:flex-start;background:transparent;text-align:left}
.odm-case .control-room-grid>header h2{width:100%;max-width:none;margin:0;color:var(--odm-ink)!important;text-align:left}.odm-case .control-room-grid>header p{width:100%;max-width:34rem;margin:28px 0 0;color:var(--odm-muted)!important;text-align:left}
.odm-case .control-room{align-self:stretch;background:#111419;color:#fff}.odm-case .control-room[data-service-flow] .control-phase-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.odm-case .control-room[data-service-flow] .control-phase-tabs::-webkit-scrollbar{display:none}
.odm-case .control-room[data-service-flow] .control-phase-tabs button{min-height:4rem;white-space:nowrap}.odm-case .control-room[data-service-flow] .control-phase-panel{display:flex;min-height:clamp(25rem,34vw,31rem);flex-direction:column;padding:clamp(2.5rem,5vw,5rem)}
.odm-case .control-room[data-service-flow] .control-phase-panel[hidden],.odm-case .odm-scenarios .growth-playbook-panel[hidden]{display:none!important}
.odm-case .control-room[data-service-flow] .control-phase-panel h3{max-width:none;margin:1.15rem 0 1.75rem;font-size:clamp(1.55rem,1.85vw,2rem)!important;line-height:1.12!important}.odm-case .control-room[data-service-flow] .control-phase-panel>p{max-width:64rem;flex:0 0 auto}
.odm-case .control-room[data-service-flow] .control-phase-panel dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,4vw,4rem);margin-top:auto}
.odm-case .odm-workbench-section .case-section-head,.odm-case .odm-scenarios-section .case-section-head,.odm-case .odm-proof .case-section-head{grid-template-columns:minmax(0,1.7fr) minmax(17rem,.62fr);gap:clamp(2.5rem,5vw,5rem)}
.odm-case .odm-workbench-section .case-section-head h2,.odm-case .odm-scenarios-section .case-section-head h2,.odm-case .odm-proof .case-section-head h2{width:100%;max-width:none}.odm-case .odm-system-placeholder,.odm-case .odm-crm-placeholder{aspect-ratio:16/9;min-height:0}
.odm-case .odm-workbench-media{position:relative;aspect-ratio:4/3;min-height:0;padding:0;overflow:hidden;border:1px solid var(--odm-line);background:var(--odm-surface-raised)!important}
.odm-case .odm-workbench-media img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.odm-case .odm-scenarios{background:var(--odm-surface-raised)}.odm-case .odm-scenarios .growth-playbook-tabs{flex-wrap:wrap}.odm-case .odm-scenarios .growth-playbook-panel{min-height:0}.odm-case .odm-scenarios .growth-playbook-panel h3{max-width:22ch}.odm-case .odm-scenarios .growth-playbook-panel li strong{display:inline-block;margin-bottom:7px;color:var(--odm-ink)}
.odm-dossier{min-width:0;border-top:1px solid var(--odm-line);background:var(--odm-surface-raised)}
.odm-dossier details{border-bottom:1px solid var(--odm-line)}
.odm-dossier summary{display:grid;grid-template-columns:2.5rem minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1.35rem 1.5rem;cursor:pointer;list-style:none}
.odm-dossier summary::-webkit-details-marker{display:none}.odm-dossier summary span{color:var(--case-blue);font-size:11px;letter-spacing:.1em}.odm-dossier summary b{font-size:17px;font-weight:500}.odm-dossier summary em{color:var(--odm-muted);font-size:12px;font-style:normal}
.odm-dossier details[open] summary{background:var(--odm-surface)}.odm-dossier details[open] summary b{color:var(--case-blue)}
.odm-dossier-body{padding:clamp(1.75rem,4vw,3.25rem);border-top:1px solid var(--odm-line)}.odm-dossier-body h3{max-width:22ch;margin:0;font-size:clamp(1.6rem,2.4vw,2.35rem);font-weight:400;line-height:1.12}.odm-dossier-body>p{max-width:48rem;margin:1.3rem 0 2.4rem;color:var(--odm-muted);font-size:14px;line-height:1.8}.odm-dossier-body dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin:0}.odm-dossier-body dl div{padding-top:1rem;border-top:1px solid var(--odm-line)}.odm-dossier-body dt{color:var(--case-blue);font-size:11px;letter-spacing:.08em}.odm-dossier-body dd{margin:.65rem 0 0;font-size:13px;line-height:1.65}
.odm-decision-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--odm-line);border-bottom:1px solid var(--odm-line)}.odm-decision-board article{min-width:0;padding:clamp(1.75rem,3vw,2.75rem)}.odm-decision-board article+article{border-left:1px solid var(--odm-line)}.odm-decision-board article>span{color:var(--case-blue);font-size:11px;letter-spacing:.09em}.odm-decision-board h3{min-height:3.1em;margin:2.2rem 0 1rem;font-size:clamp(1.35rem,1.7vw,1.75rem);font-weight:400;line-height:1.16}.odm-decision-board p{min-height:7em;margin:0;color:var(--odm-muted);font-size:13px;line-height:1.75}.odm-decision-board dl{margin:2rem 0 0}.odm-decision-board dl div{padding:.85rem 0;border-top:1px solid var(--odm-line)}.odm-decision-board dt{font-size:11px;color:var(--odm-muted)}.odm-decision-board dd{margin:.4rem 0 0;font-size:13px;line-height:1.55}
.odm-crm-rail{display:grid;grid-column:2;grid-row:1;grid-template-columns:1fr 1fr;border-top:1px solid var(--odm-line);border-bottom:1px solid var(--odm-line)}.odm-crm-rail article{min-width:0;padding:1.5rem}.odm-crm-rail article:nth-child(even){border-left:1px solid var(--odm-line)}.odm-crm-rail article:nth-child(n+3){border-top:1px solid var(--odm-line)}.odm-crm-rail span{color:var(--case-blue);font-size:11px}.odm-crm-rail h3{margin:1.25rem 0 .65rem;font-size:17px;font-weight:500}.odm-crm-rail p{margin:0;color:var(--odm-muted);font-size:12px;line-height:1.65}
.odm-case .odm-feedback-section .exception-console-grid{grid-template-columns:minmax(31rem,.84fr) minmax(0,1.16fr);gap:clamp(3rem,5vw,5.5rem);align-items:start}.odm-case .odm-feedback-section .exception-console-grid>header h2{max-width:none}.odm-case .odm-feedback-section .exception-console{grid-column:2;grid-row:1}.odm-case .odm-metrics,.odm-case .odm-feedback-section .odm-crm-placeholder{grid-column:1/-1;width:100%}
.odm-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.odm-metrics article{min-width:0;padding:28px;border:1px solid var(--odm-line);border-radius:var(--ui-radius);background:var(--odm-surface-raised);box-shadow:var(--ui-shadow-low)}.odm-metrics strong{display:block;font-size:clamp(2.75rem,5vw,4.75rem);font-weight:300;line-height:1;letter-spacing:-.05em}.odm-metrics span{display:block;margin-top:18px;font-size:14px;font-weight:500}.odm-metrics p{margin:10px 0 0;color:var(--odm-muted);font-size:12px;line-height:1.65}.odm-case .odm-crm-placeholder{margin-top:6px}
.odm-case .odm-outcomes{grid-template-columns:repeat(4,minmax(0,1fr))}.odm-case .odm-proof-grid{grid-template-columns:1.25fr .75fr}.odm-case .odm-team-placeholder{min-height:0;aspect-ratio:4/3}.odm-case .case-close h2 span{display:block}
@media(min-width:1101px){.odm-case .control-room-grid{display:grid;grid-template-columns:minmax(31rem,.86fr) minmax(0,1.14fr);gap:clamp(3rem,5vw,5.5rem);align-items:start}.odm-case .control-room-grid>header{position:sticky;top:7rem;align-self:start;min-height:30rem}}
@media(max-width:1100px){body.case-detail-page .odm-case .construction-hero-grid,.odm-case .control-room-grid,.odm-case .odm-feedback-section .exception-console-grid,.odm-case .odm-workbench-section .case-section-head,.odm-case .odm-scenarios-section .case-section-head,.odm-case .odm-proof .case-section-head{grid-template-columns:1fr}.odm-case .control-room-grid{min-height:0}.odm-case .control-room-grid>header,.odm-case .odm-background-section .dossier-turning-grid>header{position:static;top:auto}.odm-crm-rail{grid-column:1;grid-row:auto}.odm-case .odm-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:700px){html.route-odm body.case-detail-page #constructionCase .case-brand-line{gap:9px;font-size:15px!important}.odm-principles,.odm-case .odm-outcomes,.odm-case .odm-proof-grid,.odm-case .odm-metrics,.odm-decision-board,.odm-crm-rail{grid-template-columns:1fr}.odm-principles article+article,.odm-decision-board article+article{border-left:0;border-top:1px solid var(--odm-line)}.odm-dossier summary{grid-template-columns:2rem minmax(0,1fr)}.odm-dossier summary em{grid-column:2}.odm-dossier-body dl{grid-template-columns:1fr}.odm-decision-board h3,.odm-decision-board p{min-height:0}.odm-crm-rail article:nth-child(even){border-left:0}.odm-crm-rail article+article{border-top:1px solid var(--odm-line)}.odm-case .odm-placeholder{padding:1rem}.odm-case .odm-placeholder>div{padding:1.35rem 1.1rem}}
@media(prefers-reduced-motion:reduce){.odm-case .control-phase-tabs button,.odm-case .growth-playbook-tabs button{transition:none}}

/* ODM case: annotated editorial typography and compact media layout. */
html.route-odm body.case-detail-page #constructionCase .case-brand-line{
  flex-wrap:nowrap;
  gap:10px;
  margin-bottom:24px;
  font-size:14px!important;
  white-space:nowrap;
}

html.route-odm body.case-detail-page #constructionCase .case-brand-divider{
  height:18px;
}

html.route-odm body.case-detail-page #constructionCase .construction-hero h1{
  color:rgb(10,10,10)!important;
  border-color:rgb(10,10,10)!important;
  font-weight:300!important;
  line-height:1.03!important;
}

html.route-odm body.case-detail-page #constructionCase #odm-background-title,
html.route-odm body.case-detail-page #constructionCase #odm-control-title,
html.route-odm body.case-detail-page #constructionCase #odm-workbench-title,
html.route-odm body.case-detail-page #constructionCase #odm-scenarios-title,
html.route-odm body.case-detail-page #constructionCase #odm-feedback-title,
html.route-odm body.case-detail-page #constructionCase #odm-proof-title{
  color:rgb(10,10,10)!important;
  border-color:rgb(229,231,235)!important;
  font-size:40px!important;
  font-weight:200!important;
  line-height:1.15!important;
  letter-spacing:-.035em!important;
}

html.route-odm body.case-detail-page #constructionCase #odm-background-title span{
  display:block;
}

html.route-odm body.case-detail-page #constructionCase .odm-workbench-section .case-section-head,
html.route-odm body.case-detail-page #constructionCase .odm-scenarios-section .case-section-head,
html.route-odm body.case-detail-page #constructionCase .odm-proof .case-section-head{
  grid-template-columns:minmax(0,1fr)!important;
  row-gap:clamp(20px,2vw,28px);
  column-gap:0;
  align-items:start;
}

html.route-odm body.case-detail-page #constructionCase .odm-workbench-section .case-section-head>p,
html.route-odm body.case-detail-page #constructionCase .odm-scenarios-section .case-section-head>p,
html.route-odm body.case-detail-page #constructionCase .odm-proof .case-section-head>p{
  width:100%;
  max-width:72rem;
  margin:0;
  justify-self:start;
  text-align:left;
}

html.route-odm body.case-detail-page #constructionCase .odm-system-placeholder,
html.route-odm body.case-detail-page #constructionCase .odm-crm-placeholder{
  width:min(100%,918.667px);
  aspect-ratio:918.667/475.135;
  height:auto!important;
  min-height:0!important;
  margin-inline:auto;
}

html.route-odm body.case-detail-page #constructionCase .odm-crm-shot{
  position:relative;
  padding:0;
  border-style:solid;
  border-color:rgb(229,231,235)!important;
  background:var(--odm-surface-raised)!important;
  overflow:hidden;
}

html.route-odm body.case-detail-page #constructionCase .odm-crm-shot>img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  min-width:0;
  object-fit:contain;
  object-position:center;
}

html.route-odm body.case-detail-page #constructionCase .odm-team-placeholder{
  width:min(100%,911.167px);
  aspect-ratio:911.167/470.292;
  height:auto!important;
  min-height:0!important;
  justify-self:center;
}

html.route-odm body.case-detail-page #constructionCase .odm-team-photo{
  padding:0;
  border-style:solid;
  border-color:rgb(229,231,235)!important;
  background:var(--odm-surface-raised)!important;
  overflow:hidden;
}

html.route-odm body.case-detail-page #constructionCase .odm-team-photo>img{
  display:block;
  width:100%;
  height:100%;
  min-width:0;
  object-fit:cover;
  object-position:center;
}

html.route-odm body.case-detail-page #constructionCase .odm-workbench-section{
  padding-block:clamp(64px,5vw,80px);
}

html.route-odm body.case-detail-page #constructionCase .odm-proof-grid{
  align-items:center;
}

html.route-odm body.case-detail-page #constructionCase .odm-proof-grid>.deployment-facts{
  align-self:center;
}

@media(min-width:1101px){
  .odm-case .odm-background-section .dossier-turning-grid,
  .odm-case .odm-feedback-section .exception-console-grid{
    align-items:center;
  }

  .odm-case .odm-background-section .dossier-turning-grid>header,
  .odm-case .odm-feedback-section .exception-console-grid>header{
    align-self:center;
  }

  html.route-odm body.case-detail-page #constructionCase .construction-hero h1{
    font-size:58.926px!important;
  }

  html.route-odm body.case-detail-page #constructionCase #odm-workbench-title,
  html.route-odm body.case-detail-page #constructionCase #odm-scenarios-title,
  html.route-odm body.case-detail-page #constructionCase #odm-proof-title{
    white-space:nowrap;
  }

  html.route-odm body.case-detail-page #constructionCase #odm-control-title{
    width:100%;
    max-width:12em;
  }
}

@media(max-width:1100px){
  html.route-odm body.case-detail-page #constructionCase #odm-background-title,
  html.route-odm body.case-detail-page #constructionCase #odm-control-title,
  html.route-odm body.case-detail-page #constructionCase #odm-workbench-title,
  html.route-odm body.case-detail-page #constructionCase #odm-scenarios-title,
  html.route-odm body.case-detail-page #constructionCase #odm-feedback-title,
  html.route-odm body.case-detail-page #constructionCase #odm-proof-title{
    font-size:clamp(32px,6vw,40px)!important;
    white-space:normal;
  }
}

@media(max-width:700px){
  html.route-odm body.case-detail-page #constructionCase .case-brand-line{
    gap:6px;
    font-size:clamp(10px,3vw,14px)!important;
  }

  html.route-odm body.case-detail-page #constructionCase .case-brand-en{
    letter-spacing:.06em;
  }

  html.route-odm body.case-detail-page #constructionCase .construction-hero h1{
    font-size:clamp(40px,12vw,58.926px)!important;
  }

  html.route-odm body.case-detail-page #constructionCase .odm-system-placeholder,
  html.route-odm body.case-detail-page #constructionCase .odm-crm-placeholder,
  html.route-odm body.case-detail-page #constructionCase .odm-team-placeholder{
    min-height:0!important;
  }
}

/* ODM typography and paired-section alignment from the latest visual review. */
html.route-odm body.case-detail-page #constructionCase .case-brand-line,
html.route-odm body.case-detail-page #constructionCase .construction-lede{
  color:rgb(111,114,120)!important;
  border-color:rgb(111,114,120)!important;
  font-size:17.6px!important;
  font-weight:400!important;
}

html.route-odm body.case-detail-page #constructionCase .case-close>.wrap>p{
  color:rgb(111,114,120)!important;
  border-color:rgb(111,114,120)!important;
  font-size:17.6px!important;
  font-weight:400!important;
}

html.route-odm body.case-detail-page #constructionCase .odm-background-section .dossier-turning-grid{
  align-items:center;
}

html.route-odm body.case-detail-page #constructionCase .odm-background-section .dossier-turning-grid>header,
html.route-odm body.case-detail-page #constructionCase .control-room-grid>header{
  align-items:center;
  justify-content:center;
  text-align:center;
}

html.route-odm body.case-detail-page #constructionCase .odm-background-section .dossier-turning-grid>header h2,
html.route-odm body.case-detail-page #constructionCase .odm-background-section .dossier-turning-grid>header p,
html.route-odm body.case-detail-page #constructionCase .control-room-grid>header h2,
html.route-odm body.case-detail-page #constructionCase .control-room-grid>header p{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}

@media(min-width:1101px){
  html.route-odm body.case-detail-page #constructionCase .control-room-grid{
    align-items:center;
  }

  html.route-odm body.case-detail-page #constructionCase .control-room-grid>header{
    position:static;
    top:auto;
    min-height:0;
    align-self:center;
  }
}

@media(max-width:700px){
  html.route-odm body.case-detail-page #constructionCase .case-brand-line{
    font-size:15px!important;
  }
}
