@media (max-width:1120px){.main-nav{position:fixed;left:20px;right:20px;top:calc(var(--header-h) + 10px);display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--surface);padding:14px;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-soft)}.main-nav.is-open{display:flex}.main-nav a{padding:13px 12px}.main-nav a[aria-current="page"]:after{display:none}.menu-toggle{display:block}.nav-cta{display:none}.page-hero-grid,.editorial-grid,.method-grid,.contact-grid{grid-template-columns:1fr}.page-hero-photo{height:420px}.process-grid{grid-template-columns:repeat(3,1fr)}.footer-top{grid-template-columns:1.4fr repeat(2,1fr)}.footer-col:last-child{grid-column:2}.project-feature,.project-feature.reverse{grid-template-columns:1fr}.project-feature.reverse figure{order:0}}
@media (max-width:780px){:root{--header-h:72px}.container{width:min(calc(100% - 28px),var(--container))}.section{padding:68px 0}.brand-lockup strong{font-size:26px}.brand-lockup small{display:none}.theme-toggle{display:none}.hero-photo{min-height:760px}.hero-photo-shade{background:linear-gradient(0deg,rgba(5,14,17,.92),rgba(5,14,17,.34))}.hero-photo-content{padding-bottom:28px}.hero-facts{grid-template-columns:1fr;margin-top:60px}.hero-facts article,.hero-facts article+article{border-left:0;border-top:1px solid rgba(255,255,255,.16);padding:14px 0}.row-heading{align-items:start;flex-direction:column}.service-editorial-grid{grid-template-columns:1fr}.service-editorial{min-height:auto;padding:26px}.project-showcase-grid{grid-template-columns:1fr;grid-template-rows:none}.showcase-card,.showcase-card.large{grid-row:auto;height:380px}.page-hero{padding-top:70px}.page-hero-photo,.page-hero-photo.tall{height:360px}.service-list.modern article{grid-template-columns:46px 1fr;gap:12px;padding:38px 0}.process-grid,.values-grid{grid-template-columns:1fr}.project-feature{padding:42px 0}.project-feature figure{height:370px}.cta-panel{align-items:flex-start;flex-direction:column;padding:28px}.cta-photo{min-height:590px;padding:28px}.form-row{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr}.footer-statement{grid-column:1/-1}.footer-col:last-child{grid-column:auto}.footer-bottom{flex-direction:column}.hero-v3-actions .btn{width:100%}}
@media (max-width:500px){.project-showcase-grid .showcase-card{height:330px}.footer-top{grid-template-columns:1fr}.footer-col:last-child{grid-column:auto}.page-hero-photo,.page-hero-photo.tall{height:300px}}
@media (max-width:1120px){.services-metrics-grid{grid-template-columns:repeat(2,1fr)}.service-story,.service-story.reverse,.cnr-service-grid{grid-template-columns:1fr}.service-story.reverse .service-story-media{order:0}.service-story-media,.cnr-service-photo{height:500px}.services-hero-visual{height:460px}.services-cta{align-items:flex-start;flex-direction:column}.services-cta>.btn{align-self:flex-start}}
@media (max-width:780px){.services-hero-visual{height:390px;margin-top:12px}.services-metrics-grid{grid-template-columns:1fr}.services-metrics article,.services-metrics article:first-child{min-height:auto;border-left:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.13);padding:22px 0}.services-title-row>p{max-width:none}.service-story{padding:48px 0;gap:34px}.service-story-media,.cnr-service-photo{height:390px;border-radius:22px}.service-story-number{font-size:64px;margin-bottom:20px}.service-story-copy h2{font-size:36px}.cnr-mini-process{grid-template-columns:1fr}.services-cta{min-height:460px;padding:30px}.energy-sun{width:150px;height:150px;right:30px;top:44px}.energy-copy strong,.technical-copy strong{font-size:28px}}
@media (max-width:500px){.services-hero-visual{height:330px}.service-story-media,.cnr-service-photo{height:330px}.service-story-copy h2{font-size:32px}.services-cta>.btn{width:100%}}
@media (max-width:1120px){.contact-info{position:static}.contact-grid{grid-template-columns:1fr}.contact-hero .page-hero-grid{gap:30px}}
@media (max-width:780px){.contact-form{padding:24px 20px}.contact-hero-note{padding:22px}.field-meta{flex-direction:column;gap:5px}.contact-submit{min-height:54px}.privacy-note{font-size:11.5px}}
