@media (max-width:900px){.layout{--mobile-nav-space:calc(68px + env(safe-area-inset-bottom,0px));height:100dvh;overflow:hidden}.layout>.content{height:calc(100dvh - var(--mobile-nav-space));min-height:0;overflow:hidden}.layout>.content>:is(#hero,#services,#projects,#process,#about,#contact){overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;background-color:#08090a;height:100%;min-height:0;max-height:100%;scroll-padding-block:88px 28px;display:flow-root;position:relative;touch-action:pan-y pinch-zoom!important;overflow:hidden auto!important}.layout .content :is(#hero,#services,#projects,#process,#about,#contact)>:is(.page-content,.process-content){width:auto;max-width:720px;min-height:0;padding:calc(94px + env(safe-area-inset-top,0px)) clamp(20px, 5vw, 32px) 36px;z-index:20;margin:0 auto;position:relative;inset:auto!important;transform:none!important}.layout .content #hero>.page-content{padding-top:max(110px,20svh);padding-bottom:48px}.layout .content #about>.about-image{filter:brightness(.9)contrast(1.04)saturate(.82);background-position:50% 22%;width:100%;height:clamp(290px,48svh,400px);position:relative;inset:auto;transform:none;-webkit-mask-image:linear-gradient(#000 72%,#0000 100%);mask-image:linear-gradient(#000 72%,#0000 100%)}.layout .content #about>.about-content{margin:0 auto;padding-top:8px}.layout .content #about>:is(.page-overlay,.page-vignette,.page-fade){display:none}.layout .content :is(.page-overlay,.page-vignette,.page-fade,.page-image){pointer-events:none}.layout .content :is(#hero,#services,#projects,#process,#about,#contact) :is(.page-title,.process-title){overflow-wrap:break-word;font-size:clamp(32px,8.6vw,48px);line-height:1.06}.layout .content :is(#hero,#services,#projects,#process,#about,#contact) :is(.page-text,.process-lead){max-width:100%;font-size:15px;line-height:1.6}.layout .content :is(.about-panel,.process-grid){grid-template-columns:minmax(0,1fr);padding-right:0}.layout .content .process-content{display:block}.layout .content .process-intro{margin-bottom:24px}.layout .content :is(.process-card,.about-row){padding:16px}.layout .content :is(#process,#about) :is(.process-card h3,.about-row strong){font-size:15px}.layout .content :is(#process,#about) :is(.process-card p,.about-row p){font-size:14px;line-height:1.55}.layout .content #services :is(.services-detail,.services-detail-panel){flex:none;height:auto;max-height:none;overflow:visible}.layout .content #services .services-detail-tabs{flex-wrap:wrap}.layout .content #services .service-card{min-height:88px}.layout .content #services .service-card p{white-space:normal;-webkit-line-clamp:unset;line-clamp:unset;font-size:14px;line-height:1.5;display:block;overflow:visible}.layout .content #services .service-card-link{font-size:10px}.layout .content #services .services-detail-panel{font-size:14px;line-height:1.55}.layout .content #contact .contact-list{grid-template-columns:minmax(0,1fr);gap:16px;padding-right:0}.layout .content #contact :is(.contact-link,.contact-text){overflow-wrap:anywhere;font-size:15px}.layout .content #contact .page-navigation{align-items:flex-end;margin-top:24px;position:relative;inset:auto}.layout .content :is(.page-button,.about-switch button,.services-back,.services-detail-tabs button){min-height:44px}.layout .content .request-overlay{inset:0 0 var(--mobile-nav-space);z-index:2000;touch-action:pan-y pinch-zoom;height:auto;position:fixed}.layout .content .request-panel{inset:8px}.layout .content .request-step{-webkit-overflow-scrolling:touch;overflow-y:auto}.layout .content .request-placeholder{min-height:0;overflow-y:auto}.layout .content .request-field :is(input,select,textarea){font-size:16px}.layout .content .request-actions{padding-bottom:4px}.layout .mobile-legal-popover{max-height:calc(100dvh - 160px);overflow-y:auto}body.request-form-open .mobile-corner-brand,body.request-form-open .mobile-legal-menu{opacity:0;visibility:hidden;pointer-events:none}}@media (max-width:900px) and (max-height:500px){.layout .content :is(#hero,#services,#projects,#process,#contact)>:is(.page-content,.process-content){padding-top:80px}.layout .content .request-topbar .request-logo-progress svg{width:44px;height:46px}.layout .content .request-panel{padding:12px}}
[data-optimized-background]{--bg-selected:var(--bg-fallback)}@supports (background-image:image-set(url("/schuppli-logo-original.jpeg") 1x)){[data-optimized-background]{--bg-selected:var(--bg-desktop)}@media (max-width:900px){[data-optimized-background]{--bg-selected:var(--bg-mobile)}}}
