/* Homepage highlights: caption-safe layout and touch controls. */
#heroSliderContainer { height: 480px; touch-action: pan-y pinch-zoom; }
#heroSliderContainer .ong-hero__shade {
    background: linear-gradient(90deg, rgba(5, 24, 47, .68), rgba(5, 24, 47, .16) 68%, transparent),
                linear-gradient(0deg, rgba(5, 24, 47, .85), transparent 65%);
}
#heroSliderContainer .ong-hero__content { bottom: 88px; }
#heroSliderContainer .ong-hero__content h2 {
    max-width: 790px; font-size: clamp(32px, 3.4vw, 56px); line-height: 1.35;
    overflow-wrap: anywhere; text-wrap: balance;
}
#heroSliderContainer .ong-hero__content p {
    max-width: 720px; line-height: 1.85; overflow-wrap: anywhere;
}
#heroSliderContainer .ong-hero__badge {
    background: #eab308; color: #10253e; border-color: #fde68a;
    letter-spacing: .02em; box-shadow: none;
}
#heroSliderContainer .ong-hero__controls { bottom: 18px; gap: 12px; }
#heroSliderContainer .ong-hero__dot,
#heroSliderContainer .ong-hero__pause { width: 44px; height: 44px; }
#heroSliderContainer .ong-hero__dot.is-active:after {
    background: #facc15; border-color: #fef08a; box-shadow: 0 0 0 4px #facc1533;
}
#heroSliderContainer button:focus-visible { outline: 3px solid #facc15; outline-offset: 3px; }
@media (max-width: 767.98px) {
    #heroSliderContainer { height: 400px; }
    #heroSliderContainer .ong-hero__image { object-position: 72% center; }
    #heroSliderContainer .ong-hero__shade {
        background: linear-gradient(0deg, #071c34 0%, rgba(7, 28, 52, .95) 24%, rgba(7, 28, 52, .75) 52%, rgba(7, 28, 52, .08) 100%);
    }
    #heroSliderContainer .ong-hero__content { bottom: 82px; padding-inline: 20px; }
    #heroSliderContainer .ong-hero__content h2 { font-size: clamp(27px, 7.2vw, 36px); line-height: 1.4; margin-bottom: 12px; }
    #heroSliderContainer .ong-hero__content p { font-size: 14px; line-height: 1.8; }
    #heroSliderContainer .ong-hero__badge { font-size: 11px; margin-bottom: 12px; }
    #heroSliderContainer .ong-hero__controls { bottom: 14px; padding-inline: 20px; }
}
@media (prefers-reduced-motion: reduce) {
    #heroSliderContainer .ong-hero__slide { transition: none; }
}
