/* Approved SILONIN compositions. Page styles below these rules retain only content geometry. */
:root{--v4-paper:var(--white);--v4-paper-2:#ebece6;--v4-surface:#f6f5f0;--v4-ink:var(--ink);--v4-ink-2:#555b57;--v4-ink-3:#555b57;--v4-dark:#111414;--v4-dark-2:#1c2020;--v4-dark-fg:#f6f5f0;--v4-dark-fg-2:#bfc3bc;--v4-gold:var(--gold);--v4-gold-bright:var(--gold-hover);--v4-line:#c8cbc4;--v4-line-2:#c8cbc4;--v4-white-line:#424948;--v4-dark-line:#424948;--v4-header:var(--header);--v4-radius:2px;--v4-content-radius:2px;--v4-display:'IBM Plex Sans',Arial,sans-serif;--v4-body:var(--v4-display);--v4-mono:var(--v4-display);--v4-display-weight-page:500;--v4-display-weight-section:500;--v4-display-weight-card:500;--v4-display-weight-emphasis:600;--v4-display-tracking:-.025em;--v4-page:min(1320px,calc(100% - var(--gutter)*2));--v4-content-gutter:0px;--surface-radius:2px;--surface-panel-light:#ebece6;--surface-panel-dark:#1c2020;--surface-panel-gold:#e9b44c;--surface-panel-shadow-light:none;--surface-panel-shadow-dark:none;--surface-panel-shadow-gold:none;--surface-panel-blur:0px;--surface-panel-line-light:#c8cbc4;--surface-panel-line-dark:#424948}
html{scroll-behavior:auto;background:var(--white)}
body,body.v2-system{font-family:'IBM Plex Sans',Arial,sans-serif;font-size:18px;line-height:1.55;overflow-x:visible}
body *,body *::before,body *::after{font-family:'IBM Plex Sans',Arial,sans-serif!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;text-shadow:none!important;box-shadow:none!important}
body h1,body h2,body h3,body h4,body h1 b,body h2 b,body h3 b,body h1 em,body h2 em{font-family:'IBM Plex Sans',Arial,sans-serif;font-weight:500;font-style:normal;letter-spacing:-.025em;line-height:1.1}
body h3{line-height:1.22}
body :is(h1,h2,h3,h4){font-weight:500!important}
.productv4-faq__dark{--surface:#111414;--surface-raised:#1c2020;--text:#f6f5f0;--muted:#bfc3bc;--line:#424948;--focus:#e9b44c;color:var(--text);background:var(--surface)}
body p,body li,body dd{letter-spacing:normal}
.v4-shell,.v4-shell:not(.v4-header__inner){width:var(--v4-page);padding-inline:0;margin-inline:auto}
body :is(button,input,textarea,select){font-family:inherit}
body :is(article,figure,aside,form,details){min-width:0}
body :is(h1,h2,h3,h4,p,li,dd,summary,label,button,a){overflow-wrap:normal;word-break:normal;hyphens:none}
body :is(button,a,input,textarea,select):focus-visible{outline:3px solid var(--focus);outline-offset:4px}
body :is(input,textarea,select){font-size:16px;border-radius:2px;box-shadow:none}
body :is(.v4-reveal,.v4-stagger){opacity:1;transform:none}
body :is(.v4-kicker,.dv4-breadcrumb,.kicker){font-family:inherit;font-size:14px;font-weight:500;letter-spacing:.025em;line-height:1.4;text-transform:none}
body [data-theme=light] :is(.v4-kicker,.ev4-profile__level,.sv4-filter__count strong){color:#825905}
body [data-theme=dark] .v4-kicker{color:var(--gold)}
body .scroll-to-top{display:grid;place-items:center;width:48px;height:48px;padding:12px;background:#111414;color:#f6f5f0;border:1px solid #707773;border-radius:2px}
body .scroll-to-top::before{display:none}
body .scroll-to-top:hover{background:#1c2020;transform:none}
body :is(.dv4-section,.productv4-scene,.casev3-chapter,.av4-career,.av4-proof,.casev3-overview){padding-block:clamp(64px,6.5vw,104px)}
body .dv4-section--viewport{min-height:0}
body :is(.dv4-section__head h2,.productv4-head h2,.casev3-chapter__head h2){font-size:clamp(34px,3.8vw,58px);max-width:24ch;line-height:1.1}
body :is(.dv4-section__head,.productv4-head){margin-bottom:42px}
body :is(.dv4-section__head>p,.productv4-head>p,.casev3-lead){font-size:20px;line-height:1.5}
body :is(.dv4-card,.productv4-case,.cv4-case,.pv4-node,.av4-dark-card){border-radius:2px;box-shadow:none}
body :is(.dv4-card,.cv4-case,.productv4-case,.productv4-role-grid>article,.productv4-cap-grid>article,.productv4-industry-grid>article,.productv4-related__grid>a):hover{transform:none;box-shadow:none}
body :is(.v4-header__inner,.v4-form,.dv4-card,.cv4-case,.productv4-case,.productv4-scene,.casev3-quote,.av4-dark-card)::before,
body :is(.v4-header__inner,.v4-form,.dv4-card,.cv4-case,.productv4-case,.productv4-scene,.casev3-quote,.av4-dark-card)::after{background-image:none;box-shadow:none;filter:none}

/* Navigation follows the same solid full-width bar as the approved homepage. */
body .v4-header{position:sticky;top:0;height:var(--header);min-height:var(--header);background:#111414;color:#f6f5f0;border-bottom:1px solid #424948;pointer-events:auto;box-shadow:none;z-index:100}
body .v4-header.is-scrolled{background:#111414}
body .v4-header__inner{display:flex;gap:28px;width:var(--v4-page);height:100%;min-height:0;margin:0 auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;overflow:visible}
body .v4-header__inner::before,body .v4-header__inner::after{display:none}
body .v4-brand{font:600 27px/1 'IBM Plex Sans',sans-serif;letter-spacing:-.04em;flex:none}
body .v4-brand b{color:var(--gold)}
body .v4-nav{display:flex;gap:26px;margin-left:auto}
body .v4-nav a{font-family:inherit;font-size:14px;font-weight:400;text-transform:none;letter-spacing:normal;white-space:nowrap;min-height:44px;display:flex;align-items:center}
body .v4-nav a[aria-current=page]{color:var(--gold)}
body .v4-header__actions{margin:0;display:flex;align-items:center;gap:14px;flex:none}
body .v4-header__actions .v4-button{min-height:44px;padding:10px 16px;font-size:14px;border-color:#707773;color:#f6f5f0;background:transparent}
body .v4-menu-button{min-width:44px;min-height:44px;border-radius:2px;flex-direction:column;align-items:center;justify-content:center;gap:5px}
body .v4-menu-button span,body .v4-menu-button::before,body .v4-menu-button::after{flex:none;width:22px;height:1px;margin:0}
body .v4-mobile-menu{background:#111414;color:#f6f5f0;border-left:1px solid #424948;box-shadow:none;backdrop-filter:none;max-height:100dvh;overflow:auto}
body .v4-mobile-links a{font-size:20px;min-height:48px;border-color:#424948}
body .v4-mobile-menu__close{width:44px;height:44px;border-radius:2px;color:#f6f5f0}

/* Buttons, filters and forms share geometry and state colours across every page. */
body .v4-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:56px;padding:16px 24px;border:1px solid var(--gold);border-radius:2px;background:var(--gold);color:var(--ink);font-family:inherit;font-size:16px;font-weight:500;line-height:1.4;letter-spacing:normal;box-shadow:none;text-transform:none;white-space:normal}
body .v4-button:hover{background:var(--gold-hover);border-color:var(--gold-hover);transform:none;box-shadow:none}
body :is(.v4-button--dark,.v4-button--line){background:transparent;color:var(--text);border-color:var(--line)}
body :is(.v4-button--dark,.v4-button--line):hover{background:var(--surface-raised);border-color:var(--text)}
body :is(button[aria-selected=true],button[aria-pressed=true],.cv4-filter.is-active,.sv4-filter.is-active){background:var(--gold)!important;color:var(--ink)!important;border-color:var(--gold)!important;box-shadow:none}
body :is(.v4-form,.dv4-form){background:var(--surface-raised);border:1px solid var(--line);border-radius:2px;padding:32px;box-shadow:none;backdrop-filter:none}
body :is(.v4-form,.dv4-form) :is(input:not([type=checkbox]):not([type=radio]),textarea,select){background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:2px;padding:14px;min-height:48px;font-size:16px}
body :is(.v4-form,.dv4-form) label{font-size:14px;color:var(--text)}

/* Internal hero: typography and a clear photographic scene occupy separate columns. */
body :is(.dv4-hero,.productv4-hero,.casev3-hero,.cv4-hero){position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:stretch;min-height:calc(100svh - var(--header));height:auto;padding:0;overflow:hidden;background:#111414;isolation:isolate}
body :is(.dv4-hero__media,.productv4-hero__media,.casev3-hero__media,.cv4-hero__media){position:relative;inset:auto;grid-column:2;grid-row:1;z-index:0;min-width:0;min-height:640px;height:auto;width:100%;margin:0;overflow:hidden}
body :is(.dv4-hero__media,.productv4-hero__media,.casev3-hero__media,.cv4-hero__media) img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:68% 50%;opacity:1;filter:none;transform:none}
body :is(.dv4-hero__media,.productv4-hero__media,.casev3-hero__media,.cv4-hero__media)::before,
body :is(.dv4-hero__media,.productv4-hero__media,.casev3-hero__media,.cv4-hero__media)::after{display:none}
body :is(.dv4-hero__inner,.productv4-hero__inner,.casev3-hero__inner,.cv4-hero__grid){position:relative;grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:32px;width:100%;max-width:none;min-height:0;margin:0;padding:clamp(42px,5vw,80px) clamp(28px,4vw,64px) clamp(42px,5vw,80px) max(var(--gutter),calc((100vw - 1320px)/2));z-index:1}
body :is(.dv4-hero__copy,.productv4-hero__copy,.casev3-hero__copy,.cv4-hero__copy){max-width:none;width:100%;min-width:0}
body :is(.dv4-hero,.productv4-hero,.casev3-hero,.cv4-hero) h1{max-width:none;font-size:clamp(38px,3.45vw,61px);line-height:1.09;letter-spacing:-.03em;font-weight:500}
body :is(.dv4-hero,.productv4-hero,.casev3-hero,.cv4-hero) h1 b{font-family:inherit;font-weight:500;letter-spacing:inherit;color:var(--gold)}
body :is(.dv4-hero__lead,.productv4-hero__copy>p,.casev3-hero__copy>p,.cv4-hero__copy>p){font-size:19px;line-height:1.5;color:#bfc3bc;max-width:58ch;margin-top:24px}
body :is(.dv4-hero__actions,.productv4-hero__actions,.casev3-hero__actions){display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
body :is(.productv4-hero__system,.casev3-proof){position:static;max-width:none;min-height:0;background:transparent;border:0;border-top:1px solid #424948;border-radius:0;padding:22px 0 0;box-shadow:none;backdrop-filter:none}
body .productv4-hero__system ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body .productv4-hero__system li{min-height:0;background:transparent;border:0;padding:0;display:flex;align-items:flex-start;gap:8px}
body .productv4-hero__system p{font-size:16px;line-height:1.5}
body .productv4-hero__chips{gap:16px;margin-top:26px}
body .productv4-hero__chips span{background:transparent;border:0;border-left:1px solid #424948;border-radius:0;padding:0 0 0 12px;min-height:0;font-size:14px;line-height:1.35}
body .productv4-hero__chips strong{color:var(--gold);font-family:inherit;font-weight:500;font-size:22px}
body .casev3-proof{margin-top:26px}
body .casev3-proof strong{font-family:inherit;font-weight:500}
body .dv4-route-orbit{position:static;width:100%;height:auto;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border-top:1px solid #424948;padding-top:22px}
body .dv4-route-orbit::before,body .dv4-route-orbit::after{display:none}
body .dv4-route-orbit__core,body .dv4-route-orbit__node{position:static!important;inset:auto!important;transform:none!important;width:auto;height:auto;min-width:0;min-height:0;padding:12px;border-radius:2px;background:#1c2020;border:1px solid #424948;box-shadow:none}
body .dv4-route-orbit__core{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;align-items:center}
body .dv4-route-orbit__node{font-size:16px}

/* Editorial biography, reading pages and proof sections. */
body .av4-hero{height:auto;min-height:calc(100svh - var(--header));padding:0;background:#111414}
body .av4-hero__grid{padding-top:64px;gap:64px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
body .av4-hero h1{font-size:clamp(40px,4vw,64px);max-width:20ch;line-height:1.1}
body .av4-hero__portrait{min-height:0}.av4-hero__portrait img{filter:none}
body .av4-proof{padding-block:32px}
body .casev3-read{width:min(860px,calc(100% - var(--gutter)*2));padding-inline:0}
body .casev3-prose{font-size:19px;line-height:1.65}
body :is(.casev3-process,.productv4-process){gap:0;border-top:1px solid var(--line)}
body :is(.casev3-process>li,.productv4-process>li){border-radius:0;box-shadow:none;min-height:0;padding:28px;background:var(--surface-raised)}
body .productv4-cap-grid>article{min-height:0;padding:28px;border-radius:0}
body :is(.productv4-role-grid>article,.productv4-industry-grid>article){min-height:0;padding:28px}
body .productv4-related__grid a{min-height:0;padding:24px}
body .cv4-case__media::after{display:none}
body .sv4-solution{display:flex;flex-direction:column;padding:0 0 24px;gap:0;overflow:hidden;background:var(--white);border:1px solid #c8cbc4;border-radius:2px;box-shadow:none}
body .sv4-solution .solution-photo{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center;display:block;margin:0 0 24px}
body .sv4-solution :is(h3,p,.sv4-solution__footer){margin-inline:24px}
body .sv4-solution h3{font-size:26px;line-height:1.2;margin-bottom:18px}
body .sv4-solution p{font-size:17px;line-height:1.5;margin-bottom:24px}
body .sv4-solution .sv4-solution__footer{margin-top:auto;padding-top:18px}
body .sv4-solution:hover{transform:none;box-shadow:none;border-color:#555b57}
body .cv4-case__media img,body .cv4-case:hover .cv4-case__media img{opacity:1;transform:none;filter:none}
body :is(.dv4-spotlight__body,.pv4-operation__body){background:var(--surface);box-shadow:none;backdrop-filter:none}
body :is(.v4-final,.dv4-final){padding-block:80px;background:var(--surface);min-height:0}
body .v4-footer{background:#f6f5f0;color:#171919;padding-block:56px 28px}
body .v4-footer a{font-size:16px;color:#555b57;min-height:32px;display:block}
body .v4-footer__heading{font-size:14px;color:#171919}
body .v4-footer__bottom{border-color:#c8cbc4;color:#555b57}

/* Legal documents keep their existing content and navigation behaviour. */
body.legal-v4-page{background:#f6f5f0;color:#555b57;font-family:'IBM Plex Sans',Arial,sans-serif}
body.legal-v4-page .hero{background:#111414;color:#f6f5f0;border:0;padding-bottom:60px}
body.legal-v4-page .hero h1{color:#f6f5f0;font-size:clamp(36px,4.2vw,64px);line-height:1.12}
body.legal-v4-page .hero em{color:var(--gold);font-family:inherit;letter-spacing:inherit}
body.legal-v4-page .hero .lead{color:#bfc3bc;font-size:20px}
body.legal-v4-page .nav{background:#111414!important;color:#f6f5f0!important;border-bottom:1px solid #424948!important;height:var(--header);backdrop-filter:none}
body.legal-v4-page .nav-inner{border:0;border-radius:0;box-shadow:none;background:transparent!important;width:var(--v4-page);margin:0 auto;min-height:var(--header);padding:0}
body.legal-v4-page .nav-inner::before,body.legal-v4-page .nav-inner::after{display:none}
body.legal-v4-page .nav :is(a,.logo){color:#f6f5f0;font-family:inherit}
body.legal-v4-page .nav .nav-cta{background:var(--gold);color:#171919;border:1px solid var(--gold);border-radius:2px}
body.legal-v4-page .doc{max-width:850px;font-size:18px;line-height:1.65}
body.legal-v4-page :is(.doc article,.toc,.operator-card,.principle){background:#f6f5f0;border-color:#c8cbc4;box-shadow:none;border-radius:2px;backdrop-filter:none}
body.legal-v4-page .doc h2{font-size:30px;line-height:1.2}

@media(max-width:1100px){body .v4-nav{display:none}body .v4-header__actions{margin-left:auto}body .v4-menu-button{display:flex}body :is(.dv4-hero,.productv4-hero,.casev3-hero,.cv4-hero){grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}body :is(.dv4-hero__inner,.productv4-hero__inner,.casev3-hero__inner,.cv4-hero__grid){padding:40px 28px 44px var(--gutter)}body :is(.dv4-hero,.productv4-hero,.casev3-hero,.cv4-hero) h1{font-size:40px}body .productv4-hero__chips{grid-template-columns:repeat(2,minmax(0,1fr))}body .av4-hero__grid{gap:32px}}
@media(max-width:820px){
  body,body.v2-system{font-size:16px}
  body .v4-header__actions>.v4-button{display:none}
  body :is(.dv4-section,.productv4-scene,.casev3-chapter,.av4-career,.casev3-overview){padding-block:56px}
  body :is(.dv4-hero,.productv4-hero,.casev3-hero,.cv4-hero){display:flex;flex-direction:column;min-height:0;overflow:visible}
  body :is(.dv4-hero__media,.productv4-hero__media,.casev3-hero__media,.cv4-hero__media){order:0;min-height:0;height:clamp(250px,55vw,410px);width:100%;flex:none}
  body :is(.dv4-hero__media,.productv4-hero__media,.casev3-hero__media,.cv4-hero__media) img{object-position:65% 45%}
  body :is(.dv4-hero__inner,.productv4-hero__inner,.casev3-hero__inner,.cv4-hero__grid){order:1;display:flex;width:100%;padding:36px var(--gutter) 48px;gap:28px}
  body :is(.dv4-hero,.productv4-hero,.casev3-hero,.cv4-hero) h1{font-size:clamp(32px,6.2vw,44px);line-height:1.12;max-width:none}
  body :is(.dv4-hero__lead,.productv4-hero__copy>p,.casev3-hero__copy>p,.cv4-hero__copy>p){font-size:18px}
  body :is(.dv4-hero__actions,.productv4-hero__actions,.casev3-hero__actions){flex-wrap:wrap}
  body :is(.productv4-hero__system ol,.ev4-system-map,.pv4-architecture__grid,.ev4-maturity__workspace,.cv4-brief__layout){grid-template-columns:1fr}
  body .dv4-route-orbit{max-width:none}
  body .av4-hero__grid{display:flex;flex-direction:column;padding-top:36px;gap:20px}
  body .av4-hero__copy{padding-bottom:12px;width:100%}
  body .av4-hero__portrait{width:calc(100% + 24px);max-width:500px;align-self:center}
  body .av4-hero__portrait img{width:100%;height:auto;max-height:none}
  body .av4-hero h1{font-size:clamp(35px,6vw,48px)}
  body :is(.casev3-prose,.casev3-lead){font-size:18px}
  body :is(.v4-form,.dv4-form){padding:24px}
  body :is(.v4-final,.dv4-final){padding-block:56px}
  body .v4-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
  body.legal-v4-page .legal-grid{grid-template-columns:1fr}
  body.legal-v4-page .toc{position:static}
  body.legal-v4-page .doc{font-size:17px}
}
@media(max-width:540px){
  body .v4-header__inner{gap:14px}
  body :is(.dv4-hero__actions,.productv4-hero__actions,.casev3-hero__actions){flex-direction:column;align-items:stretch}
  body :is(.dv4-hero__actions,.productv4-hero__actions,.casev3-hero__actions) .v4-button{width:100%;max-width:none}
  body .productv4-hero__system ol{grid-template-columns:1fr;gap:16px}
  body :is(.productv4-proof__grid,.productv4-role-grid,.productv4-cap-grid,.productv4-industry-grid,.productv4-process,.productv4-related__grid,.ev4-direction-grid,.ev4-pain-list){grid-template-columns:1fr}
  body .ev4-direction-grid .ev4-direction:last-child{grid-column:auto}
  body .casev3-proof{grid-template-columns:1fr;gap:20px}
  body :is(.v4-footer__grid,.v4-form__row){grid-template-columns:1fr}
  body :is(.dv4-section__head h2,.productv4-head h2,.casev3-chapter__head h2){font-size:32px}
  body :is(.v4-form,.dv4-form){padding:22px 18px}
  body .v4-footer__bottom{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
  body.legal-v4-page .doc h2{font-size:26px}
}
@media(prefers-reduced-motion:reduce){body *,body *::before,body *::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
/* Keep intrinsic form controls inside narrow tablet columns. */
body :is(.v4-form,.v4-form__row,.dv4-form__choice){grid-template-columns:minmax(0,1fr)}
body :is(.v4-form,.v4-form__row,.dv4-form__choice)>*,body .dv4-fieldset{min-width:0}
@media(min-width:541px){body .v4-form__row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1101px){body .dv4-form__choice{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){
  body .v4-final__grid{grid-template-columns:minmax(0,1fr);gap:36px}
  body.legal-v4-page .nav ul,body.legal-v4-page .nav-cta{display:none}
  body.legal-v4-page .mobile-toggle{display:inline-flex;min-height:44px;flex:none}
}
body .v4-mobile-menu{overscroll-behavior:contain}
/* Consultation overlays use their own dark theme, independent of the page. */
body .v4-consult-modal__dialog{background:var(--surface);color:var(--text);overscroll-behavior:contain;scroll-padding-block:20px}
body .v4-consult-modal__dialog h2{color:var(--text);font-size:clamp(28px,3.2vw,44px);line-height:1.1}
body .v4-consult-modal__dialog>p,body .v4-consult-modal .v4-consent{color:var(--muted)}
body .v4-consult-modal .v4-consent a{color:var(--text)}
body .v4-consult-modal__close{width:44px;height:44px;border-radius:2px}
body .form-notification a{text-decoration:underline;text-underline-offset:3px}
body .form-notification{scroll-margin-block:20px}

/* Heading measures follow the available column, not a fixed number of Latin ch. */
body:not(.legal-v4-page) main h2{max-width:100%;font-size:clamp(30px,3.5vw,52px);line-height:1.14;text-wrap:balance}
body:not(.legal-v4-page) main h3{max-width:100%;line-height:1.22}
body :is(.dv4-hero,.productv4-hero,.casev3-hero,.cv4-hero){min-height:clamp(580px,78svh,820px);max-height:none}
body .pv4-hero .dv4-hero__copy{padding:0;border:0;background:transparent}
body .dv4-faq{grid-template-columns:minmax(0,.7fr) minmax(0,1.1fr);gap:clamp(32px,5vw,72px)}
body .dv4-faq__intro h2{font-size:clamp(30px,2.8vw,40px);max-width:100%}
body :is(.v4-final,.dv4-final,.av4-next) h2{font-size:clamp(30px,3.2vw,48px);max-width:100%}
body :is(.v4-final__grid,.dv4-transform,.dv4-fractional,.dv4-spotlight__grid)>*{min-width:0}
body :is(.dv4-transform,.dv4-spotlight__grid){gap:clamp(32px,5vw,72px);grid-template-columns:repeat(2,minmax(0,1fr))}
body .dv4-transform__copy h2{font-size:clamp(30px,3.1vw,46px)}
body .v4-consult-modal__dialog h2{max-width:calc(100% - 42px)}
body :is(.av4-career,.av4-timeline) h3{font-size:clamp(22px,2vw,28px)}
body :is(a[href^="mailto:"],.doc a){overflow-wrap:anywhere}

/* The scene overlaps the copy column; only its edges fade into the hero surface.
   Contain keeps the complete photograph visible even in a tall hero. */
body :is(.dv4-hero__media,.productv4-hero__media,.casev3-hero__media,.cv4-hero__media){
  width:calc(100% + 15vw);margin-left:-15vw;overflow:visible;
  display:flex;align-items:center;min-height:0;
}
body :is(.dv4-hero__media,.productv4-hero__media,.casev3-hero__media,.cv4-hero__media) img{
  position:relative;inset:auto;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;
  opacity:1;filter:none;transform:none;
  mask-image:linear-gradient(90deg,transparent,#000 32%,#000 92%,transparent),linear-gradient(180deg,transparent,#000 22%,#000 76%,transparent);
  mask-composite:intersect;
}
body .av4-hero__portrait img{
  mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent),linear-gradient(180deg,#000 78%,transparent);
  mask-composite:intersect;
}
body .av4-hero__portrait figcaption{background:#111414;border-color:#424948}

/* Platform operation is a dark photographic section, with readable copy. */
body .pv4-operation{background:#111414;color:#f6f5f0}
body .pv4-operation h2{color:#f6f5f0}
body .pv4-operation h2 b,body .pv4-operation .v4-kicker{color:#e9b44c}
body .pv4-operation .dv4-spotlight__media img{opacity:1;filter:none;object-position:center}
body .dv4-spotlight__media::after,body .pv4-operation .dv4-spotlight__media::after{background:linear-gradient(90deg,#111414 0%,rgb(17 20 20 / .85) 26%,rgb(17 20 20 / .2) 70%),linear-gradient(180deg,#111414,transparent 18%,transparent 82%,#111414)}
body .pv4-operation .dv4-spotlight__body{background:#1c2020;border-color:#424948}
body .pv4-operation .dv4-spotlight__body p,body .pv4-operation .dv4-checks li{color:#bfc3bc}
body .pv4-operation .dv4-checks li{border-color:#424948}
body .pv4-operation .dv4-checks li::before{color:#e9b44c}
body .sv4-deployment__routes article.sv4-deployment__route--platform{background:#1c2020;color:#f6f5f0;border-color:#424948}
body .sv4-deployment__route--platform h3{color:#f6f5f0}
body .sv4-deployment__route--platform .v4-button{color:#f6f5f0;border-color:#707773}
body .sv4-deployment__route--platform .v4-button:hover{background:#111414}
body .sv4-solution{height:auto;max-height:none;min-height:0}
body .sv4-solution>*{flex-shrink:0}
body .sv4-solution p{height:auto;max-height:none;overflow:visible;display:block;-webkit-line-clamp:unset}
body .av4-career{--av4-ink-2:#bfc3bc;--av4-ink-3:#bfc3bc;--av4-line:#424948}
body .av4-career :is(h2,h3){color:#f6f5f0}
body .av4-career :is(h2 b,.av4-story__stage>span,.av4-story__progress li.is-active){color:#e9b44c}
body :is(.productv4-kpi-grid>article,.productv4-proof__grid>div){min-width:0}
body :is(.productv4-kpi-grid,.productv4-proof) strong{white-space:normal;overflow-wrap:normal;line-height:1.12}
body .productv4-kpi-grid .productv4-metric--text{font-size:clamp(24px,2.5vw,36px);text-wrap:balance}

@media(max-width:1100px){
  body .dv4-transform{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  body :is(.dv4-hero,.productv4-hero,.casev3-hero,.cv4-hero){min-height:0}
  body :is(.dv4-faq,.dv4-transform,.dv4-spotlight__grid){grid-template-columns:minmax(0,1fr);gap:32px}
  body :is(.dv4-hero__media,.productv4-hero__media,.casev3-hero__media,.cv4-hero__media){
    width:100%;margin:0;height:auto;min-height:0;overflow:hidden;
  }
  body :is(.dv4-hero__media,.productv4-hero__media,.casev3-hero__media,.cv4-hero__media) img{
    width:100%;height:auto;max-height:none;object-fit:contain;
    mask-image:linear-gradient(180deg,#000 65%,transparent);mask-composite:add;
  }
  body :is(.dv4-hero__inner,.productv4-hero__inner,.casev3-hero__inner,.cv4-hero__grid){padding-top:16px}
  body .dv4-faq__intro{position:static}
  body .av4-story__heading{display:block}
  body .av4-story__heading h2{font-size:26px;margin-top:8px}
}
@media(max-width:400px){
  body:not(.legal-v4-page) main h2,body .dv4-transform__copy h2{font-size:28px}
  body :is(.casev3-process,.productv4-industry-grid) h3{font-size:20px}
}
