/* VSK V16 — consolidated customer-facing layout authority.
   Loaded last. Approved V14/V16 ivory, stone, navy and cobalt palette retained. */
body.v8.v13.v14 .page-progress{display:none!important}
body.v8.v13.v14 .shell{width:min(1540px,calc(100% - 64px))!important;max-width:none!important;margin-inline:auto!important;box-sizing:border-box!important}
body.v8.v13.v14 .reveal.is-visible{transform:none!important}

/* HEADER */
body.v8.v13.v14 .site-header{height:100px!important;min-height:100px!important;padding-inline:max(32px,calc((100vw - 1540px)/2))!important;grid-template-columns:minmax(330px,390px) minmax(0,1fr) 212px!important;gap:22px!important;background:#FAFAF7!important;color:#0D1824!important;border-bottom:1px solid #D8DDE1!important;box-shadow:none!important}
body.v8.v13.v14 .site-header.is-scrolled,body.v8.v13.v14 .site-header.is-solid{height:100px!important;background:#FAFAF7!important;color:#0D1824!important;border-color:#D8DDE1!important;box-shadow:0 8px 28px rgba(13,24,36,.05)!important}
body.v8.v13.v14 .brand{gap:15px!important;min-width:0!important}
body.v8.v13.v14 .brand img,body.v8.v13.v14 .is-scrolled .brand img,body.v8.v13.v14 .is-solid .brand img{width:58px!important;height:58px!important;flex:0 0 58px!important}
body.v8.v13.v14 .brand-copy strong{font-size:20px!important;color:#0D1824!important;line-height:1.05!important;white-space:nowrap!important}
body.v8.v13.v14 .brand-copy small{font-size:9px!important;color:#667789!important;letter-spacing:.1em!important;margin-top:4px!important;white-space:nowrap!important}
body.v8.v13.v14 .desktop-nav{justify-content:center!important;gap:clamp(14px,1.1vw,23px)!important;min-width:0!important}
body.v8.v13.v14 .desktop-nav a{padding:39px 0 35px!important;color:#526477!important;font-size:12px!important;font-weight:650!important;white-space:nowrap!important}
body.v8.v13.v14 .desktop-nav a:hover,body.v8.v13.v14 .desktop-nav a.is-current{color:#0D1824!important}
body.v8.v13.v14 .desktop-nav a::after{bottom:20px!important;height:2px!important;background:#164A9C!important}
body.v8.v13.v14 .header-cta{position:relative!important;width:212px!important;height:56px!important;min-width:212px!important;padding:0 48px 0 20px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;background:#164A9C!important;color:#fff!important;border:0!important;box-shadow:0 10px 24px rgba(13,24,36,.10)!important}
body.v8.v13.v14 .header-cta span{position:absolute!important;right:20px!important;top:50%!important;transform:translateY(-50%)!important;border:0!important;background:none!important}
body.v8.v13.v14 .header-cta:hover{background:#167BC4!important}
body.v8.v13.v14 .menu-toggle span{background:#0D1824!important}
body.v8.v13.v14 .subpage-main{padding-top:100px!important}

/* HERO */
body.v8.v13.v14 .hero-blue{min-height:calc(100svh - 100px)!important;height:auto!important;padding:0!important;display:grid!important;align-items:stretch!important;background:#FAFAF7!important}
body.v8.v13.v14 .hero-blue-layout{min-height:calc(100svh - 100px)!important;padding-block:44px!important;display:grid!important;grid-template-columns:minmax(0,610px) minmax(500px,610px)!important;justify-content:center!important;align-items:center!important;gap:82px!important}
body.v8.v13.v14 .hero-blue-copy{max-width:610px!important;width:100%!important;justify-self:center!important}
body.v8.v13.v14 .hero-blue-copy h1{font-size:clamp(70px,4.7vw,88px)!important;line-height:.92!important;letter-spacing:-.052em!important;margin:24px 0 0!important}
body.v8.v13.v14 .hero-blue-copy>p{max-width:610px!important;width:100%!important;font-size:18px!important;line-height:1.67!important;margin:30px 0 0!important;color:#5D7185!important}
body.v8.v13.v14 .hero-actions{width:min(590px,100%)!important;margin:28px auto 0!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;justify-self:auto!important}
body.v8.v13.v14 .hero-actions>*{width:100%!important;min-width:0!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}
body.v8.v13.v14 .hero-chips{width:min(610px,100%)!important;margin:16px auto 0!important;display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:8px!important}
body.v8.v13.v14 .hero-engineering-board{width:100%!important;max-width:610px!important;height:clamp(490px,58vh,565px)!important;justify-self:center!important;align-self:center!important}

/* MULTI-DISCIPLINARY */
body.v8.v13.v14 .capabilities{padding-bottom:82px!important}
body.v8.v13.v14 .capabilities .section-intro{padding-top:82px!important;margin-bottom:40px!important}
body.v8.v13.v14 .capability-layout{gap:54px!important}
body.v8.v13.v14 .capability-row{min-height:62px!important}
body.v8.v13.v14 .capability-media .media-frame{max-height:470px!important}

/* FEATURED ENGINEERING */
body.v8.v13.v14 .featured-engineering{padding-block:72px!important}
body.v8.v13.v14 .featured-project-grid{min-height:0!important;grid-template-columns:minmax(0,1.6fr) minmax(360px,.7fr)!important}
body.v8.v13.v14 .featured-project-media{height:500px!important;min-height:500px!important;max-height:500px!important}
body.v8.v13.v14 .featured-project-copy{min-height:500px!important;padding:42px 38px!important}

/* HOME SELECTED PROJECTS — clear 2 + 3 editorial rhythm */
body.v8.v13.v14 .selected-projects-strip{padding:0 0 76px!important;border-top:0!important}
body.v8.v13.v14 .project-collection-head{padding:24px 0 18px!important;margin:0!important;border-top:1px solid rgba(183,215,242,.18)!important;border-bottom:0!important}
body.v8.v13.v14 .selected-projects-strip .project-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:14px!important;margin:0!important}
body.v8.v13.v14 .selected-projects-strip .project-card{min-height:0!important;height:245px!important;grid-column:span 2!important}
body.v8.v13.v14 .selected-projects-strip .project-card:nth-child(1),body.v8.v13.v14 .selected-projects-strip .project-card:nth-child(2){grid-column:span 3!important;height:285px!important}
body.v8.v13.v14 .selected-projects-strip .project-card .project-copy strong{font-size:22px!important;line-height:1.05!important}

/* ENGINEERING DEPTH — compact proof rail */
body.v8.v13.v14 .engineering-depth{padding:54px 0 62px!important}
body.v8.v13.v14 .engineering-depth .depth-head{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(380px,500px)!important;gap:48px!important;align-items:end!important;padding:0 0 18px!important;margin:0 0 14px!important}
body.v8.v13.v14 .engineering-depth .depth-head h2{font-size:clamp(48px,3.3vw,60px)!important;line-height:.98!important;margin-top:12px!important}
body.v8.v13.v14 .engineering-depth .depth-head>p{font-size:15px!important;line-height:1.55!important;max-width:500px!important;margin:0!important}
body.v8.v13.v14 .engineering-depth .depth-grid{display:grid!important;grid-template-columns:minmax(0,1.7fr) minmax(350px,.72fr)!important;gap:16px!important;align-items:stretch!important;padding:0!important;background:transparent!important;border:0!important}
body.v8.v13.v14 .engineering-depth .metric-stack{height:268px!important;min-height:268px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:1fr!important;background:#FAFAF7!important;border:1px solid #D5D9DD!important}
body.v8.v13.v14 .engineering-depth .metric-card{position:relative!important;height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-end!important;gap:20px!important;padding:26px 24px!important;background:#FAFAF7!important;border:0!important;border-right:1px solid #D5D9DD!important;box-shadow:none!important;text-align:left!important}
body.v8.v13.v14 .engineering-depth .metric-card:last-child{border-right:0!important}
body.v8.v13.v14 .engineering-depth .metric-number{font-size:clamp(58px,4.2vw,76px)!important;line-height:.86!important;letter-spacing:-.065em!important;white-space:nowrap!important;margin:auto 0 0!important}
body.v8.v13.v14 .engineering-depth .metric-number span{font-size:10px!important;margin-left:7px!important}
body.v8.v13.v14 .engineering-depth .metric-card small{font-size:8px!important;margin-bottom:6px!important;display:block!important}
body.v8.v13.v14 .engineering-depth .metric-card strong{font-size:15px!important;line-height:1.22!important;max-width:190px!important;display:block!important}
body.v8.v13.v14 .engineering-depth .metric-card>i{position:absolute!important;right:18px!important;top:16px!important}
body.v8.v13.v14 .engineering-depth .archive-callout{height:268px!important;min-height:268px!important;margin:0!important;padding:24px 28px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;background:#0D1824!important;border:1px solid #24384B!important;box-shadow:none!important}
body.v8.v13.v14 .archive-callout-number{font-size:62px!important;line-height:.8!important;letter-spacing:-.06em!important;margin:10px 0!important}
body.v8.v13.v14 .archive-callout h3{font-size:22px!important;line-height:1.05!important;margin:0!important}
body.v8.v13.v14 .archive-callout>p{font-size:12.5px!important;line-height:1.45!important;margin:10px 0 12px!important}
body.v8.v13.v14 .archive-callout-split{margin:0!important}
body.v8.v13.v14 .archive-callout .btn{min-height:42px!important;margin-top:12px!important;width:100%!important;justify-content:space-between!important;font-size:9px!important}

/* PROJECTS = six curated case studies, not another archive */
body.v8.v13.v14[data-page="projects"] .page-hero-projects{height:390px!important;min-height:390px!important;max-height:390px!important}
body.v8.v13.v14[data-page="projects"] .page-hero-copy{padding-bottom:36px!important}
body.v8.v13.v14[data-page="projects"] .page-hero-copy h1{font-size:clamp(52px,3.8vw,68px)!important;line-height:.95!important;margin-bottom:14px!important}
body.v8.v13.v14[data-page="projects"] .page-hero-copy p{font-size:14px!important;line-height:1.5!important;max-width:680px!important}
body.v8.v13.v14[data-page="projects"] .project-index{padding:58px 0 72px!important}
body.v8.v13.v14[data-page="projects"] .project-index .section-intro{padding-top:0!important;margin-bottom:30px!important}
body.v8.v13.v14[data-page="projects"] .project-index .section-intro h2{font-size:clamp(44px,3.2vw,58px)!important}
body.v8.v13.v14[data-page="projects"] .project-page-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;align-items:start!important;grid-auto-rows:auto!important}
body.v8.v13.v14[data-page="projects"] .project-page-card{grid-column:auto!important;display:flex!important;flex-direction:column!important;height:auto!important;min-height:0!important;grid-template-rows:none!important;background:#fff!important;border:1px solid #D6DCE1!important;box-shadow:none!important;overflow:hidden!important}
body.v8.v13.v14[data-page="projects"] .project-page-card:nth-child(n+7){display:none!important}
body.v8.v13.v14[data-page="projects"] .project-page-media,body.v8.v13.v14[data-page="projects"] .project-page-card.project-layout-0 .project-page-media,body.v8.v13.v14[data-page="projects"] .project-page-card.project-layout-1 .project-page-media{width:100%!important;height:220px!important;min-height:220px!important;max-height:220px!important;flex:0 0 220px!important;background:#ECEDEA!important;overflow:hidden!important}
body.v8.v13.v14[data-page="projects"] .project-page-media img{width:100%!important;height:100%!important;object-fit:cover!important}
body.v8.v13.v14[data-page="projects"] .project-page-copy{height:auto!important;min-height:0!important;padding:18px 19px 20px!important;background:#fff!important;color:#0D1824!important}
body.v8.v13.v14[data-page="projects"] .project-page-copy h3{font-size:24px!important;line-height:1.05!important;margin:7px 0 8px!important;color:#0D1824!important}
body.v8.v13.v14[data-page="projects"] .project-page-copy p{min-height:0!important;font-size:12.5px!important;line-height:1.45!important;margin:0 0 13px!important;color:#657789!important}
body.v8.v13.v14[data-page="projects"] .project-page-meta{padding-top:10px!important;margin:0!important;color:#164A9C!important}
body.v8.v13.v14[data-page="projects"] .additional-media{display:none!important}
body.v8.v13.v14[data-page="projects"] .projects-cta{padding:70px 0!important}

/* EXPERIENCE = searchable 54-reference database */
body.v8.v13.v14[data-page="machines"] .archive-mode,body.v8.v13.v14[data-page="machines"] [data-archive-visual-view]{display:none!important}
body.v8.v13.v14[data-page="machines"] [data-archive-index-view]{display:grid!important}
body.v8.v13.v14[data-page="machines"] .archive-hero{min-height:330px!important;max-height:350px!important;padding:48px 0!important}
body.v8.v13.v14[data-page="machines"] .archive-hero-grid{grid-template-columns:170px minmax(0,1fr)!important;gap:34px!important;align-items:center!important}
body.v8.v13.v14[data-page="machines"] .archive-hero-number{border-right:1px solid rgba(183,215,242,.22)!important;padding-right:24px!important}
body.v8.v13.v14[data-page="machines"] .archive-hero-number span{font-size:82px!important;line-height:.82!important;letter-spacing:-.06em!important}
body.v8.v13.v14[data-page="machines"] .archive-hero h1{font-size:clamp(48px,3.6vw,64px)!important;line-height:.94!important;margin:10px 0 14px!important}
body.v8.v13.v14[data-page="machines"] .archive-hero p{font-size:14px!important;line-height:1.5!important;max-width:720px!important}
body.v8.v13.v14[data-page="machines"] .archive-browser{padding:46px 0 64px!important}
body.v8.v13.v14[data-page="machines"] .archive-toolbar{grid-template-columns:auto minmax(320px,1fr) auto!important;gap:14px!important;align-items:end!important}
body.v8.v13.v14[data-page="machines"] .archive-index-layout{grid-template-columns:minmax(0,1fr) 360px!important;gap:20px!important;align-items:start!important}
body.v8.v13.v14[data-page="machines"] .archive-row{min-height:62px!important;padding:0 12px!important;grid-template-columns:82px 1fr 160px 22px!important}
body.v8.v13.v14[data-page="machines"] .archive-row strong{font-size:17px!important}
body.v8.v13.v14[data-page="machines"] .archive-sticky-preview{position:sticky!important;top:116px!important;max-width:360px!important;min-height:0!important;padding:14px!important;background:#F1F0EC!important;border:1px solid #D5D9DD!important;box-shadow:0 16px 36px rgba(13,24,36,.06)!important}
body.v8.v13.v14[data-page="machines"] .archive-preview-media{aspect-ratio:16/10!important;margin-bottom:12px!important;background:#E6E4DE!important;overflow:hidden!important}
body.v8.v13.v14[data-page="machines"] .archive-preview-media img{width:100%!important;height:100%!important;object-fit:cover!important}
body.v8.v13.v14[data-page="machines"] .archive-sticky-preview h2{font-size:24px!important;line-height:1.05!important;margin:7px 0 8px!important}
body.v8.v13.v14[data-page="machines"] .archive-sticky-preview>p{font-size:12.5px!important;line-height:1.45!important;margin-bottom:12px!important}
body.v8.v13.v14[data-page="machines"] [data-archive-preview-open]{width:100%!important;min-height:44px!important;padding:0 15px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;background:#164A9C!important;color:#fff!important;border:0!important;font-family:'IBM Plex Mono',monospace!important;font-size:10px!important;cursor:pointer!important}
body.v8.v13.v14[data-page="machines"] [data-archive-preview-open]:hover{background:#167BC4!important}

/* RIGHT-SIDE REFERENCE DRAWER */
body.v8.v13.v14 .dossier[hidden]{display:none!important}
body.v8.v13.v14 .dossier:not([hidden]){display:block!important;opacity:1!important;visibility:visible!important}
body.v8.v13.v14 .dossier{position:fixed!important;inset:0!important;z-index:1200!important}
body.v8.v13.v14 .dossier .dialog-backdrop{position:absolute!important;inset:0!important;background:rgba(13,24,36,.58)!important}
body.v8.v13.v14 .dossier-panel{position:absolute!important;inset:0 0 0 auto!important;width:min(620px,44vw)!important;height:100dvh!important;max-height:none!important;margin:0!important;background:#F1F0EC!important;border-left:1px solid #C8CDD1!important;box-shadow:-28px 0 70px rgba(13,24,36,.18)!important;overflow:hidden!important;transform:none!important;opacity:1!important;visibility:visible!important}
body.v8.v13.v14 .dossier-top{height:62px!important;min-height:62px!important;padding:0 22px!important;background:#E3E2DD!important;border-bottom:1px solid #CACFD3!important}
body.v8.v13.v14 .dossier-grid{height:calc(100dvh - 62px)!important;display:block!important;overflow-y:auto!important;background:#F1F0EC!important}
body.v8.v13.v14 .dossier-media{min-height:210px!important;max-height:38vh!important;padding:14px!important;background:#D9DDE0!important;overflow:auto!important}
body.v8.v13.v14 .dossier-media-item{min-height:190px!important;max-height:290px!important;margin:0 0 10px!important;background:#242A2E!important}
body.v8.v13.v14 .dossier-media-item img,body.v8.v13.v14 .dossier-media-item video{width:100%!important;height:100%!important;object-fit:contain!important}
body.v8.v13.v14 .dossier-copy{padding:22px 26px 34px!important;background:#F1F0EC!important;color:#0D1824!important}
body.v8.v13.v14 .dossier-copy h2{font-size:31px!important;line-height:1!important;margin:9px 0 14px!important}
body.v8.v13.v14 .dossier-summary{font-size:14px!important;line-height:1.5!important}

/* GALLERY = complete source-folder visual record */
body.v8.v13.v14[data-page="gallery"] .gallery-hero{height:360px!important;min-height:360px!important;max-height:360px!important}
body.v8.v13.v14[data-page="gallery"] .gallery-browser{padding:50px 0 68px!important}
body.v8.v13.v14[data-page="gallery"] .gallery-browser-head{margin-bottom:30px!important}
body.v8.v13.v14[data-page="gallery"] .gallery-controls{display:flex!important;align-items:flex-start!important;gap:8px!important;flex-wrap:wrap!important;overflow:visible!important}
body.v8.v13.v14[data-page="gallery"] .gallery-controls>[data-gallery-filter-list]{display:flex!important;flex:1 1 900px!important;flex-wrap:wrap!important;gap:7px!important;overflow:visible!important;max-width:none!important}
body.v8.v13.v14[data-page="gallery"] .gallery-controls button{min-height:38px!important;padding:0 12px!important}
body.v8.v13.v14[data-page="gallery"] .gallery-groups{display:grid!important;gap:30px!important}
body.v8.v13.v14[data-page="gallery"] .gallery-project-group{padding:0 0 24px!important;margin:0!important;border-bottom:1px solid #D8DDE1!important}
body.v8.v13.v14[data-page="gallery"] .gallery-project-group>header{margin-bottom:12px!important;align-items:end!important}
body.v8.v13.v14[data-page="gallery"] .gallery-project-group>header h3{font-size:24px!important;line-height:1.05!important;margin-top:5px!important}
body.v8.v13.v14[data-page="gallery"] .gallery-project-media{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;align-items:start!important}
body.v8.v13.v14[data-page="gallery"] .gallery-tile{width:100%!important;min-width:0!important;aspect-ratio:16/10!important;max-height:220px!important;overflow:hidden!important;background:#E8E9E6!important}
body.v8.v13.v14[data-page="gallery"] .gallery-tile img{width:100%!important;height:100%!important;object-fit:cover!important}
body.v8.v13.v14[data-page="gallery"] .gallery-tile.is-portrait img,body.v8.v13.v14[data-page="gallery"] .gallery-tile.is-technical img{object-fit:contain!important;background:#ECEDE9!important}

/* FOOTER */
body.v8.v13.v14 .footer-grid{padding:58px 0 48px!important}
body.v8.v13.v14 .footer-col button{padding:0!important;border:0!important;background:none!important;color:inherit!important;text-align:left!important;font:inherit!important;cursor:pointer!important}

/* LAPTOP */
@media (min-width:1181px) and (max-width:1499px){
  body.v8.v13.v14 .shell{width:min(1320px,calc(100% - 52px))!important}
  body.v8.v13.v14 .site-header{padding-inline:26px!important;grid-template-columns:300px minmax(0,1fr) 192px!important;gap:12px!important}
  body.v8.v13.v14 .brand img,body.v8.v13.v14 .is-scrolled .brand img,body.v8.v13.v14 .is-solid .brand img{width:52px!important;height:52px!important;flex-basis:52px!important}
  body.v8.v13.v14 .brand-copy strong{font-size:17px!important}.brand-copy small{font-size:8px!important}
  body.v8.v13.v14 .desktop-nav{gap:10px!important}body.v8.v13.v14 .desktop-nav a{font-size:10.5px!important}
  body.v8.v13.v14 .header-cta{width:192px!important;min-width:192px!important;height:52px!important;font-size:10px!important}
  body.v8.v13.v14 .hero-blue-layout{grid-template-columns:minmax(0,550px) minmax(470px,550px)!important;gap:52px!important}
  body.v8.v13.v14 .hero-blue-copy{max-width:550px!important}body.v8.v13.v14 .hero-blue-copy h1{font-size:70px!important}body.v8.v13.v14 .hero-engineering-board{max-width:550px!important;height:500px!important}
  body.v8.v13.v14 .engineering-depth .metric-stack,body.v8.v13.v14 .engineering-depth .archive-callout{height:250px!important;min-height:250px!important}
  body.v8.v13.v14[data-page="projects"] .project-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.v8.v13.v14[data-page="gallery"] .gallery-project-media{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* TABLET */
@media (max-width:1180px){
  body.v8.v13.v14 .shell{width:calc(100% - 44px)!important}
  body.v8.v13.v14 .desktop-nav{display:none!important}body.v8.v13.v14 .menu-toggle{display:block!important}
  body.v8.v13.v14 .site-header{grid-template-columns:1fr auto auto!important;padding-inline:22px!important}
  body.v8.v13.v14 .hero-blue{min-height:auto!important}body.v8.v13.v14 .hero-blue-layout{min-height:auto!important;grid-template-columns:1fr!important;gap:36px!important;padding-block:56px!important}
  body.v8.v13.v14 .hero-blue-copy{max-width:720px!important}body.v8.v13.v14 .hero-engineering-board{max-width:700px!important;height:550px!important}
  body.v8.v13.v14 .engineering-depth .depth-head{grid-template-columns:1fr!important;gap:18px!important}
  body.v8.v13.v14 .engineering-depth .depth-grid{grid-template-columns:1fr!important;gap:12px!important}
  body.v8.v13.v14 .engineering-depth .metric-stack{height:230px!important;min-height:230px!important}
  body.v8.v13.v14 .engineering-depth .archive-callout{height:auto!important;min-height:260px!important}
  body.v8.v13.v14 .selected-projects-strip .project-card,body.v8.v13.v14 .selected-projects-strip .project-card:nth-child(1),body.v8.v13.v14 .selected-projects-strip .project-card:nth-child(2){grid-column:span 3!important;height:250px!important}
  body.v8.v13.v14[data-page="projects"] .project-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.v8.v13.v14[data-page="machines"] .archive-index-layout{grid-template-columns:1fr!important}body.v8.v13.v14[data-page="machines"] .archive-sticky-preview{position:relative!important;top:auto!important;max-width:none!important}
  body.v8.v13.v14[data-page="gallery"] .gallery-project-media{grid-template-columns:repeat(2,minmax(0,1fr))!important}body.v8.v13.v14[data-page="gallery"] .gallery-tile{max-height:none!important;aspect-ratio:4/3!important}
  body.v8.v13.v14 .dossier-panel{width:min(760px,92vw)!important}
}

/* MOBILE */
@media (max-width:640px){
  body.v8.v13.v14 .shell{width:calc(100% - 28px)!important}
  body.v8.v13.v14 .site-header,body.v8.v13.v14 .site-header.is-scrolled,body.v8.v13.v14 .site-header.is-solid{height:72px!important;min-height:72px!important;padding-inline:14px!important;grid-template-columns:1fr auto!important}
  body.v8.v13.v14 .header-cta{display:none!important}body.v8.v13.v14 .brand img,body.v8.v13.v14 .is-scrolled .brand img,body.v8.v13.v14 .is-solid .brand img{width:44px!important;height:44px!important;flex-basis:44px!important}body.v8.v13.v14 .brand-copy strong{font-size:13px!important;white-space:normal!important}body.v8.v13.v14 .brand-copy small{display:none!important}body.v8.v13.v14 .subpage-main{padding-top:72px!important}
  body.v8.v13.v14 .hero-blue-layout{padding-block:38px!important;gap:28px!important}body.v8.v13.v14 .hero-blue-copy h1{font-size:clamp(50px,14vw,64px)!important}body.v8.v13.v14 .hero-blue-copy>p{font-size:15px!important;line-height:1.58!important;margin-top:22px!important}body.v8.v13.v14 .hero-actions{display:flex!important;flex-direction:column!important;width:100%!important;margin-top:22px!important}body.v8.v13.v14 .hero-chips{justify-content:flex-start!important}body.v8.v13.v14 .hero-engineering-board{height:420px!important;max-width:100%!important}
  body.v8.v13.v14 .engineering-depth{padding:46px 0 52px!important}body.v8.v13.v14 .engineering-depth .depth-head h2{font-size:44px!important}body.v8.v13.v14 .engineering-depth .metric-stack{height:auto!important;display:grid!important;grid-template-columns:1fr!important;border:0!important;gap:8px!important;background:transparent!important}body.v8.v13.v14 .engineering-depth .metric-card{min-height:110px!important;height:110px!important;border:1px solid #D5D9DD!important;padding:16px 18px!important;display:grid!important;grid-template-columns:100px 1fr 18px!important;align-items:center!important;gap:12px!important}body.v8.v13.v14 .engineering-depth .metric-number{font-size:48px!important;margin:0!important}body.v8.v13.v14 .engineering-depth .metric-card>i{position:static!important}body.v8.v13.v14 .engineering-depth .archive-callout{min-height:300px!important;padding:24px 20px!important}
  body.v8.v13.v14 .selected-projects-strip .project-grid{grid-template-columns:1fr!important}body.v8.v13.v14 .selected-projects-strip .project-card,body.v8.v13.v14 .selected-projects-strip .project-card:nth-child(1),body.v8.v13.v14 .selected-projects-strip .project-card:nth-child(2){grid-column:auto!important;height:230px!important}
  body.v8.v13.v14[data-page="projects"] .page-hero-projects{height:330px!important;min-height:330px!important;max-height:330px!important}body.v8.v13.v14[data-page="projects"] .project-page-grid{grid-template-columns:1fr!important}body.v8.v13.v14[data-page="projects"] .project-page-media,body.v8.v13.v14[data-page="projects"] .project-page-card.project-layout-0 .project-page-media,body.v8.v13.v14[data-page="projects"] .project-page-card.project-layout-1 .project-page-media{height:205px!important;min-height:205px!important;max-height:205px!important;flex-basis:205px!important}
  body.v8.v13.v14[data-page="machines"] .archive-hero{min-height:auto!important;max-height:none!important;padding:42px 0!important}body.v8.v13.v14[data-page="machines"] .archive-hero-grid{grid-template-columns:1fr!important;gap:20px!important}body.v8.v13.v14[data-page="machines"] .archive-hero-number{border-right:0!important;border-bottom:1px solid rgba(183,215,242,.22)!important;padding:0 0 18px!important}body.v8.v13.v14[data-page="machines"] .archive-row{grid-template-columns:66px 1fr 18px!important;min-height:66px!important}body.v8.v13.v14[data-page="machines"] .archive-row small{display:none!important}
  body.v8.v13.v14[data-page="gallery"] .gallery-hero{height:320px!important;min-height:320px!important;max-height:320px!important}body.v8.v13.v14[data-page="gallery"] .gallery-project-media{grid-template-columns:1fr!important}body.v8.v13.v14[data-page="gallery"] .gallery-project-group>header h3{font-size:22px!important}
  body.v8.v13.v14 .dossier-panel{width:100vw!important;height:100dvh!important}.dossier-media{max-height:32vh!important}.dossier-copy{padding:22px 17px 34px!important}
}


/* MOBILE DOSSIER — phone-native project sheet */
@media (max-width:640px){
  body.v8.v13.v14 .dossier-panel{
    width:100vw!important;
    max-width:100vw!important;
    height:100dvh!important;
    border-left:0!important;
    box-shadow:none!important;
    background:#F4F3EF!important;
  }

  body.v8.v13.v14 .dossier-top{
    height:54px!important;
    min-height:54px!important;
    padding:0 10px 0 15px!important;
    gap:8px!important;
    background:rgba(244,243,239,.98)!important;
    border-bottom:1px solid #D4D8DA!important;
    box-shadow:0 4px 16px rgba(13,24,36,.04)!important;
  }
  body.v8.v13.v14 .dossier-top>span{
    min-width:0!important;
    max-width:calc(100vw - 142px)!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:#164A9C!important;
    font:600 9px/1 "IBM Plex Mono",monospace!important;
    letter-spacing:.085em!important;
    text-transform:uppercase!important;
  }
  body.v8.v13.v14 .dossier-top>div{
    display:flex!important;
    align-items:center!important;
    gap:3px!important;
    flex:0 0 auto!important;
  }
  body.v8.v13.v14 .dossier-top button{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border:1px solid #D1D6D9!important;
    border-radius:0!important;
    background:#FAFAF7!important;
    color:#164A9C!important;
    font:600 17px/1 "IBM Plex Mono",monospace!important;
  }
  body.v8.v13.v14 .dossier-top button[data-dossier-close]{
    font-size:0!important;
    border-color:#164A9C!important;
    background:#164A9C!important;
    color:#fff!important;
  }
  body.v8.v13.v14 .dossier-top button[data-dossier-close]::after{
    content:"×";
    font:500 24px/1 Arial,sans-serif!important;
  }

  body.v8.v13.v14 .dossier-grid{
    height:calc(100dvh - 54px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    background:#F4F3EF!important;
  }

  body.v8.v13.v14 .dossier-media{
    box-sizing:border-box!important;
    width:100%!important;
    min-height:0!important;
    height:clamp(196px,27dvh,228px)!important;
    max-height:228px!important;
    padding:10px 12px 12px!important;
    display:flex!important;
    grid-template-columns:none!important;
    gap:9px!important;
    align-items:stretch!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    scroll-padding-inline:12px!important;
    scrollbar-width:none!important;
    background:#E1E4E5!important;
    border-bottom:1px solid #CCD2D5!important;
  }
  body.v8.v13.v14 .dossier-media::-webkit-scrollbar{display:none!important}
  body.v8.v13.v14 .dossier-media-item,
  body.v8.v13.v14 .dossier-media-item:first-child{
    flex:0 0 calc(100vw - 42px)!important;
    width:calc(100vw - 42px)!important;
    min-width:calc(100vw - 42px)!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    scroll-snap-align:center!important;
    overflow:hidden!important;
    border:1px solid #C6CDD1!important;
    background:#EEF0ED!important;
  }
  body.v8.v13.v14 .dossier-media-item img,
  body.v8.v13.v14 .dossier-media-item video{
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    display:block!important;
    object-position:center!important;
  }
  body.v8.v13.v14 .dossier-media-item.media-mode-photo img{
    object-fit:cover!important;
    padding:0!important;
  }
  body.v8.v13.v14 .dossier-media-item.media-mode-portrait img,
  body.v8.v13.v14 .dossier-media-item.media-mode-technical img,
  body.v8.v13.v14 .dossier-video video{
    object-fit:contain!important;
    padding:8px!important;
    background:#EEF0ED!important;
  }

  body.v8.v13.v14 .dossier-copy{
    padding:20px 18px max(34px,env(safe-area-inset-bottom))!important;
    background:#F4F3EF!important;
  }
  body.v8.v13.v14 .dossier-id{
    display:block!important;
    margin-bottom:8px!important;
    color:#164A9C!important;
    font:600 9px/1.2 "IBM Plex Mono",monospace!important;
    letter-spacing:.08em!important;
  }
  body.v8.v13.v14 .dossier-copy h2{
    margin:0 0 12px!important;
    max-width:100%!important;
    color:#0D1824!important;
    font-size:clamp(29px,8.3vw,36px)!important;
    line-height:.98!important;
    letter-spacing:-.045em!important;
  }
  body.v8.v13.v14 .dossier-summary{
    margin:0!important;
    max-width:100%!important;
    color:#66737D!important;
    font-size:14px!important;
    line-height:1.52!important;
  }

  body.v8.v13.v14 .dossier-facts{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    margin:22px 0 24px!important;
    border-top:1px solid #CDD2D5!important;
    border-left:1px solid #CDD2D5!important;
  }
  body.v8.v13.v14 .dossier-facts div,
  body.v8.v13.v14 .dossier-facts div:nth-child(odd),
  body.v8.v13.v14 .dossier-facts div:nth-child(even){
    box-sizing:border-box!important;
    min-width:0!important;
    padding:13px 12px!important;
    border-right:1px solid #CDD2D5!important;
    border-bottom:1px solid #CDD2D5!important;
    background:#FAFAF7!important;
  }
  body.v8.v13.v14 .dossier-facts span{
    margin-bottom:6px!important;
    color:#7B858D!important;
    font-size:8px!important;
    letter-spacing:.07em!important;
  }
  body.v8.v13.v14 .dossier-facts strong{
    display:block!important;
    color:#26323D!important;
    font-size:13px!important;
    line-height:1.3!important;
  }

  body.v8.v13.v14 .dossier-sections article{
    padding:15px 0!important;
    border-top:1px solid #CDD2D5!important;
  }
  body.v8.v13.v14 .dossier-sections h3{
    margin:0 0 6px!important;
    color:#182633!important;
    font-size:18px!important;
    line-height:1.08!important;
  }
  body.v8.v13.v14 .dossier-sections p{
    margin:0!important;
    color:#66737D!important;
    font-size:13px!important;
    line-height:1.52!important;
  }
  body.v8.v13.v14 .dossier-bottom{
    margin-top:18px!important;
    padding-top:14px!important;
    gap:12px!important;
  }
  body.v8.v13.v14 .dossier-bottom button{
    min-height:40px!important;
    padding:0 12px!important;
    border:1px solid #164A9C!important;
    background:#164A9C!important;
    color:#fff!important;
    text-decoration:none!important;
  }
}

@media (max-width:330px){
  body.v8.v13.v14 .dossier-media{
    height:194px!important;
  }
  body.v8.v13.v14 .dossier-copy h2{
    font-size:29px!important;
  }
  body.v8.v13.v14 .dossier-facts{
    grid-template-columns:1fr!important;
  }
}


/* EXPERIENCE SINGLE-RESULT — final responsive authority.
   Prevent the 360px preview cap from collapsing a one-result card into a narrow text column. */
@media (min-width:761px){
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result{
    width:min(100%,1180px)!important;
    max-width:1180px!important;
    margin-inline:auto!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:16px!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-index{
    width:100%!important;
    min-width:0!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-row{
    width:100%!important;
    min-width:0!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-sticky-preview{
    position:relative!important;
    top:auto!important;
    order:0!important;
    display:grid!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
    grid-template-columns:minmax(280px,.92fr) minmax(260px,1.08fr)!important;
    grid-template-rows:auto auto minmax(64px,1fr) auto!important;
    column-gap:26px!important;
    row-gap:0!important;
    align-items:start!important;
    padding:16px!important;
    overflow:hidden!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-preview-media{
    grid-column:1!important;
    grid-row:1 / 5!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    align-self:start!important;
    aspect-ratio:16/10!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-preview-media img{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    display:block!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-sticky-preview>span,
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-sticky-preview>h2,
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-sticky-preview>p,
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-sticky-preview>button{
    grid-column:2!important;
    min-width:0!important;
    max-width:100%!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-sticky-preview>h2{
    margin:8px 0 10px!important;
    font-size:clamp(28px,2.35vw,38px)!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-sticky-preview>p{
    max-width:52ch!important;
    margin:0 0 16px!important;
    font-size:13px!important;
    line-height:1.5!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result [data-archive-preview-open]{
    width:auto!important;
    min-width:220px!important;
    max-width:100%!important;
    min-height:44px!important;
    justify-self:start!important;
    align-self:end!important;
    padding:0 16px!important;
    white-space:normal!important;
  }
}

@media (min-width:761px) and (max-width:920px){
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-sticky-preview{
    grid-template-columns:minmax(250px,.9fr) minmax(240px,1.1fr)!important;
    column-gap:18px!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-sticky-preview>h2{
    font-size:28px!important;
  }
}

@media (max-width:760px){
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result{
    width:calc(100% - 32px)!important;
    max-width:none!important;
    margin-inline:auto!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-sticky-preview{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result .archive-sticky-preview>h2{
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result [data-archive-preview-open]{
    width:100%!important;
    max-width:100%!important;
  }
}


/* Mobile Experience: restore the real viewport and remove desktop sizing inheritance. */
@media(max-width:760px){
 html body.v8.v13.v14[data-page="machines"],
 html body.v8.v13.v14[data-page="machines"] main,
 html body.v8.v13.v14[data-page="machines"] .archive-browser,
 html body.v8.v13.v14[data-page="machines"] .archive-hero{
  min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-browser .shell,
 html body.v8.v13.v14[data-page="machines"] .archive-hero .shell{
  box-sizing:border-box!important;width:calc(100% - 32px)!important;max-width:calc(100% - 32px)!important;
  min-width:0!important;margin-inline:16px!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-hero-grid{
  display:block!important;grid-template-columns:minmax(0,1fr)!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-hero-number{max-width:100%!important;min-width:0!important}
 html body.v8.v13.v14[data-page="machines"] .archive-hero-facts{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;min-width:0!important;max-width:100%!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-hero-facts>span{
  box-sizing:border-box!important;display:flex!important;flex-direction:column!important;
  align-items:flex-start!important;justify-content:center!important;
  min-width:0!important;max-width:100%!important;width:100%!important;
  padding:12px!important;gap:4px!important;font-size:10px!important;
  line-height:1.35!important;letter-spacing:.02em!important;white-space:normal!important;
  overflow-wrap:anywhere!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-hero-facts>span:last-child{
  grid-column:1/-1!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-hero-facts strong{
  font-size:27px!important;line-height:1!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-toolbar{
  box-sizing:border-box!important;width:calc(100% - 32px)!important;
  max-width:calc(100% - 32px)!important;margin-inline:16px!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) 86px!important;
  gap:10px!important;align-items:end!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-types{
  grid-column:1/-1!important;display:grid!important;width:100%!important;
  min-width:0!important;max-width:100%!important;
  grid-template-columns:minmax(0,.7fr) minmax(0,1.2fr) minmax(0,1.2fr)!important;
  overflow:visible!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-types button{
  box-sizing:border-box!important;width:100%!important;min-width:0!important;
  max-width:100%!important;min-height:56px!important;height:auto!important;
  padding:8px 4px!important;font-size:10px!important;line-height:1.25!important;
  letter-spacing:0!important;white-space:normal!important;overflow-wrap:break-word!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-types button b{
  display:block!important;font-size:12px!important;margin-top:4px!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-search{
  grid-column:1!important;min-width:0!important;width:100%!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-search input{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;
 }
 html body.v8.v13.v14[data-page="machines"] .filter-toggle{
  grid-column:2!important;width:100%!important;min-width:0!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-status{
  display:flex!important;flex-wrap:wrap!important;gap:8px!important;
  min-width:0!important;max-width:100%!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-status a{
  max-width:100%!important;white-space:normal!important;overflow-wrap:break-word!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-index-layout,
 html body.v8.v13.v14[data-page="machines"] .archive-index-layout.is-single-result{
  box-sizing:border-box!important;width:calc(100% - 32px)!important;
  max-width:calc(100% - 32px)!important;min-width:0!important;
  margin-inline:16px!important;display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;gap:12px!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-index,
 html body.v8.v13.v14[data-page="machines"] .archive-row{
  box-sizing:border-box!important;min-width:0!important;max-width:100%!important;width:100%!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-index-layout .archive-sticky-preview{
  box-sizing:border-box!important;position:relative!important;top:auto!important;
  display:block!important;width:100%!important;max-width:100%!important;
  min-width:0!important;padding:14px!important;overflow:hidden!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-index-layout .archive-preview-media{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;
  min-width:0!important;aspect-ratio:16/10!important;margin:0 0 14px!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-index-layout .archive-sticky-preview>h2{
  font-size:clamp(24px,7vw,32px)!important;line-height:1.12!important;
  letter-spacing:-.03em!important;overflow-wrap:break-word!important;
  word-break:normal!important;margin:10px 0!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-index-layout .archive-sticky-preview>p{
  font-size:14px!important;line-height:1.5!important;overflow-wrap:break-word!important;
 }
 html body.v8.v13.v14[data-page="machines"] .archive-index-layout [data-archive-preview-open]{
  box-sizing:border-box!important;display:flex!important;align-items:center!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  min-height:48px!important;padding:12px 16px!important;
  font-size:13px!important;white-space:normal!important;
 }
}
