/* Alternating monochrome sections. Shared by all three language versions. */
.section-dark { position: relative; isolation: isolate; }
.section-dark,
.ref-cta {
  --ink: #fff;
  --muted: #bdbdc4;
  --line: #333338;
  --surface: #17171a;
  color: var(--ink);
  background: #0c0c0e;
}
.section-dark .eyebrow,
.ref-cta .eyebrow { color: #aaaab4; }
.section-dark :focus-visible,
.ref-cta :focus-visible { outline-color: #fff; }
.section-dark .service-overview {
  background: linear-gradient(135deg, #1b1b1f, #141416);
  border-color: var(--line);
}
.section-dark .service-overview:hover {
  border-color: #73737d;
  box-shadow: 0 16px 40px #0003;
}
.section-dark .service-icon {
  background: linear-gradient(145deg, #2c2c31, #1c1c20);
  border-color: #424248;
  color: #fff;
}
.section-dark .service-overview .text-link { color: #fff; }
.section-dark .service-marquee span {
  background: #1b1b1f;
  color: #e4e4e9;
}
.section-dark .service-marquee span::before { color: #bbb; }
.section-dark .service-marquee:focus-visible { outline-color: #fff; }
.section-dark .process-timeline::before { background: #38383e; }
.section-dark .process-timeline::after { background: linear-gradient(#fff, #a7a7b0); }
.section-dark .step-number { color: #bdbdc4; }
.section-dark .step-number::after {
  background: #fff;
  box-shadow: 0 0 0 6px #0c0c0e;
}
.ref-cta {
  background: radial-gradient(ellipse at 50% 120%, #303036, #121215 65%, #0c0c0e);
  border-color: #343439;
}
.ref-cta .button-primary {
  background: #fff;
  color: #111;
  border-color: #fff;
}
.ref-cta .button-primary:hover { box-shadow: 0 8px 26px #ffffff26; }
.ref-cta .cta-phone { color: #e4e4e9; }
.ref-cta .cta-grid-bg { background-image: radial-gradient(circle, #d8d8e2 1px, transparent 1px); }
.ref-cta .duco-cta-star { background: linear-gradient(135deg, #fff, #bdbdc4); }
.ref-cta .duco-cta-orbit { border-color: #ffffff1f; }
.ref-cta .duco-cta-orbit::before,
.ref-cta .duco-cta-orbit::after { background: #eee; box-shadow: 0 0 9px 2px #ffffff15; }
