/* Content remains visible if JavaScript or an animation CDN fails. */
.loader { display: none !important; }
.reveal, .reveal-left, .reveal-right, .outcomes .left, .outcomes .right { opacity: 1; transform: none; }
.section-head h1 { font: 800 clamp(2.2rem, 5vw, 4rem)/1.02 Manrope, sans-serif; letter-spacing: -.045em; margin-top: 18px; }
.crumb a { color: inherit; text-decoration: none; }
.crumb a:hover { text-decoration: underline; }
.service-related { margin-top: 20px; }
.service-related a { color: #236b3c; text-decoration: underline; }
.service-context { margin-top: 18px; }
.about-content .about-topic { font: 800 2.4rem/1.05 Manrope, sans-serif; letter-spacing: -.04em; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.footer-logo, .brand img, .logo { height: auto; }
.input_text_a { position: absolute; left: -10000px; width: 1px; height: 1px; }
.tvq-error { color: #9c2020; margin: 16px 0; }
.tvq-email-fallback { display: block; margin-top: 12px; }
header .wrap .menu { display: none; }
@media (max-width: 900px) {
    /* Ordinary links remain available when JS cannot enhance the mobile menu. */
    html:not(.tv-menu-ready) .navlinks { display: flex; position: static; flex-wrap: wrap; padding: 10px; }
    html:not(.tv-menu-ready) .menu { display: none; }
}
@media (max-width: 600px) {
    header .wrap nav { flex-wrap: wrap; gap: 12px; }
    header .wrap #navlinks { display: flex; flex-basis: 100%; flex-wrap: wrap; gap: 16px; padding: 12px; background: #0b2618; }
    html.tv-menu-ready header .wrap #navlinks:not(.open) { display: none; }
    html.tv-menu-ready header .wrap .menu { display: block; padding: 8px 12px; border: 1px solid #ffffff33; background: transparent; color: white; font-size: 24px; border-radius: 8px; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .marquee-track, .tv-slide-bg { animation: none !important; transition: none !important; }
}
