/* Mobile reflow is shared by real narrow screens and the in-page width preview.
   Keep text and controls in normal flow; do not scale down a desktop canvas. */
@media screen and (max-width:900px){
 .solutions-intro,.client-heading,.people-layout,.contact-layout{min-width:0;grid-template-columns:minmax(0,1fr)}
 .category-panel,.category-copy,.solution-explorer,.solution-nav,.solution-stage,.product-card,.product-detail,.product-detail-columns,.product-overview,.product-evidence,.service-content,.software-content,.showcase-slide,.showcase-copy,.showcase-media,.people-copy,.contact-copy,.contact-panel,.field-grid,.hub-card{min-width:0;max-width:100%}
 .solution-explorer{grid-template-columns:minmax(0,1fr)}
 .solution-nav{position:static;max-width:100%;min-width:0}
 .solution-nav-list{min-width:0;max-width:100%;overscroll-behavior-x:contain;scroll-padding-inline:4px}
 .solution-stage .product-detail-columns,.solution-stage .service-content,.solution-stage .software-content{grid-template-columns:minmax(0,1fr)}
 .product-evidence{min-width:0;max-width:100%}
 .service-overview,.service-evidence,.software-overview,.software-evidence{min-width:0;max-width:100%}
 .solution-stage .product-evidence,.solution-stage .service-evidence{border-left:0;padding-left:0;padding-top:22px;border-top:1px solid var(--artifact-line)}
 .contact-copy.contact-editorial{position:static}
}
@media screen and (max-width:650px){
 :root{--artifact-page-gutter:20px}
 html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--artifact-reviewbar-height,64px) + 88px)}
 #siteViewport{min-width:0}
 .inner{max-width:100%;min-width:0}
 .section-title,.section-copy,.solutions-intro>*,.client-heading>*,.people-copy>*,.contact-copy>*,.footer-column,.hub-description,.showcase-copy>*,.insight-small>div:last-child,.interest-option>span:first-child{min-width:0;max-width:100%;overflow-wrap:anywhere}
 .section-title,.solutions-intro h2,.client-hub h2,.insights-header .section-title{font-size:32px;line-height:1.4;letter-spacing:-.055em}
 .section-copy{font-size:15px;line-height:1.95}
 .eyebrow,.hero-kicker,.category-en,.showcase-kicker{max-width:100%;font-size:10px;line-height:1.7;letter-spacing:.11em;white-space:normal;overflow-wrap:anywhere}
 .header-inner{gap:12px;min-width:0}
 .site-header{height:76px}
 .site-header.is-scrolled{height:66px}
 .site-header .brand{flex:0 1 144px;min-width:0;max-width:calc(100% - 104px)}
 .site-header .brand-logo,.site-header.is-scrolled .brand-logo{width:144px;max-width:100%;height:auto}
 .header-actions{flex:0 0 auto;gap:4px}
 .header-actions .icon-button{width:44px;height:44px;flex:0 0 44px}
 .header-inner>.desktop-nav,.site-header .header-contact{display:none}
 .header-actions .burger{display:grid}
 .mobile-nav{max-height:calc(100dvh - var(--artifact-reviewbar-height,64px) - 92px);overflow-y:auto;overscroll-behavior:contain}
 .mobile-nav a{min-height:48px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
 .hero{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;height:auto;min-height:620px;max-height:none;padding-bottom:0}
 .hero .hero-content{flex:0 0 auto;min-width:0;padding-top:120px;padding-bottom:32px}
 .hero .hero-slide{width:100%;min-width:0;max-width:100%;padding-top:0}
 .hero .hero-title{font-size:clamp(34px,11.5vw,54px);line-height:1.09;letter-spacing:-.055em;max-width:100%;overflow-wrap:anywhere;word-break:normal}
 .hero .hero-title .headline-line{display:block;font-size:inherit;line-height:inherit;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal}
 .hero .hero-title.hero-title-one{font-size:clamp(26px,8.1vw,39px);line-height:1.22;letter-spacing:-.04em}
 .hero .hero-title.hero-title-outcomes{font-size:clamp(31px,10.1vw,48px);line-height:1.15}
 .hero .hero-description{font-size:15px;line-height:1.95;margin:24px 0 0;max-width:100%;overflow-wrap:anywhere}
 .hero .hero-cta{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin-top:28px;max-width:100%}
 .hero-cta .button{max-width:100%;min-height:48px;font-size:14px;line-height:1.65;white-space:normal;padding:12px 20px;gap:14px}
 .hero-secondary{max-width:100%;min-height:44px;font-size:13px;line-height:1.65;white-space:normal}
 .hero .hero-dock{position:relative;inset:auto;transform:none;display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:12px;align-items:end;margin-top:auto;margin-bottom:24px}
 .hero .hero-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0;width:100%}
 .hero .hero-tab{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:6px;min-width:0;min-height:64px;width:auto;padding:12px 0 0;font-size:11px;line-height:1.65;letter-spacing:-.015em;white-space:normal;overflow-wrap:anywhere;word-break:keep-all}
 .hero .hero-tab span{margin:0;font-size:10px;line-height:1.5}
 .hero .motion-control{width:44px;height:44px;min-width:44px;flex:0 0 44px;justify-content:center;padding:0;border:1px solid var(--artifact-line-dark)}
 .hero .motion-control span{display:none}
 .section,.people-section,.contact-section,.client-hub{padding-block:56px}
 .solutions-intro,.client-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start;margin-bottom:28px}
 .solutions-intro p,.client-heading>p{max-width:100%;font-size:15px;line-height:1.9}
 .categories{grid-template-columns:minmax(0,1fr);gap:24px}
 .category-art{aspect-ratio:1.45;min-height:0;max-height:none}
 .category-copy{min-height:0;padding:22px 20px 20px}
 .category-card .category-name{font-size:25px;line-height:1.4;overflow-wrap:anywhere}
 .category-card .category-question{font-size:14px;line-height:1.9;overflow-wrap:anywhere}
 .panel-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding-bottom:22px;margin-bottom:20px}
 .panel-heading>div{min-width:0}
 .panel-heading h3{font-size:26px;line-height:1.45;overflow-wrap:anywhere}
 .panel-heading p{font-size:14px;line-height:1.9;overflow-wrap:anywhere}
 .panel-heading .close-category{width:auto;min-width:52px;min-height:44px;white-space:normal;line-height:1.5}
 .solution-nav-heading{gap:12px;min-width:0;padding:14px 16px}
 .solution-nav-list{display:flex;gap:8px;padding:10px;overflow-x:auto;overflow-y:hidden}
 .solution-nav .product-summary{flex:0 0 auto;min-width:136px;max-width:210px;min-height:70px;padding:14px 40px 14px 14px;white-space:normal}
 .solution-nav .product-summary h4{font-size:15px;line-height:1.55;white-space:normal;overflow-wrap:anywhere}
 .solution-stage{min-height:0;padding:24px 18px 26px}
 .solution-stage .solution-detail-heading h4{font-size:28px;line-height:1.4;letter-spacing:-.05em;overflow-wrap:anywhere}
 .solution-stage .solution-detail-heading p{font-size:14px;line-height:1.9;overflow-wrap:anywhere}
 .solution-stage .product-detail-columns{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
 .solution-stage .product-overview{max-width:100%}
 .solution-stage .product-overview .product-promise{font-size:18px;line-height:1.65;overflow-wrap:anywhere}
 .solution-stage .product-overview .product-desc{font-size:14px;line-height:1.95;overflow-wrap:anywhere}
 .solution-stage .product-evidence{display:block;padding:22px 0 0;border-left:0;border-top:1px solid var(--artifact-line)}
 .solution-stage .product-evidence .product-insights li,.solution-stage .product-evidence .product-usecase p{font-size:14px;line-height:1.85;overflow-wrap:anywhere}
 .solution-stage .product-detail>.product-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
 .solution-stage .product-actions .consult-action{max-width:100%;min-height:46px;white-space:normal;line-height:1.65}
 .solution-stage .product-actions [data-close-detail]{min-height:44px;max-width:100%;white-space:normal;line-height:1.65}
 .product-service{padding-top:24px;margin-top:24px}
 .solution-stage .service-heading h5{font-size:23px;line-height:1.45;overflow-wrap:anywhere}
 .service-content,.software-content{grid-template-columns:minmax(0,1fr);gap:18px}
 .solution-stage .service-content p,.solution-stage .service-content li,.solution-stage .software-content p,.solution-stage .software-insights li{font-size:14px;line-height:1.9;overflow-wrap:anywhere}
 .solution-stage .service-content .service-promise,.solution-stage .software-content .software-promise{font-size:18px;line-height:1.7}
 .service-actions .text-action,.software-evidence .text-action{max-width:100%;min-height:44px;white-space:normal;overflow-wrap:anywhere;line-height:1.75}
 .product-software{margin-top:22px;padding-top:20px}
 .solution-stage .software-heading h5{font-size:20px;line-height:1.45;overflow-wrap:anywhere}
 .lift-method-grid{grid-template-columns:minmax(0,1fr);gap:10px}
 .lift-method-link{min-width:0;min-height:84px;padding:17px 44px 17px 16px}
 .lift-method-link b{font-size:18px;line-height:1.45;overflow-wrap:anywhere}
 .lift-method-caption{font-size:11px;line-height:1.8;overflow-wrap:anywhere}
 .lift-method-link svg{right:16px;bottom:18px}
 .insight-gauge{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:26px}
 .gauge-summary{min-width:0;overflow-wrap:anywhere}
 .gauge-cta{min-height:44px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .solution-showcase{padding-top:8px;padding-bottom:52px;margin-top:0}
 .showcase-heading{flex-wrap:wrap;gap:14px;align-items:center}
 .showcase-heading h2{font-size:15px;line-height:1.65;overflow-wrap:anywhere}
 .showcase-controls{flex:0 0 auto;gap:6px}
 .showcase-control{width:44px;height:44px;flex:0 0 44px}
 .showcase-slide{grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}
 .showcase-copy h3{font-size:30px;line-height:1.4;letter-spacing:-.05em;overflow-wrap:anywhere}
 .showcase-copy .showcase-description{font-size:14px;line-height:1.95;overflow-wrap:anywhere}
 .showcase-media{width:100%;height:auto;min-width:0;min-height:0;aspect-ratio:1.5;box-shadow:none}
 .showcase-tabs{max-width:100%;min-width:0;gap:0;overflow-x:auto;overscroll-behavior-x:contain}
 .showcase-tab{min-height:48px;line-height:1.6;padding:14px 12px}
 .insights-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 .insight-feature{padding:24px;min-height:440px;height:auto;gap:64px}
 .insight-art{max-width:100%;font-size:clamp(32px,10vw,42px);line-height:1.08;letter-spacing:-.04em;overflow-wrap:anywhere}
 .insight-feature h3{font-size:27px;line-height:1.45;overflow-wrap:anywhere}
 .insight-small{grid-template-columns:88px minmax(0,1fr);gap:16px;padding-bottom:24px;margin-bottom:24px;align-items:start}
 .insight-small .small-art{width:100%;max-width:100%;min-height:0;min-width:0;height:136px}
 .insight-small>div:last-child{min-width:0;max-width:100%;overflow-wrap:anywhere}
 .insight-small h3{font-size:18px;line-height:1.6;margin:10px 0 14px;overflow-wrap:anywhere}
 .insight-small .insight-tag{font-size:11px;line-height:1.65;white-space:normal;overflow-wrap:anywhere}
 .people-layout{grid-template-columns:minmax(0,1fr);gap:30px}
 .people-visual{min-height:0;aspect-ratio:1.14;padding:24px}
 .people-visual span{font-size:clamp(30px,9vw,38px);line-height:1.15;overflow-wrap:anywhere}
 .people-copy .section-title{font-size:31px;line-height:1.45}
 .proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px;margin-top:28px}
 .proof-item{min-width:0}
 .proof-item b{font-size:16px;line-height:1.65;overflow-wrap:anywhere}
 .proof-item p{font-size:13px;line-height:1.9;overflow-wrap:anywhere}
 .about-resources{margin-top:30px;padding-top:24px}
 .about-resources p{font-size:14px;line-height:1.9}
 .about-resources .button{max-width:100%;min-height:48px;gap:16px;padding:12px 18px;font-size:14px;line-height:1.7;white-space:normal;overflow-wrap:anywhere}
 .client-hub .hub-grid{grid-template-columns:minmax(0,1fr);gap:12px}
 .client-hub .hub-card{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:18px;row-gap:0;min-height:0;padding:22px 20px}
 .client-hub .hub-card .hub-icon{grid-column:1;grid-row:1 / span 2;width:34px;height:34px;margin:0}
 .client-hub .hub-card b,.client-hub .hub-description,.client-hub .hub-cta{grid-column:2;min-width:0;max-width:100%;overflow-wrap:anywhere}
 .client-hub .hub-card b{font-size:21px;line-height:1.45}
 .client-hub .hub-description{font-size:14px;line-height:1.85;margin:6px 0 0}
 .client-hub .hub-cta{gap:14px;padding-top:16px;font-size:13px;line-height:1.65}
 .hub-support{display:block;padding-top:24px}
 .hub-support>p{margin-bottom:14px}
 .hub-support-links{display:flex;flex-direction:column;align-items:stretch;gap:14px}
 .hub-support-link{min-width:0;min-height:44px;flex-wrap:wrap;gap:6px 16px;line-height:1.7}
 .client-hub .hub-support-link .hub-cta{padding-top:0}
 .contact-layout{grid-template-columns:minmax(0,1fr);gap:28px}
 .contact-copy.contact-editorial{position:static;min-height:0;padding:28px 24px}
 .contact-copy.contact-editorial .contact-editorial-content h2{font-size:34px;line-height:1.4;letter-spacing:-.05em;overflow-wrap:anywhere}
 .contact-copy.contact-editorial .contact-editorial-content p{font-size:14px;line-height:1.95;overflow-wrap:anywhere}
 .contact-panel{padding-top:0}
 .step-progress{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:28px}
 .step-progress li{min-width:0;padding-bottom:12px;font-size:13px;line-height:1.65;overflow-wrap:anywhere}
 .step-progress span{font-size:10px;line-height:1.6;margin-bottom:8px}
 .contact-step h3{font-size:23px;line-height:1.5;overflow-wrap:anywhere}
 .field-help,.field-note,.field-label,.field label,.contact-footnote,.selection-preview{max-width:100%;line-height:1.85;overflow-wrap:anywhere}
 .interest-option{min-width:0;gap:14px;padding:16px;line-height:1.7}
 .interest-option b{font-size:16px;line-height:1.55;overflow-wrap:anywhere}
 .interest-option small{font-size:12px;line-height:1.8;overflow-wrap:anywhere}
 .interest-undecided{min-height:44px;line-height:1.75;white-space:normal;overflow-wrap:anywhere}
 .field-grid{grid-template-columns:minmax(0,1fr)}
 .field input,.field select,.field textarea,.search-field input{width:100%;min-width:0;max-width:100%;font-size:16px;min-height:48px}
 .field input,.field select{height:auto;padding:13px 12px;line-height:1.45}
 .selected-product{min-width:0;gap:12px}
 .selected-product>span{min-width:0;overflow-wrap:anywhere}
 .selected-product button{flex:0 0 36px}
 .contact-row{flex-direction:column;align-items:stretch;gap:12px}
 .contact-row .button{width:100%;min-height:48px;line-height:1.65;white-space:normal;justify-content:space-between}
 .done-reset{min-height:44px;line-height:1.7;white-space:normal}
 .site-footer{padding-top:40px}
 .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}
 .footer-brand{grid-column:1 / -1}
 .footer-column h3{font-size:15px;line-height:1.6;overflow-wrap:anywhere}
 .footer-column a,.footer-column button{max-width:100%;font-size:13px;line-height:1.75;white-space:normal;overflow-wrap:anywhere}
 .footer-bottom{display:block;font-size:11px;line-height:1.9;overflow-wrap:anywhere}
 .footer-legal{display:flex;flex-wrap:wrap;gap:12px 20px;line-height:1.75;margin-top:16px}
 .footer-concept{font-size:11px;line-height:1.9;overflow-wrap:anywhere}
 .dialog-inner{padding:22px 18px}
 .dialog-heading{gap:12px;align-items:flex-start}
 .dialog-heading h2{min-width:0;font-size:23px;line-height:1.5;overflow-wrap:anywhere}
 .dialog-heading .close-dialog{flex:0 0 44px;width:44px;height:44px}
 .search-result{gap:14px;white-space:normal;overflow-wrap:anywhere}
 .search-result>span{min-width:0}
 .search-result b{font-size:15px;line-height:1.65}
 .search-result small{line-height:1.8}
 section[id],.category-panel,.solution-stage>.product-card,.product-service,.product-software,.contact-panel,.contact-step h3{scroll-margin-top:12px}
}
@media screen and (max-width:360px){
 :root{--artifact-page-gutter:16px}
 .hero .hero-dock{gap:8px}
 .hero .hero-tabs{gap:8px}
 .hero .hero-tab{font-size:10px}
 .hero-cta .button{width:100%;justify-content:space-between;padding-inline:16px;gap:12px}
 .proof-grid{grid-template-columns:minmax(0,1fr)}
 .client-hub .hub-card{padding:20px 16px;column-gap:14px}
 .section-title,.solutions-intro h2,.client-hub h2,.insights-header .section-title,.people-copy .section-title{font-size:28px}
 .solution-stage{padding-inline:16px}
 .solution-stage .solution-detail-heading h4{font-size:26px}
}