/* Shared menu controls: interior pages previously omitted the icon styles. */
.nav-hamburger{background:none;border:none;cursor:pointer;padding:10px;min-width:44px;min-height:44px;display:flex;flex-direction:column;gap:5px;justify-content:center;align-items:center;flex-shrink:0}
.nav-hamburger span{display:block;width:24px;height:2px;background:var(--ink,#fff);transition:transform .2s,opacity .2s}
.nav-hamburger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-hamburger[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-hamburger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
#mobile-menu-close{display:none}
.nav-hamburger:focus-visible,.mob-link:focus-visible{outline:2px solid var(--sage);outline-offset:3px}
/* Keep small text readable against the dark site palette. */
.nav-link{color:rgba(255,255,255,.72)}
.inner-hero-sub,.trust-item{color:rgba(255,255,255,.75)}
.footer-desc{color:rgba(255,255,255,.68)}
.footer-social,.footer-col-title,.footer-link,.footer-copy,.footer-copy b{color:rgba(255,255,255,.68)}
[style*="color:rgba(255,255,255,.4)"],
[style*="color:rgba(255,255,255,.45)"],
[style*="color:rgba(255,255,255,.5)"],
[style*="color:rgba(255,255,255,.55)"]{color:rgba(255,255,255,.75)!important}
.feature-icon{width:34px;height:34px;margin-bottom:14px;color:var(--bright);display:flex;align-items:center}
.feature-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:1080px){
  html #hero-grid{padding-top:100px!important}
}
@media(max-width:760px){
  .area-contact-actions{flex-shrink:1!important;min-width:0;max-width:100%}
  .area-contact-actions .btn{white-space:normal;text-align:center}
  .inner-hero-sub{color:rgba(255,255,255,.75);font-weight:400}
  .rv-r,.rv-l{transform:translateY(26px)}
  body .mobile-cta-bar{padding-bottom:calc(10px + env(safe-area-inset-bottom))}
  article[aria-labelledby="mulch-case-title"]>div{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){
  .rv,.rv-l,.rv-r{opacity:1;transform:none;transition:none}
  .nav-hamburger span{transition:none}
}

/* Professional presentation layer shared across the site. */
html,body{max-width:100%;overflow-x:clip}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:400;letter-spacing:0}
body *{min-width:0}
h1,h2,h3,h4,.sec-h2,.inner-hero h1,.mob-link{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;font-style:normal!important;letter-spacing:-.025em}
h1 em,h2 em,h3 em,.sec-h2 em,.inner-hero h1 em{font-style:normal!important;font-weight:inherit!important;color:inherit!important}
.btn,.nav-cta,.nav-mobile-btn{font-family:inherit;clip-path:none!important;border-radius:2px!important;letter-spacing:.08em}
.card:hover,.btn:hover{transform:none!important}
.rv,.rv-l,.rv-r,.rv.in,.rv-l.in,.rv-r.in{opacity:1!important;transform:none!important;transition:none!important}
.nav,.nav.scrolled,.nav.solid{backdrop-filter:none;width:100vw!important;max-width:100vw!important}
.nav-link{letter-spacing:.09em}
.mob-link{font-size:24px;letter-spacing:-.015em}
.trust-bar-inner{overflow-x:visible!important;white-space:normal}
img,svg,video,canvas,iframe{max-width:100%}
input,textarea,select,button{max-width:100%}
table{max-width:100%}
@media(max-width:800px){
  .nav{padding-inline:16px!important}
  .nav-logo svg{max-width:150px}
  .nav-mobile-btn{padding:9px 12px!important}
  .sec,.inner-hero{padding-left:18px!important;padding-right:18px!important}
  .trust-bar-inner{flex-direction:column;align-items:flex-start!important;gap:0!important;padding:8px 18px!important}
  .trust-item{white-space:normal!important;padding:5px 0!important}
  .footer-top{grid-template-columns:1fr!important}
}
/* Preserve readable white labels on green actions (WCAG AA contrast: 6.54:1). */
.btn-primary,.nav-mobile-btn,.mcta-call,.svc-card-dk .svc-arrow:hover{background:var(--green,#2d6a2d)!important;color:#fff!important;border-color:var(--green,#2d6a2d)!important}
.btn-primary:hover,.nav-mobile-btn:hover,.mcta-call:hover{background:var(--deep,#1d3a1d)!important;border-color:var(--deep,#1d3a1d)!important}
::selection{background:var(--green,#2d6a2d)!important;color:#fff!important}
::-moz-selection{background:var(--green,#2d6a2d)!important;color:#fff!important}
