body .blog-featured h2.item-title {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
}

body .blog-featured h2.item-title a {
    text-decoration: none !important;
    color: #1b3a6b !important;
}

.grid-child.container-nav {
    align-self: flex-end !important;
}
/* Force main article images to take up the full width and push text below */
.com-content-article__body img, 
.article-details img {
    display: block !important;
    float: none !important;
    margin: 0 auto 20px auto !important;
    max-width: 100%;
    height: auto;
}
#mod-custom116 {
    background-repeat: no-repeat !important;
    background-position: center center !important; /* Centers the focal point of the machinery */
    background-size: cover !important;            /* Forces the image to stretch and fill the screen */
}
/* Increase font size for Cassiopeia main menu links */
.container-header .mod-menu ul.navbar-nav li.nav-item a.nav-link {
    font-size: 1.5rem !important; /* Adjust to 20px or your preferred size */
}

/* For dropdown sub-items */
.container-header .mod-menu .dropdown-menu li a.dropdown-item {
    font-size: 1.1rem !important;
}

/* Footer container background */
.container-footer {
  background-color: #0056b3; /* Replace with your preferred blue hex */
  color: #ffffff;
}

/* Ensure links inside the footer stay readable */
.container-footer a {
  color: #e0f2fe;
}

.container-footer a:hover,
.container-footer a:focus {
  color: #ffffff;
}

/* Force article intro images to 600px wide */
/*.item-image img, */
.intro-image img {
  width: 100% !important;
  max-width: 600px !important;
  height: auto !important; /* Preserves the original aspect ratio */
  display: block;
}

/* Reduce bottom spacing of the banner area */
.container-banner {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Reduce top spacing of the main content area */
.container-main {
  padding-top: 1rem !important; /* Adjust from 0 to 1.5rem to taste */
  margin-top: 0 !important;
}

/* Remove default extra top margins from the component/article grid */
main#content,
.com-content-featured,
.blog-featured {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Container settings */
.ticker-wrap {
  width: 100%;
  overflow: hidden;
  background: #0b132b; /* Match your hero section background */
  padding: 12px 0;
  white-space: nowrap;
  box-sizing: border-box;
  display: flex;
}

/* Track holding the two duplicate sets */
.ticker-track {
  display: flex;
  width: max-content;
  animation: scrollTicker 25s linear infinite;
}

/* Pause scroll on hover */
.ticker-track:hover {
  animation-play-state: paused;
}

.ticker-content {
  display: flex;
  gap: 16px;
  padding-right: 16px;
}

/* Style the badges/pills */
.ticker-badge {
  display: inline-block;
  padding: 6px 16px;
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: #38bdf8; /* Cyan accent */
  background: rgba(56, 189, 248, 0.08);
  border: 1px solid rgba(56, 189, 248, 0.25);
  border-radius: 4px;
}

/* Smooth leftward translation */
@keyframes scrollTicker {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
/* Constrain full-width grid container and header/footer wrappers to 1600px */
.site-grid,
.container-header,
.container-footer,
.container-top,
.container-bottom,
.container-main,
.container-component {
  max-width: 1920px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
}

/* Ensure inner content wrappers respect the boundary */
.container, 
.container-fluid {
  max-width: 1920px;
}
/* Box the entire banner / top position */
.container-banner .container-inner,
.container-top-a .container-inner,
.container-banner > div,
.banner {
  max-width: 1920px;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--cassiopeia-grid-gutter, 15px);
  padding-right: var(--cassiopeia-grid-gutter, 15px);
}
