@media(max-width:900px){
  .home-page .hero{text-align:left!important}
  .home-page .hero h1{font-size:clamp(58px,14vw,88px)!important;margin:0!important;text-align:left!important}
  .home-page .hero-intro{margin:30px 0 0!important;padding:0!important;text-align:left!important}
  .global-nav{top:12px;width:calc(100% - 24px);border-radius:18px}
  .global-nav .menu-button{color:#f7faf1}
  .global-nav .mobile-nav{top:72px;left:0;right:0;width:100%;height:calc(100vh - 90px);padding:20px 24px 30px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:rgba(20,35,0,.98)!important;color:#f7faf1;box-shadow:0 30px 70px rgba(0,0,0,.35)}
  .global-nav .mobile-nav a,.global-nav .mobile-nav summary{border-color:rgba(255,255,255,.1);color:#f7faf1!important}
  .global-nav .mobile-nav .mobile-drop-links a{color:rgba(247,250,241,.7)!important}
  .global-nav .mobile-nav .mobile-estimate-cta{background:#c8eb72!important;color:#172600!important}
}
@media(max-width:600px){
  .home-page .wrap{width:min(100% - 36px,1240px)!important;max-width:none!important}
  .home-page .hero{padding:125px 0 55px!important}
  .home-page .hero h1{max-width:none!important;font-size:clamp(58px,18vw,80px)!important;line-height:.81!important;letter-spacing:-.075em!important}
  .home-page .section{padding:95px 0!important}
  .home-page .section-heading h2{max-width:none!important;font-size:44px!important;line-height:.98!important}
}

/* Full-colour, continuously moving trust strip. */
.home-page .services-section{background:radial-gradient(circle at 12% 12%,rgba(126,174,24,.16),transparent 28%),radial-gradient(circle at 88% 82%,rgba(89,129,12,.16),transparent 31%),linear-gradient(155deg,#142400,#1c3000 52%,#112000)!important}
.home-page .services-section:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(200,235,114,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(200,235,114,.025) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent)}
.home-page .services-section>.wrap{position:relative;z-index:1}
.home-page .service-panel{background:linear-gradient(145deg,rgba(75,110,7,.26),rgba(23,40,0,.76))!important;border-color:rgba(220,255,136,.14);box-shadow:inset 0 1px rgba(255,255,255,.07),0 24px 65px rgba(5,14,0,.25)}
.home-page .service-panel:hover{background:linear-gradient(145deg,rgba(91,132,9,.31),rgba(25,43,0,.8))!important;border-color:rgba(200,235,114,.42)}
.home-page .service-panel h3{color:#f7faf1}
.home-page .service-panel p{color:rgba(247,250,241,.66)}
.logo-viewport{min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.logo-slider{display:flex;width:max-content;animation:logo-slide 28s linear infinite}
.logo-group{display:flex;align-items:center;gap:46px;padding-right:46px}
.logo-group>a{display:block;flex:0 0 auto}
.logo-group img{width:105px;height:48px;object-fit:contain;filter:none;opacity:1;transition:transform .25s ease,opacity .25s ease}
.logo-group img:hover{transform:translateY(-3px);opacity:.82}
.logo-viewport:hover .logo-slider{animation-play-state:paused}
@keyframes logo-slide{to{transform:translateX(-50%)}}

/* Real client identities remain visible when screenshots are not yet managed in the CMS. */
.project-frame.logo-project{min-height:400px;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,rgba(200,235,114,.18),transparent 42%),linear-gradient(145deg,#eef5de,#d9e7bd)}
.project-frame.logo-project img{width:min(52%,280px);height:180px;object-fit:contain;border-radius:0;filter:none}

@media(max-width:680px){
  .trust-inner{display:grid;grid-template-columns:1fr;gap:18px}
  .logo-group{gap:34px;padding-right:34px}
  .logo-group img{width:90px;height:42px}
  .project-frame.logo-project{min-height:270px}
}
@media(prefers-reduced-motion:reduce){.logo-slider{animation:none}}
