/* === EVENT COVERAGE & DOCUMENTARIES — DARK CINEMATIC === */

body { font-family: 'Montserrat', sans-serif; background: #0a0a0a; color: #fff; margin: 0; padding: 0; }

/* Bootstrap overrides */
.text-dark       { color: #f0f0f0 !important; }
.text-muted-dark { color: rgba(255,255,255,0.52) !important; }
.bg-white        { background-color: #0a0a0a !important; }
.bg-light-grey   { background-color: #0f0f0f !important; }
.accent-text-red { color: #8b0000; }

/* ── HERO ── */
.portfolio-hero-light {
  height: 65vh; position: relative; overflow: hidden;
}
.portfolio-overlay-light {
  position: absolute; inset: 0;
  background: linear-gradient(160deg, rgba(0,0,0,0.55) 0%, rgba(10,10,10,0.94) 100%);
  z-index: 0;
}

/* ── SPLIT PORTFOLIO BLOCKS ── */
.portfolio-split-block { background: #0a0a0a; }
.portfolio-split-block.bg-light-grey { background: #0f0f0f !important; }

/* ── EVENT VIDEO SECTION ── */
.event-coverage-videos { background: #0f0f0f; }
.event-coverage-videos p[dir="rtl"] {
  color: rgba(255,255,255,0.65) !important;
}

/* ── CINEMATIC IMAGE WRAPPER ── */
.cinematic-image-wrapper {
  position: relative; border-radius: 12px; overflow: hidden;
  box-shadow: 0 25px 60px rgba(0,0,0,0.55);
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.cinematic-image-wrapper:hover {
  transform: translateY(-6px);
  box-shadow: 0 35px 80px rgba(0,0,0,0.65), 0 0 30px rgba(139,0,0,0.1);
}
.cinematic-rounded-img {
  width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; display: block;
}

/* ── BUTTON ── */
.btn-outline-red {
  display: inline-block; padding: 12px 32px;
  color: #8b0000; border: 1px solid #8b0000;
  border-radius: 2px; text-transform: uppercase;
  font-weight: 700; font-size: 0.78rem; letter-spacing: 2px;
  text-decoration: none; transition: all 0.3s ease;
}
.btn-outline-red:hover {
  background: #8b0000; color: #fff;
  box-shadow: 0 0 24px rgba(139,0,0,0.35);
}

/* ── PRIVATE PROJECT BADGE ── */
.alert-secondary {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  color: rgba(255,255,255,0.45) !important;
  border-radius: 6px;
}

/* ── MOBILE RESPONSIVE ── */
@media (max-width: 768px) {
  .portfolio-hero-light { height: 52vh; }

  /* Section padding tightening */
  .portfolio-split-block .py-5 { padding-top: 2rem !important; padding-bottom: 2rem !important; }
  .event-coverage-videos .py-4 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }

  /* Image wrapper slight corner reduction */
  .cinematic-image-wrapper { border-radius: 8px; }
}

@media (max-width: 480px) {
  /* Cinematic image maintains aspect ratio but doesn't get too tall */
  .cinematic-rounded-img { aspect-ratio: 4/3; }
}
/* ── CLIENT LOGO BELT ── */
.client-grid-light {
  background: #080808;
  border-top: 1px solid rgba(255,255,255,0.04);
}

.logo-belt-wrapper {
  overflow: hidden;
  width: 100%;
  padding: 10px 0 50px;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%);
  mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%);
}

.logo-belt-track {
  display: flex;
  align-items: center;
  gap: 64px;
  width: max-content;
  animation: beltScroll 38s linear infinite;
}

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

.logo-belt-item {
  flex-shrink: 0;
  height: 80px;
  width: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.logo-belt-item img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
