body.home, body.front-page {
  background: #050505;
}

/* narrowed hero selectors (no [class*="hero"]) */
.home-hero,
.dag-home-hero,
.hero,
.hero--main,
.hero--find {
  color: #fff;
  overflow: hidden;
}

.hero__inner,
.home-hero h1,
.dag-home-hero h1,
.hero h1,
body.home .hero__title {
  overflow-wrap: anywhere;
  word-break: break-word;
  max-width: 100%;
}

.home-hero h1,
.dag-home-hero h1,
.hero--main .hero__title,
body.home .hero--main h1 {
  color: #fff;
  font-family: var(--ss-font-display);
  font-size: clamp(2.4rem, 6vw, 5.5rem);
  line-height: 1.02;
  letter-spacing: .03em;
  text-shadow: 0 0 30px rgba(255, 0, 0, .42);
}

.home-hero p, .dag-home-hero p, .hero p {
  color: var(--ss-text-soft);
  font-family: var(--ss-font-body);
  font-weight: 700;
}

/* V2 FIX: darken the purple hero-news background image */
.home-news {
  position: relative;
  background-color: #050505;
}
.home-news__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(5,5,5,.82), rgba(5,5,5,.92)),
              radial-gradient(circle at 25% 20%, rgba(255,0,0,.14), transparent 40%);
  z-index: 1;
}
.home-news__inner { position: relative; z-index: 2; }
.home-news__title { color: #fff !important; font-family: var(--ss-font-display); }

/* narrowed feature/review cards (no [class*="feature"]) */
.testimonial-card,
.review-card,
.delivery-card,
.feature-card,
.ss-feature,
.ss-review-card {
  background: linear-gradient(180deg, #151515, #080808);
  border: 1px solid rgba(255, 0, 0, .22);
  border-radius: 18px;
  box-shadow: var(--ss-shadow-red-soft);
  color: var(--ss-text-soft);
}
.testimonial-card:hover,
.review-card:hover,
.delivery-card:hover,
.feature-card:hover {
  border-color: rgba(255, 0, 0, .48);
  box-shadow: var(--ss-shadow-red);
}

/* ===================== SS HOME PARITY V3 ===================== */
.ss-home { background:#050505; }
.ss-hero{ position:relative; min-height:100vh; padding:160px 5% 80px; display:flex; align-items:center; justify-content:center; text-align:center; background-size:cover; background-position:center; background-repeat:no-repeat; }
.ss-hero__overlay{ position:absolute; inset:0; background:linear-gradient(rgba(0,0,0,.62),rgba(0,0,0,.84)),radial-gradient(circle at 20% 20%,rgba(255,0,0,.18),transparent 40%); }
.ss-hero__inner{ position:relative; z-index:2; max-width:1100px; }
.ss-hero__eyebrow{ color:var(--ss-red,#ff0000); font-weight:900; letter-spacing:.4em; font-size:clamp(12px,1.5vw,20px); margin:0 0 14px; }
.ss-hero__title{ color:#fff; font-family:var(--ss-font-display,"Bebas Neue","Montserrat",sans-serif); font-weight:800; font-size:clamp(2.8rem,9vw,8rem); line-height:.96; letter-spacing:.03em; margin:0 0 18px; text-shadow:0 0 40px rgba(255,0,0,.4); text-transform:uppercase; overflow-wrap:anywhere; }
.ss-hero__subtitle{ color:#ddd; font-size:clamp(15px,2vw,24px); margin:0 0 34px; }
.ss-hero__buttons{ display:flex; gap:20px; justify-content:center; flex-wrap:wrap; }
.ss-btn{ display:inline-block; padding:16px 42px; border-radius:999px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; text-decoration:none; transition:transform .25s ease,box-shadow .25s ease,background .25s ease; }
.ss-btn--red{ background:var(--ss-red,#ff0000); color:#fff; box-shadow:0 0 26px rgba(255,0,0,.45); }
.ss-btn--red:hover{ background:var(--ss-red-dark,#970000); transform:translateY(-2px); box-shadow:0 0 42px rgba(255,0,0,.7); }
.ss-btn--dark{ background:rgba(0,0,0,.7); color:#fff; border:1px solid rgba(255,255,255,.18); }
.ss-btn--dark:hover{ background:#1b1b1b; transform:translateY(-2px); }
.ss-section{ padding:96px 5%; background:#050505; text-align:center; }
.ss-section__eyebrow{ color:var(--ss-red,#ff0000); font-weight:900; letter-spacing:.35em; margin:0 0 10px; }
.ss-section__title{ color:#fff; font-family:var(--ss-font-display,"Bebas Neue","Montserrat",sans-serif); font-weight:800; font-size:clamp(2.2rem,6vw,5rem); letter-spacing:.04em; margin:0 0 12px; text-transform:uppercase; }
.ss-section__lead{ color:#bbb; font-size:clamp(14px,2vw,20px); margin:0 0 54px; }
.ss-review-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:26px; max-width:1280px; margin:0 auto; }
.ss-review-card{ background:linear-gradient(180deg,#151515,#080808); border:1px solid rgba(255,0,0,.22); border-radius:18px; overflow:hidden; box-shadow:0 15px 40px rgba(0,0,0,.5); transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease; }
.ss-review-card:hover{ transform:translateY(-8px); border-color:var(--ss-red,#ff0000); box-shadow:0 24px 56px rgba(255,0,0,.18); }
.ss-review-card__img{ width:100%; height:240px; object-fit:cover; display:block; }
.ss-review-card__body{ padding:22px; text-align:left; }
.ss-stars{ color:var(--ss-red,#ff0000); font-size:22px; letter-spacing:3px; margin-bottom:10px; }
.ss-review-card__quote{ color:#ddd; font-size:15px; line-height:1.65; margin:0 0 16px; min-height:110px; }
.ss-review-card__name{ color:#fff; font-weight:900; letter-spacing:.04em; font-size:14px; margin:0; }
.ss-feature-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; max-width:1280px; margin:0 auto; }
.ss-feature{ background:#0f0f0f; border:1px solid rgba(255,0,0,.2); border-radius:18px; padding:34px; text-align:left; transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease; }
.ss-feature:hover{ transform:translateY(-6px); border-color:var(--ss-red,#ff0000); box-shadow:0 18px 48px rgba(255,0,0,.16); }
.ss-feature h3{ color:var(--ss-red,#ff0000); font-size:22px; margin:0 0 10px; text-transform:uppercase; }
.ss-feature p{ color:#bbb; line-height:1.6; margin:0; }
@media(max-width:1100px){ .ss-review-grid,.ss-feature-grid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:680px){ .ss-review-grid,.ss-feature-grid{ grid-template-columns:1fr; } .ss-hero{ background-attachment:scroll; min-height:78vh; } }
/* SS fix: red CTA text was overridden to red by a:link specificity — force white so it stays visible */
.ss-btn.ss-btn--red,a.ss-btn--red,a.ss-btn--red:link,a.ss-btn--red:visited,a.ss-btn--red:hover,a.ss-btn--red:focus{color:#fff;}

/* ===== SS contrast fix (2026-06-08): contact form fields were white-on-white;
   labels/title/note forced light for the dark .home-contact section. ===== */
.home-contact .home-contact__field input,
.home-contact .home-contact__field select,
.home-contact .home-contact__field textarea,
.home-news input.home-news__input{
  background:#0a0a0a !important;
  color:#ffffff !important;
  border:1px solid rgba(255,0,0,.30) !important;
}
.home-contact .home-contact__field input::placeholder,
.home-contact .home-contact__field textarea::placeholder,
.home-news input.home-news__input::placeholder{ color:rgba(255,255,255,.55) !important; }
.home-contact__field select option{ background:#0a0a0a !important; color:#ffffff !important; }
.home-contact__title{ color:#ffffff !important; }
.home-contact__note,
.home-contact__field label,
.home-contact .char-counter,
.home-contact__checkbox,
.home-contact__checkbox label{ color:#e5e5e5 !important; }
