body { background: #fffaf4; }

.home-hero {
  position: relative;
  min-height: 84vh;
  display: grid;
  align-items: center;
  padding: 120px 20px 70px;
  color: #fff;
  background: url("../images/home-improvement.jpg") center/cover no-repeat;
}
.home-hero-overlay { position: absolute; inset: 0; background: linear-gradient(110deg, rgba(36, 19, 0, 0.85) 18%, rgba(74, 39, 0, 0.62) 52%, rgba(255, 146, 41, 0.24) 100%); }
.home-hero-wrap { position: relative; z-index: 1; width: min(1200px, 100%); margin: 0 auto; }
.home-hero-copy { max-width: 700px; }
.home-kicker { margin: 0 0 16px; color: #ffe4bf; font-size: 14px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.home-hero h1 { margin: 0 0 20px; font-size: clamp(40px, 5vw, 66px); line-height: 1.1; color: #fff; }
.home-hero h1 em { color: #ffbf6e; font-style: normal; }
.home-hero p { margin: 0 0 24px; font-size: 18px; line-height: 1.6; color: rgba(255, 245, 230, 0.95); }
.home-legal-inline { margin-top: -8px; font-size: 13px; line-height: 1.6; color: rgba(255, 225, 194, 0.95); }
.home-hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }

.home-features { padding: 78px 20px 68px; background: #fff; }
.home-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(220px, 1fr));
  gap: 18px;
  width: min(1120px, 100%);
  margin: 46px auto 0;
}
.home-feature-grid article {
  padding: 24px 20px;
  border: 1px solid #f0ddcb;
  border-radius: 12px;
  background: #fffaf4;
}
.home-feature-grid h3 { margin: 0 0 10px; font-size: 21px; }
.home-feature-grid p { margin: 0; color: #775e49; font-size: 15px; line-height: 1.65; }

.live { padding-top: 74px; }

.home-cta {
  padding: 78px 20px;
  text-align: center;
  color: #fff;
  background: linear-gradient(180deg, #ff8a22 0%, #a54f08 100%);
}
.home-cta h2 { margin: 0; font-size: clamp(28px, 4vw, 46px); line-height: 1.15; }
.home-cta p { margin: 18px auto 26px; width: min(760px, 100%); color: rgba(255, 245, 232, 0.95); }
.home-disclaimer {
  margin: 0 auto 24px;
  width: min(980px, 100%);
  padding: 13px 14px;
  border: 1px solid rgba(255, 225, 188, 0.55);
  border-radius: 10px;
  text-align: left;
  font-size: 13px;
  line-height: 1.65;
  color: rgba(255, 242, 225, 0.95);
  background: rgba(82, 29, 0, 0.28);
}

@media (max-width: 900px) {
  .home-feature-grid { grid-template-columns: 1fr; }
  .home-hero { min-height: 72vh; padding-top: 110px; }
}
