/* Parker's blue palette. Loaded last across both frontend versions. */
:root {
    --parker-blue: #014577;
    --parker-blue-hover: #01365e;
    --parker-ocean: #075c94;
    --parker-sky: #9dd5f5;
    --parker-ink: #102f49;
    --parker-text: #465f75;
    --parker-muted: #536e84;
    --parker-line: #d2e3ef;
    --parker-tint: #eaf4fc;
    --parker-surface: #f5f9fc;
    --parker-night: #06263f;
    --parker-action: linear-gradient(120deg, #075c94, #014577);
}
body.theme-glass {
    color: var(--parker-text);
    background-color: var(--parker-surface);
    background-image: radial-gradient(ellipse at 0 12%, #ddecf8 0, transparent 36%), radial-gradient(ellipse at 100% 50%, #e8f4fa 0, transparent 40%);
    --glass-shadow: 0 12px 40px #0145770d;
}
body.theme-glass #content :is(.content-intro h2, .article-heading h2, .sd-overview h2) { color: var(--parker-ink); }
body.theme-glass #content :is(.text-light, .section-dark, .bg-dark, .bg-color) :is(h1, h2, h3, h4, h5, h6),
body.theme-glass #content :is(.text-light, .section-dark, .bg-dark, .bg-color):is(h1, h2, h3, h4, h5, h6) { color: #fff; }
body.theme-glass #content .text-light p { color: #d8e8f4; }
body.theme-glass #content .text-light .subtitle { color: #fff; }

/* A strong primary action and clear secondary surfaces. */
body.theme-glass #wrapper .btn-main.action-cta,
body.theme-glass #content .btn-main,
body.theme-glass #content a.btn-main:visited,
body.theme-glass #content #hero-slider .hero-cta {
    border-color: #ffffff40;
    background: var(--parker-action) !important;
    color: #fff !important;
    box-shadow: 0 8px 24px #01457729, inset 0 1px 0 #ffffff38;
}
body.theme-glass #content .btn-main.bg-white { background: #fff !important; color: var(--parker-blue) !important; }
body.theme-glass #wrapper .btn-main.action-cta:hover,
body.theme-glass #content .btn-main:hover,
body.theme-glass #content #hero-slider .hero-cta:hover {
    background: linear-gradient(120deg, #014577, #01365e) !important;
    color: #fff !important;
    box-shadow: 0 12px 28px #01457738;
}
body.theme-glass #content .btn-main.bg-white:hover { background: #eaf4fc !important; color: var(--parker-blue-hover) !important; }
body.theme-glass :is(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid #0284c7; outline-offset: 4px; }
body.theme-glass :is(.text-light, .section-dark, .site-footer, #extra-wrap) :is(a, button, summary):focus-visible { outline-color: #9dd5f5; }
body.theme-glass :is(.form-control, .form-select):focus { border-color: #0876ad; box-shadow: 0 0 0 4px #0876ad24; background-color: #fff; }
body.theme-glass :is(input, textarea)::placeholder { color: #61758a; opacity: 1; }
body.theme-glass :is(input[type="checkbox"], input[type="radio"]) { accent-color: var(--parker-blue); }
body.theme-glass .subtitle,
body.theme-glass .badge { color: var(--parker-blue); background: #eaf4fc; border-color: #c4dfef; }
body.theme-glass .text-light :is(.subtitle, .badge) { color: #fff; background: #ffffff16; border-color: #ffffff40; }

/* Readable navigation on transparent and white header states. */
header.site-header:not(.is-sticky):not(.menu-open) {
    left: 16px;
    right: 16px;
    width: auto;
    border: 1px solid #ffffff24;
    border-radius: 20px;
    background: linear-gradient(110deg, #06263fe6, #014577b3) !important;
    box-shadow: 0 8px 28px #031c311c;
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
}
header.site-header:not(.is-sticky):not(.menu-open) #mainmenu > li > a { color: #fff; }
header.site-header:not(.is-sticky):not(.menu-open) #mainmenu > li:is(:hover, :focus-within) > a { color: #b8e3ff; }
header.site-header:is(.is-sticky, .menu-open) #mainmenu > li > a { color: var(--parker-ink); }
header.site-header:is(.is-sticky, .menu-open) #mainmenu > li:is(:hover, :focus-within) > a { color: var(--parker-blue); }
header.site-header.is-sticky { border-bottom-color: #d2e3ef; box-shadow: 0 4px 24px #01457712; }
.site-header #mainmenu li li:is(:hover, :focus-within) > a { color: #014577; background: #eaf4fc; }
.site-header #mainmenu li li:is(:hover, :focus-within) .dropdown-menu-icon { color: #014577; background: #dceefa; border-color: #b8d9ef; }

/* White cards, blue accents and deep navy contrast sections. */
body.theme-glass #content .modern-service-card { background: linear-gradient(145deg, #07517f, #06263f) !important; border-color: #ffffff2b; box-shadow: 0 12px 30px #01457719; }
body.theme-glass #content .modern-service-card p { color: #e0edf7; }
body.theme-glass #content .modern-service-card span { color: #b8e3ff; }
body.theme-glass #content .modern-service-card:hover { border-color: #9dd5f5; }
body.theme-glass #content :is(.glass-card, .review-card, .post-card, .media-card, .home-service-card, .why-benefit, .sd-option) { border-color: #d9e7f2; }
body.theme-glass #content :is(.glass-card, .review-card, .post-card, .media-card, .home-service-card, .why-benefit, .sd-option):hover { border-color: #9bc9e8; }
body.theme-glass #content :is(#vision-values, #supply-chain-solutions, #shipping-checklist).bg-light { background: linear-gradient(120deg, #eaf4fc, #f5faff) !important; }
body.theme-glass #content #trade-lanes.route-planning { background: radial-gradient(ellipse at 90% 0, #0876ad66, transparent 60%), linear-gradient(125deg, #06263f, #014577) !important; }
body.theme-glass #content #trade-lanes :is(h2, h3) { color: #fff; }
body.theme-glass #content .bg-color { background-color: #014577; }
body.theme-glass #content .feature-glass { background: #06263fdf; }
body.theme-glass #content .content-bottom-cta { border-color: #cfe3f2; background: linear-gradient(120deg, #e3f1fc, #f4faff); }
body.theme-glass #content .content-bottom-cta h3 { color: #014577; }

/* Small print needs contrast as much as headings do. */
body.theme-glass #content :is(.content-intro p, .content-note, .content-filter-count, .post-meta, .post-card p, .blog-feature p, .media-card-caption p, .article-section p, .content-bottom-cta p) { color: #536e84; }
body.theme-glass #content :is(.faq-question-number, .faq-toolbar p, .faq-results-count, .career-results-count, .booking-inline-hint, .booking-required-note) { color: #536e84; }
body.theme-glass #content :is(.review-person small, .contact-form-footnote, .booking-submit-row p, .sd-section-label, .sd-section-number) { color: #536e84; }
body.theme-glass #content :is(.home-service-link, .services-all-link, .why-about-link, .faq-view-all, .shipper-view-all, .post-read-link, .sd-secondary-link) { color: #014577; }
body.theme-glass #home-why-choose .why-about-link { color: #b8e3ff; }
body.theme-glass #home-why-choose .why-benefit-number,
body.theme-glass #shipping-resources :is(.shipper-tool-label, .shipper-preview-arrow) { color: #536e84; }
body.theme-glass #content .content-filters button[aria-pressed="true"],
body.theme-glass #home-faq .faq-filters button[aria-pressed="true"],
body.theme-glass #faq-page .faq-categories button[aria-pressed="true"] { color: #fff; background: #014577; border-color: #014577; }
body.theme-glass #faq-page .faq-categories button[aria-pressed="true"] > i { color: #fff; }
body.theme-glass #faq-page .faq-categories button[aria-pressed="true"] > span { background: #ffffff24; color: #fff; }
body.theme-glass #faq-page :is(.faq-page-intro > p, .faq-answer p, .faq-toolbar p, .faq-resource-note),
body.theme-glass #faq-page .faq-categories button:not([aria-pressed="true"]) > span { color: #536e84; }
body.theme-glass #faq-page #faq-count { color: #536e84; }
body.theme-glass #content :is(.contact-info small, .contact-form-card > p, .contact-form-card label, .booking-next li) { color: #536e84; }
body.theme-glass #booking-page .booking-summary-label { color: #c6dbea; }
body.theme-glass #content .resources-hub :is(p, label, dd, .resources-shortcuts small, .resources-shortcuts a > span:last-child) { color: #536e84; }
body.theme-glass .resources-hub :is(.resources-intro p, #cargo-calculator p, #shipping-checklist p, #incoterms p, #incoterms dd, .resources-shortcuts small, .resource-form label, .resources-shortcuts a > span:last-child) { color: #536e84; }
body.theme-glass .resources-hub :is(.resources-intro p a, #cargo-calculator .ms-3, #incoterms a) { color: #014577; }
body.theme-glass #service-detail .sd-nav h2 { color: #536e84; }
body.theme-glass #about-expertise p,
body.theme-glass .tracking-modern :is(.tracking-form-card > p, .tracking-input-hint, .tracking-reference-help, .tracking-help-card p) { color: #536e84; }
body.theme-glass #content :is(.media-card-caption > span, .content-bottom-cta > a:not(.btn-main), .article-takeaway) { color: #014577; }
body.theme-glass #content .article-aside a { color: #465f75; }
body.theme-glass #trade-lanes :is(.route-endpoint-label, .route-small-label, .route-markets > span) { color: #c6dbea; }
body.theme-glass #home-faq .faq-question[open],
body.theme-glass #faq-page .faq-page-question[open] { border-color: #9bc9e8; box-shadow: 0 8px 24px #0145770d; }

/* Dark surfaces use pale text and ice-blue accents. */
body.theme-glass footer.site-footer { background: radial-gradient(ellipse at 0 0, #075c9466, transparent 60%), #06263f; border-top-color: #a8d8f52b; }
.site-footer :is(.footer-invitation p, .footer-brand-copy, .footer-links a, .footer-contact-item small, .footer-bottom, .footer-bottom a) { color: #c6dbea; }
.site-footer :is(.footer-eyebrow, .footer-contact-icon, .footer-contact-link, .footer-brand-note > span:first-child) { color: #9dd5f5; }
.site-footer :is(.footer-links a, .footer-bottom a, .footer-contact-link):hover { color: #fff; }
body.theme-glass .site-footer .footer-bottom > div > span { color: #b8d5e9; }
.site-footer .footer-contact-card { border-color: #a8d8f533; background: linear-gradient(135deg, #9dd5f50f, #ffffff05); }
body.theme-glass #extra-wrap { background: #06263f; color: #d8e8f4; }
body.theme-glass #extra-wrap :is(h3, h4, h5) { color: #fff; }
.floating-actions .scroll-progress-top { color: #014577; }
.floating-actions .scroll-progress-value { stroke: #014577; }
#hero-video .hero-video-shade { background: linear-gradient(90deg, #031c31e6, #042941a8 55%, #04294140), linear-gradient(0deg, #031c31b3, transparent 55%); }
#hero-slider .sw-overlay { background-color: #031c31; opacity: .6; }
#hero-slider .hero-controls .swiper-pagination-current { color: #fff; }
#hero-slider .hero-controls .swiper-pagination-total { color: #c4e1f5; }
@media (max-width: 993px) {
    header.site-header #mainmenu > li > a,
    header.site-header #mainmenu li li a { color: var(--parker-ink); }
}
@media (prefers-reduced-motion: reduce) {
    body.theme-glass #content :is(.btn-main, .modern-service-card):hover { transform: none; }
}
