/* Shared customer-facing navigation and reading rhythm. */
.site-header{z-index:100;background:#fff!important;border-bottom:1px solid #e8ecf2!important}
.site-header .main-nav .mobile-nav-contact{display:none}
.site-header .main-nav a{color:#252d3b}
.site-header .main-nav a:focus-visible,.menu-toggle:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #2455ed;outline-offset:5px}
.menu-backdrop{position:fixed;inset:0;z-index:90;background:rgba(19,29,49,.32);backdrop-filter:blur(3px)}
.menu-backdrop[hidden]{display:none}
html.fmw-menu-open{overflow:hidden}
body .site-header .header-actions .button-dark{background:#2455ed;border-color:#2455ed;border-radius:8px;color:white}
.studio-edition .studio-section-heading h2,.studio-edition .studio-work-heading h2{letter-spacing:-.045em;text-wrap:balance}
.studio-edition .layout-services-a .customer-path{grid-template-columns:minmax(240px,.85fr) minmax(0,1.65fr);gap:72px;padding:44px 0 52px!important}
.studio-edition .chapter-number{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;font-size:15px;background:#edf2ff;border-radius:12px;margin-bottom:18px}
.studio-edition .customer-path-label{font-size:14px!important;color:#576176!important;line-height:1.65;max-width:26em}
.studio-edition .layout-services-a .customer-path h3{font-size:32px;line-height:1.45;margin:16px 0 0!important;letter-spacing:-.035em}
.studio-edition .chapter-content .customer-situations{display:grid;grid-template-columns:1fr;gap:0}
.studio-edition .chapter-content .customer-situations>div{padding:24px 0;border:0;border-bottom:1px solid #e6eaf1}
.studio-edition .chapter-content .customer-situations>div:first-child{padding-top:0}
.studio-edition .chapter-content .customer-situations dt{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px;font-size:20px;line-height:1.5;font-weight:650;text-align:left}
.studio-edition .chapter-content .customer-situations .situation-icon{font-size:23px;line-height:30px;margin:0}
.studio-edition .chapter-content .customer-situations dd{margin:12px 0 0 42px;font-size:16px;line-height:1.8;color:#4b5669!important;max-width:42em;word-break:keep-all}
.studio-edition .customer-reassurance{font-size:15px;line-height:1.75;margin:20px 0 0;padding:0!important}
.studio-edition .customer-path-cta{border:0!important;min-height:50px;padding:12px 0;margin-top:12px;font-size:17px}
.studio-edition .studio-process-list h3{font-size:21px;line-height:1.5;letter-spacing:-.03em}
.studio-edition .studio-process-list li>div>p{color:#4b5669;font-size:16px;line-height:1.8}
.studio-edition .process-output{color:#414e63;font-size:14px}.studio-edition .process-output>span{font-size:13px;color:#69758a}
.studio-edition .integrated-feature .studio-case-featured{background:#f4f6fa;border-radius:16px}
.studio-edition .studio-case-facts{margin-top:22px;padding-top:20px}.studio-edition .studio-case-info>.text-link{margin-top:16px}
.studio-edition .customer-tools{border-top:1px solid #e3e7ee;padding-top:40px;margin-top:16px}
.studio-edition .customer-tools-copy>p:not(.studio-kicker),.studio-edition .customer-tools-examples dd{color:#4b5669}
.studio-edition .inquiry-panel{border:1px solid #e0e6ef;background:#f8faff;border-radius:16px}
.studio-edition input,.studio-edition select,.studio-edition textarea{border-color:#cbd3df;border-radius:8px}
.studio-edition .inquiry-service-notice{border:0;background:none;padding:0;margin-top:14px;color:#687389;font-weight:400}
.studio-edition .inquiry-service-notice strong{font-weight:500}
.studio-casebook .archive-case{align-items:center}.studio-casebook .archive-case-image{border-radius:14px;background:#f4f6fa}
.studio-casebook .archive-case-copy .field-description{color:#4b5669;line-height:1.8}
@media(max-width:900px){
 body .site-header .header-inner{position:relative;min-height:68px;padding-block:0;display:flex;flex-wrap:nowrap;justify-content:space-between;gap:12px}
 body .site-header .header-actions{margin-left:auto;gap:8px}
 body .site-header .header-actions>.button{font-size:13px;min-height:44px;padding:11px 13px;gap:8px}
 body .site-header .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:70px;min-height:44px;padding:10px;border:1px solid #dce2eb;border-radius:8px;font-size:13px;color:#252d3b;background:#fff}
 body .site-header .menu-toggle[hidden]{display:none}
 body .site-header .main-nav{width:100%;flex-direction:column;gap:0;padding:8px 0 14px;align-items:stretch}
 body .site-header[data-enhanced=true] .main-nav{position:absolute;left:-20px;right:-20px;top:100%;width:auto;margin:0;padding:12px 20px 24px;border-top:1px solid #e9edf3;background:#fff;max-height:calc(100dvh - 68px);overflow-y:auto;overscroll-behavior:contain;border-radius:0 0 20px 20px;box-shadow:0 16px 25px #17284112}
 body .site-header[data-enhanced=true]:not([data-menu-open=true]) .main-nav{display:none}
 body .site-header[data-menu-open=true] .main-nav{display:flex}
 body .site-header .main-nav>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 6px;min-height:60px;font-size:18px;font-weight:600;line-height:1.4;letter-spacing:-.025em;border-bottom:1px solid #edf0f5;color:#252d3b}
 body .site-header .main-nav>a:after{content:'↗';font-size:18px;color:#8793a8;font-weight:400}
 body .site-header .main-nav>a[aria-current=page]{color:#2455ed;text-decoration:none}
 body .site-header .main-nav .mobile-nav-contact{display:flex;margin-top:20px;min-height:52px;padding:14px 18px;border:0;border-radius:9px;background:#2455ed;color:#fff;font-size:16px}
 body .site-header .main-nav .mobile-nav-contact:after{display:none}
 body .site-header:not([data-enhanced=true]) .header-inner{flex-wrap:wrap}
 body .site-header:not([data-enhanced=true]) .main-nav{order:3;flex-basis:100%}
 body .site-header[data-menu-open=true] .menu-lines:before{transform:translateY(3px) rotate(45deg)}
 body .site-header[data-menu-open=true] .menu-lines:after{transform:translateY(-3px) rotate(-45deg)}
 body .site-header .menu-lines{border:0;height:14px;gap:4px;display:flex;flex-direction:column;justify-content:center}
 body .site-header .menu-lines:before,body .site-header .menu-lines:after{content:"";position:static;display:block;width:15px;height:2px;background:currentColor;transition:transform .15s ease}
 .studio-edition .layout-services-a .customer-path{gap:36px}
}
@media(max-width:760px){
 body .shell{width:calc(100% - 40px)}
 .studio-edition .studio-work,.studio-edition .studio-intro,.studio-edition .studio-process,.studio-edition .editorial-contact{padding:64px 0}
 .studio-edition .studio-work-heading,.studio-edition .studio-section-heading{margin-bottom:32px}
 .studio-edition .studio-section-heading h2,.studio-edition .studio-work-heading h2{font-size:29px;line-height:1.42;margin-top:0}
 .studio-edition .studio-section-heading h2 br{display:none}
 .studio-edition .studio-kicker,.studio-edition .editorial-label{font-size:14px;font-weight:600;color:#647088;line-height:1.6;margin-bottom:14px}
 .studio-edition .integrated-feature .studio-case-featured{padding:24px 20px;background:#f4f6fa;border-radius:14px}
 .studio-edition .integrated-feature .studio-case-art{max-width:220px}
 .studio-edition .studio-case-info h3{font-size:25px}
 .studio-edition .studio-case-facts{padding-top:16px;margin-top:16px}.studio-edition .studio-case-facts>div{margin:0}
 .studio-edition .studio-case-facts dt{font-size:14px;color:#647088}
 .studio-edition .case-pair{margin-top:32px;gap:30px}.studio-edition .case-pair .studio-case-horizontal{padding-top:26px}
 .studio-edition .layout-services-a .customer-path{grid-template-columns:1fr;gap:30px;padding:32px 0 40px!important}
 .studio-edition .chapter-number{width:34px;height:34px;font-size:14px;margin:0 0 14px;border-radius:10px}
 .studio-edition .customer-path-label{font-size:14px!important;margin-bottom:10px}
 .studio-edition .layout-services-a .customer-path h3{font-size:28px;line-height:1.4;margin:0!important}
 .studio-edition .chapter-content .customer-situations>div{padding:24px 0}
 .studio-edition .chapter-content .customer-situations dt{grid-template-columns:26px minmax(0,1fr);gap:10px;font-size:18px;line-height:1.6}
 .studio-edition .chapter-content .customer-situations dd{margin:10px 0 0;line-height:1.8;font-size:16px}
 .studio-edition .customer-reassurance{font-size:16px;margin-top:20px}.studio-edition .customer-path-cta{font-size:16px;margin-top:12px;padding:12px 0}
 .studio-edition .customer-small-task{padding:28px 0 36px}.studio-edition .customer-small-task h3{font-size:22px;line-height:1.5}
 .studio-edition .customer-tools{padding:32px 0 0;margin-top:0}.studio-edition .customer-tools h3{font-size:27px;line-height:1.45}
 .studio-edition .studio-scope-note{font-size:15px;line-height:1.8;color:#667186;margin-top:28px}
 .studio-edition .studio-process-list li{padding:25px 0;gap:10px 18px}.studio-edition .studio-process-list h3{font-size:21px}
 .studio-edition .process-count{font-size:25px;line-height:1.4}.studio-edition .process-output,.studio-edition .process-output>span{font-size:14px;line-height:1.7}
 .studio-edition .inquiry-panel{padding:25px 18px}.studio-edition .inquiry-heading p{line-height:1.75}
 .studio-edition .inquiry-service-notice{font-size:15px}
 .studio-casebook .casebook-hero{padding:40px 0}.studio-casebook .casebook-hero h1{font-size:34px;line-height:1.4}
 .studio-casebook .archive-nav{gap:8px;flex-wrap:wrap}.studio-casebook .archive-nav a{border:1px solid #e0e5ee;border-radius:7px;min-height:44px;padding:9px 12px;font-size:14px}
 .studio-casebook .archive-case{padding:40px 0;gap:25px}.studio-casebook .archive-case-copy p,.studio-casebook .archive-facts{font-size:16px;line-height:1.8}
 .studio-casebook .experience-gallery{gap:30px}.studio-casebook .experience-card{grid-template-columns:100px minmax(0,1fr);gap:18px}.studio-casebook .experience-work{font-size:16px;line-height:1.75}
}
@media(max-width:360px){body .site-header .header-actions>.button{font-size:12px;padding-inline:10px}body .site-header .menu-toggle{min-width:64px;padding-inline:8px}.studio-edition .studio-section-heading h2,.studio-edition .studio-work-heading h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){body .site-header .menu-lines:before,body .site-header .menu-lines:after{transition:none}}
