:root {
    --bg-0: #ffffff;
    --bg-1: #ffffff;
    --bg-2: #f8fbfd;
    --bg-3: #f2f7fb;
    --surface: rgba(255, 248, 241, 0.96);
    --surface-strong: rgba(255, 252, 248, 0.99);
    --surface-soft: rgba(255, 245, 236, 0.94);
    --glass: rgba(255, 250, 245, 0.97);
    --line: rgba(15, 63, 103, 0.1);
    --line-soft: rgba(23, 167, 181, 0.14);
    --ink: #183247;
    --ink-soft: #315166;
    --muted: #445b6d;
    --brand: #0d8fa0;
    --brand-2: #0f3f67;
    --brand-3: #f68b1f;
    --brand-glow: rgba(23, 167, 181, 0.16);
    --shadow: 0 18px 40px rgba(15, 63, 103, 0.08);
    --shadow-lg: 0 24px 52px rgba(15, 63, 103, 0.12);
    --box-tint: #fff6ee;
    --box-tint-2: #fffbf8;
    --box-border: rgba(246, 139, 31, 0.18);
    --box-accent: rgba(246, 139, 31, 0.1);
}

body {
    background: #ffffff !important;
    color: var(--ink) !important;
}

body .animated-bg {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 251, 253, 0.98)) !important;
    overflow: hidden;
    isolation: isolate;
}

body .animated-bg::before {
    display: block !important;
    width: 140% !important;
    height: 140% !important;
    top: -20% !important;
    left: -20% !important;
    background:
        radial-gradient(circle at 16% 18%, rgba(23, 167, 181, 0.11) 0%, transparent 26%),
        radial-gradient(circle at 82% 14%, rgba(246, 139, 31, 0.08) 0%, transparent 18%),
        radial-gradient(circle at 55% 78%, rgba(15, 63, 103, 0.05) 0%, transparent 22%) !important;
    opacity: 0.92;
    animation: lightFloat 14s ease-in-out infinite alternate !important;
}

body .animated-bg::after {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    top: 0 !important;
    left: 0 !important;
    opacity: 0.88 !important;
    background:
        linear-gradient(115deg, transparent 0%, rgba(23, 167, 181, 0.05) 44%, transparent 70%),
        repeating-linear-gradient(90deg, rgba(15, 63, 103, 0.028) 0 1px, transparent 1px 110px),
        repeating-linear-gradient(0deg, rgba(15, 63, 103, 0.022) 0 1px, transparent 1px 110px) !important;
    animation: lightGridShift 18s linear infinite !important;
}

body .particles {
    display: block !important;
    opacity: 1 !important;
}

body .particle {
    background: rgba(23, 167, 181, 0.18) !important;
    box-shadow: 0 0 18px rgba(23, 167, 181, 0.14);
}

@keyframes lightFloat {
    0% {
        transform: translate3d(0, 0, 0) scale(1);
    }
    100% {
        transform: translate3d(2.5%, 3%, 0) scale(1.08);
    }
}

@keyframes lightGridShift {
    0% {
        transform: translate3d(0, 0, 0);
    }
    100% {
        transform: translate3d(48px, 48px, 0);
    }
}

body .topbar {
    background: rgba(255, 255, 255, 0.9) !important;
    border-bottom: 1px solid rgba(15, 63, 103, 0.08) !important;
    box-shadow: 0 10px 30px rgba(15, 63, 103, 0.05);
}

body .brand-copy strong,
body .brand-copy span,
body .home-brandline strong,
body .home-brandline span,
body .hero-brandtext strong,
body .hero-brandtext span {
    color: var(--ink) !important;
}

body .menu-toggle {
    background: #143f61 !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    box-shadow: 0 14px 28px rgba(15, 63, 103, 0.18) !important;
}

body .menu-toggle span {
    background: #ffffff !important;
}

body .nav,
body .hero-menu-dialog {
    background: rgba(255, 255, 255, 0.98) !important;
    border: 1px solid rgba(15, 63, 103, 0.1) !important;
    box-shadow: 0 24px 48px rgba(15, 63, 103, 0.12) !important;
}

body .nav a,
body .hero-menu-list a {
    background: #ffffff !important;
    color: #365266 !important;
    border: 1px solid rgba(15, 63, 103, 0.08);
    box-shadow: none !important;
}

body .nav a:hover,
body .nav a.active,
body .hero-menu-list a:hover,
body .hero-menu-list a.active {
    background: rgba(23, 167, 181, 0.12) !important;
    color: var(--brand-2) !important;
    border-color: rgba(23, 167, 181, 0.2) !important;
}

body .hero-menu-title,
body .hero-menu-close {
    color: var(--ink) !important;
}

body .hero-menu-close {
    background: rgba(15, 63, 103, 0.05) !important;
}

body .hero-shell.home-hero {
    padding: 28px !important;
    border-radius: 40px !important;
    background:
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(246, 250, 253, 0.94)) !important;
    border: 1px solid rgba(13, 143, 160, 0.12) !important;
    box-shadow:
        0 26px 60px rgba(15, 63, 103, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.85) !important;
}

body .factory-image-wrap {
    border: 1px solid rgba(246, 139, 31, 0.18) !important;
    box-shadow:
        0 24px 48px rgba(15, 63, 103, 0.12),
        0 0 0 8px rgba(255, 255, 255, 0.54) !important;
}

body .visual-card {
    padding: 22px !important;
    border-radius: 32px !important;
    background:
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(255, 245, 236, 0.94)) !important;
    border: 1px solid rgba(246, 139, 31, 0.16) !important;
    box-shadow:
        0 24px 54px rgba(15, 63, 103, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.85) !important;
}

body .visual-card li {
    padding: 15px 16px !important;
    border-radius: 24px !important;
    background:
        linear-gradient(180deg, rgba(244, 250, 252, 0.96), rgba(255, 247, 240, 0.94)) !important;
    border: 1px solid rgba(13, 143, 160, 0.14) !important;
    box-shadow: 0 10px 22px rgba(15, 63, 103, 0.07) !important;
}

body .visual-card li strong,
body .visual-card li span,
body .visual-card .visual-heading {
    color: var(--ink) !important;
}

body .portal-card {
    background:
        linear-gradient(180deg, rgba(255, 252, 248, 0.98), rgba(255, 245, 236, 0.94)) !important;
    border: 1px solid rgba(246, 139, 31, 0.16) !important;
    box-shadow:
        0 20px 42px rgba(15, 63, 103, 0.09),
        inset 0 1px 0 rgba(255, 255, 255, 0.85) !important;
}

body .portal-card h3,
body .portal-card p,
body .portal-link,
body .portal-badge {
    color: var(--ink) !important;
}

body .portal-badge {
    background: rgba(13, 143, 160, 0.08) !important;
    border: 1px solid rgba(13, 143, 160, 0.14) !important;
}

body .portal-link {
    color: var(--brand-2) !important;
}

@media (min-width: 1101px) {
    body .portal-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        align-items: stretch !important;
    }
}

body h1,
body .hero h1,
body h2,
body h3,
body .section-head h2,
body .panel-title,
body .highlight-title,
body .banner h2,
body .footer h2,
body .table-head h2,
body .table-head h3,
body .document-group-copy h2,
body .market-banner h3,
body .reference-head h3,
body .reference-row strong,
body .overview-card strong,
body .portal-card h3,
body .card h3,
body .map-card h3,
body .doc-card h3,
body .timeline-card h3,
body .reference-card h3,
body .stat-card h3,
body .process-box strong,
body .mini-item strong,
body .document-card h3,
body .outlook-card h3,
body details.detail-box h3 {
    color: var(--ink) !important;
    background: none !important;
    -webkit-text-fill-color: currentColor !important;
}

body .lead,
body .section-head p,
body .entry-panel p,
body .card p,
body .map-card p,
body .doc-card p,
body .timeline-card p,
body .reference-card p,
body .quote-box p,
body .process-box p,
body .footer p,
body .footer li,
body .stat-card p,
body .mini-item span,
body .portal-card p,
body .metric-card span,
body .kpi span,
body .kpi-box span,
body .table-note,
body .document-group-copy p,
body .document-card p,
body .detail-content,
body .reference-row span,
body .summary-card p,
body .documents-side li,
body .outlook-hero-list li,
body .references-hero-list li,
body .market-banner p,
body .market-point p,
body .overview-card p,
body .relationship-panel p,
body .highlight-panel p {
    color: var(--muted) !important;
}

body .eyebrow,
body .section-label,
body .panel-kicker,
body .hero-tag,
body .pill,
body .table-kicker,
body .document-page-badge,
body .document-count,
body .reference-tag {
    color: var(--brand) !important;
}

body .glass,
body .card,
body .map-card,
body .doc-card,
body .timeline-card,
body .reference-card,
body .portal-card,
body .stat-card,
body .mini-item,
body .process-box,
body .entry-panel,
body .hero-panel,
body .quote-box,
body details.detail-box,
body .metric-card,
body .kpi,
body .banner,
body .visual-card,
body .summary-card,
body .table-wrap,
body .kpi-box,
body .documents-intro,
body .documents-side,
body .document-group,
body .document-card,
body .outlook-card,
body .outlook-hero-panel,
body .banner-panel,
body .banner-support,
body .market-point,
body .strategy-shell,
body .overview-card,
body .reference-entry,
body .highlight-panel,
body .relationship-panel,
body .references-hero-panel,
body .hero-menu-dialog {
    background: linear-gradient(180deg, var(--box-tint-2), var(--box-tint)) !important;
    border: 1px solid var(--box-border) !important;
    box-shadow: var(--shadow), inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
    backdrop-filter: blur(12px);
}

body .glass:hover,
body .card:hover,
body .map-card:hover,
body .doc-card:hover,
body .timeline-card:hover,
body .reference-card:hover,
body .portal-card:hover,
body .stat-card:hover,
body .mini-item:hover,
body .process-box:hover,
body .entry-panel:hover,
body .hero-panel:hover,
body .quote-box:hover,
body details.detail-box:hover,
body .document-card:hover,
body .outlook-card:hover,
body .overview-card:hover,
body .reference-entry:hover,
body .market-point:hover {
    background: linear-gradient(180deg, #fffdfb, #fff3e7) !important;
    box-shadow: var(--shadow-lg) !important;
}

body :is(
    .glass,
    .card,
    .map-card,
    .doc-card,
    .timeline-card,
    .reference-card,
    .portal-card,
    .stat-card,
    .mini-item,
    .process-box,
    .entry-panel,
    .hero-panel,
    .quote-box,
    details.detail-box,
    .metric-card,
    .kpi,
    .banner,
    .visual-card,
    .summary-card,
    .table-wrap,
    .kpi-box,
    .documents-intro,
    .documents-side,
    .document-group,
    .document-card,
    .outlook-card,
    .outlook-hero-panel,
    .banner-panel,
    .banner-support,
    .market-point,
    .strategy-shell,
    .overview-card,
    .reference-entry,
    .highlight-panel,
    .relationship-panel,
    .references-hero-panel
) :where(h2, h3, h4, strong, summary, .panel-title, .highlight-title, .section-label, .panel-kicker, .table-kicker, .reference-tag, .document-count, .document-page-badge) {
    color: var(--ink) !important;
}

body :is(
    .glass,
    .card,
    .map-card,
    .doc-card,
    .timeline-card,
    .reference-card,
    .portal-card,
    .stat-card,
    .mini-item,
    .process-box,
    .entry-panel,
    .hero-panel,
    .quote-box,
    details.detail-box,
    .metric-card,
    .kpi,
    .banner,
    .visual-card,
    .summary-card,
    .table-wrap,
    .kpi-box,
    .documents-intro,
    .documents-side,
    .document-group,
    .document-card,
    .outlook-card,
    .outlook-hero-panel,
    .banner-panel,
    .banner-support,
    .market-point,
    .strategy-shell,
    .overview-card,
    .reference-entry,
    .highlight-panel,
    .relationship-panel,
    .references-hero-panel
) :where(p, span, li, a:not(.btn):not(.portal-link):not(.hero-menu-close), small, dd, dt) {
    color: var(--muted) !important;
}

body :is(
    .glass,
    .card,
    .map-card,
    .doc-card,
    .timeline-card,
    .reference-card,
    .portal-card,
    .stat-card,
    .mini-item,
    .process-box,
    .entry-panel,
    .hero-panel,
    .quote-box,
    details.detail-box,
    .metric-card,
    .kpi,
    .banner,
    .visual-card,
    .summary-card,
    .table-wrap,
    .kpi-box,
    .documents-intro,
    .documents-side,
    .document-group,
    .document-card,
    .outlook-card,
    .outlook-hero-panel,
    .banner-panel,
    .banner-support,
    .market-point,
    .strategy-shell,
    .overview-card,
    .reference-entry,
    .highlight-panel,
    .relationship-panel,
    .references-hero-panel
) :is(.eyebrow, .section-label, .panel-kicker, .table-kicker, .reference-tag, .document-count, .document-page-badge, .hero-tag, .pill) {
    color: var(--brand-2) !important;
}

body .metric-card strong,
body .kpi strong,
body .kpi-box strong {
    color: var(--ink) !important;
}

body .btn-outline,
body .btn-soft {
    background: #ffffff !important;
    color: var(--ink) !important;
    border: 1px solid rgba(15, 63, 103, 0.12) !important;
    box-shadow: 0 12px 28px rgba(15, 63, 103, 0.08);
}

body .btn-outline:hover,
body .btn-soft:hover {
    background: rgba(23, 167, 181, 0.08) !important;
    color: var(--brand-2) !important;
}

body .hero-tag,
body .pill,
body .filter-chip,
body .table-kicker,
body .document-count,
body .document-page-badge,
body .reference-tag {
    background: rgba(246, 139, 31, 0.12) !important;
    border: 1px solid rgba(246, 139, 31, 0.22) !important;
    box-shadow: none !important;
}

body .filter-chip {
    color: var(--ink) !important;
}

body .filter-chip:hover,
body .filter-chip.is-active {
    background: rgba(246, 139, 31, 0.18) !important;
    color: var(--brand-2) !important;
    border-color: rgba(246, 139, 31, 0.3) !important;
}

body .table-wrap,
body .data-table,
body .mobile-table-stage {
    background: #ffffff !important;
}

body .data-table {
    color: var(--muted) !important;
}

body .data-table thead th {
    background: #eef7fa !important;
    color: var(--ink) !important;
}

body .data-table tbody td {
    color: var(--muted) !important;
    border-top: 1px solid rgba(15, 63, 103, 0.08) !important;
    background: #ffffff !important;
}

body .data-table tbody tr:nth-child(odd) td {
    background: #f9fcfe !important;
}

body .data-table tbody tr:hover td {
    background: #f2f8fb !important;
}

body .data-table td:first-child,
body .data-table td:nth-child(2) {
    color: var(--ink) !important;
}

body .document-preview {
    background: #fff8f2 !important;
    border-color: rgba(246, 139, 31, 0.16) !important;
}

body .document-preview::before {
    background: linear-gradient(180deg, transparent 48%, rgba(255, 255, 255, 0.78) 100%) !important;
}

body .visual-card {
    background: linear-gradient(180deg, #fffdfb, #fff4ea) !important;
    border: 1px solid rgba(246, 139, 31, 0.18) !important;
    border-radius: 40px !important;
    padding: 36px !important;
}

body .visual-heading {
    color: var(--ink) !important;
}

body .visual-card ul {
    display: grid;
    gap: 14px;
}

body .visual-card li {
    color: var(--muted) !important;
    background: rgba(255, 255, 255, 0.7) !important;
    border: 1px solid rgba(246, 139, 31, 0.14) !important;
    border-radius: 22px;
    padding: 16px 18px;
    margin-bottom: 0 !important;
}

body .visual-card li strong,
body .glance-copy strong {
    color: var(--ink) !important;
}

body .visual-card li span,
body .glance-copy span {
    color: var(--muted) !important;
}

body .floating-note {
    background: linear-gradient(180deg, rgba(246, 139, 31, 0.14), rgba(246, 139, 31, 0.08)) !important;
    border: 1px solid rgba(246, 139, 31, 0.22) !important;
    color: var(--ink) !important;
}

body .floating-note strong,
body .floating-note span,
body .note-location,
body .note-copy {
    color: var(--ink) !important;
}

body:not([data-page]) .reveal,
body:not([data-page]) .portal-card.reveal,
body:not([data-page]) .stat-card.reveal,
body:not([data-page]) .section-head.reveal,
body:not([data-page]) .banner.reveal {
    opacity: 1 !important;
    transform: none !important;
}

body:not([data-page]) .home-brandline,
body:not([data-page]) .eyebrow,
body:not([data-page]) h1,
body:not([data-page]) .hero h1,
body:not([data-page]) .lead,
body:not([data-page]) .hero p.lead,
body:not([data-page]) .hero-tags,
body:not([data-page]) .visual-card,
body:not([data-page]) .btn-row {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
}

body:not([data-page]) .hero-tag,
body:not([data-page]) button.hero-tag,
body:not([data-page]) .portal-badge {
    background: linear-gradient(180deg, #fff7ef, #ffeedf) !important;
    color: var(--brand-2) !important;
    border: 1px solid rgba(246, 139, 31, 0.24) !important;
    box-shadow: 0 8px 20px rgba(246, 139, 31, 0.08) !important;
}

body:not([data-page]) .hero-control-row {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 18px;
}

body:not([data-page]) button.hero-tag:hover,
body:not([data-page]) .hero-tag:hover {
    background: linear-gradient(180deg, #fff2e5, #ffe7d1) !important;
    color: var(--brand-2) !important;
}

body:not([data-page]) .hero-menu .menu-toggle {
    background: linear-gradient(180deg, #fffaf5, #fff0e1) !important;
    border: 1px solid rgba(246, 139, 31, 0.22) !important;
    box-shadow: 0 12px 28px rgba(246, 139, 31, 0.1) !important;
}

body:not([data-page]) .hero-menu .menu-toggle span {
    background: var(--brand-2) !important;
    box-shadow: none !important;
}

body:not([data-page]) .animated-bg::before {
    opacity: 0.6 !important;
    filter: blur(5px);
}

body:not([data-page]) .animated-bg::after {
    opacity: 0.3 !important;
}

body:not([data-page]) h1,
body:not([data-page]) .hero h1 {
    color: #1b3346 !important;
    -webkit-text-fill-color: #1b3346 !important;
}

body:not([data-page]) .lead,
body:not([data-page]) .hero p.lead,
body:not([data-page]) .home-brandline span,
body:not([data-page]) .eyebrow,
body:not([data-page]) .section-head p {
    color: #4f6577 !important;
}

body:not([data-page]) .hero-tags {
    opacity: 1 !important;
}

body:not([data-page]) .factory-image-wrap::after {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, rgba(255, 255, 255, 0.1) 100%) !important;
}

body:not([data-page]) .cert-line {
    align-items: flex-start !important;
}

body:not([data-page]) .cert-groups {
    background: linear-gradient(180deg, #fffdfb, #fff5ec) !important;
    border: 1px solid rgba(246, 139, 31, 0.18) !important;
    border-radius: 24px;
    padding: 16px 18px;
    box-shadow: 0 12px 28px rgba(15, 63, 103, 0.08);
}

body:not([data-page]) .cert-group + .cert-group {
    padding-top: 12px;
    border-top: 1px solid rgba(246, 139, 31, 0.14);
}

body:not([data-page]) .cert-group-label {
    color: var(--brand-2) !important;
    font-size: 0.78rem !important;
    letter-spacing: 0.1em !important;
}

body:not([data-page]) .cert-actions {
    gap: 12px !important;
}

body:not([data-page]) .cert-line .cert-trigger {
    background: linear-gradient(180deg, #fff7ef, #ffeede) !important;
    color: var(--brand-2) !important;
    border: 1px solid rgba(246, 139, 31, 0.22) !important;
    box-shadow: 0 8px 20px rgba(246, 139, 31, 0.08);
    font-weight: 700 !important;
}

body:not([data-page]) .cert-line .cert-trigger:hover {
    background: linear-gradient(180deg, #fff1e3, #ffe4ce) !important;
    color: var(--brand-2) !important;
}

body:not([data-page]) .portal-card,
body:not([data-page]) .stat-card {
    background: linear-gradient(180deg, #fffdfb, #fff4ea) !important;
    border: 1px solid rgba(246, 139, 31, 0.18) !important;
    box-shadow: 0 18px 40px rgba(15, 63, 103, 0.08) !important;
}

body:not([data-page]) .portal-card h3,
body:not([data-page]) .stat-card h3,
body:not([data-page]) .portal-card h3 i,
body:not([data-page]) .stat-card h3 i {
    color: var(--ink) !important;
}

body:not([data-page]) .portal-card p,
body:not([data-page]) .stat-card p,
body:not([data-page]) .portal-link,
body:not([data-page]) .section-head p {
    color: var(--muted) !important;
}

body:not([data-page]) .portal-link {
    font-weight: 700 !important;
}

body:not([data-page]) .portal-link:hover {
    color: var(--brand-3) !important;
}

body .document-card::after,
body .overview-card::after,
body .outlook-card::after,
body .kpi-box::before {
    opacity: 0.65;
}

body .document-card-top,
body .reference-head,
body .document-group-head,
body .table-head {
    align-items: flex-start;
}

body .reference-index {
    background: rgba(246, 139, 31, 0.14) !important;
    color: var(--brand-2) !important;
}

body .overview-card strong,
body .reference-row strong,
body .document-card h3,
body .outlook-card h3,
body .market-point strong,
body .documents-side li i + span,
body .card h3,
body .stat-card h3,
body .mini-item strong,
body .process-box strong,
body details.detail-box h3 {
    color: var(--ink) !important;
}

body .portal-link,
body .reference-entry a,
body .document-card a,
body .summary-card a {
    color: var(--brand-2) !important;
}

body .portal-link:hover,
body .reference-entry a:hover,
body .document-card a:hover,
body .summary-card a:hover {
    color: var(--brand-3) !important;
}

body .reference-row {
    border-bottom: 1px solid rgba(15, 63, 103, 0.08) !important;
}

body .banner-list li,
body .bullet-list li,
body .check-list li,
body .process-box li,
body .meta-list li,
body .detail-content li {
    color: #496071 !important;
}

body .meta-list li {
    border-bottom: 1px solid rgba(15, 63, 103, 0.08) !important;
}

body .footer {
    background: linear-gradient(135deg, #0f3f67 0%, #154f7d 58%, #0d6f98 100%) !important;
    border-top: 1px solid rgba(162, 220, 240, 0.22) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 -18px 36px rgba(9, 29, 48, 0.12) !important;
}

body .footer :where(p, li, span, a:not(.btn)) {
    color: #eaf4ff !important;
}

body .footer :where(h2, h3, strong) {
    color: #ffffff !important;
}

body .footer h2,
body .footer h2 * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body .footer p,
body .footer li,
body .footer ul li,
body .footer .cert-group-label,
body .footer .cert-groups :where(span, div, button, a) {
    color: #f2f8ff !important;
}

body .footer h2 i,
body .footer li i,
body .footer .pill i {
    color: #ffbf73 !important;
}

body .footer .pill,
body .footer .cert-line .cert-trigger {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    box-shadow: none !important;
}

body .footer .pill:hover,
body .footer .cert-line .cert-trigger:hover {
    background: rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
}

body .footer .cert-groups {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    box-shadow: none !important;
}

body .footer .cert-group + .cert-group {
    border-top-color: rgba(255, 255, 255, 0.12) !important;
}

body .footer .cert-group-label {
    color: #9fe5f1 !important;
}

body .footer .footer-credit {
    display: block;
    width: fit-content;
    margin: 18px auto 0;
    font-size: 0.72rem;
    line-height: 1.35;
    color: rgba(234, 244, 255, 0.72) !important;
    text-decoration: none;
    letter-spacing: 0;
}

body .footer .footer-credit:hover,
body .footer .footer-credit:focus-visible {
    color: #ffffff !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}

body .footer-shell {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

body .outlook-icon,
body .overview-card i,
body .references-hero-list i,
body .outlook-hero-list i,
body .capability-icon,
body .kpi-icon {
    border-color: rgba(23, 167, 181, 0.14) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55), 0 12px 24px rgba(15, 63, 103, 0.08) !important;
}

body .outlook-visual-strip,
body .hero-shell {
    box-shadow: none !important;
}

body .hero-shell,
body .footer-shell {
    backdrop-filter: none !important;
}

body[data-page="section-4"] .outlook-hero-copy .hero-tags {
    margin-top: 24px !important;
    gap: 12px !important;
    opacity: 1 !important;
    transform: none !important;
}

body[data-page="section-4"] .hero-tags {
    opacity: 1 !important;
    transform: none !important;
}

body[data-page="section-4"] .hero-tag {
    background: linear-gradient(180deg, #fff9f3, #ffe9d2) !important;
    color: var(--brand-2) !important;
    border: 1.5px solid rgba(246, 139, 31, 0.28) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.8),
        0 10px 22px rgba(246, 139, 31, 0.09) !important;
    font-weight: 700 !important;
    opacity: 1 !important;
    transform: none !important;
}

body[data-page="section-4"] .hero-tag i {
    display: inline-grid !important;
    place-items: center !important;
    width: 28px !important;
    height: 28px !important;
    margin-inline-end: 8px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.84) !important;
    box-shadow: 0 6px 14px rgba(15, 63, 103, 0.08) !important;
}

body[data-page="section-4"] .hero-tag:nth-child(1) i {
    color: #139aab !important;
}

body[data-page="section-4"] .hero-tag:nth-child(2) i {
    color: #f68b1f !important;
}

body[data-page="section-4"] .hero-tag:nth-child(3) i {
    color: #2d7b47 !important;
}

body[data-page="section-4"] .hero-tag:nth-child(4) i {
    color: #315bd5 !important;
}

body[data-page="section-4"] .outlook-hero-list i,
body[data-page="section-5"] .references-hero-list i,
body[data-page="section-4"] .outlook-icon,
body[data-page="section-5"] .overview-card i,
body[data-page="section-4"] .commitment-head i {
    border: 1px solid rgba(15, 63, 103, 0.12) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.55),
        0 14px 28px rgba(15, 63, 103, 0.12) !important;
}

body[data-page="section-4"] .outlook-hero-list li:nth-child(1) i,
body[data-page="section-5"] .references-hero-list li:nth-child(1) i,
body[data-page="section-4"] .outlook-card:nth-child(1) .outlook-icon,
body[data-page="section-5"] .overview-card:nth-child(1) i,
body[data-page="section-4"] .commitment-box:nth-child(1) .commitment-head i {
    background: linear-gradient(135deg, #1fb6c8, #8ae1ea) !important;
    color: #0f3f67 !important;
}

body[data-page="section-4"] .outlook-hero-list li:nth-child(2) i,
body[data-page="section-5"] .references-hero-list li:nth-child(2) i,
body[data-page="section-4"] .outlook-card:nth-child(2) .outlook-icon,
body[data-page="section-5"] .overview-card:nth-child(2) i,
body[data-page="section-4"] .commitment-box:nth-child(2) .commitment-head i {
    background: linear-gradient(135deg, #ffd8a8, #f68b1f) !important;
    color: #663400 !important;
}

body[data-page="section-4"] .outlook-hero-list li:nth-child(3) i,
body[data-page="section-5"] .references-hero-list li:nth-child(3) i,
body[data-page="section-4"] .outlook-card:nth-child(3) .outlook-icon,
body[data-page="section-5"] .overview-card:nth-child(3) i,
body[data-page="section-4"] .commitment-box:nth-child(3) .commitment-head i {
    background: linear-gradient(135deg, #d4f4dd, #79cf91) !important;
    color: #1f6a38 !important;
}

body[data-page="section-4"] .outlook-hero-list li:nth-child(4) i,
body[data-page="section-5"] .references-hero-list li:nth-child(4) i,
body[data-page="section-4"] .outlook-card:nth-child(4) .outlook-icon,
body[data-page="section-5"] .overview-card:nth-child(4) i,
body[data-page="section-4"] .commitment-box:nth-child(4) .commitment-head i {
    background: linear-gradient(135deg, #dfe7ff, #8fa8ff) !important;
    color: #284aaf !important;
}

body[data-page="section-4"] .strategy-tabs,
body[data-page="section-4"] .product-tabs {
    gap: 14px !important;
}

body[data-page="section-4"] .strategy-tab,
body[data-page="section-4"] .product-tab {
    border: 1.5px solid rgba(15, 63, 103, 0.14) !important;
    background: linear-gradient(180deg, #fffdfb, #fff2e5) !important;
    color: var(--brand-2) !important;
    min-height: 52px !important;
    box-shadow:
        inset 0 0 0 1px rgba(246, 139, 31, 0.08),
        0 10px 22px rgba(15, 63, 103, 0.06) !important;
}

body[data-page="section-4"] .strategy-tab:hover,
body[data-page="section-4"] .strategy-tab.is-active,
body[data-page="section-4"] .product-tab:hover,
body[data-page="section-4"] .product-tab.is-active {
    background: linear-gradient(135deg, #0f3f67, #1fb6c8) !important;
    color: #ffffff !important;
    border-color: rgba(31, 182, 200, 0.34) !important;
    box-shadow: 0 14px 30px rgba(15, 63, 103, 0.16) !important;
}

body[data-page="section-4"] .product-tab i,
body[data-page="section-4"] .product-tab strong,
body[data-page="section-4"] .strategy-tab {
    color: inherit !important;
}

body[data-page="section-4"] .product-copy,
body[data-page="section-4"] .product-side,
body[data-page="section-4"] .roadmap-card,
body[data-page="section-4"] .commitment-box,
body[data-page="section-5"] .overview-card {
    border: 1px solid rgba(246, 139, 31, 0.16) !important;
}

body[data-page="section-4"] .roadmap-step {
    width: 52px !important;
    height: 52px !important;
    border: 1px solid rgba(246, 139, 31, 0.22) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.5),
        0 10px 22px rgba(15, 63, 103, 0.12) !important;
}

body[data-page="section-4"] .roadmap-card:nth-child(1) .roadmap-step {
    background: linear-gradient(135deg, #1fb6c8, #8ae1ea) !important;
    color: #0f3f67 !important;
}

body[data-page="section-4"] .roadmap-card:nth-child(2) .roadmap-step {
    background: linear-gradient(135deg, #ffd8a8, #f68b1f) !important;
    color: #663400 !important;
}

body[data-page="section-4"] .roadmap-card:nth-child(3) .roadmap-step {
    background: linear-gradient(135deg, #d4f4dd, #79cf91) !important;
    color: #1f6a38 !important;
}

body[data-page="section-4"] .roadmap-card:nth-child(4) .roadmap-step {
    background: linear-gradient(135deg, #dfe7ff, #8fa8ff) !important;
    color: #284aaf !important;
}

body[data-page="section-5"] .reference-overview {
    margin-top: 24px !important;
}

body[data-page="section-5"] .references-hero-copy h1 {
    color: var(--ink) !important;
    -webkit-text-fill-color: currentColor !important;
}

body[data-page="section-5"] .references-hero-copy .lead {
    color: #4b6377 !important;
}

body[data-page="section-5"] .references-hero-copy .hero-tags {
    opacity: 1 !important;
    transform: none !important;
}

body[data-page="section-5"] .references-hero-copy .hero-tag {
    background: linear-gradient(180deg, #f7fcfe, #ebf7fb) !important;
    color: var(--brand-2) !important;
    border: 1.5px solid rgba(23, 167, 181, 0.18) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.84),
        0 8px 18px rgba(15, 63, 103, 0.06) !important;
    font-weight: 700 !important;
    opacity: 1 !important;
}

body[data-page="section-5"] .references-hero-copy .hero-tag i {
    color: #139aab !important;
}

body[data-page="section-4"] .strategy-shell,
body[data-page="section-4"] .product-shell,
body[data-page="section-5"] .references-hero-panel {
    border-color: rgba(246, 139, 31, 0.14) !important;
}

body[data-page="section-5"] .overview-card strong {
    color: var(--brand-2) !important;
}

@media (max-width: 640px) {
    body[data-page="section-4"] .strategy-tabs {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        margin-top: 26px !important;
    }

    body[data-page="section-4"] .strategy-tab,
    body[data-page="section-4"] .product-tab {
        width: 100%;
        text-align: left !important;
    }

    body[data-page="section-4"] .outlook-hero-copy .hero-tags {
        margin-top: 18px !important;
    }
}

@media (max-width: 900px) {
    body:not([data-page]) .hero-control-row {
        justify-content: flex-start;
        padding-inline-start: 4px;
        margin-bottom: 16px;
    }

    body:not([data-page]) .hero-menu {
        margin-inline-start: 0 !important;
    }

    body .animated-bg::after {
        background:
            linear-gradient(115deg, transparent 0%, rgba(23, 167, 181, 0.05) 40%, transparent 70%),
            repeating-linear-gradient(90deg, rgba(15, 63, 103, 0.022) 0 1px, transparent 1px 72px),
            repeating-linear-gradient(0deg, rgba(15, 63, 103, 0.02) 0 1px, transparent 1px 72px) !important;
    }

    body .hero-shell.home-hero {
        padding: 18px !important;
        border-radius: 30px !important;
    }
}

body:not([data-page]) .hero-control-row {
    justify-content: flex-end;
    margin-bottom: 10px;
}

body:not([data-page]) .home-brandline {
    display: flex;
    justify-content: center;
}

body:not([data-page]) .hero-brandlock {
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
}

body:not([data-page]) .hero-brandtext {
    align-items: center;
    text-align: center;
}

body:not([data-page]) .hero-brandtext strong {
    font-size: clamp(2.8rem, 5.2vw, 4.2rem) !important;
}

body:not([data-page]) .hero-brandtext span {
    font-size: clamp(1.1rem, 2vw, 1.34rem) !important;
}

body:not([data-page]) .logo-frame {
    width: clamp(132px, 13vw, 170px) !important;
    height: clamp(132px, 13vw, 170px) !important;
    margin-inline: auto;
}

body:not([data-page]) .hero-menu .menu-toggle {
    background: rgba(17, 54, 84, 0.92) !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    box-shadow: 0 16px 34px rgba(15, 63, 103, 0.2) !important;
}

body:not([data-page]) .hero-menu .menu-toggle span {
    background: #ffffff !important;
}

body:not([data-page]) .visual-card {
    background: linear-gradient(180deg, rgba(15, 63, 103, 0.98), rgba(25, 83, 126, 0.96)) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 28px 60px rgba(15, 63, 103, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

body:not([data-page]) .visual-card li {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.05)) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.14) !important;
}

body:not([data-page]) .visual-card .visual-heading,
body:not([data-page]) .visual-card li strong,
body:not([data-page]) .visual-card li span,
body:not([data-page]) .visual-card .floating-note strong,
body:not([data-page]) .visual-card .floating-note span {
    color: #f5fbff !important;
}

body:not([data-page]) .visual-card li i,
body:not([data-page]) .visual-card .visual-heading i {
    color: #39c3cf !important;
}

body:not([data-page]) .glance-gif {
    width: 34px;
    height: 34px;
    object-fit: contain;
    display: block;
}

body:not([data-page]) .visual-card .floating-note {
    background: linear-gradient(135deg, rgba(246, 139, 31, 0.22), rgba(57, 195, 207, 0.18)) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

body:not([data-page]) .hero-menu-dialog {
    background: linear-gradient(180deg, rgba(15, 63, 103, 0.98), rgba(25, 83, 126, 0.98)) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 28px 60px rgba(15, 63, 103, 0.24) !important;
}

body:not([data-page]) .hero-menu-title,
body:not([data-page]) .hero-menu-close {
    color: #f4fbff !important;
}

body:not([data-page]) .hero-menu-close {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
}

body:not([data-page]) .hero-menu-list a {
    background: rgba(255, 255, 255, 0.06) !important;
    color: #ebf6fd !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

body:not([data-page]) .hero-menu-list a:hover,
body:not([data-page]) .hero-menu-list a.active {
    background: rgba(57, 195, 207, 0.16) !important;
    color: #ffffff !important;
    border-color: rgba(57, 195, 207, 0.28) !important;
}

body[data-page="section-1"] .hero-shell,
body[data-page="section-2"] .hero-shell,
body[data-page="section-4"] .hero-shell,
body[data-page="section-5"] .hero-shell,
body[data-page="section-7"] .hero-shell {
    background: linear-gradient(180deg, rgba(15, 63, 103, 0.97), rgba(25, 83, 126, 0.97)) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 28px 60px rgba(15, 63, 103, 0.18) !important;
}

body[data-page="section-1"] .hero-shell .eyebrow,
body[data-page="section-2"] .hero-shell .eyebrow,
body[data-page="section-4"] .hero-shell .eyebrow,
body[data-page="section-5"] .hero-shell .eyebrow,
body[data-page="section-7"] .hero-shell .eyebrow {
    color: #68d6de !important;
}

body[data-page="section-1"] .hero-shell h1,
body[data-page="section-2"] .hero-shell h1,
body[data-page="section-4"] .hero-shell h1,
body[data-page="section-5"] .hero-shell h1,
body[data-page="section-7"] .hero-shell h1,
body[data-page="section-1"] .hero-shell .lead,
body[data-page="section-2"] .hero-shell .lead,
body[data-page="section-4"] .hero-shell .lead,
body[data-page="section-5"] .hero-shell .lead,
body[data-page="section-7"] .hero-shell .lead,
body[data-page="section-1"] .hero-shell p,
body[data-page="section-2"] .hero-shell p,
body[data-page="section-4"] .hero-shell p,
body[data-page="section-5"] .hero-shell p,
body[data-page="section-7"] .hero-shell p,
body[data-page="section-1"] .hero-shell .panel-title,
body[data-page="section-2"] .hero-shell .panel-title,
body[data-page="section-4"] .hero-shell .panel-title,
body[data-page="section-5"] .hero-shell .panel-title,
body[data-page="section-7"] .hero-shell .panel-title,
body[data-page="section-1"] .hero-shell .panel-kicker,
body[data-page="section-2"] .hero-shell .panel-kicker,
body[data-page="section-4"] .hero-shell .panel-kicker,
body[data-page="section-5"] .hero-shell .panel-kicker,
body[data-page="section-7"] .hero-shell .panel-kicker,
body[data-page="section-1"] .hero-shell .hero-tag,
body[data-page="section-4"] .hero-shell .hero-tag,
body[data-page="section-5"] .hero-shell .hero-tag {
    color: #edf7ff !important;
}

body[data-page="section-1"] .hero-shell .hero-panel,
body[data-page="section-2"] .hero-shell .hero-panel,
body[data-page="section-4"] .hero-shell .hero-panel,
body[data-page="section-5"] .hero-shell .hero-panel,
body[data-page="section-7"] .hero-shell .hero-panel {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: none !important;
}

body[data-page="section-4"] .outlook-visual-strip {
    overflow: hidden;
}

body[data-page="section-4"] .outlook-visual-strip img {
    object-fit: cover;
    object-position: center 68%;
    transform: scale(1.1);
}

body[data-page="section-1"] .footer-grid,
body[data-page="section-2"] .footer-grid,
body[data-page="section-4"] .footer-grid,
body[data-page="section-5"] .footer-grid,
body[data-page="section-6"] .footer-note-grid,
body[data-page="section-7"] .footer-note-grid {
    grid-template-columns: 1fr !important;
}

body[data-page="section-2"] .section-wide-visual {
    margin: 8px 0 8px;
    border-radius: 30px;
    overflow: hidden;
    border: 1px solid rgba(15, 63, 103, 0.12);
    box-shadow: 0 24px 52px rgba(15, 63, 103, 0.12);
}

body[data-page="section-2"] .section-wide-visual img {
    width: 100%;
    display: block;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

body[data-page="section-2"] .kpi-icon img {
    width: 38px;
    height: 38px;
    object-fit: contain;
    display: block;
}

body[data-page="section-2"] .kpi-box--capacity .kpi-icon img {
    width: 48px;
    height: 48px;
}

body[data-page="section-2"] .kpi-box--pumps .kpi-icon img {
    width: 46px;
    height: 46px;
    filter: brightness(0.72) saturate(1.2);
}

body:not([data-page]) .glance-gif--plant {
    width: 40px;
    height: 40px;
    margin-left: -3px;
}

body[data-page="section-2"] .table-section .table-wrap thead th {
    background: linear-gradient(135deg, #0f3f67, #0d8fa0) !important;
    color: #ffffff !important;
}

body[data-page="section-2"] .table-kicker {
    background: linear-gradient(135deg, rgba(246, 139, 31, 0.18), rgba(13, 143, 160, 0.16)) !important;
    color: #17344c !important;
}

body[data-page="section-5"] .page-nav.page-nav-bottom {
    margin-top: 24px;
}

body:not([data-page]) .home-brandline {
    position: relative;
}

body:not([data-page]) .home-menu-inline {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

body:not([data-page]) .logo-frame {
    width: 150px !important;
    height: 150px !important;
}

body:not([data-page]) .visual-card li {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 10px 24px rgba(2, 12, 22, 0.12) !important;
}

body:not([data-page]) .visual-card li strong {
    color: #ffffff !important;
}

body:not([data-page]) .visual-card li span,
body:not([data-page]) .visual-heading {
    color: #dbeaf7 !important;
}

body:not([data-page]) .visual-card li i,
body:not([data-page]) .glance-gif {
    color: #5fe0e6 !important;
    filter: none;
}

@media (max-width: 900px) {
    body:not([data-page]) .home-menu-inline {
        top: 10px;
        transform: none;
    }
}

body[data-page] .nav,
body .hero-menu-dialog {
    background: linear-gradient(180deg, rgba(9, 36, 60, 0.98), rgba(13, 53, 85, 0.96)) !important;
    border: 1px solid rgba(95, 224, 230, 0.18) !important;
    box-shadow: 0 24px 52px rgba(7, 26, 42, 0.34) !important;
}

body[data-page] .nav a,
body .hero-menu-list a {
    background: rgba(255, 255, 255, 0.05) !important;
    color: #edf7ff !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: none !important;
}

body[data-page] .nav a:hover,
body[data-page] .nav a.active,
body .hero-menu-list a:hover,
body .hero-menu-list a.active {
    background: linear-gradient(135deg, rgba(13, 143, 160, 0.88), rgba(246, 139, 31, 0.88)) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 14px 28px rgba(7, 26, 42, 0.24) !important;
}

body .hero-menu-title,
body .hero-menu-close,
body .hero-menu-close i,
body[data-page] .nav a,
body .hero-menu-list a {
    color: #edf7ff !important;
}

body .hero-menu-close,
body[data-page] .menu-toggle {
    background: #143f61 !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    box-shadow: 0 14px 28px rgba(15, 63, 103, 0.18) !important;
}

body[data-page] .menu-toggle span {
    background: #ffffff !important;
}

body:not([data-page]) .home-about-cta {
    padding: 0 0 56px;
}

body:not([data-page]) .home-about-cta .container {
    display: flex;
    justify-content: center;
}

body:not([data-page]) .home-about-cta .btn {
    width: min(360px, 100%);
    justify-content: center;
}

body:not([data-page]) .hero h1 .hero-title-line {
    display: block;
}

@media (max-width: 640px) {
    body:not([data-page]) .hero h1 {
        font-size: clamp(2rem, 8.4vw, 2.35rem) !important;
    }

    body:not([data-page]) .hero h1 .hero-title-line:first-child {
        white-space: nowrap;
        font-size: 0.96em;
    }
}

body[data-page] .hero-shell .hero-panel,
body[data-page] .hero-shell aside.hero-panel,
body[data-page] .outlook-hero-panel,
body[data-page] .references-hero-panel {
    background: linear-gradient(180deg, rgba(255, 253, 250, 0.98), rgba(241, 247, 252, 0.96)) !important;
    border: 1px solid rgba(13, 143, 160, 0.16) !important;
    border-radius: 30px !important;
    box-shadow:
        0 18px 36px rgba(15, 63, 103, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.84) !important;
    overflow: hidden !important;
}

body[data-page] .hero-shell .hero-panel .panel-kicker,
body[data-page] .hero-shell .hero-panel .section-label,
body[data-page] .outlook-hero-panel .panel-kicker,
body[data-page] .references-hero-panel .panel-kicker {
    color: #0d8fa0 !important;
}

body[data-page] .hero-shell .hero-panel .panel-title,
body[data-page] .hero-shell .hero-panel strong,
body[data-page] .outlook-hero-panel .panel-title,
body[data-page] .references-hero-panel .panel-title {
    color: #183247 !important;
}

body[data-page] .hero-shell .hero-panel p,
body[data-page] .hero-shell .hero-panel span,
body[data-page] .hero-shell .hero-panel li,
body[data-page] .outlook-hero-list li,
body[data-page] .references-hero-list li,
body[data-page] .outlook-hero-list span,
body[data-page] .references-hero-list span {
    color: #4c6679 !important;
}

body[data-page] .outlook-hero-list i,
body[data-page] .references-hero-list i {
    background: linear-gradient(135deg, rgba(13, 143, 160, 0.16), rgba(246, 139, 31, 0.16)) !important;
    border: 1px solid rgba(13, 143, 160, 0.14) !important;
    color: #0f3f67 !important;
    box-shadow: 0 10px 22px rgba(15, 63, 103, 0.08) !important;
}

body[data-page="section-1"] .footer-grid,
body[data-page="section-2"] .footer-grid,
body[data-page="section-3"] .footer-grid,
body[data-page="section-4"] .footer-grid,
body[data-page="section-5"] .footer-grid,
body[data-page="section-6"] .footer-note-grid,
body[data-page="section-7"] .footer-note-grid {
    grid-template-columns: 1fr !important;
}

body[data-page="section-3"] .footer-grid > div:last-child {
    display: none !important;
}

body .footer h2,
body .footer p {
    color: #edf7ff !important;
}

body .footer .pill-row,
body .footer .hero-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin-top: 20px !important;
}

body .footer .pill {
    background: rgba(255, 255, 255, 0.07) !important;
    color: #edf7ff !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: none !important;
}

body .footer .pill,
body .footer .pill:visited,
body .footer .pill:hover,
body .footer .pill:focus-visible,
body .footer .hero-tags .pill,
body .footer .pill-row .pill {
    color: #edf7ff !important;
    text-decoration: none !important;
}

body .footer .pill i {
    color: #ffbe72 !important;
}

body .footer {
    padding: 28px 0 34px !important;
    margin-top: 44px !important;
}

body .footer-shell {
    padding: 0 !important;
}

body .footer-grid,
body .footer-note-grid {
    align-items: start !important;
    gap: 18px !important;
}

body .footer .footer-grid > div:first-child > p:first-of-type,
body .footer .footer-note-grid > div:first-child > p:first-of-type,
body .footer .footer-grid > div:not(:first-child),
body .footer .footer-note-grid > div:not(:first-child),
body .footer .footer-note-grid ul,
body .footer .footer-grid ul {
    display: none !important;
}

body .footer .footer-grid > div:first-child,
body .footer .footer-note-grid > div:first-child {
    width: 100% !important;
}

body .footer .pill-row,
body .footer .hero-tags {
    justify-content: flex-start !important;
}

body[data-page="section-1"] .hero-shell,
body[data-page="section-2"] .hero-shell,
body[data-page="section-4"] .hero-shell,
body[data-page="section-5"] .hero-shell,
body[data-page="section-6"] .hero-shell,
body[data-page="section-7"] .hero-shell {
    border-radius: 34px !important;
    padding: 30px 24px 34px !important;
    box-shadow:
        0 20px 44px rgba(15, 63, 103, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.82) !important;
    overflow: hidden !important;
}

body[data-page="section-1"] .hero-shell,
body[data-page="section-2"] .hero-shell,
body[data-page="section-6"] .hero-shell,
body[data-page="section-7"] .hero-shell {
    background: linear-gradient(180deg, rgba(20, 84, 137, 0.96), rgba(28, 97, 150, 0.96)) !important;
    border: 1px solid rgba(95, 224, 230, 0.18) !important;
}

body[data-page="section-1"] .hero-shell .eyebrow,
body[data-page="section-2"] .hero-shell .eyebrow,
body[data-page="section-6"] .hero-shell .eyebrow,
body[data-page="section-7"] .hero-shell .eyebrow {
    color: #5fe0e6 !important;
}

body[data-page="section-1"] .hero-shell h1,
body[data-page="section-2"] .hero-shell h1,
body[data-page="section-6"] .hero-shell h1,
body[data-page="section-7"] .hero-shell h1,
body[data-page="section-1"] .hero-shell .lead,
body[data-page="section-2"] .hero-shell .lead,
body[data-page="section-6"] .hero-shell .lead,
body[data-page="section-7"] .hero-shell .lead {
    color: #edf7ff !important;
}

body[data-page="section-1"] .hero-shell .btn-outline,
body[data-page="section-2"] .hero-shell .btn-outline,
body[data-page="section-6"] .hero-shell .btn-outline,
body[data-page="section-7"] .hero-shell .btn-outline {
    background: rgba(233, 244, 255, 0.96) !important;
    color: #1b4262 !important;
    border-color: rgba(255, 255, 255, 0.24) !important;
}

body[data-page="section-3"] .documents-intro {
    background: linear-gradient(180deg, rgba(16, 69, 114, 0.98), rgba(24, 93, 146, 0.96)) !important;
    border: 1px solid rgba(95, 224, 230, 0.18) !important;
    border-radius: 32px !important;
    box-shadow: 0 22px 42px rgba(15, 63, 103, 0.14) !important;
}

body[data-page="section-3"] .documents-intro .eyebrow,
body[data-page="section-3"] .documents-intro h1,
body[data-page="section-3"] .documents-intro .lead,
body[data-page="section-3"] .documents-intro strong,
body[data-page="section-3"] .documents-intro span {
    color: #edf7ff !important;
}

body[data-page="section-3"] .documents-intro .metric-card {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow: none !important;
}

body[data-page="section-3"] .documents-intro .btn-outline {
    background: rgba(255, 255, 255, 0.96) !important;
    color: #1b4262 !important;
    border-color: rgba(255, 255, 255, 0.24) !important;
}

body[data-page="section-4"] .outlook-hero-panel,
body[data-page="section-5"] .references-hero-panel {
    padding: 32px !important;
    border-radius: 34px !important;
    box-shadow:
        0 18px 38px rgba(15, 63, 103, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.84) !important;
}

body[data-page="section-6"] .hero-panel {
    background: linear-gradient(180deg, rgba(15, 63, 103, 0.98), rgba(21, 84, 132, 0.96)) !important;
    border: 1px solid rgba(95, 224, 230, 0.14) !important;
    border-radius: 32px !important;
    box-shadow: 0 18px 38px rgba(9, 36, 60, 0.18) !important;
}

body[data-page="section-6"] .hero-panel .panel-kicker,
body[data-page="section-6"] .hero-panel strong {
    color: #5fe0e6 !important;
}

body[data-page="section-6"] .hero-panel .panel-title,
body[data-page="section-6"] .hero-panel .metric-card span,
body[data-page="section-6"] .hero-panel span {
    color: #edf7ff !important;
}

body[data-page="section-6"] .hero-panel .metric-card {
    background: linear-gradient(180deg, rgba(10, 46, 76, 0.96), rgba(16, 65, 106, 0.94)) !important;
    border: 1px solid rgba(95, 224, 230, 0.14) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

body[data-page="section-6"] .hero-panel .metric-grid .metric-card,
body[data-page="section-6"] .hero-panel .metric-grid .metric-card:hover {
    background: linear-gradient(180deg, rgba(10, 46, 76, 0.98), rgba(15, 63, 103, 0.96)) !important;
    border: 1px solid rgba(95, 224, 230, 0.16) !important;
    border-radius: 26px !important;
    box-shadow:
        0 14px 28px rgba(9, 36, 60, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

body[data-page="section-6"] .hero-panel .metric-card strong,
body[data-page="section-6"] .hero-panel .metric-card span {
    color: #edf7ff !important;
}

body[data-page="section-6"] .hero-panel .metric-card .count,
body[data-page="section-6"] .hero-panel .metric-card strong,
body[data-page="section-6"] .hero-panel .metric-card span,
body[data-page="section-6"] .hero-panel .metric-card p {
    color: #edf7ff !important;
    opacity: 1 !important;
}

body[data-page="section-5"] .filter-bar {
    background: #0f3f67 !important;
    border: 1px solid rgba(95, 224, 230, 0.12) !important;
    border-radius: 26px !important;
    padding: 14px !important;
    box-shadow: 0 14px 28px rgba(11, 41, 65, 0.12) !important;
}

body[data-page="section-5"] .filter-chip {
    background: rgba(255, 255, 255, 0.07) !important;
    color: #edf7ff !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
}

body[data-page="section-5"] .filter-chip.is-active,
body[data-page="section-5"] .filter-chip:hover {
    background: linear-gradient(135deg, rgba(13, 143, 160, 0.94), rgba(246, 139, 31, 0.92)) !important;
    color: #ffffff !important;
    border-color: transparent !important;
}

body[data-page="section-5"] .references-hero-copy .hero-tag {
    background: rgba(255, 255, 255, 0.92) !important;
    color: #17344c !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
}

body[data-page="section-5"] .references-hero-copy .hero-tag i {
    color: #0d8fa0 !important;
}

body[data-page="section-6"] .quality-hero-note strong {
    display: none !important;
}

body[data-page="section-6"] .quality-hero-note p {
    color: #edf7ff !important;
    font-size: 1.02rem !important;
}

body:not([data-page]) .portal-card {
    background: linear-gradient(180deg, rgba(15, 63, 103, 0.96), rgba(25, 88, 139, 0.94)) !important;
    border: 1px solid rgba(95, 224, 230, 0.16) !important;
    border-radius: 28px !important;
    box-shadow: 0 18px 38px rgba(15, 63, 103, 0.14) !important;
}

body:not([data-page]) .portal-card:hover {
    background: linear-gradient(180deg, rgba(18, 72, 117, 0.98), rgba(31, 104, 157, 0.96)) !important;
}

body:not([data-page]) .portal-card h3,
body:not([data-page]) .portal-card p,
body:not([data-page]) .portal-card .portal-link {
    color: #edf7ff !important;
}

body:not([data-page]) .portal-card .portal-badge {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #edf7ff !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

body:not([data-page]) .portal-card .portal-badge i {
    color: #5fe0e6 !important;
}
