/* Site-wide footer — Carrie-approved "Demo A": deep-tides duotone video
   background, two marquee lanes scrolling in opposite directions, solid
   ink-ring CTA. Video color is baked in via ffmpeg curves — no
   mix-blend-mode on the <video> (unreliable on iOS Safari). Content is
   bottom-anchored in the section (not centered), matching the approved
   demo's proportions. */

.footer{
  position:relative; overflow:hidden;
  height:58vh; min-height:420px;
  display:flex; flex-direction:column; justify-content:flex-end;
  color:#fff;
  background:var(--ink); /* fallback if the video fails to load */
}

.footer-video-bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }

.footer-top-fade{
  position:absolute; top:0; left:0; right:0; height:16%;
  background:linear-gradient(180deg, #ffffff, transparent);
  z-index:3;
}

.footer-content{
  position:relative; z-index:4;
  display:flex; flex-direction:column; align-items:center;
  padding-bottom:2vw;
}

.marquee-row{
  white-space:nowrap; overflow:hidden; width:100%;
  font-weight:700; text-transform:uppercase; line-height:1.15;
  position:relative; z-index:5;
}
.marquee-row.dim{ color:rgba(255,255,255,0.4); }
.marquee-row.solid{ color:#ffffff; }
.marquee-track{ display:inline-flex; width:max-content; }
.marquee-track span{ padding-right:2vw; }
.marquee-row.dim .marquee-track{ animation:mcs-scroll-left 22s linear infinite; }
.marquee-row.solid .marquee-track{ animation:mcs-scroll-right 22s linear infinite; }
@keyframes mcs-scroll-left{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
@keyframes mcs-scroll-right{ from{ transform:translateX(-50%); } to{ transform:translateX(0); } }

@media (max-width:640px){ .marquee-row{ font-size:11vw; } }
@media (min-width:641px){ .marquee-row{ font-size:5.5vw; } }

.say-hello-cta{
  position:relative; z-index:6;
  display:inline-flex; align-items:center; gap:10px;
  font-size:15px; font-weight:700; padding:16px 30px;
  background:#ffffff; color:#370E0E; border:1px solid #ffffff;
  box-shadow:0 0 0 6px #370E0E;
  text-decoration:none;
  margin-top:3vw;
}
.back-top{
  position:relative; z-index:6;
  font-size:13px; color:rgba(255,255,255,0.55);
  margin-top:2vw;
}
