/* The Tara O’Doherty longform template, adapted to CXPR brand tokens.
   Order: title, breadcrumb, metadata, image, sharing, article. */
body.cx-reference-article{--page-gutter:48px;--reading-width:72ch;--rule:#d7d0ca;--ink:#20201e;--muted:#56524e;font:400 18px/1.6 'DM Sans',Arial,sans-serif;background:#ffffff;color:var(--ink)}
body.cx-reference-article main{padding:0;overflow:visible}
body.cx-reference-article .cx-article-hero{display:block;position:relative;padding:0;margin:0;background:#f4e5df;color:var(--ink);border-bottom:1px solid var(--rule)}
body.cx-reference-article .cx-article-hero>.wrap,body.cx-reference-article .case-body>.wrap,body.cx-reference-article .insight-hero-image{box-sizing:border-box;width:min(calc(100% - 2 * var(--page-gutter)),var(--reading-width));max-width:none;margin-inline:auto}
body.cx-reference-article .cx-article-hero>.wrap{padding-block:clamp(44px,6vw,76px)}
body.cx-reference-article .cx-article-hero .eyebrow{font:700 .76rem/1.6 'DM Sans',Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#75213b;margin:0 0 24px}
body.cx-reference-article .cx-article-hero h1{font:400 clamp(2.75rem,5.2vw,4.7rem)/1.08 'Playfair Display',Georgia,serif;letter-spacing:-.04em;max-width:18ch;margin:0 0 20px;text-wrap:pretty;color:var(--ink)}
body.cx-reference-article .cx-article-hero .lead{font:400 clamp(1.08rem,1.5vw,1.25rem)/1.65 'DM Sans',Arial,sans-serif;max-width:60ch;margin:0;color:#393633}
body.cx-reference-article main .cx-site-breadcrumbs{padding-inline:var(--page-gutter);font-size:.76rem;line-height:1.2;min-height:44px}
body.cx-reference-article .cx-site-breadcrumbs ol{min-height:44px;padding:0}
body.cx-reference-article .cx-site-breadcrumbs li+li:before{padding-inline:8px}
body.cx-reference-article .insight-article-meta{display:flex;align-items:end;flex-wrap:wrap;gap:24px 38px;width:min(calc(100% - 2 * var(--page-gutter)),90ch);max-width:none;margin:0 auto;padding:22px 0;border-bottom:1px solid var(--rule);font-size:.9rem;color:var(--muted)}
body.cx-reference-article .insight-article-meta>div{display:grid;gap:5px}
body.cx-reference-article .insight-article-meta .eyebrow{margin:0;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#75213b}
body.cx-reference-article .insight-article-meta time,body.cx-reference-article .insight-article-meta>div>span:last-child{font-weight:600;color:var(--ink)}
body.cx-reference-article .insight-article-meta>a{margin-left:auto;color:var(--ink);font-weight:700}
body.cx-reference-article .insight-hero-image{margin-block:0 24px}
body.cx-reference-article .insight-hero-image img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
body.cx-reference-article main #share-article{box-sizing:border-box;position:sticky!important;top:var(--article-sticky-top)!important;z-index:40;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 24px;width:100%;max-width:none;margin:0;padding:10px max(var(--page-gutter),calc((100% - var(--reading-width))/2));background:#eee9e3;border-block:1px solid var(--rule);box-shadow:0 3px 8px #20201e08;font-size:18px;color:var(--ink)}
body.cx-reference-article .article-utility-context{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}
body.cx-reference-article .article-utility-label{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--muted)}
body.cx-reference-article .article-utility-title{font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:48ch}
body.cx-reference-article .insight-share-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}
body.cx-reference-article .insight-share-actions :is(a,button){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid transparent;border-radius:24px;font:600 .8rem 'DM Sans',Arial,sans-serif;text-decoration:none;background:transparent;color:var(--ink);white-space:nowrap;cursor:pointer}
body.cx-reference-article .insight-share-actions :is(a,button):hover{background:#fff;border-color:var(--rule)}
body.cx-reference-article .insight-share-bar svg{width:18px;height:18px;flex-shrink:0}
body.cx-reference-article .copy-status{flex-basis:100%;font-size:.78rem;text-align:right;color:var(--ink)}
body.cx-reference-article .copy-status:empty{display:none}
body.cx-reference-article .case-body{padding:clamp(56px,7.6vw,112px) 0;margin:0;background:#ffffff}
body.cx-reference-article .case-body>.wrap{padding:0}
body.cx-reference-article .case-body .case-detail{display:block;padding:0;margin:0 0 clamp(36px,5vw,54px);background:transparent}
body.cx-reference-article .case-body .case-detail+.case-detail{padding-top:clamp(24px,3vw,36px);border-top:1px solid var(--rule)}
body.cx-reference-article .case-body h2{font:500 clamp(1.8rem,2.7vw,2.35rem)/1.2 'Playfair Display',Georgia,serif;letter-spacing:-.025em;max-width:30ch;margin:0 0 16px;color:var(--ink)}
body.cx-reference-article .case-body :is(p,li){font:400 1.03rem/1.78 'DM Sans',Arial,sans-serif;max-width:none;color:#292827}
body.cx-reference-article .case-body p{margin:0 0 1em}
body.cx-reference-article .case-body img{max-width:100%;height:auto}
body.cx-reference-article .case-body a:not(.btn):not(.case-pin){color:#75213b;text-underline-offset:4px}
body.cx-reference-article .article-metrics{box-sizing:border-box;width:min(calc(100% - 2 * var(--page-gutter)),72ch);margin:40px auto 0;padding:28px;background:#20201e;color:white}
body.cx-reference-article .article-metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
body.cx-reference-article .article-metric strong{display:block;font-size:32px;line-height:1.2;margin-bottom:12px}
body.cx-reference-article .article-metric span{font-size:15px;line-height:1.5}
body.cx-reference-article .article-metrics>p{font-size:13px}.cx-reference-article .article-metrics a{color:white}
body.cx-reference-article :is(a,button):focus-visible{outline:3px solid #8b2f46;outline-offset:4px}
body.cx-reference-article main [id]{scroll-margin-top:calc(var(--article-sticky-top) + var(--article-share-height) + 24px)}
body.cx-reference-article main [data-motion-reveal]{opacity:1!important;transform:none!important}
@media(max-width:1000px){body.cx-reference-article{--page-gutter:32px}}
@media(max-width:700px){body.cx-reference-article{--page-gutter:20px}body.cx-reference-article .cx-article-hero h1{font-size:clamp(2.45rem,9vw,3.6rem)}body.cx-reference-article .insight-article-meta{gap:16px 22px}body.cx-reference-article .insight-article-meta>a{margin-left:0}body.cx-reference-article main #share-article{padding:8px 16px;gap:4px 8px}body.cx-reference-article .article-utility-context{flex:0 0 auto}body.cx-reference-article .article-utility-label{font-size:.75rem;letter-spacing:0;text-transform:none}body.cx-reference-article .article-utility-label:before{content:'Share '}body.cx-reference-article .article-utility-title{display:none}body.cx-reference-article .insight-share-actions{gap:0;margin-left:auto}body.cx-reference-article .insight-share-actions :is(a,button){font-size:.75rem;padding:8px;gap:5px}body.cx-reference-article .insight-share-bar svg{width:16px;height:16px}body.cx-reference-article .article-metrics-grid{grid-template-columns:1fr}}
@media(max-width:370px){body.cx-reference-article main #share-article{padding-inline:12px}body.cx-reference-article .article-utility-context{flex-basis:100%}body.cx-reference-article .insight-share-actions{margin-left:0}}
@media(max-height:500px) and (orientation:landscape){body.cx-reference-article main #share-article{position:relative!important;top:auto!important}}
/* Compute the common rail at the same font size before sizing its text. */
body.cx-reference-article .insight-article-meta{width:min(calc(100% - 2 * var(--page-gutter)),72ch);font-size:18px}
body.cx-reference-article .insight-article-meta>div,body.cx-reference-article .insight-article-meta>a{font-size:.9rem}
html body.cx-reference-article main #share-article{top:calc(var(--article-sticky-top) + var(--cx-launch-height,0px))!important}
html body.cx-reference-article main [id]{scroll-margin-top:calc(var(--article-sticky-top) + var(--cx-launch-height,0px) + var(--article-share-height) + 24px)}
@media(max-height:500px) and (orientation:landscape){html body.cx-reference-article main #share-article{position:relative!important;top:auto!important}}
