/* Scoped public service styling; existing Bootstrap and system fonts remain. */
.operations-shell { color: #23324a; background: #fff; }
.operations-shell .navbar .nav-link { white-space: normal; min-height: 44px; display: flex; align-items: center; }
.operations-shell .navbar-brand { max-width: calc(100% - 76px); }
.operations-shell .navbar-brand img { max-width: 100%; }
.operations-shell .navbar-toggler { min-width: 44px; min-height: 44px; }
.operations-shell .dropdown-item { min-height: 44px; white-space: normal; }
.operations-shell .dropdown-menu { min-width: min(10rem, calc(100vw - 3rem)); max-width: calc(100vw - 3rem); }
.operations-shell :is(a, button, input, select, textarea, summary):focus-visible {
    outline: 3px solid #ba4a00; outline-offset: 3px; box-shadow: 0 0 0 6px #fff;
}
.operations-skip { position: absolute; left: 1rem; top: -10rem; z-index: 1100; padding: .8rem 1rem; background: #fff; color: #103e80; }
.operations-skip:focus { top: 1rem; }
.operations-public { overflow-wrap: anywhere; line-height: 1.65; }
.operations-public .container { padding-left: 1.25rem; padding-right: 1.25rem; }
.operations-public h1 { font-size: clamp(2rem, 1.4rem + 2.5vw, 3.75rem); font-weight: 750; letter-spacing: -.025em; max-width: 20ch; line-height: 1.12; margin: 0 0 1.5rem; }
.operations-public h2 { font-size: clamp(1.65rem, 1.2rem + 1.2vw, 2.35rem); font-weight: 700; max-width: 36ch; line-height: 1.2; margin-bottom: 2rem; }
.operations-public h3 { font-size: 1.25rem; font-weight: 700; line-height: 1.35; margin-bottom: 1rem; }
.operations-public h4 { font-size: 1rem; font-weight: 700; }
.operations-public .lead { font-size: 1.2rem; line-height: 1.65; }
.operations-public p { max-width: 78ch; }
.operations-public .btn { min-height: 44px; padding: .7rem 1.2rem; border-radius: .6rem; white-space: normal; font-weight: 600; max-width: 100%; }
.operations-public .btn-primary { background: #0d47a1; border-color: #0d47a1; }
.operations-public .btn-primary:hover { background: #103e80; border-color: #103e80; }
.operations-public .btn-light { color: #103e80; }
.operations-hero, .operations-final { background: linear-gradient(135deg, #1a237e, #0d47a1 70%, #075e92); color: #fff; }
.operations-hero { padding: 1.5rem 0 3.5rem; }
.operations-hero .lead { max-width: 65ch; }
.operations-breadcrumb { margin-bottom: 2.5rem; font-size: .95rem; }
.operations-hero a:not(.btn), .operations-final a:not(.btn) { color: #fff; }
.operations-eyebrow { font-size: .85rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.operations-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem 1.75rem; margin-top: 1.5rem; }
.operations-text-link { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; color: #103e80; text-underline-offset: .2em; font-weight: 600; }
.operations-cta-note { margin: 1.25rem 0 0; font-size: .95rem; }
.operations-section { padding-top: 4rem; padding-bottom: 4rem; scroll-margin-top: 1rem; }
.operations-tinted { background: #f3f6fb; }
.operations-card { border: 1px solid #d2dce9; border-radius: .85rem; box-shadow: 0 3px 12px #143d6b08; }
.operations-card .card-body { padding: clamp(1.2rem, 2vw, 2rem); }
.operations-card p:last-child { margin-bottom: 0; }
.operations-accent { border-top: 4px solid #0d47a1; }
.operations-card dt { font-size: .9rem; color: #103e80; margin-top: 1.25rem; }
.operations-card dd { margin-bottom: 0; }
.operations-card li { margin-bottom: .75rem; }
.operations-card ul { padding-left: 1.25rem; }
.operations-note { margin: 1.5rem 0 0; }
.operations-boundary { border-left: 4px solid #0d47a1; background: #f3f6fb; padding: 1.5rem; margin-top: 2rem; }
.operations-boundary p { margin-bottom: 0; }
.operations-steps { padding-left: 0; list-style: none; }
.operations-step { height: 100%; padding-top: .5rem; }
.operations-step-number { display: block; color: #0d47a1; font-size: 2rem; font-weight: 750; margin-bottom: .5rem; }
.operations-example-label { padding: .75rem 1rem; border-left: 4px solid #9b5700; background: #fff4db; color: #644000; font-weight: 600; }
.operations-report { max-width: 56rem; }
.operations-report .operations-report-list { padding: 0; list-style: none; }
.operations-report-list li { border-bottom: 1px solid #d2dce9; padding: 1.25rem 0; margin: 0; }
.operations-report-list li:first-child { padding-top: .5rem; }
.operations-report-list p { margin-bottom: 0; }
.operations-prose { max-width: 58rem; }
.operations-faq { border-bottom: 1px solid #c5d2e3; padding: .25rem 0; }
.operations-faq summary { padding: 1rem .25rem; cursor: pointer; font-weight: 650; color: #103e80; }
.operations-faq p { padding: .25rem .25rem 1rem; margin-bottom: 0; }
.operations-public .form-control, .operations-public .form-select { min-height: 44px; border-color: #78899e; }
.operations-public .form-text, .operations-public .text-muted { color: #4e5d70 !important; }
.operations-public .invalid-feedback { color: #a71d2a; }
.operations-public #enquiry-errors a { color: #7b1721; }
.operations-public .cf-turnstile { min-width: 0; }
.operations-shell .footer { padding: 1.5rem 0; }
@media (max-width: 575.98px) {
    .operations-actions { align-items: stretch; flex-direction: column; }
    .operations-actions .btn { width: 100%; }
    .operations-section { padding-top: 2.5rem; padding-bottom: 2.5rem; }
    .operations-public .card-body { padding: 1rem !important; }
    .operations-breadcrumb { margin-bottom: 2rem; }
}
@media (prefers-reduced-motion: reduce) {
    .operations-shell *, .operations-shell *::before, .operations-shell *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
