@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(geist-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(geist-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--font-geist-sans:Geist}
[hidden]{display:none!important}
.zm-menu{display:flex;align-items:center;gap:17px;list-style:none;margin:0;padding:0}.zm-menu li{list-style:none}.mobile-menu .zm-menu{display:block}.mobile-menu .zm-menu a{display:flex}.nav .current-menu-item>a:not([href*="#"]){color:var(--accent)}
.admin-bar .nav{top:32px}.admin-bar .mobile-menu{top:126px}
.zm-faq details{border-bottom:1px solid #afb4a5;padding:20px 0}.zm-faq summary{cursor:pointer;font-size:17px;line-height:1.5;list-style:none;padding-right:28px;position:relative}.zm-faq summary::after{content:'+';position:absolute;right:0}.zm-faq details[open] summary::after{content:'−'}.zm-faq p{margin-top:18px;font-size:15px}
.quote-form select{border:1px solid #92988970;padding:14px;width:100%;background:transparent;color:inherit;border-radius:0}.quote-form option{background:#eeeee7;color:#282c28}.quote-form .file-names{overflow-wrap:anywhere}
.zm-lightbox{position:fixed;inset:0;margin:auto;width:min(1200px,94vw);max-height:92vh;padding:20px;background:#252c26;color:#fff;border:1px solid #ffffff30;overflow:auto}.zm-lightbox::backdrop{background:#111d;backdrop-filter:blur(5px)}.zm-lightbox img{max-height:74vh;width:100%;object-fit:contain}.zm-lightbox figcaption{font-size:14px;padding:12px 50px 4px 0}.zm-lightbox .gallery-close{position:sticky;float:right;top:0;right:0;background:#eee;color:#252c26;padding:8px 15px;border:0;z-index:2}
.zm-projects-intro{padding-block:110px 75px;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.zm-projects-intro::after{content:'ZM';position:absolute;right:4%;bottom:-60px;font-size:clamp(190px,32vw,480px);line-height:1;font-weight:700;letter-spacing:-.08em;color:#ffffff03;pointer-events:none}.zm-projects-intro h1{font-size:clamp(52px,7.4vw,110px);max-width:1000px}.zm-projects-intro p{max-width:610px;margin-top:25px;color:#c6cabe}.zm-project-list{background:#efeee7;color:#282c28}.zm-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 30px}.zm-project-card img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s}.zm-project-card figure{overflow:hidden;margin-bottom:24px;background:#dedfd6}.zm-project-card:hover img{transform:scale(1.025)}.zm-project-card h2{font-size:clamp(25px,3vw,42px);margin-bottom:12px}.zm-project-card p{max-width:520px}.zm-project-card .text-link{margin-top:20px}.zm-empty-projects{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:20px 0}.zm-empty-projects h2{font-size:clamp(32px,4vw,56px)}.zm-empty-projects p{margin-bottom:24px}.zm-project-heading h1{margin:30px 0;max-width:1100px}.zm-project-heading .eyebrow{margin-top:50px}.zm-project-heading>p{max-width:680px;color:#c6cabe}.zm-project-cover img{width:100%;max-height:80vh;object-fit:contain;background:#222723}.zm-project-content{background:#efeee7;color:#282c28}.zm-project-content>*{max-width:1050px;margin-left:auto;margin-right:auto}.zm-project-content p{margin-bottom:22px}.zm-project-content h2,.zm-content h2{margin-block:35px 20px}.zm-project-content .wp-block-gallery{max-width:1400px;gap:25px}.zm-project-content .wp-block-image img{height:auto}.zm-content>p{margin-bottom:20px}.zm-content .alignwide{max-width:1300px}.zm-content .alignfull{max-width:none}
@media(max-width:1200px){.nav .zm-menu{gap:12px}.nav-contact{font-size:11px}}@media(max-width:1000px){.nav>nav{display:none}.mobile-toggle{display:block}.nav-contact{margin-left:auto}}@media(max-width:782px){.admin-bar .nav{top:46px}.admin-bar .mobile-menu{top:140px}}@media(max-width:600px){.zm-project-grid,.zm-empty-projects{grid-template-columns:1fr;gap:35px}.zm-projects-intro{padding-block:60px 45px}.zm-projects-intro h1{font-size:52px}.zm-projects-intro::after{bottom:-15px}.zm-lightbox{padding:12px}.zm-faq summary{font-size:15px}.admin-bar .mobile-menu{top:124px}}
@media(prefers-reduced-motion:reduce){.zm-project-card img{transition:none}.zm-project-card:hover img{transform:none}}
