/* Accueil V3 — grandes images en arrière-plan, sans contour */
.home-v3 {
  background: #f3f6f4;
}

.home-v3 .site-header {
  width: min(1320px, calc(100% - 40px));
  margin-bottom: 16px;
}

.home-v3 .hero-v3 {
  position: relative;
  display: flex;
  align-items: flex-end;
  width: min(1400px, calc(100% - 32px));
  max-width: none;
  min-height: min(790px, calc(100vh - 120px));
  margin: 0 auto;
  padding: clamp(54px, 7vw, 104px);
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(3, 20, 36, .94) 0%, rgba(5, 33, 55, .82) 38%, rgba(5, 33, 55, .28) 72%, rgba(5, 33, 55, .12) 100%),
    linear-gradient(0deg, rgba(2, 18, 32, .76) 0%, transparent 46%),
    url("residential-cleaning-team.webp") center 44% / cover no-repeat;
  border-radius: 30px;
  box-shadow: 0 34px 80px rgba(5, 27, 43, .18);
}

.home-v3 .hero-v3::before,
.home-v3 .hero-v3::after { display: none; }

.home-v3 .hero-v3 .hero-copy {
  position: relative;
  z-index: 2;
  width: min(690px, 62%);
  max-width: 690px;
  padding: 0;
}

.home-v3 .hero-v3 .eyebrow { color: #c9f0b6; }
.home-v3 .hero-v3 h1 {
  max-width: 690px;
  color: #fff;
  font-size: clamp(58px, 6.6vw, 96px);
  line-height: .95;
  letter-spacing: -4px;
  text-shadow: 0 4px 30px rgba(0, 19, 34, .20);
}
.home-v3 .hero-v3 h1 em { color: #b7e99d; }
.home-v3 .hero-v3 .hero-lead {
  max-width: 620px;
  margin: 29px 0 31px;
  color: rgba(241, 248, 251, .84);
  font-size: clamp(16px, 1.45vw, 19px);
  line-height: 1.72;
}
.home-v3 .hero-v3 .button:not(.button-outline) {
  color: #fff;
  background: linear-gradient(135deg, #75ba5c, #4e963e);
  box-shadow: 0 16px 32px rgba(10, 49, 25, .28);
}
.home-v3 .hero-v3 .button:not(.button-outline):hover { background: linear-gradient(135deg, #84c76c, #589e47); }
.home-v3 .hero-v3 .button-outline {
  color: #fff;
  background: rgba(255, 255, 255, .10);
  border: 1px solid rgba(255, 255, 255, .30);
  backdrop-filter: blur(12px);
}
.home-v3 .hero-v3 .button-outline:hover { background: rgba(255, 255, 255, .20); }
.home-v3 .hero-v3 .hero-proof {
  border-color: rgba(255, 255, 255, .22);
  max-width: 560px;
}
.home-v3 .hero-v3 .hero-proof > span { color: rgba(255, 255, 255, .83); }

.home-v3 .hero-side {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 12px;
  width: 255px;
  margin-left: auto;
}
.home-v3 .hero-side-card {
  padding: 21px 23px;
  color: #0a3150;
  background: rgba(255, 255, 255, .90);
  border-radius: 17px;
  box-shadow: 0 20px 46px rgba(0, 19, 32, .24);
  backdrop-filter: blur(16px);
}
.home-v3 .hero-side-card-accent {
  color: #fff;
  background: rgba(87, 157, 68, .88);
}
.home-v3 .hero-side-card span {
  display: block;
  margin-bottom: 8px;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  opacity: .72;
}
.home-v3 .hero-side-card strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.17;
}

.home-v3 .client-strip {
  position: relative;
  z-index: 4;
  width: min(1180px, calc(100% - 64px));
  margin: -34px auto 28px;
  padding: 27px 32px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 22px 54px rgba(6, 36, 55, .13);
  backdrop-filter: blur(12px);
}

.home-v3 .home-services-v3 {
  position: relative;
  isolation: isolate;
  margin: 24px 16px;
  padding: clamp(88px, 9vw, 132px) clamp(24px, 7vw, 112px);
  overflow: hidden;
  color: #fff;
  background:
    linear-gradient(115deg, rgba(3, 24, 42, .95), rgba(7, 52, 77, .82)),
    url("commercial-cleaning-office.webp") center / cover no-repeat;
  border-radius: 30px;
}
.home-v3 .home-services-v3 .section-heading h2 { color: #fff; }
.home-v3 .home-services-v3 .section-heading h2 em { color: #b8e7a1; }
.home-v3 .home-services-v3 .section-heading > p { color: rgba(235, 246, 250, .75); }
.home-v3 .home-services-v3 .eyebrow { color: #c4edb1; }
.home-v3 .home-services-v3 .service-grid { gap: 14px; }
.home-v3 .home-services-v3 .service-card,
.home-v3 .home-services-v3 .service-card:nth-child(n) {
  min-height: 300px;
  padding: 31px;
  color: #fff;
  background: rgba(255, 255, 255, .11);
  border: 1px solid rgba(255, 255, 255, .15) !important;
  border-radius: 18px;
  box-shadow: none;
  backdrop-filter: blur(15px);
}
.home-v3 .home-services-v3 .service-card:hover {
  background: rgba(255, 255, 255, .17);
  transform: translateY(-5px);
}
.home-v3 .home-services-v3 .service-card::before { display: none; }
.home-v3 .home-services-v3 .service-number {
  position: static;
  width: fit-content;
  margin: 0 0 auto;
  color: #d6f5c7;
  background: rgba(185, 233, 160, .16);
  box-shadow: none;
}
.home-v3 .home-services-v3 .service-card h3 { color: #fff; margin: 36px 0 12px; }
.home-v3 .home-services-v3 .service-card p { color: rgba(235, 246, 250, .74); }
.home-v3 .home-services-v3 .service-more { color: #d2f1c4; }

.home-v3 .home-journey-v3 {
  position: relative;
  isolation: isolate;
  margin: 30px 16px;
  overflow: hidden;
  background:
    linear-gradient(100deg, rgba(248, 251, 249, .97), rgba(241, 247, 244, .89)),
    url("cleaning-after-move.webp") center / cover no-repeat;
  border-radius: 30px;
}
.home-v3 .home-journey-v3 .journey-card,
.home-v3 .home-journey-v3 .journey-card:last-child {
  min-height: 240px;
  background: rgba(255, 255, 255, .79);
  box-shadow: 0 18px 42px rgba(12, 51, 69, .09);
  backdrop-filter: blur(10px);
}

.home-v3 .home-approach-v3 {
  position: relative;
  display: block;
  min-height: 680px;
  padding: clamp(62px, 8vw, 110px);
  background:
    linear-gradient(90deg, rgba(3, 22, 38, .20) 0%, rgba(3, 22, 38, .48) 42%, rgba(3, 22, 38, .94) 100%),
    url("residential-cleaning-living-room.webp") 38% center / cover no-repeat;
}
.home-v3 .home-approach-v3 .approach-image { display: none; }
.home-v3 .home-approach-v3 .approach-copy {
  width: min(570px, 50%);
  max-width: 570px;
  margin-left: auto;
  padding: clamp(38px, 5vw, 64px);
  background: rgba(5, 35, 57, .78);
  border-radius: 22px;
  box-shadow: 0 28px 65px rgba(0, 18, 31, .25);
  backdrop-filter: blur(18px);
}

.home-v3 .home-zone-v3 {
  background:
    linear-gradient(110deg, rgba(8, 52, 61, .96), rgba(8, 47, 68, .84)),
    url("smarty-clean-services-banner.webp") center / cover no-repeat;
}

.home-v3 .faq-section {
  width: min(1240px, calc(100% - 40px));
  margin-inline: auto;
  padding-inline: clamp(20px, 5vw, 76px);
  background: #fff;
  border-radius: 28px;
  box-shadow: 0 20px 52px rgba(12, 48, 68, .07);
}

.home-v3 .home-quote-v3 {
  min-height: 610px;
  background:
    linear-gradient(100deg, rgba(3, 21, 37, .95) 0%, rgba(6, 39, 62, .77) 58%, rgba(6, 39, 62, .55) 100%),
    url("commercial-cleaning-office.webp") center / cover no-repeat;
}
.home-v3 .home-quote-v3 .home-contact-card {
  background: rgba(255, 255, 255, .91);
  backdrop-filter: blur(17px);
}

@media (max-width: 900px) {
  .home-v3 .site-header { width: calc(100% - 28px); }
  .home-v3 .hero-v3 {
    align-items: flex-end;
    min-height: 760px;
    background:
      linear-gradient(90deg, rgba(3, 20, 36, .90), rgba(5, 33, 55, .46)),
      linear-gradient(0deg, rgba(2, 18, 32, .82), transparent 54%),
      url("residential-cleaning-team.webp") 54% center / cover no-repeat;
  }
  .home-v3 .hero-v3 .hero-copy { width: min(680px, 100%); }
  .home-v3 .hero-side { display: none; }
  .home-v3 .home-approach-v3 {
    display: flex;
    align-items: flex-end;
    min-height: 700px;
    background:
      linear-gradient(0deg, rgba(3, 22, 38, .95) 0%, rgba(3, 22, 38, .15) 76%),
      url("residential-cleaning-living-room.webp") center / cover no-repeat;
  }
  .home-v3 .home-approach-v3 .approach-copy {
    width: min(650px, 100%);
    max-width: none;
    margin: 0;
  }
}

@media (max-width: 600px) {
  .home-v3 .hero-v3 {
    width: calc(100% - 20px);
    min-height: 690px;
    padding: 52px 22px 43px;
    background:
      linear-gradient(0deg, rgba(2, 18, 32, .94) 0%, rgba(3, 25, 42, .55) 66%, rgba(3, 25, 42, .15) 100%),
      url("residential-cleaning-team.webp") 54% center / cover no-repeat;
    border-radius: 22px;
  }
  .home-v3 .hero-v3 h1 {
    font-size: clamp(48px, 14vw, 64px);
    letter-spacing: -2.8px;
  }
  .home-v3 .hero-v3 .hero-lead { font-size: 15px; }
  .home-v3 .client-strip {
    width: calc(100% - 34px);
    margin-top: -22px;
    padding: 22px;
  }
  .home-v3 .home-services-v3,
  .home-v3 .home-journey-v3 {
    margin-inline: 10px;
    border-radius: 22px;
  }
  .home-v3 .home-services-v3 { padding: 70px 18px; }
  .home-v3 .home-services-v3 .service-card,
  .home-v3 .home-services-v3 .service-card:nth-child(n) {
    min-height: 270px;
    padding: 27px;
  }
  .home-v3 .home-approach-v3 {
    width: calc(100% - 20px);
    min-height: 680px;
    padding: 20px;
    border-radius: 22px;
  }
  .home-v3 .home-approach-v3 .approach-copy {
    padding: 35px 24px;
    border-radius: 18px;
  }
  .home-v3 .faq-section {
    width: calc(100% - 20px);
    padding: 66px 20px;
    border-radius: 22px;
  }
  .home-v3 .home-quote-v3 {
    width: calc(100% - 20px);
    min-height: 0;
    padding: 68px 20px;
    background:
      linear-gradient(0deg, rgba(3, 21, 37, .96), rgba(6, 39, 62, .68)),
      url("commercial-cleaning-office.webp") center / cover no-repeat;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-v3 * { scroll-behavior: auto; }
}
