/* Digital Media Outreach Page Styles */

/* Hero */
.hero-section { position: relative; overflow: hidden; }
.hero-image img { width: 100%; height: 420px; object-fit: cover; display: block; }
.hero-content { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 0 5%; color: #fff; text-shadow: 0 2px 12px rgba(0,0,0,0.35); }
.hero-content h1 { font-size: 2.4rem; margin-bottom: 0.5rem; }
.hero-subtitle { font-size: 1.2rem; opacity: 0.95; }
.hero-description { max-width: 780px; margin-top: 0.75rem; line-height: 1.6; }

/* Overview */
.overview-section { padding: 56px 0; background: #fafafa; }
.content-wrapper { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 24px; align-items: center; }
.feature-image { width: 100%; border-radius: 8px; box-shadow: 0 6px 24px rgba(0,0,0,0.08); }
.text-content h2 { margin-bottom: 12px; }
.text-content p { margin-bottom: 12px; }

/* Services */
.services-section { padding: 56px 0; }
.section-title { text-align: center; margin-bottom: 24px; }
.services-grid { display: grid; gap: 20px; }
.services-grid.three { grid-template-columns: repeat(3, 1fr); }
.services-grid.two { grid-template-columns: repeat(2, 1fr); }
.service-card { background: #fff; border: 1px solid #eee; border-radius: 10px; padding: 20px; box-shadow: 0 6px 18px rgba(0,0,0,0.05); }
.service-card h3 { margin-bottom: 10px; }
.service-card p { margin-bottom: 10px; }
.service-features { list-style: disc; padding-left: 18px; color: #444; }
.service-features li { margin: 6px 0; }

/* Archive & Results */
.archive-section, .results-section { padding: 48px 0; background: #fafafa; }
.features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.feature-card { background: #fff; border: 1px solid #eee; border-radius: 10px; padding: 18px; box-shadow: 0 6px 18px rgba(0,0,0,0.05); }
.feature-card h3 { margin-bottom: 8px; }

/* Marquee (Right-to-Left) */
.marquee-section { padding: 48px 0; }
.marquee-container { 
    overflow: hidden; 
    border-radius: 8px; 
    width: 100%;
    position: relative;
}
.marquee-track { 
    display: flex; 
    gap: 16px; 
    align-items: center; 
    animation: marquee-rtl 60s linear infinite;
    width: calc(200% + 32px); /* Ensure enough width for seamless loop */
    will-change: transform;
}
.marquee-item { 
    height: 280px; 
    width: auto; 
    border-radius: 6px; 
    box-shadow: 0 6px 18px rgba(0,0,0,0.06);
    flex-shrink: 0;
}
@keyframes marquee-rtl { 
    0% { transform: translateX(0); } 
    100% { transform: translateX(-50%); } 
}

/* CTA */
.cta-section { padding: 56px 0; }
.cta-content { text-align: center; max-width: 760px; margin: 0 auto; }
.cta-buttons { display: flex; gap: 12px; justify-content: center; margin-top: 16px; }

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
  .marquee-track { animation: none; }
}

/* Responsive */
@media (max-width: 1024px) {
  .hero-image img { height: 360px; }
  .content-wrapper { grid-template-columns: 1fr; }
  .features-grid { grid-template-columns: 1fr 1fr; }
  .services-grid.three { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
  .hero-image img { height: 300px; }
  .hero-content h1 { font-size: 1.8rem; }
  .services-grid.three, .features-grid { grid-template-columns: 1fr; }
}