/* Mark1Lab: marketing function, operating models and AI capability update.
   Extends the supplied design; Inter, brand assets and existing colours are retained. */
:root{scroll-padding-top:100px}
body.v2.function-home h1{max-width:21ch;font-size:clamp(40px,4.1vw,66px)}
body.v2.function-home h1 span{color:var(--clay)}
body.v2.function-home .hero__copy>p.eyebrow{font-size:12px;line-height:1.6;letter-spacing:0;margin-top:0;color:#aaa398;max-width:none}
body.v2.function-home .hero__copy>p.hero-note{font-size:14px;line-height:1.65;color:#a9a29a;margin-top:24px;max-width:54ch}
body.v2.function-home .hero__actions{gap:22px;flex-wrap:wrap}
body.v2 .site-header{grid-template-columns:auto 1fr auto;gap:32px}
body.v2 .site-nav{justify-content:center;gap:clamp(18px,2.1vw,34px)}
body.v2 .site-nav a{white-space:nowrap}
body.v2 .header-cta{font-size:14px}
body.v2 .comparison__row--mark1 p{color:var(--bone)}
.responsibility-rows .comparison__row{grid-template-columns:190px 1fr 110px}
.engagements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #14141424;gap:0}
.engagements article{display:flex;flex-direction:column;min-width:0;padding:30px 30px 30px 0;border-right:1px solid #14141424;gap:16px;scroll-margin-top:100px}
.engagements article+article{padding-left:30px}
.engagements article:last-child{border-right:0;padding-right:0}
.engagements .who,.engine-intro .who{font-size:13px;color:var(--clay);line-height:1.5;margin:0}
body.v2 .engagements h3{font-size:clamp(22px,1.9vw,29px);line-height:1.24;letter-spacing:-.03em}
.engagements p{font-size:15px;line-height:1.7;color:#5a554f;margin:0}
.engagements .model-link{display:inline-flex;gap:12px;font-size:14px;color:var(--clay);font-weight:500;margin-top:auto;padding-top:14px;align-items:center}
.engagements .model-link:hover{text-decoration:underline;text-underline-offset:4px}
.model-detail{border-top:1px solid #14141424;padding-top:18px;display:grid;gap:18px}
.model-detail b{display:block;font-weight:600;color:var(--ink);font-size:13px;margin-bottom:6px}
.upgrade-callout{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:28px 30px;margin-top:30px;background:#e5dfd3;border-left:3px solid var(--clay)}
.upgrade-callout p{color:#5a554f;font-size:15px;line-height:1.7;margin:10px 0 0;max-width:66ch}
.upgrade-callout a{white-space:nowrap;font-size:14px}
.engine-example{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,5vw,78px);padding:34px;border:1px solid #14141424;background:#f4f0e8}
.engine-intro h3{font-size:clamp(23px,2vw,30px)!important;line-height:1.25!important;margin:14px 0 18px!important;max-width:22ch}
.engine-intro>p:not(.who){font-size:16px;color:#5a554f;line-height:1.7;margin:0 0 24px}
.engine-intro .text-link{font-size:14px;color:var(--clay);line-height:1.5}
.engine-steps{margin:0;padding:0;list-style:none;counter-reset:engine}
.engine-steps li{position:relative;padding:0 0 23px 32px;counter-increment:engine;border-left:1px solid #c2603f70}
.engine-steps li:last-child{padding-bottom:0;border-left-color:transparent}
.engine-steps li::before{content:'';position:absolute;left:-5px;top:6px;width:9px;height:9px;border-radius:50%;background:var(--clay);box-shadow:0 0 0 5px #f4f0e8}
.engine-steps h4{font-family:var(--font-body);font-size:17px;line-height:1.4;font-weight:600;margin:0 0 7px;color:var(--ink);letter-spacing:-.015em}
.engine-steps p{font-size:14px;line-height:1.65;color:#5a554f;margin:0}
.foundation-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-top:30px}
body.v2 .foundation-strip h3{font-size:16px}
.foundation-strip p{font-size:14px;line-height:1.7;color:#5a554f;margin:10px 0 0}
.measurement-note{font-size:12px;line-height:1.65;color:#6a635c;margin:26px 0 0}
.upgrade-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;border-top:1px solid #ede8de30;padding-top:30px}
.upgrade-grid h3{color:var(--bone)}
.upgrade-grid p{color:#c6bfb7;font-size:16px;line-height:1.7;margin:12px 0 0}
body.v2 .engagement-hero .hero__frame{grid-template-columns:1fr}
body.v2 .engagement-hero .hero__copy{max-width:860px}
body.v2 .engagement-hero h1{max-width:22ch}
body.v2 .engagement-hero .hero__copy>p:not(.eyebrow){max-width:62ch}
.interior-header{grid-template-columns:auto 1fr auto;gap:32px}
.interior-header>a:first-child{width:150px}
.interior-header .site-nav{display:flex;justify-content:center;gap:clamp(18px,2.1vw,34px)}
.interior-header .site-nav a{white-space:nowrap;font-size:14px}
.interior-header__cta{white-space:nowrap}
.interior-header .cta-short{display:none}
.interior-header .menu-toggle{display:none;color:var(--slate)}
.interior-footer{align-items:center;gap:24px;flex-wrap:wrap}
.interior-footer>div{margin-right:auto}
.interior-footer p{font-family:var(--font-body);font-size:12px;line-height:1.6;letter-spacing:0;color:#625d66;max-width:58ch;margin:10px 0 0;text-transform:none}
.interior-footer>a{font-size:12px;letter-spacing:0}
body.v2 .contact-page__copy h1{max-width:17ch;font-size:clamp(36px,3.8vw,60px)}
body.v2 .contact-form__heading h2{font-size:clamp(23px,2vw,30px);line-height:1.2}
.contact-form__grid select{width:100%;min-width:0;text-overflow:ellipsis;padding-right:24px}
@media (width<=1200px){
 body.v2 .site-header{gap:22px}
 .interior-header{gap:22px}
 .interior-header>a:first-child{width:135px}
 .interior-header .site-nav{gap:20px}
}
@media (width<=1100px){
 body.v2 .site-header,.interior-header{grid-template-columns:1fr auto auto;gap:20px}
 .site-header .menu-toggle,.interior-header .menu-toggle{display:flex}
 .site-header .site-nav,.interior-header .site-nav{display:none}
 body.v2 .site-header .site-nav.site-nav--open,.interior-header .site-nav.site-nav--open{display:flex;position:fixed;top:82px;left:0;right:0;bottom:auto;z-index:50;background:#141414;color:#ede8de;border-bottom:1px solid #ede8de30;padding:26px 24px;gap:0;flex-direction:column;align-items:stretch;max-height:calc(100svh - 82px);overflow:auto}
 .interior-header .site-nav.site-nav--open{top:116px;max-height:calc(100svh - 116px)}
 body.v2 .site-header--scrolled .site-nav.site-nav--open{top:70px}
 .site-nav.site-nav--open a{padding:16px 0;display:block;font-size:18px!important;border-bottom:1px solid #ede8de22}
 .site-nav.site-nav--open a:last-child{border-bottom:0}
 .engagements article,.engagements article+article{padding-right:22px;padding-left:22px}
 .engagements article:first-child{padding-left:0}
 .engagements article:last-child{padding-right:0}
 .upgrade-callout{align-items:flex-start;flex-direction:column;gap:20px}
}
@media (width<=820px){
 .interior-header{height:86px}
 .interior-header .site-nav.site-nav--open{top:86px;max-height:calc(100svh - 86px)}
 .interior-header__cta{width:auto;height:36px;padding:0 12px;border:1px solid var(--clay);font-size:12px;align-items:center}
 .interior-header__cta .cta-long{display:none}
 .interior-header__cta .cta-short{display:inline}
 .interior-header .menu-toggle{width:28px;margin:0}
 .responsibility-rows .comparison__row{grid-template-columns:1fr;gap:10px}
 .responsibility-rows .comparison__row em{display:none}
 .engagements{grid-template-columns:1fr}
 .engagements article,.engagements article+article{padding:28px 0;border-right:0;border-bottom:1px solid #14141424}
 .engagements article:last-child{border-bottom:0}
 .engine-example{grid-template-columns:1fr;gap:32px;padding:24px}
 .engine-steps{margin-left:4px}
 .foundation-strip,.upgrade-grid{grid-template-columns:1fr;gap:24px}
 .foundation-strip>div+div{border-top:1px solid #14141424;padding-top:22px}
 .upgrade-grid>div+div{border-top:1px solid #ede8de30;padding-top:22px}
 .upgrade-callout{padding:24px}
 .interior-footer{align-items:flex-start;gap:18px}
 .interior-footer>div{flex-basis:100%}
}
@media (width<=520px){
 body.v2.function-home h1{font-size:40px;line-height:1.08;letter-spacing:-.04em}
 body.v2.function-home .hero__copy>p.eyebrow{max-width:31ch;font-size:11px}
 body.v2.function-home .hero__actions{align-items:flex-start;gap:20px}
 .interior-header{gap:12px}
 .interior-header>a:first-child{width:116px}
 .interior-header__cta span[aria-hidden]{display:none}
 .upgrade-callout a{white-space:normal}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.blueprint__flow path{animation:none!important;stroke-dashoffset:0!important}}
@media(width<=520px){
 body.v2.function-home .hero__frame{padding-top:0}
 body.v2.function-home .hero__copy{padding-top:38px;padding-bottom:34px}
 body.v2.function-home .hero__copy>p.eyebrow{max-width:none}
}
/* Keep wide comparison tables inside their own scroll container. */
.article-body,.article-copy{min-width:0}
.article-copy{max-width:100%;overflow-wrap:break-word}
.article-copy .article-table__scroll,.article-copy .table-wrap{max-width:100%;overflow-x:auto}
body.v2 .faq summary{grid-template-columns:minmax(0,1fr) 24px}
body.v2 .faq summary i{margin-right:8px}
@media(width<=820px){
 body.v2 .article-list>a{grid-template-columns:minmax(0,1fr) 22px;gap:10px;padding-block:20px}
 body.v2 .article-list>a>h3{grid-column:1;grid-row:1;min-width:0}
 body.v2 .article-list>a>span{grid-column:1;grid-row:2}
 body.v2 .article-list>a>i{grid-column:2;grid-row:1}
 .interior-header .interior-menu-toggle{width:44px;height:44px}
 .interior-header .interior-menu-toggle span{left:12px;width:18px;background:var(--slate)}
}
