/* Custom Global Tweaks */

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Inter', sans-serif;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

/* Barlow Condensed Headings to match strict visual hierarchy */
h1, h2, h3, h4, h5, h6, .font-heading {
    font-family: 'Barlow Condensed', sans-serif;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #001a40;
}
::-webkit-scrollbar-thumb {
    background: #002a66;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #e5a93b;
}

/* Image styling fallbacks and layout fixes */
img {
    transition: opacity 0.3s ease;
}

img:not([src]) {
    visibility: hidden;
}

/* Fallback generic background color of images to avoid jarring layout shifts */
img[src] {
    background-color: rgba(0, 42, 102, 0.04); /* Soft transparent navy tint */
}

/* TV News Ticker Custom CSS */
@keyframes ticker-scroll {
    0% {
        transform: translate3d(0, 0, 0);
    }
    100% {
        transform: translate3d(-100%, 0, 0);
    }
}

.news-ticker-viewport {
    overflow: hidden;
    white-space: nowrap;
    width: 100%;
}

.news-ticker-text {
    display: inline-block;
    padding-left: 100%; /* Pushes the start of the text completely off-screen to the right */
    animation: ticker-scroll 25s linear infinite;
    will-change: transform;
}

/* Pause the ticker when a user hovers over it */
.news-ticker-text:hover {
    animation-play-state: paused;
    cursor: pointer;
    color: #ffffff;
}