/* KD Roofers v3 home.css — homepage-only layout */
.kd-home-hero{
  min-height:calc(100svh - var(--kd-header-height));
  padding-block:var(--kd-home-hero-y);
  background:var(--kd-dark);
  color:#fff;
  display:grid;
  align-items:center;
}
@supports (height:100dvh){
  .kd-home-hero{
    min-height:calc(100dvh - var(--kd-header-height));
  }
}
.kd-home-hero__grid{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:clamp(2.4rem,5.4vw,5.8rem);
  align-items:center;
}
.kd-home-hero h1{
  color:#fff;
  max-width:880px;
}
.kd-home-hero p{
  color:rgba(255,255,255,.82);
}
.kd-home-hero__actions{
  margin-top:1.35rem;
}
.kd-home-hero__media{
  position:relative;
  min-height:clamp(360px,42vh,520px);
  aspect-ratio:4/3;
}
.kd-home-hero__media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.kd-home-hero__badge{
  position:absolute;
  left:1rem;
  right:1rem;
  bottom:1rem;
  background:#fff;
  color:var(--kd-ink);
  clip-path:var(--kd-roof-clip-sm);
  padding:1rem;
  box-shadow:var(--kd-shadow);
  font-weight:700;
}
.kd-home-hero__badge span{
  display:block;
  color:var(--kd-muted);
  font-weight:500;
  font-size:.9rem;
}
.kd-home-hero__highlights{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.75rem;
  margin-top:1.15rem;
}
.kd-home-hero__highlights span{
  padding:.82rem;
  background:rgba(255,255,255,.08);
  color:#fff;
  clip-path:var(--kd-roof-clip-sm);
}
.kd-home-hero__highlights strong{
  display:block;
  color:var(--kd-red);
  font-size:1.15rem;
}
.kd-home-hero .kd-btn--dark{
  background:#fff;
  color:var(--kd-ink);
}
.kd-home-hero .kd-btn--dark:hover{
  background:var(--kd-cream);
  color:var(--kd-ink);
}
.kd-service-flow__item{
  min-height:100%;
}
.kd-split-roof__content{
  text-align:left;
}
.kd-blog-preview-home__footer{
  display:flex;
  justify-content:center;
  margin-top:1.6rem;
}
