html{scroll-behavior:smooth}body{font-family:Inter,Arial,sans-serif}.dotgrid{background-image:radial-gradient(#9cb88a 1px,transparent 1px);background-size:24px 24px}.glow{background:linear-gradient(135deg,#f2f7eb 0%,#e4efd8 100%)}.arrow:after{content:' &#8594;'}.logo{max-width:236px;height:auto}

/* Shared mobile spacing: compact sections without changing tablet/desktop layouts.
   !important is intentional: Tailwind CDN utilities can be injected after site.css. */
@media (max-width: 639px) {
    main section .py-28,
    main section .py-24,
    main section .py-20 {
        padding-top: 2.5rem !important;
        padding-bottom: 2.5rem !important;
    }

    main section .py-16,
    main section .py-14 {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
    }
}

/* Centralized palette classes used by updated Razor views */
.tsa-bg-page{background-color:#f5f7ff!important}
.tsa-bg-tint{background-color:#edf2ff!important}
.tsa-bg-muted{background-color:#f1f4ff!important}
.tsa-border-soft{border-color:#dce4f7!important}
.tsa-border-accent{border-color:#b8caff!important}
.tsa-text-accent{color:#173be8!important}
.tsa-text-success{color:#102a82!important}
.tsa-ring-accent{--tw-ring-color:#173be8!important}
.hover\:tsa-bg-hover:hover{background-color:#1230bd!important}
.hover\:tsa-bg-muted:hover{background-color:#f1f4ff!important}

/* Native blue logo: no CSS recolouring required. */
header .logo{filter:none}

/* Keep the header logo measurable even when its SVG is loaded before CSS. */
header .logo{display:block;width:236px;max-width:100%;height:auto;min-height:40px;object-fit:contain;filter:none}
header a:has(> .logo){display:inline-flex;align-items:center;flex:0 0 auto}

header img.logo {
    filter: none !important;
    -webkit-filter: none !important;
}

/* Accessible search labels: remain visually hidden even if Tailwind is stale on IIS. */
header label.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
