/* GNM overrides on top of the theme (style_pro.css). Keep this file small. */

/* Site name above the menu (was an inline-styled h4) */
.gnm-site-name { font-family: "Onest", sans-serif; color: #c18607; margin: 0; }

/* Readable contrast (WCAG AA 4.5:1) for the theme's light grey text */
.tabs-line .nav-link,
.post-classic-author,
.post-classic-time,
.post-creative-time,
.post-creative-author .text { color: #666666; }
.badge-secondary,
.badge-secondary div { color: #1f1f1f; }

/* Slider captions stay readable on bright photos */
.swiper-slider-modern .swiper-slide::before {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background: linear-gradient(90deg, rgba(0, 0, 0, .55) 0%, rgba(0, 0, 0, .25) 60%, rgba(0, 0, 0, .1) 100%);
}
.swiper-slider-modern .swiper-slide-caption { position: relative; z-index: 1; }

/* Article body: real paragraphs instead of one wrapping <p> */
.post-body { margin-top: 30px; }
.post-body p { margin-top: 0; margin-bottom: 1em; }
.post-body img { max-width: 100%; height: auto; }

/* Long words and links never push the page sideways on phones */
.post-body, .post-creative-title, .breadcrumbs-custom-title { overflow-wrap: anywhere; }

/* Footer links added in place of the empty gallery */
.footer-modern p a { color: inherit; }
.footer-modern p a:hover { color: #eda407; }

@media (max-width: 575.98px) {
  .gnm-site-name { font-size: 20px; line-height: 1.2; text-align: center; }
  .breadcrumbs-custom-title { font-size: 28px; line-height: 1.2; }
  .swiper-slider-modern .slider-modern-title { font-size: 36px; line-height: 1.1; }
}

/* News cards: same image ratio, so the grid lines up */
.post-creative-figure img { aspect-ratio: 370 / 267; object-fit: cover; height: auto; }
