[data-mobile-project-summary]{display:none!important}
@media(max-width:991px){

 html:root body #about-navbar-simple.navbar[data-snav][data-mobile-hero]{background:rgba(255,255,255,.88)!important;background-image:none!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;border-bottom:1px solid rgba(0,0,0,.045)!important}
 html:root body #about-navbar-simple.navbar[data-snav][data-mobile-hero]>.navbar-top{background:rgba(255,255,255,.5)!important;background-image:none!important;box-shadow:none!important}
 html:root body #about-navbar-mobile-control [data-mobile-nav-contact]{position:fixed!important;display:flex!important;align-items:center!important;justify-content:center!important;left:calc(var(--shared-menu-button-left) - 86px)!important;top:var(--shared-menu-button-top)!important;width:78px!important;height:44px!important;min-width:0!important;min-height:0!important;max-height:44px!important;box-sizing:border-box!important;padding:0 12px!important;margin:0!important;border:1px solid #111!important;border-radius:999px!important;background:#111!important;color:#fff!important;font:500 14px/20px Ppneuemontreal,Arial,sans-serif!important;text-decoration:none!important;box-shadow:none!important;transform:none!important;pointer-events:auto!important;transition:opacity .16s ease!important}
 html[data-mobile-navigation-open] body #about-navbar-mobile-control [data-mobile-nav-contact]{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
 html:root body main [data-case-trigger]>.case-study-card-visual{width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:9/10!important;flex:none!important;transform:none!important;rotate:0deg!important;translate:none!important;margin:0!important;padding:0!important}
 html:root body main [data-case-trigger]:not([data-case-key=mfg]):not([data-case-key=sch]):not([data-case-key=geo]){gap:10.8px!important}
 html:root body main [data-case-trigger]:not([data-case-key=mfg]):not([data-case-key=sch]):not([data-case-key=geo])>.flex-block-4-copy{padding-top:14.4px!important}
 html:root body main [data-case-trigger]:is([data-case-key=chp],[data-case-key=col],[data-case-key=cam],[data-case-key=water-management],[data-case-key=frs])>.div-block-36{display:flex!important;flex-flow:column!important;align-items:stretch!important;gap:8px!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
 html:root body main [data-case-trigger]:is([data-case-key=chp],[data-case-key=col],[data-case-key=cam],[data-case-key=water-management],[data-case-key=frs]) [data-case-hover]>div{display:none!important}
 html:root body main [data-case-trigger] [data-mobile-project-summary]{display:block!important;font-family:"Ppneuemontreal Book",Arial,sans-serif!important;font-size:inherit!important;font-weight:400!important;line-height:1.2!important;color:#606b7b!important;opacity:1!important;text-align:left!important;margin:0!important;padding:0!important;max-width:none!important}
 html:root body main [data-case-trigger]>.div-block-36>.flex-block-4{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;width:100%!important;margin:0!important;padding:0!important}
 html:root body main [data-case-trigger] .div-block-38{display:flex!important;align-items:center!important;justify-content:flex-start!important;flex:0 0 24px!important;width:24px!important;min-width:24px!important;height:24px!important;margin:0!important;padding:0!important}
 html:root body main [data-case-trigger] .div-block-38>.image-22{display:block!important;width:24px!important;height:24px!important;min-width:0!important;max-width:24px!important;object-fit:contain!important;margin:0!important;padding:0!important}
 html:root body main [data-case-trigger] .personal-project-title-row{justify-content:flex-start!important;margin-left:0!important;padding-left:0!important}
}
@keyframes mobile-card-attention{0%,100%{scale:.954}50%{scale:1}}
@supports(animation-timeline:view()){
 @media(max-width:767px) and (prefers-reduced-motion:no-preference){
  html:root body main [data-case-trigger]{animation:mobile-card-attention 1s linear both;animation-timeline:view(block);animation-range:entry 0% exit 100%;transform-origin:center center}
 }
}

@media(max-width:991px){
html:root body #about-navbar-simple.navbar[data-snav][data-mobile-hero=true],html:root body #about-navbar-simple.navbar[data-snav][data-mobile-hero=true]>.navbar-top{background:transparent!important;background-image:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border-color:transparent!important;box-shadow:none!important}
html:root body #about-navbar-simple.navbar[data-snav][data-mobile-hero=false]{background:rgba(255,255,255,.9)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important}
html:root body #about-navbar-mobile-control [data-mobile-nav-contact]{height:32px!important;max-height:32px!important;top:calc(var(--shared-menu-button-top) + 6px)!important}
html:root body main [data-case-trigger] .div-block-38{flex:0 0 20px!important;width:20px!important;min-width:20px!important;height:20px!important}
html:root body main [data-case-trigger] .div-block-38>.image-22,html:root body main [data-case-trigger] .personal-project-title-row>.image-22{width:20px!important;min-width:20px!important;max-width:20px!important;height:20px!important;object-fit:contain!important}
html:root body main [data-case-trigger]:is([data-case-key=chp],[data-case-key=col],[data-case-key=cam],[data-case-key=water-management],[data-case-key=frs])>.div-block-36,html:root body main [data-case-trigger]>.flex-block-4-copy{row-gap:5.6px!important}





}
@keyframes mobile-projects-slide-in{from{translate:-10vw 0;clip-path:inset(0 100% 0 0)}to{translate:0 0;clip-path:inset(0 0 0 0)}}
@media(max-width:767px) and (prefers-reduced-motion:no-preference){
html:root body .canvas-case-overlay[data-case-projects-open=true]:not([data-case-projects-fading=true]):not(.is-fullscreen) .canvas-case-shell[data-rail-pinned]>.canvas-case-rail>.canvas-case-tabs{animation:mobile-projects-slide-in .5s cubic-bezier(.215,.61,.355,1) both}
html:root body .canvas-case-overlay[data-case-projects-fading=true] .canvas-case-tabs{animation:none!important}
}

html:root body #about-navbar-simple .navlink-streched.dark,html:root body #about-navbar-mobile-control [data-mobile-nav-contact]{scale:.9;transform-origin:center center}
html:root body .contact-modal:is([data-a11y-open=true],[data-footer-dialog]){position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:24px!important;background:rgba(40,49,62,.38)!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;opacity:1!important;z-index:2147483000!important;transition:opacity 220ms ease!important}
html:root body .contact-modal:is([data-a11y-open=true],[data-footer-dialog]) .contact-modal-space{display:none!important}
html:root body .contact-modal:is([data-a11y-open=true],[data-footer-dialog])>.contact-modal-container{position:relative!important;inset:auto!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:24px!important;width:min(680px,100%)!important;min-width:0!important;max-width:100%!important;height:auto!important;max-height:calc(100dvh - 48px)!important;overflow:auto!important;overscroll-behavior:contain;padding:48px 40px 32px!important;margin:0!important;box-sizing:border-box!important;border:1px solid #e7ebef!important;border-radius:20px!important;background:#fff!important;color:#111!important;box-shadow:0 20px 80px #15213326!important;transform:none!important;translate:0 0;scale:1;transition:translate 320ms cubic-bezier(.22,1,.36,1),scale 320ms cubic-bezier(.22,1,.36,1)!important;font-family:"Ppneuemontreal Book",Arial,sans-serif!important;scrollbar-width:thin}
html:root body .contact-modal[data-a11y-open=true]:is([data-contact-phase=opening],[data-contact-phase=closing]){opacity:0!important}
html:root body .contact-modal[data-a11y-open=true][data-contact-phase=opening]>.contact-modal-container{translate:0 24px;scale:.985}
html:root body .contact-modal[data-a11y-open=true][data-contact-phase=closing]>.contact-modal-container{translate:0 12px;scale:.99;transition-duration:180ms!important}
html:root body .contact-modal .hero-h-n-tag.vertical{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;width:100%!important;height:auto!important;min-height:0!important;gap:14px!important;margin:0!important;padding:0 38px 0 0!important}
html:root body .contact-modal .contact-h{position:static!important;max-width:100%!important;font:500 clamp(30px,3vw,40px)/1.08 Ppneuemontreal,Arial,sans-serif!important;letter-spacing:-.035em!important;color:#111!important;margin:0!important;padding:0!important;white-space:normal!important}
html:root body .contact-modal .contact-modal-header-box{position:static!important;display:block!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;transform:none!important}
html:root body .contact-modal [data-contact-intro]{display:block!important;font:400 16px/1.45 "Ppneuemontreal Book",Arial,sans-serif!important;color:#606b7b!important;margin:0!important;padding:0!important;max-width:100%!important;text-align:left!important;opacity:1!important}
html:root body .contact-modal .contact-modal-form{position:static!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:20px!important;width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;padding:0!important;transform:none!important;opacity:1!important}
html:root body .contact-modal .portfolio-form-help{font:400 13px/1.35 "Ppneuemontreal Book",Arial,sans-serif!important;color:#687382!important;margin:0 0 -6px!important;padding:0!important}
html:root body .contact-modal .contact-modal-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;width:100%!important;margin:0!important;padding:0!important}
html:root body .contact-modal .contact-modal-box{display:flex!important;flex-direction:column!important;gap:8px!important;width:100%!important;min-width:0!important;flex:none!important;margin:0!important;padding:0!important}
html:root body .contact-modal .contact-modal-label{font:500 14px/1.3 Ppneuemontreal,Arial,sans-serif!important;margin:0!important;padding:0!important;color:#333b46!important}
html:root body .contact-modal :is(input.contact-modal-field,textarea.contact-modal-field){display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:48px!important;min-height:48px!important;padding:12px 14px!important;margin:0!important;box-sizing:border-box!important;background:#f7f8fa!important;border:1px solid #d7dce3!important;border-radius:9px!important;font:400 16px/1.4 "Ppneuemontreal Book",Arial,sans-serif!important;color:#111!important;box-shadow:none!important;transition:border-color 160ms,background 160ms!important}
html:root body .contact-modal textarea.contact-modal-field{height:128px!important;min-height:128px!important;max-height:320px;resize:vertical!important}
html:root body .contact-modal :is(input,textarea)::placeholder{font:inherit!important;color:#818b98!important;opacity:1!important}
html:root body .contact-modal :is(input,textarea):focus-visible{outline:2px solid #8caddc!important;outline-offset:2px!important;border-color:#6d91c5!important;background:#fff!important}
html:root body .contact-modal .strech-btn-wrap.contact-modl{position:static!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:20px!important;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;margin:4px 0 0!important;padding:0!important}
html:root body .contact-modal .form-btn-streched{order:0!important;position:static!important;display:block!important;width:100%!important;min-width:0!important;height:48px!important;min-height:48px!important;max-height:none!important;padding:12px 20px!important;margin:0!important;background:#111!important;color:#fff!important;border:1px solid #111!important;border-radius:999px!important;font:500 16px/1.3 Ppneuemontreal,Arial,sans-serif!important;letter-spacing:0!important;transition:background 160ms,opacity 160ms!important}
html:root body .contact-modal .form-btn-streched:hover{background:#343b44!important}
html:root body .contact-modal .form-btn-streched:disabled{opacity:.45!important;cursor:not-allowed!important}
html:root body .contact-modal .contact-txt-wrap2.modal{order:1!important;display:flex!important;flex-flow:row wrap!important;align-items:center!important;justify-content:space-between!important;gap:12px 18px!important;width:100%!important;margin:0!important;padding:0!important}
html:root body .contact-modal .contact-txt-wrap2.modal>.contact-email{display:block!important;width:auto!important;font:400 15px/1.35 "Ppneuemontreal Book",Arial,sans-serif!important;opacity:.75!important;color:#333b46!important;margin:0!important;padding:0!important;overflow-wrap:anywhere}
html:root body .contact-modal .contact-txt-wrap2.modal>.contact-email:hover{opacity:1!important;text-decoration:underline;text-underline-offset:4px}
html:root body .contact-modal .services-box{order:2!important;display:block!important;position:static!important;width:100%!important;margin:0!important;padding:0!important}
html:root body .contact-modal .services-box>.contact-txt-wrap2{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:18px!important;width:100%!important;margin:0!important;padding:0!important}
html:root body .contact-modal .socials-icon-link{display:inline-flex;align-items:center;justify-content:center;width:22px!important;height:22px!important;opacity:.6!important}
html:root body .contact-modal .socials-icon-link:hover{opacity:1!important}
html:root body .contact-modal .socials-icon{width:20px!important;height:20px!important;object-fit:contain!important}
html:root body .contact-modal .services-row1.modal{display:none!important}
html:root body .contact-modal>.contact-modal-container>.close-button.modal{position:absolute!important;inset:16px 16px auto auto!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;background:transparent!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;z-index:5!important;transform:none!important}
html:root body .contact-modal .close-button.modal>a{position:static!important;inset:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;width:40px!important;height:40px!important;min-width:0!important;min-height:0!important;background:transparent!important;margin:0!important;padding:0!important;transform:none!important}
html:root body .contact-modal .close-btn-circle{display:none!important}
html:root body .contact-modal .close-icon{width:18px!important;height:18px!important;filter:brightness(0)!important;transform:none!important}
html:root body .contact-modal :is(.w-form-done,.w-form-fail){width:100%;box-sizing:border-box;padding:20px;border-radius:10px;font:400 16px/1.45 "Ppneuemontreal Book",Arial,sans-serif}
html:root body .contact-modal .w-form-done{background:#eef4ef;color:#255331}
html:root body .contact-modal .w-form-fail{background:#faf0f0;color:#7f3434}
html:root body .portfolio-footer [class~=portfolio-footer-surface]{transform:translate3d(0,var(--footer-shift,0px),0)!important}
html:root body [data-portfolio-mobile-menu] [data-mobile-project-logo]{position:absolute!important;inset:10px auto auto 10px!important;display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;width:28px!important;height:28px!important;padding:5px!important;border-radius:7px!important;background:rgba(255,255,255,.87)!important;backdrop-filter:blur(6px);box-shadow:0 2px 10px #14233826;z-index:2;pointer-events:none}
html:root body [data-portfolio-mobile-menu] [data-mobile-project-logo]>img{display:block!important;width:18px!important;height:18px!important;max-width:18px!important;min-width:0!important;object-fit:contain!important;aspect-ratio:1!important;border-radius:0!important;margin:0!important;padding:0!important;filter:none!important}
@media(max-width:767px){
html:root body .contact-modal:is([data-a11y-open=true],[data-footer-dialog]){padding:0!important;background:#fff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html:root body .contact-modal:is([data-a11y-open=true],[data-footer-dialog])>.contact-modal-container{width:100%!important;height:100dvh!important;max-height:100dvh!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:calc(76px + env(safe-area-inset-top)) 24px calc(28px + env(safe-area-inset-bottom))!important;gap:26px!important}
html:root body .contact-modal .hero-h-n-tag.vertical{padding-right:0!important;gap:14px!important}
html:root body .contact-modal .contact-h{font-size:32px!important;max-width:340px!important}
html:root body .contact-modal .contact-modal-row{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}
html:root body .contact-modal .contact-modal-form{flex:none!important}
html:root body .contact-modal>.contact-modal-container>.close-button.modal{inset:calc(12px + env(safe-area-inset-top)) 16px auto auto!important}
html:root body .contact-modal .contact-txt-wrap2.modal{justify-content:flex-start!important}
}
@media(prefers-reduced-motion:reduce){html:root body .contact-modal,html:root body .contact-modal>.contact-modal-container{transition:none!important}html:root body .portfolio-footer [class~=portfolio-footer-surface]{transform:none!important}}

[data-stack-inline-control]{display:none!important}
@media(max-width:991px){
html:root body #about-navbar-mobile-control button[data-unified-menu-control][data-portfolio-mobile-toggle][aria-expanded]:not([hidden]){height:28.8px!important;min-height:28.8px!important;max-height:28.8px!important;top:calc(var(--shared-menu-button-top) + 7.6px)!important}
html:root body .about-stack-artwork{height:auto!important;min-height:0!important}
html:root body [data-project-stack-artwork] [data-stack-inline-control]{display:flex!important;align-items:center!important;justify-content:center!important;width:44px!important;height:44px!important;min-height:44px!important;box-sizing:border-box!important;margin:20px auto 0!important;padding:0!important;border:1px solid #68717b!important;border-radius:50%!important;background:transparent!important;color:#343d48!important;box-shadow:none!important;cursor:pointer;transition:background 150ms,color 150ms}
html:root body [data-stack-inline-control]>svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
html:root body [data-stack-inline-control]:focus-visible{outline:2px solid #6d91c5;outline-offset:4px}
html:root body [data-stack-inline-control]:active{background:#edf0f4!important}
html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-case-close,html:root body .contact-modal>.contact-modal-container>.close-button.modal{scale:1.1;transform-origin:center center}
[data-mobile-outline-dock]{position:absolute!important;inset:var(--mobile-outline-header-height,56px) 0 auto!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;box-sizing:border-box!important;z-index:109;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;border:0!important;border-bottom:1px solid #e3e5e8!important;border-radius:0!important;opacity:0;translate:0 -8px;visibility:hidden;pointer-events:none;transition:opacity 160ms ease,translate 200ms cubic-bezier(.22,1,.36,1),visibility 0s linear 200ms}
[data-mobile-outline-dock][data-dock-visible=true]{opacity:1;translate:0 0;visibility:visible;pointer-events:auto;transition-delay:0s}
html:root body .canvas-case-overlay [data-mobile-outline-dock]>.case-mobile-outline-toggle{position:relative!important;inset:auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;min-height:46px!important;height:46px!important;margin:0!important;padding:12px 20px!important;box-sizing:border-box!important;border:0!important;border-radius:0!important;background:transparent!important;color:#242a32!important;font:500 14px/1.3 Ppneuemontreal,Arial,sans-serif!important;text-align:left!important}
[data-mobile-outline-dock]>.case-mobile-outline-toggle svg{width:16px;height:16px;transition:rotate 180ms ease}
[data-mobile-outline-dock][data-dock-open=true]>.case-mobile-outline-toggle svg{rotate:180deg}
[data-mobile-outline-dock] [data-dock-list]{position:relative!important;display:block;margin:0!important;padding:0 20px 14px!important;max-height:min(60svh,calc(100dvh - 120px));overflow:auto;overscroll-behavior:contain;scrollbar-width:none}
[data-mobile-outline-dock] [data-dock-list][hidden]{display:none!important}
html:root body [data-mobile-outline-dock] :is(.case-page-outline-inner,.canvas-case-outline-inner){position:static!important;inset:auto!important;display:block!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;transform:none!important;opacity:1!important;overflow:visible!important}
[data-mobile-outline-dock] .canvas-case-outline-kicker-1{display:none!important}
html:root body [data-mobile-outline-dock] a.canvas-case-outline-link-1{display:block;min-height:40px!important;font-size:14px!important;line-height:1.4!important;padding-block:10px!important}
.canvas-case-overlay[data-case-projects-open=true] [data-mobile-outline-dock],.canvas-case-overlay.is-fullscreen [data-mobile-outline-dock]{display:none!important}
}
@media(min-width:992px){[data-mobile-outline-dock]{display:none!important}}
@media(prefers-reduced-motion:reduce){[data-mobile-outline-dock],[data-mobile-outline-dock] svg{transition:none!important}}

html:root body .contact-modal .hero-h-n-tag.vertical{position:static!important;flex:0 0 auto!important;height:auto!important;min-height:0!important;max-height:none!important;align-self:stretch!important}
html:root body .contact-modal :is(.contact-modal-form,.contact-modal-box){height:auto!important;min-height:0!important;max-height:none!important;flex:0 0 auto!important;align-self:stretch!important}
html:root body .contact-modal .contact-modal-header-box{flex:0 0 auto!important;height:auto!important;min-height:0!important;max-height:none!important}
html:root body .contact-modal .contact-modal-label{width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;white-space:normal!important}
html:has(body[data-portfolio-footer-in-view]){background-color:#8996a9!important}
html:root body .portfolio-footer{background:#8996a9!important}
html:root body .portfolio-footer-window{background-color:#8996a9!important;isolation:isolate}
@media(max-width:991px){
html:root body main .about-heroimg{position:sticky!important;top:0!important}
html:root body #about-navbar-mobile-control [data-mobile-nav-contact]:not([hidden]){left:calc(var(--shared-menu-button-left) - 84.8px)!important}
}
@media(max-width:767px){
html:root body .contact-modal>.contact-modal-container{justify-content:flex-start!important;align-items:stretch!important}
}
@media(max-width:360px){html:root body .contact-modal .contact-h{font-size:29px!important}}

html:root body .contact-modal .contact-h:focus,html:root body .contact-modal .contact-h:focus-visible{outline:none!important;box-shadow:none!important}
html:root body .contact-modal .tag-box-new{margin-top:12px;margin-bottom:0;max-width:100%}
html:root body .contact-modal .contact-modal-header-box{display:flex!important;flex-direction:column!important;align-items:flex-start!important}
@media(max-width:991px){
html:root body #about-navbar-mobile-control [data-mobile-nav-contact]:not([hidden]){left:calc(var(--shared-menu-button-left) - 78.98px)!important}
html:root body .about-stack-artwork [data-stack-inline-control]{position:relative!important;z-index:30!important;display:flex!important;margin:12px auto 10px!important;flex:none!important;border-color:#000!important;color:#000!important;background:#fff!important;isolation:isolate}
html:root body .about-stack-artwork [data-stack-inline-control]>svg{stroke:#000!important}
html:root body .canvas-case-overlay [data-mobile-outline-dock]{translate:0 -100%!important;opacity:0!important;visibility:hidden!important;transition:translate 240ms cubic-bezier(.22,1,.36,1),opacity 180ms ease,visibility 0s linear 240ms!important}
html:root body .canvas-case-overlay [data-mobile-outline-dock][data-dock-visible=true]{translate:0 0!important;opacity:1!important;visibility:visible!important;transition-delay:0s!important}
html:root body .canvas-case-overlay [data-mobile-outline-dock] [data-dock-list]{display:block!important;max-height:0!important;overflow:hidden!important;padding:0 20px!important;opacity:0;translate:0 -8px;transition:max-height 240ms cubic-bezier(.22,1,.36,1),opacity 180ms ease,translate 240ms cubic-bezier(.22,1,.36,1)}
html:root body .canvas-case-overlay [data-mobile-outline-dock][data-dock-open=true] [data-dock-list]{max-height:min(60svh,calc(100dvh - 120px))!important;overflow-y:auto!important;padding-bottom:14px!important;opacity:1;translate:0 0}
html:root body [data-mobile-outline-dock] .case-page-outline-inner,html:root body [data-mobile-outline-dock] .canvas-case-outline-inner{position:relative!important;padding-left:12px!important}
[data-dock-progress]{position:absolute;inset:0 auto 0 0;width:1px;background:#dfe3e8;pointer-events:none}
[data-dock-progress]>span{position:absolute;left:0;width:1.5px;min-height:20px;background:#6c7785;transition:top 160ms ease,height 160ms ease}
html:root body [data-mobile-outline-dock] a.active-outline{font-weight:500!important;color:#111!important}
}
@media(max-width:767px){
html:root body .contact-modal:is([data-a11y-open=true],[data-footer-dialog])>.contact-modal-container{padding:56px 24px 16px!important;gap:16px!important}
html:root body .contact-modal .hero-h-n-tag.vertical{gap:10px!important}
html:root body .contact-modal .contact-h{font-size:30px!important;line-height:1.08!important}
html:root body .contact-modal [data-contact-intro]{font-size:14px!important;line-height:1.35!important}
html:root body .contact-modal .contact-modal-form{gap:12px!important}
html:root body .contact-modal .portfolio-form-help{display:none!important}
html:root body .contact-modal .contact-modal-row{gap:12px!important}
html:root body .contact-modal .contact-modal-box{gap:6px!important}
html:root body .contact-modal .contact-modal-label{font-size:13px!important;line-height:1.25!important}
html:root body .contact-modal input.contact-modal-field{height:42px!important;min-height:42px!important;padding:9px 12px!important}
html:root body .contact-modal textarea.contact-modal-field{height:80px!important;min-height:80px!important;padding:9px 12px!important}
html:root body .contact-modal .strech-btn-wrap.contact-modl{gap:12px!important;margin-top:0!important}
html:root body .contact-modal .form-btn-streched{height:42px!important;min-height:42px!important;padding:9px 18px!important}
html:root body .contact-modal .contact-txt-wrap2.modal>.contact-email{font-size:13px!important}
html:root body .contact-modal .services-box{display:none!important}
}
@media(max-width:767px) and (max-height:740px){html:root body .contact-modal [data-contact-intro]{display:none!important}html:root body .contact-modal .contact-h{font-size:27px!important}}
@media(max-width:360px){html:root body .contact-modal .contact-txt-wrap2.modal{gap:10px!important}html:root body .contact-modal .contact-txt-wrap2.modal>.contact-email{font-size:12px!important}}
@media(max-width:767px) and (max-height:600px){html:root body .contact-modal:is([data-a11y-open=true],[data-footer-dialog])>.contact-modal-container{padding-top:52px!important;padding-bottom:12px!important;gap:12px!important}html:root body .contact-modal .contact-h{font-size:25px!important}html:root body .contact-modal input.contact-modal-field{height:38px!important;min-height:38px!important}html:root body .contact-modal textarea.contact-modal-field{height:60px!important;min-height:60px!important}html:root body .contact-modal .form-btn-streched{height:38px!important;min-height:38px!important}}
@media(prefers-reduced-motion:reduce){[data-mobile-outline-dock],[data-mobile-outline-dock] [data-dock-list],[data-dock-progress]>span{transition:none!important}}

/* Shared gallery gutters follow the case-study content and outer layout. */
html:root body :is([data-projects-index],[data-archive-snapshots]){display:block!important;width:100%!important;max-width:100%!important;margin:0!important;padding-left:0!important;padding-right:0!important;box-sizing:border-box!important}
html:root body :is([data-projects-index],[data-archive-snapshots])>.archive-snapshots-content{width:100%!important;max-width:none!important;min-width:0!important;padding:0!important;margin:0!important}
html:root body :is([data-projects-index],[data-archive-snapshots]) .archive-snapshots-intro{width:calc(100% - 48px)!important;max-width:1100px!important;margin:0 auto 40px!important;padding:0!important;box-sizing:border-box!important}
html:root body :is([data-projects-index],[data-archive-snapshots]) :is(.projects-index-grid,.archive-snapshots-gallery,[data-project-filters],[data-project-result-count]){width:86.5%!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;padding-left:24px!important;padding-right:24px!important;box-sizing:border-box!important}
html:root body .canvas-case-overlay :is([data-projects-index],[data-archive-snapshots]) .archive-snapshots-intro{max-width:48rem!important;width:calc(100% - 80px)!important}
html:root body .canvas-case-overlay :is([data-projects-index],[data-archive-snapshots]) :is(.projects-index-grid,.archive-snapshots-gallery,[data-project-filters],[data-project-result-count]){width:100%!important;padding-left:40px!important;padding-right:40px!important}
html:root body [data-projects-index] .projects-index-stack{order:initial!important;position:relative!important;margin:0 auto 36px!important;width:100%!important;height:clamp(320px,38vw,540px)!important;max-height:540px!important;overflow:visible!important}
html:root body [data-projects-index] .projects-index-stack :is(.ps-study,.ps-showcase,.ps-stage){height:100%!important;max-height:none!important}
html:root body [data-projects-index] .projects-index-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:24px!important;row-gap:40px!important;align-items:start!important}
html:root body [data-projects-index] .projects-index-card{display:flex!important;flex-direction:column!important;gap:0!important;position:relative!important;min-width:0!important;width:100%!important;height:auto!important;max-width:100%!important;overflow:visible!important;align-items:stretch!important;text-align:left!important;background:transparent!important}
html:root body [data-projects-index] .projects-index-visual{position:relative!important;width:100%!important;height:auto!important;aspect-ratio:4/3!important;flex:none!important;overflow:hidden!important;border-radius:12px!important}
html:root body [data-projects-index] .projects-index-visual [data-case-hover]{display:none!important}
html:root body [data-projects-index] .projects-index-card-title{display:flex!important;align-items:flex-start!important;position:static!important;inset:auto!important;transform:none!important;translate:none!important;width:100%!important;min-height:0!important;height:auto!important;margin:14px 0 0!important;padding:0!important;gap:8px!important;font-size:20px!important;font-weight:500!important;line-height:1.25!important;color:#17191b!important;text-shadow:none!important;white-space:normal!important}
html:root body [data-projects-index] .projects-index-card-title img{width:20px!important;height:20px!important;flex:0 0 20px!important;object-fit:contain!important;margin:2px 0 0!important;filter:none!important}
html:root body [data-projects-index] .projects-index-card-title{justify-content:flex-start!important}
html:root body [data-projects-index] .projects-index-card-title img{display:none!important}
html:root body [data-projects-index] [data-project-card-tags],html:root body [data-projects-index] [data-project-result-count]{display:none!important}
html:root body [data-projects-index] [data-project-filters]{margin-bottom:24px!important}
html:root body [data-projects-index] [data-project-filter-count]{display:inline-block!important;margin-left:8px!important;font-size:.92em!important;line-height:inherit!important;font-weight:400!important;color:#72767d!important;font-variant-numeric:tabular-nums!important;pointer-events:none!important}
html:root body [data-projects-index] [data-project-filters] [aria-pressed=true] [data-project-filter-count]{color:#a8afb8!important}
@media(min-width:992px){html:root body [data-mobile-nav-contact]{display:none!important}}
html:root body [data-projects-index] [data-project-card-meta]{position:static!important;display:block!important;width:100%!important;padding:0!important;margin:0!important;background:none!important}
html:root body [data-projects-index] [data-project-description]{position:static!important;display:block!important;margin:8px 0 0!important;padding:0!important;font-family:inherit!important;font-size:16px!important;font-weight:400!important;line-height:1.45!important;color:#686b70!important;opacity:1!important;text-align:left!important;text-shadow:none!important}
html:root body [data-projects-index] [data-project-card-tags]{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin:12px 0 0!important;padding:0!important}
html:root body [data-projects-index] [data-project-filters]{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-top:0!important;margin-bottom:24px!important}
html:root body [data-projects-index] [data-project-filter]{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:36px!important;padding:7px 13px!important;margin:0!important;border:1px solid #dedfe2!important;border-radius:99px!important;background:#fff!important;color:#555a60!important;font-family:inherit!important;font-size:14px!important;font-weight:400!important;line-height:1.2!important;text-decoration:none!important;cursor:pointer!important;transition:background .16s,color .16s,border-color .16s!important}
html:root body [data-projects-index] [data-project-filter]:hover{background:#f0f2f4!important;color:#111!important;border-color:#b8bdc5!important}
html:root body [data-projects-index] [data-project-filters] [aria-pressed=true]{background:#202328!important;color:#fff!important;border-color:#202328!important}
html:root body [data-projects-index] [data-project-card-tags] [data-project-filter]{min-height:28px!important;padding:5px 9px!important;background:#f2f3f5!important;border-color:transparent!important;font-size:12px!important;color:#656b72!important}
html:root body [data-projects-index] [data-project-filter]:focus-visible{outline:2px solid #467bc8!important;outline-offset:3px!important}
html:root body [data-projects-index] [data-project-result-count]{font-size:13px!important;line-height:1.4!important;color:#85898e!important;margin-top:0!important;margin-bottom:24px!important}
html:root body [data-projects-index] .projects-index-card[data-project-filter-hidden=true]{display:none!important}
html:root body [data-archive-snapshots] .archive-snapshots-gallery{columns:3!important;column-gap:24px!important}
html:root body .case-page-layout:is([data-projects-index],[data-archive-snapshots])>.case-page-content.archive-snapshots-content>.case-page-hero.archive-snapshots-intro{width:100%!important;max-width:1148px!important;padding-left:24px!important;padding-right:24px!important;margin-left:auto!important;margin-right:auto!important}
html:root body .canvas-case-overlay .case-page-layout:is([data-projects-index],[data-archive-snapshots])>.case-page-content.archive-snapshots-content>.case-page-hero.archive-snapshots-intro{max-width:calc(48rem + 80px)!important;padding-left:40px!important;padding-right:40px!important}
@media(max-width:991px){
html:root body .case-page-layout:is([data-projects-index],[data-archive-snapshots])>.case-page-content.archive-snapshots-content>.case-page-hero.archive-snapshots-intro,html:root body .canvas-case-overlay .case-page-layout:is([data-projects-index],[data-archive-snapshots])>.case-page-content.archive-snapshots-content>.case-page-hero.archive-snapshots-intro{width:100%!important;max-width:none!important;padding-left:20px!important;padding-right:20px!important}
html:root body :is([data-projects-index],[data-archive-snapshots]){padding-top:24px!important}
html:root body :is([data-projects-index],[data-archive-snapshots]) .archive-snapshots-intro,html:root body .canvas-case-overlay :is([data-projects-index],[data-archive-snapshots]) .archive-snapshots-intro{width:calc(100% - 40px)!important;max-width:none!important;margin:0 auto 28px!important;padding:0!important}
html:root body :is([data-projects-index],[data-archive-snapshots]) :is(.projects-index-grid,.archive-snapshots-gallery,[data-project-filters],[data-project-result-count]),html:root body .canvas-case-overlay :is([data-projects-index],[data-archive-snapshots]) :is(.projects-index-grid,.archive-snapshots-gallery,[data-project-filters],[data-project-result-count]){width:100%!important;padding-left:20px!important;padding-right:20px!important}
html:root body [data-projects-index] .projects-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:14px!important;row-gap:28px!important}
html:root body [data-archive-snapshots] .archive-snapshots-gallery{columns:2!important;column-gap:14px!important}
html:root body [data-archive-snapshots] .archive-snapshot-slot{margin-bottom:14px!important}
html:root body [data-projects-index] .projects-index-stack{height:388px!important;max-height:388px!important;margin-bottom:28px!important}
html:root body [data-projects-index] .projects-index-stack :is(.ps-study,.ps-showcase,.ps-stage){height:320px!important;max-height:320px!important}
html:root body [data-projects-index] [data-stack-inline-control]{position:relative!important;z-index:2!important;display:flex!important;margin:12px auto!important;color:#000!important;border-color:#000!important;background:#fff!important}
html:root body [data-projects-index] .projects-index-card-title{font-size:17px!important;line-height:1.25!important;margin-top:10px!important;gap:6px!important}
html:root body [data-projects-index] .projects-index-card-title img{width:17px!important;height:17px!important;flex-basis:17px!important;margin-top:1px!important}
html:root body [data-projects-index] [data-project-description]{font-size:14px!important;line-height:1.4!important;margin-top:6px!important}
html:root body [data-projects-index] [data-project-card-tags]{gap:5px!important;margin-top:10px!important}
html:root body [data-projects-index] [data-project-card-tags] [data-project-filter]{font-size:11px!important;padding:5px 7px!important}
html:root body [data-projects-index] .projects-index-visual{border-radius:8px!important}



}

/* Launch review: preserve the reading layout while restoring its controls. */
@media(min-width:992px){
 html:root body .canvas-case-overlay:not(.is-fullscreen) .case-page-layout>.case-page-outline,
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-case-reading-grid>.canvas-case-outline{display:block!important}
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-case-header>a.canvas-case-rail-toggle[data-case-header-toggle]{display:inline-flex!important;position:relative!important;inset:auto!important;translate:none!important;transform:none!important;align-items:center!important;justify-content:center!important;flex:0 0 32px!important;width:32px!important;height:32px!important;min-height:32px!important;margin:0 8px 0 0!important;padding:0!important;border:0!important;border-radius:6px!important;background:transparent!important;color:#333!important;box-shadow:none!important;font-size:19px!important}
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-case-header>a.canvas-case-rail-toggle[data-case-header-toggle]{font-size:0!important;line-height:0!important}
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-case-header>a.canvas-case-rail-toggle[data-case-header-toggle]::after{display:none!important}
 html:root body .canvas-case-overlay .canvas-case-header>[data-case-header-toggle]:hover{background:rgba(0,0,0,.05)!important}
}
@media(max-width:767px){
 html:root body [data-b2b-explorations] .div-block-40{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:24px!important;width:100%!important;min-width:0!important;max-width:100%!important}
 html:root body [data-b2b-explorations] .div-block-40>.flex-block-11{flex:0 0 auto!important;width:100%!important;min-width:0!important;max-width:100%!important;margin-inline:0!important}
 html:root body [data-b2b-explorations] .flex-block-12{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:28px!important;width:100%!important;min-width:0!important;max-width:100%!important}
 html:root body [data-b2b-explorations] .flex-block-12>.flex-block-11{flex:0 0 auto!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;margin-inline:0!important}
 html:root body [data-b2b-explorations] .flex-block-11 :is(img,.imglabel){max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
 html:root body [data-b2b-explorations] .flex-block-11 img{width:100%!important;height:auto!important;object-fit:contain!important}
}
/* A focused topic remains visible until keyboard focus leaves it. */
html:root body .contact-modal .tag-box-new>a:focus{width:auto!important;height:auto!important;opacity:1!important;visibility:visible!important;outline:2px solid currentColor;outline-offset:3px}
html:root body .contact-modal .tag-box-new:focus-within>a:not(:focus){visibility:hidden!important}
/* Both white resting links and black hover links meet 4.5:1 on these tones. */
html:root body .portfolio-footer-window{background-color:#68778a!important;background-image:radial-gradient(ellipse at 20% 20%,rgba(255,255,255,.008),transparent 70%),linear-gradient(115deg,#65778a,#68778a)!important}
html:root body .portfolio-footer-window .portfolio-footer-link{color:#fff!important;opacity:1!important}
html:root body .portfolio-footer-window .portfolio-footer-link:is(:hover,:focus-visible){color:#000!important;opacity:1!important}
html:root body .portfolio-footer-window :is(.portfolio-footer-column-title,.portfolio-footer-heading,.portfolio-footer-title){color:#fff!important;opacity:1!important}
html:root body .portfolio-footer-window :is(.portfolio-footer-email,.portfolio-footer-copyright){color:#fff!important;opacity:1!important}
html:root body .portfolio-footer-window :is(h2,h3){color:#fff!important;opacity:1!important}

/* Tablet portrait only. Phones and desktop mouse/trackpad layouts are untouched. */
@media (min-width:768px) and (max-width:991px) and (min-height:600px){
 html:root body #portfolio-main-content .about-heroimg{height:min(100svh,1080px)!important;min-height:780px!important;overflow:hidden!important}
 html:root body #portfolio-main-content .about-heroimg>.about-hero-absolute.mobile{margin:0!important;transform:none!important;object-position:50% 16%!important}
 html:root body #portfolio-main-content .about-heroimg .about-hero-title{position:relative!important;inset:auto!important;width:calc(100% - 64px)!important;height:100%!important;margin:0 32px!important;padding:clamp(150px,19svh,220px) 0 0!important;display:flex!important;justify-content:flex-start!important;align-items:flex-start!important;box-sizing:border-box!important}
 html:root body #portfolio-main-content .about-hero-title .home-hero-h{font-size:clamp(76px,12vw,104px)!important;line-height:1.08!important;letter-spacing:-.045em!important;margin:0!important}
 html:root body #portfolio-main-content .about-hero-title>.changing-text-wrap{height:clamp(88px,13.2vw,116px)!important;min-height:0!important;margin-top:0!important;overflow:hidden!important}
 html:root body #portfolio-main-content .about-hero-title .changing-text-box>.home-hero-h{height:clamp(88px,13.2vw,116px)!important;min-height:clamp(88px,13.2vw,116px)!important;flex-shrink:0!important}
 html:root body #portfolio-main-content .about-hero-title>.about-hero-btm.new{position:absolute!important;inset:auto 0 64px!important;display:grid!important;grid-template-columns:92px minmax(0,1fr)!important;gap:16px!important;width:100%!important;max-width:100%!important;margin:0!important;padding-top:16px!important;font:400 17px/1.5 "Ppneuemontreal Book",Arial,sans-serif!important}
 html:root body #portfolio-main-content .about-hero-btm.new>.div-block-33{display:flex!important;flex-direction:column!important;width:auto!important;min-width:0!important;gap:10px!important}
 html:root body #portfolio-main-content .about-hero-btm.new .div-block-22{display:flex!important;flex-flow:row wrap!important;align-items:baseline!important;justify-content:flex-start!important;width:100%!important;gap:4px 7px!important;margin:0!important;padding:0!important}
 html:root body #portfolio-main-content .about-hero-btm.new :is(a,.div-block-22>div,._50-opacity){font:inherit!important;white-space:nowrap!important;flex:none!important;color:#fff!important}
 html:root body #portfolio-main-content .div-block-26>.tools-subsec{padding-left:32px!important;padding-right:32px!important;box-sizing:border-box!important}
 html:root body #portfolio-main-content [data-case-trigger] :is(.casestudy-prvtitle,h3){font-size:20px!important;line-height:1.25!important;white-space:normal!important;height:auto!important;max-height:none!important;overflow:visible!important}
 html:root body #portfolio-main-content [data-case-trigger] :is(.casestudy-prvsubtext,[data-mobile-project-summary]){font-size:16px!important;line-height:1.45!important}
 html:root body #about-navbar-simple.navbar[data-snav]{height:60px!important;min-height:60px!important}
 html:root body #about-navbar-simple .navbar-top{height:60px!important;min-height:60px!important;padding-left:32px!important;padding-right:32px!important}
 html:root body #about-navbar-mobile-control{--shared-menu-button-left:calc(100vw - 76px);--shared-menu-button-top:8px}
 html:root body #about-navbar-mobile-control#about-navbar-mobile-control button[data-unified-menu-control][data-portfolio-mobile-toggle][aria-expanded]:not([hidden]){width:44px!important;height:44px!important;min-height:44px!important;max-height:44px!important;left:calc(100vw - 76px)!important;top:8px!important}
 html:root body #about-navbar-mobile-control#about-navbar-mobile-control [data-mobile-nav-contact]{left:calc(100vw - 176px)!important;top:12px!important;width:88px!important;height:36px!important;min-height:36px!important;max-height:36px!important;font-size:14px!important;padding:0 14px!important;transform:none!important;scale:none!important}
 html:root body [data-portfolio-mobile-menu]{max-height:100svh!important;overflow-y:auto!important;overscroll-behavior:contain!important;border-radius:0!important}
 html:root body [data-portfolio-mobile-menu] .navdrop-navlinks-box>a{min-height:64px!important;padding:16px 32px!important;font-size:28px!important;line-height:1.2!important}
 html:root body .portfolio-tablet-socials{display:flex!important;flex-flow:row wrap!important;align-items:center!important;justify-content:flex-end!important;gap:8px 20px!important;margin:20px 0 0!important;padding:8px 32px 28px!important}
 html:root body .portfolio-tablet-socials>a.navdrop-social{display:inline-flex!important;width:auto!important;min-height:44px!important;align-items:center!important;margin:0!important;padding:0!important;font-size:16px!important;line-height:1.3!important}
 html:root body .portfolio-tablet-socials>a.navdrop-social+a.navdrop-social::before{content:"";width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.45;margin-right:20px;flex:none}
 html:root body .canvas-case-overlay:not(.is-fullscreen){padding:12px!important}
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-case-shell{width:100%!important;height:calc(100dvh - 24px)!important;max-height:calc(100dvh - 24px)!important}
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-case-header{height:60px!important;min-height:60px!important;padding:8px 16px!important;gap:8px!important}
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-case-header>a.canvas-case-rail-toggle[data-case-header-toggle]{display:inline-flex!important;position:relative!important;inset:auto!important;flex:0 0 40px!important;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;margin:0!important;padding:0!important;align-items:center!important;justify-content:center!important;background:transparent!important;transform:none!important;translate:none!important;font-size:19px!important}
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-case-header :is(.canvas-case-close,[aria-label="Close"]){display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:40px!important;min-height:40px!important;background:transparent!important}
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-case-shell:not(.is-collapsed) .canvas-case-rail{top:60px!important;height:calc(100% - 60px)!important;bottom:0!important}
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-case-shell:not(.is-collapsed) .canvas-case-tabs{padding:20px 20px 36px!important;gap:16px!important;box-sizing:border-box!important}
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-header-title{min-width:0!important;font-size:15px!important;line-height:1.3!important}
 html:root body .canvas-case-overlay:not(.is-fullscreen) .canvas-header-title span{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
 html:root body .canvas-case-overlay[data-tabs-ready] .canvas-case-header>a.canvas-case-rail-toggle[data-case-header-toggle]{font-size:0!important;line-height:0!important}
 html:root body .canvas-case-overlay[data-tabs-ready] .canvas-case-content.is-dedicated-loaded>.case-page-layout:has(:is(#mfg-native-outline,#water-native-outline,.case-page-outline)):not([data-projects-index]):not([data-archive-snapshots]){padding-left:32px!important;padding-right:32px!important}
 html:root body .case-page-layout:has(:is(#mfg-native-outline,#water-native-outline,.case-page-outline)):not([data-projects-index]):not([data-archive-snapshots]){padding-left:32px!important;padding-right:32px!important;box-sizing:border-box!important}
 html:root body .case-page-layout:not([data-projects-index]):not([data-archive-snapshots])>.case-page-content{width:100%!important;max-width:760px!important;margin-left:auto!important;margin-right:auto!important}
 html:root body .case-page-layout>.case-page-outline.case-mobile-outline{width:100%!important;max-width:760px!important;margin-left:auto!important;margin-right:auto!important}
 html:root body .case-mobile-outline :is(.case-mobile-outline-toggle,.canvas-case-outline-link-1){min-height:44px!important}
 html:root body :is([data-projects-index],[data-archive-snapshots]) .archive-snapshots-intro,html:root body .canvas-case-overlay :is([data-projects-index],[data-archive-snapshots]) .archive-snapshots-intro{width:100%!important;padding-left:32px!important;padding-right:32px!important;box-sizing:border-box!important}
 html:root body .case-page-layout:is([data-projects-index],[data-archive-snapshots])>.case-page-content.archive-snapshots-content>.case-page-hero.archive-snapshots-intro,html:root body .canvas-case-overlay .case-page-layout:is([data-projects-index],[data-archive-snapshots])>.case-page-content.archive-snapshots-content>.case-page-hero.archive-snapshots-intro{padding-left:32px!important;padding-right:32px!important}
 html:root body :is([data-projects-index],[data-archive-snapshots]) :is(.projects-index-grid,.archive-snapshots-gallery,[data-project-filters]),html:root body .canvas-case-overlay :is([data-projects-index],[data-archive-snapshots]) :is(.projects-index-grid,.archive-snapshots-gallery,[data-project-filters]){padding-left:32px!important;padding-right:32px!important;box-sizing:border-box!important}
 html:root body .case-page-layout.archive-snapshots-layout[data-archive-snapshots]>.case-page-content.archive-snapshots-content>.archive-snapshots-gallery{padding-left:32px!important;padding-right:32px!important}
 html:root body [data-projects-index] [data-project-filter]{min-height:44px!important;padding-top:10px!important;padding-bottom:10px!important;font-size:15px!important}
 html:root body [data-projects-index] .projects-index-card-title{height:auto!important;max-height:none!important;overflow:visible!important;font-size:20px!important;line-height:1.3!important}
 html:root body [data-projects-index] [data-project-description]{font-size:16px!important;line-height:1.45!important}
 html:root body .contact-modal.contact-modal[data-a11y-open=true]>.contact-modal-container{width:calc(100% - 64px)!important;max-width:720px!important;max-height:calc(100dvh - 48px)!important;overflow-y:auto!important;overscroll-behavior:contain!important;padding:48px 32px 24px!important;box-sizing:border-box!important}
 html:root body .contact-modal.contact-modal[data-a11y-open=true] .services-box>.contact-txt-wrap2{display:flex!important;flex-flow:row wrap!important;justify-content:flex-start!important;gap:12px!important}
 html:root body .contact-modal.contact-modal[data-a11y-open=true] .services-box .socials-icon-link{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
 html:root body .portfolio-footer.portfolio-footer .portfolio-footer-links{grid-template-columns:minmax(0,.75fr) minmax(0,1.3fr) minmax(0,1fr)!important;column-gap:24px!important;row-gap:28px!important}
 html:root body .portfolio-footer.portfolio-footer .portfolio-footer-links>.portfolio-footer-column:first-child{grid-column:auto!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important}
 html:root body .portfolio-footer-window .portfolio-footer-column:first-child .portfolio-footer-heading{width:100%!important}
 html:root body .portfolio-footer-window .portfolio-footer-link{font-size:16px!important;line-height:1.35!important;min-height:44px!important;padding-top:0!important;padding-bottom:12px!important;box-sizing:border-box!important}
}
@media (min-width:768px) and (max-width:991px) and (min-height:600px) and (max-height:850px){
 html:root body .contact-modal.contact-modal[data-a11y-open=true]>.contact-modal-container{gap:16px!important}
 html:root body .contact-modal.contact-modal[data-a11y-open=true] .contact-modal-form{gap:14px!important}
 html:root body .contact-modal.contact-modal[data-a11y-open=true] textarea.contact-modal-field{height:96px!important;min-height:96px!important}
 html:root body .contact-modal.contact-modal[data-a11y-open=true] .strech-btn-wrap.contact-modl{gap:12px!important}
}
/* Wider touch tablets retain their landscape composition, with readable controls. */
@media (min-width:992px) and (max-width:1366px) and (min-height:600px) and (pointer:coarse){
 html:root body [data-snav] .nav-link{font-size:16px!important}
 html:root body [data-snav] .navlink-streched{font-size:15px!important;min-height:44px!important}
 html:root body #portfolio-main-content .about-hero-btm.new{width:min(540px,50vw)!important;max-width:calc(100% - 64px)!important;display:grid!important;grid-template-columns:88px minmax(0,1fr)!important;font:400 16px/1.45 "Ppneuemontreal Book",Arial,sans-serif!important;gap:12px!important}
 html:root body #portfolio-main-content .about-hero-btm.new :is(a,.div-block-22>div,._50-opacity){font:inherit!important}
 html:root body [data-projects-index] [data-project-filter],html:root body .case-page-outline a{min-height:44px!important}
 html:root body .canvas-case-header :is(a,button){min-height:40px!important}
}


/* Balance the compact desktop navbar before the mobile menu breakpoint. */
@media (min-width:992px) and (max-width:1366px){
 html:root body #about-navbar-simple#about-navbar-simple[data-snav]{height:72px!important;min-height:72px!important}
 html:root body #about-navbar-simple#about-navbar-simple[data-snav]>.navbar-top{height:70px!important;min-height:70px!important;box-sizing:border-box!important;padding-top:0!important;padding-bottom:0!important;align-items:center!important}
 html:root body #about-navbar-simple#about-navbar-simple .nav-link{font-size:15px!important;line-height:1.3!important}
 html:root body #about-navbar-simple#about-navbar-simple .navlink-streched.dark.nav{display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0 18px!important;font-size:14px!important;line-height:20px!important;scale:1!important}
 html:root body #about-navbar-simple#about-navbar-simple .navlink-streched.nav.whitebg{display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important;font-size:14px!important;line-height:20px!important}
 html:root body #about-navbar-simple#about-navbar-simple .navlink-streched.nav.whitebg a.no-transition{display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;height:38px!important;min-height:38px!important;max-height:38px!important;padding:0 18px!important;margin:0!important;font-size:14px!important;line-height:20px!important;white-space:nowrap!important}
}

/* Tall desktop compositions follow the portrait's natural landscape height. */
@media (min-width:992px) and (max-aspect-ratio:3/2){
 html:root body #portfolio-main-content .about-heroimg{height:auto!important;min-height:0!important;aspect-ratio:1047/635!important}
 html:root body #portfolio-main-content .about-heroimg>.about-hero-absolute.desktop{position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;margin:0!important}
 html:root body #portfolio-main-content .about-heroimg>.about-hero-title{position:absolute!important;inset:0 auto auto 0!important;height:100%!important;box-sizing:border-box!important}
 html:root body #portfolio-main-content .about-hero-title>.about-hero-btm.new{position:absolute!important;inset:auto auto 32px 0!important;display:grid!important;grid-template-columns:max-content minmax(0,1fr)!important;gap:12px 20px!important;width:max-content!important;max-width:calc(92vw - 16px)!important;height:auto!important;margin:0!important;padding-top:14px!important;box-sizing:border-box!important}
 html:root body #portfolio-main-content .about-hero-btm.new>.div-block-33{display:contents!important}
 html:root body #portfolio-main-content .about-hero-btm.new>.div-block-33:first-child>div:first-child{grid-column:1!important;grid-row:1!important;white-space:nowrap!important}
 html:root body #portfolio-main-content .about-hero-btm.new>.div-block-33:first-child>div:nth-child(2){grid-column:1!important;grid-row:2!important;white-space:nowrap!important}
 html:root body #portfolio-main-content .about-hero-btm.new>.div-block-33:nth-child(2)>.div-block-22{grid-column:2!important;display:flex!important;flex-flow:row wrap!important;align-items:baseline!important;justify-content:flex-start!important;width:auto!important;min-width:0!important;gap:4px 8px!important}
 html:root body #portfolio-main-content .about-hero-btm.new>.div-block-33:nth-child(2)>.div-block-22:nth-child(1){grid-row:1!important}
 html:root body #portfolio-main-content .about-hero-btm.new>.div-block-33:nth-child(2)>.div-block-22:nth-child(2){grid-row:2!important}
 html:root body #portfolio-main-content .about-hero-btm.new>.div-block-33:nth-child(2)>.div-block-22:nth-child(3){grid-row:3!important}
 html:root body #portfolio-main-content .about-hero-btm.new .div-block-22>*{flex:0 0 auto!important;white-space:nowrap!important}
}

/* Fill the first screen in tall desktop windows; reveal About only beyond 1.7Ã— width. */
@media (min-width:992px) and (max-aspect-ratio:3/2){
 html:root body #portfolio-main-content .about-heroimg{height:min(100svh,170vw)!important;min-height:0!important;aspect-ratio:auto!important;overflow:hidden!important}
 html:root body #portfolio-main-content .about-heroimg>.about-hero-absolute.desktop{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:70% center!important;margin:0!important;z-index:0!important}
 html:root body #portfolio-main-content .about-heroimg>.about-hero-title{height:100%!important;padding-top:clamp(140px,14svh,220px)!important;z-index:1!important}
 html:root body #portfolio-main-content .about-hero-title>.about-hero-btm.new{bottom:clamp(32px,6svh,64px)!important;font-size:clamp(15px,1.2vw,18px)!important;line-height:1.45!important}
}
/* Reuse the tablet portrait when the landscape photo would need a heavy crop. */
@media (min-width:992px) and (max-aspect-ratio:5/4){
 html:root body #portfolio-main-content .about-heroimg>.about-hero-absolute.desktop{display:none!important}
 html:root body #portfolio-main-content .about-heroimg>.about-hero-absolute.mobile{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center 16%!important;margin:0!important;transform:none!important;z-index:0!important}
}
