/* ── Marquee ticker ─────────────────────────────── */
.marquee-track {
  display: flex;
  overflow: hidden;
  user-select: none;
}

.marquee-content {
  display: inline-block;
  padding-right: 0;
  flex-shrink: 0;
}

@media (prefers-reduced-motion: no-preference) {
  .marquee-track {
    animation: marquee-scroll 28s linear infinite;
  }

  @keyframes marquee-scroll {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
  }
}

/* ── Hero image subtle entrance ─────────────────── */
@media (prefers-reduced-motion: no-preference) {
  #main-content img {
    animation: img-fade-in 1.2s ease-out both;
  }

  @keyframes img-fade-in {
    from { opacity: 0; transform: translateY(16px); }
    to   { opacity: 1; transform: translateY(0); }
  }
}

/* ── Sticky mobile CTA bar ──────────────────────── */
.sticky-cta {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 900;
  display: flex;
  height: 56px;
  padding-bottom: env(safe-area-inset-bottom, 0px);
}

.sticky-cta-btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: opacity 0.15s ease;
}

.sticky-cta-btn:hover {
  opacity: 0.88;
}

.sticky-cta-btn:focus-visible {
  outline: 3px solid #fbbf24;
  outline-offset: -3px;
}

.sticky-cta-primary {
  background-color: #C47D2E;
  color: #2C1208;
}

.sticky-cta-secondary {
  background-color: #2C1208;
  color: #F5E8D0;
  border-top: 1px solid rgba(196, 125, 46, 0.3);
}

/* ── Service list hover lift ────────────────────── */
ol[role="list"] li {
  transition: transform 0.15s ease;
}

ol[role="list"] li:hover {
  transform: translateX(4px);
}

@media (prefers-reduced-motion: reduce) {
  ol[role="list"] li {
    transition: none;
  }
  ol[role="list"] li:hover {
    transform: none;
  }
}

/* ── Smooth scroll ──────────────────────────────── */
html {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

/* ── Body bottom padding for sticky CTA bar ─────── */
@media (max-width: 767px) {
  body {
    padding-bottom: 56px;
  }
}
