/* Article geometry follows Figma 202:138. Shared interactions are in the design system. */
.article-opening { position:relative; isolation:isolate; min-height:739px; padding:0; display:flex; align-items:flex-end; overflow:hidden; }
.article-hero-image { position:absolute; inset:-3.55% 0 0; width:100%; height:103.55%; object-fit:cover; z-index:-2; }
.article-opening::after { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(180deg,var(--ml-color-ink) 47px,transparent 227px),linear-gradient(0deg,var(--ml-color-ink),transparent 233px),linear-gradient(90deg,var(--ml-color-ink),transparent 91.32%); }
.article-hero-content { padding-block:180px 80px; }
.article-opening .breadcrumb { margin:0 0 80px; gap:11px; }
.article-hero-copy { max-width:722px; }
.article-opening .ml-heading-page { font-size:80px; line-height:1; letter-spacing:-1.6px; }
.article-standfirst { margin-top:30px; max-width:470px; font-size:16px; line-height:24px; color:white; }
.article-byline { display:flex; align-items:center; gap:20px; margin-top:60px; font-size:14px; line-height:21px; }
.article-byline>div:last-child>p { margin-top:5px; font-size:12px; line-height:18px; color:#ffffff80; }
.byline-portraits { display:flex; }
.byline-portraits a { width:48px; height:48px; overflow:hidden; border:2px solid var(--ml-color-ink); border-radius:50%; }
.byline-portraits a+a { margin-left:-10px; }
.byline-portraits img { width:100%; height:100%; object-fit:cover; }
.article-reading { padding-block:120px; }
.article-layout { display:grid; grid-template-columns:220px minmax(0,1fr); gap:100px; align-items:start; }
.article-sidebar { position:sticky; top:calc(var(--page-top) + 40px); }
.article-sidebar .ml-eyebrow { color:var(--ml-color-ink); margin-bottom:20px; }
.article-sidebar nav { display:flex; flex-direction:column; gap:10px; }
.article-sidebar nav a { font-size:14px; line-height:21px; color:var(--ml-color-meta); }
.article-sidebar nav a:is(.is-active,:hover,:focus-visible) { color:var(--ml-color-ink); }
.article-practice { display:block; margin-top:60px; max-width:155px; }
.article-practice>span { display:block; font-size:12px; line-height:18px; letter-spacing:.96px; text-transform:uppercase; }
.article-practice strong { display:block; font-size:16px; line-height:24px; font-weight:500; margin-top:15px; }
.article-prose { display:flex; flex-direction:column; gap:50px; min-width:0; font-size:16px; line-height:24px; }
.article-block { display:flex; flex-direction:column; gap:20px; }
.article-block h2,.article-team-intro h2 { font:400 30px/36px var(--ml-font-body); letter-spacing:0; }
.article-paragraphs p+p { margin-top:10px; }
.article-takeaway { display:flex; flex-direction:column; gap:20px; padding:40px; background:var(--ml-color-warm); border-left:2px solid var(--ml-color-blue); border-radius:0 10px 10px 0; }
.takeaway-label { font:400 12px/18px var(--ml-font-body); text-transform:uppercase; }
.article-takeaway .ml-heading-small { font-size:40px; line-height:44px; letter-spacing:-.8px; }
.article-commercial { height:410px; position:relative; isolation:isolate; overflow:hidden; border-radius:10px; padding:40px; display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; }
.article-commercial>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.article-commercial::after { content:""; position:absolute; inset:0; z-index:-1; background:var(--ml-gradient-featured); }
.article-commercial>p { max-width:341px; }
.article-commercial .ml-button { max-width:100%; white-space:normal; text-align:center; }
.article-source-link { text-underline-offset:3px; }
.article-source-link:is(:hover,:focus-visible) { text-decoration:underline; }
.article-authors .team-layout { grid-template-columns:minmax(0,1fr) minmax(0,793.34px); gap:80px; }
.article-team-intro>p { margin-top:30px; font-size:16px; line-height:24px; }
.article-team-intro>.ml-button { margin-top:60px; }
.article-authors .team-pair .ml-person-card { height:410px; }
.article-authors .ml-person-caption { display:flex; align-items:flex-end; gap:10px; padding:20px; }
.article-authors .ml-person-caption>div { flex:1; min-width:0; }
.article-authors .ml-person-caption h3 { font:400 18px/21.6px var(--ml-font-body); margin-bottom:5px; }
.article-authors .ml-person-caption p { font-size:14px; line-height:21px; font-weight:300; color:var(--ml-color-blue); }
.article-authors .ml-person-caption>span { font-size:14px; line-height:21px; font-weight:300; color:#ffffff80; white-space:nowrap; }
.article-related .section-heading { align-items:center; }
.article-related .section-heading h2 { max-width:345px; }
.article-related .section-heading>p { max-width:444px; font-size:16px; line-height:24px; }
.article-related .ml-insight-art { height:250px; }
.article-related .ml-insight-card h3,.article-related .ml-insight-card>p { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; height:48px; }
.article-related .ml-insight-card h3 { font-size:20px; line-height:24px; font-weight:500; }
.article-related .ml-insight-card>p { font-size:16px; line-height:24px; }
.article-related-action { display:flex; justify-content:center; margin-top:50px; }
.reading-progress { position:fixed; top:var(--page-top); height:2px; inset-inline:0; z-index:110; pointer-events:none; }
.reading-progress>span { display:block; height:100%; background:var(--ml-color-blue); transform-origin:left; transform:scaleX(0); }
.case-opening .article-hero-copy { max-width:820px; }
.case-opening .article-standfirst { max-width:520px; }
.case-status { margin-top:35px; color:var(--ml-color-blue); font-size:12px; letter-spacing:.8px; text-transform:uppercase; }
.case-facts { margin:40px 0 0; display:grid; gap:20px; }
.case-facts div { padding-bottom:20px; border-bottom:.5px solid #060e1533; }
.case-facts dt { font-size:12px; text-transform:uppercase; letter-spacing:.8px; margin-bottom:8px; }
.case-facts dd { margin:0; font-size:14px; line-height:21px; color:var(--ml-color-meta); }
.case-placeholder { color:var(--ml-color-meta); }
.case-return { align-self:flex-start; }
@media(max-width:1199px) {
 .article-opening .ml-heading-page { font-size:70px; letter-spacing:-1.4px; }
 .article-hero-copy { max-width:650px; }
 .article-layout { grid-template-columns:180px minmax(0,1fr); gap:60px; }
 .article-authors .team-layout { grid-template-columns:1fr 2fr; gap:40px; }
 .article-authors .ml-person-caption { flex-direction:column; align-items:flex-start; }
 .article-related .section-heading>p { max-width:38%; }
}
@media(max-width:959px) {
 .article-hero-content { padding-block:180px 60px; }
 .article-opening { min-height:700px; }
 .article-reading { padding-block:80px; }
 .article-layout { grid-template-columns:150px minmax(0,1fr); gap:40px; }
 .article-takeaway { padding:30px; }
 .article-authors .team-layout { grid-template-columns:1fr; gap:40px; }
 .article-team-intro { max-width:480px; }
 .article-team-intro>.ml-button { margin-top:30px; }
 .article-authors .ml-person-caption { flex-direction:row; align-items:flex-end; }
 .article-related .ml-insight-art { height:190px; }
}
@media(max-width:639px) {
 .article-opening { min-height:700px; }
 .article-hero-content { padding-block:150px 45px; }
 .article-opening .breadcrumb { margin-bottom:60px; }
 .article-opening .ml-heading-page { font-size:46px; line-height:1.04; letter-spacing:-.92px; }
 .article-standfirst { margin-top:25px; }
 .article-byline { margin-top:40px; gap:14px; }
 .article-hero-image { object-position:60% center; }
 .article-opening::after { background:linear-gradient(180deg,var(--ml-color-ink),transparent 35%),linear-gradient(0deg,var(--ml-color-ink),transparent 55%),linear-gradient(90deg,#060e15e6,#060e158c); }
 .article-reading { padding-block:50px 65px; }
 .article-layout { grid-template-columns:1fr; gap:40px; }
 .article-sidebar { position:static; border-bottom:.5px solid #060e1533; padding-bottom:30px; }
 .article-practice { margin-top:30px; max-width:none; }
 .article-practice strong br { display:none; }
 .article-prose { gap:35px; }
 .article-block h2,.article-team-intro h2 { font-size:26px; line-height:31px; }
 .article-takeaway { padding:25px; }
 .article-takeaway .ml-heading-small { font-size:32px; line-height:35.2px; letter-spacing:-.64px; }
 .article-commercial { height:360px; padding:25px; }
 .article-commercial>p { max-width:240px; }
 .article-commercial>img { object-position:60%; }
 .article-authors .team-pair { grid-template-columns:1fr; gap:20px; }
 .article-authors .team-pair .ml-person-card { height:390px; }
 .article-authors .ml-person-caption { flex-direction:row; padding:20px; }
 .article-related .section-heading { display:block; }
 .article-related .section-heading>p { max-width:none; margin-top:25px; }
 .article-related .ml-insight-art { height:220px; }
 .article-related .ml-insight-card h3,.article-related .ml-insight-card>p { display:block; height:auto; }
 .article-related-action { margin-top:35px; }
}
@media print {
 .site-chrome,.mega-menu,.preview-nav,.article-sidebar,.reading-progress,.site-footer-wrap,.article-authors,.article-related,.article-commercial { display:none!important; }
 .article-opening { min-height:0; color:black; background:white; }
 .article-hero-image,.article-opening::after { display:none; }
 .article-hero-content { padding:20px 0; }
 .article-opening * { color:black!important; }
 .article-opening .breadcrumb { margin-bottom:25px; }
 .article-opening .ml-heading-page { font-size:40px; }
 .article-byline { margin-top:25px; }
 .content-shell { width:100%; }
 .article-layout { display:block; }
 .article-reading { padding:20px 0; }
 .article-prose { gap:25px; }
 .article-takeaway { break-inside:avoid; }
}

/* Frame-specific desktop chrome spacing; behaviour remains inherited from Home. */
@media(min-width:1200px) { body[data-page=article] .header { padding-inline:30px; } body[data-page=article] .copyright { margin-top:43px; } }
@media(max-width:959px) { .article-callout-break { display:none; } }
