.hero{background:#10171b;grid-template-columns:1.2fr .8fr;isolation:isolate}
.hero-panels{position:absolute;inset:0;z-index:-2;display:grid;grid-template-columns:35% 36% 35%;overflow:hidden}
.hero-panel{background-size:cover;background-position:center;filter:saturate(.92)}
.hero-panel.suburban{background-image:url('assets/hero-suburban.png');clip-path:polygon(0 0,100% 0,88% 100%,0 100%)}
.hero-panel.commercial{background-image:url('assets/hero-commercial.png');margin-left:-12%;clip-path:polygon(12% 0,100% 0,88% 100%,0 100%)}
.hero-panel.turf-bg{background-image:url('assets/hero-turf.png');margin-left:-12%;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)}
.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,13,16,.97) 0%,rgba(7,13,16,.78) 34%,rgba(7,13,16,.13) 73%)}
.hero-copy{max-width:680px}
.logo-lockup{display:flex;align-items:center}.logo-lockup img{display:block}.logo-lockup span{display:flex;flex-direction:column;align-items:center}.logo-lockup b{font-weight:700;letter-spacing:-.055em;line-height:.82}.logo-lockup small{font-weight:400;letter-spacing:.42em;line-height:1}.logo-horizontal{gap:10px}.logo-horizontal img{width:66px;height:66px}.logo-horizontal b{font-size:2.5rem}.logo-horizontal small{font-size:.65rem}.hero-brand-logo{position:relative;z-index:2;width:min(31vw,390px);justify-self:end;flex-direction:column;filter:drop-shadow(0 18px 25px rgba(0,0,0,.5))}.hero-brand-logo img{width:82%;height:auto}.hero-brand-logo b{font-size:clamp(3.5rem,6vw,5.8rem)}.hero-brand-logo small{font-size:1.15rem;display:flex;flex-direction:row;align-items:center;gap:13px;margin-top:18px}.hero-brand-logo small i{width:75px;height:2px;background:#fff}
.service-card{padding-top:22px}
.service-card>img{height:72px;object-position:left center}
.service-card>div{position:relative}
.service-icon{display:grid!important;place-items:center;position:static;margin:20px 0 12px;width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff!important}
.service-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.trust-strip>div{display:flex;align-items:center;gap:15px}
.trust-strip p{margin:0}
.trust-icon{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:50%;background:#172027;color:var(--blue)}.trust-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.trust-strip div:nth-child(2) .trust-icon{color:var(--green)}
.trust-strip div:nth-child(3) .trust-icon{color:var(--purple)}
.trust-strip div:nth-child(4) .trust-icon{color:var(--red)}
.about-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;padding:96px max(5vw,28px);background:#172126;color:#fff;border-top:1px solid #303c42}
.about-section h2{font-size:clamp(2.5rem,4.6vw,4.7rem);line-height:1.02;letter-spacing:-.05em;margin:0}
.about-copy{max-width:690px;padding-top:28px}
.about-copy p{font-size:1.12rem;line-height:1.75;color:#cbd2d6;margin:0 0 18px}
.about-copy p:first-child{font-size:1.34rem;line-height:1.55;color:#fff}
.about-copy strong{display:inline-block;margin-top:14px;color:var(--blue);font-size:1.12rem;letter-spacing:.02em}
/* Explicit bounds keep the original artwork proportional on wide screens. */
.hero-brand-logo{width:280px;max-width:100%;min-width:0;justify-self:end}
.hero-brand-logo img{display:block;width:100%;max-width:280px;height:auto;object-fit:contain}
.hero-copy{min-width:0}
.hero h1{font-size:clamp(3.1rem,5.4vw,4.6rem);line-height:1.06;letter-spacing:-.035em}
.logo-horizontal b{letter-spacing:0;line-height:1}
.brand.logo-horizontal img{width:66px;height:66px;max-width:66px;flex:0 0 66px}
.footer-mark.logo-horizontal img{width:52px;height:52px;max-width:52px;flex:0 0 52px}
.service-card h3{margin-top:0}
@media(min-width:721px){
  .hero-actions{flex-wrap:wrap;align-items:stretch}
  .hero-actions .primary-button,.hero-actions .secondary-button{width:220px;min-width:220px;min-height:58px;padding:16px 22px;font-size:1.1rem;line-height:1.3;white-space:nowrap}
  .hero-actions .secondary-button{justify-content:center}
  .trust-strip{padding-block:34px}
  .trust-strip>div{min-width:0;padding-inline:16px;gap:16px}
  .trust-icon{flex:0 0 64px;width:64px;height:64px}
  .trust-icon svg{width:38px;height:38px}
  .trust-strip strong{font-size:.9rem;line-height:1.4}
  .trust-strip span{font-size:.92rem;line-height:1.45;margin-top:5px}
}
@media(min-width:721px) and (max-width:1050px){.hero{grid-template-columns:minmax(0,1fr) 220px;gap:28px}.hero-brand-logo{width:220px}}
@media(max-width:720px){
  .hero{min-height:690px;background:#10171b;grid-template-columns:1fr}
  .hero-panels{grid-template-columns:1fr 1fr 1fr}
  .hero-panel.suburban{clip-path:polygon(0 0,100% 0,88% 100%,0 100%)}
  .hero:before{background:linear-gradient(0deg,rgba(7,13,16,.98) 0%,rgba(7,13,16,.7) 58%,rgba(7,13,16,.12) 100%)}
  .hero-brand-logo{grid-row:1;width:180px;justify-self:end;align-self:start}
  .hero-brand-logo b{font-size:2.65rem}
  .hero-brand-logo small{font-size:.68rem;gap:7px;margin-top:10px}
  .hero-brand-logo small i{width:30px}
  .about-section{grid-template-columns:1fr;gap:22px;padding:70px 22px}
  .about-copy{padding-top:0}
}
