/* Custom overrides and additional styles for Equacom News WordPress Theme */

/* ============================================
   STICKY HEADER
   ============================================ */
.sticky-header {
  position: sticky;
  top: 0;
  z-index: 50;
  transition: box-shadow 0.5s ease;
}
.sticky-header.scrolled {
  box-shadow: 0 12px 40px -10px rgba(30,42,58,0.15);
}

/* Mobile nav open state */
.nav-menu.open {
  display: flex !important;
  flex-direction: column;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: var(--card);
  border-top: 1px solid var(--border);
  box-shadow: var(--shadow-lg);
  z-index: 100;
}
.nav-menu.open li a {
  padding: 12px 16px;
  border-bottom: 1px solid var(--border);
}

/* WordPress specific overrides */
.wp-caption { max-width: 100%; }
.wp-caption-text { font-size: 12px; color: var(--muted); margin-top: 4px; }
.aligncenter { display: block; margin: 0 auto; }
.alignleft { float: left; margin-right: 16px; }
.alignright { float: right; margin-left: 16px; }

/* Screen reader text */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

/* WordPress blocks */
.wp-block-image { margin: 24px 0; }
.wp-block-quote {
  border-left: 4px solid var(--primary);
  padding: 16px 24px;
  margin: 24px 0;
  background: rgba(0,119,204,0.05);
  font-style: italic;
}
.wp-block-quote cite {
  display: block;
  font-size: 13px;
  color: var(--muted);
  margin-top: 8px;
  font-style: normal;
}

/* Gallery */
.wp-block-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; }

/* Sticky header behavior */
.topbar,
.logo-centered-row,
.ticker-bar,
.logo-row,
.main-nav {
  position: relative;
  z-index: 50;
}

/* Shimmer animation for ad banners */
@keyframes shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}
.ad-banner::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(0,119,204,0.05), transparent);
  background-size: 200% 100%;
  animation: shimmer 3s linear infinite;
}

/* Vertical scroll for side news ticker */
@keyframes verticalScroll {
  0% { transform: translateY(0); }
  100% { transform: translateY(-50%); }
}

/* ============================================
   PERFORMANCE: GPU acceleration for animations
   ============================================ */
.hero-slide,
.hero-slide-img,
.news-card,
.featured-main img,
.featured-side-item img,
.trending-card-image img,
.multimedia-card img,
.lugar-card img {
  will-change: transform;
  backface-visibility: hidden;
}

/* ============================================
   HIDE EMPTY AD SPACES
   ============================================ */
.ad-banner:empty,
.side-ad-inner:empty {
  display: none !important;
}

/* Print styles */
@media print {
  .topbar, .ticker-bar, .main-nav, .site-footer, .ad-banner, .newsletter-block,
  .floating-buttons, .contact-popup-trigger, .popup-overlay, .popup-panel,
  .side-ad, .logo-centered-row, .sticky-header { position: static !important; }
  body::before { display: none; }
  .floating-buttons, .contact-popup-trigger, .popup-overlay, .popup-panel,
  .side-ad { display: none !important; }
}