/* Modern Airline Retailing — premium light interface, 2026-08-09 */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root,
html[data-theme="light"],
html[data-theme="dark"] {
  color-scheme: light only;
  --mar-white: #ffffff;
  --mar-canvas: #ffffff;
  --mar-subtle: #f8f9fb;
  --mar-soft: #f3f5f7;
  --mar-ink: #111318;
  --mar-ink-soft: #30343b;
  --mar-muted: #6f747d;
  --mar-faint: #989da6;
  --mar-line: #e7e8eb;
  --mar-line-strong: #d7d9de;
  --mar-accent: #2557d6;
  --mar-accent-soft: #eef3ff;
  --mar-radius-sm: 10px;
  --mar-radius: 16px;
  --mar-radius-lg: 24px;
  --mar-shadow-sm: 0 1px 2px rgba(17, 19, 24, .04);
  --mar-shadow: 0 12px 36px rgba(17, 19, 24, .08);
  --mar-shadow-lg: 0 28px 80px rgba(17, 19, 24, .12);
  --mar-font-body: "DM Sans", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mar-font-display: Manrope, "DM Sans", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html,
html[data-theme],
body,
body.has-site-chrome {
  background: var(--mar-canvas) !important;
  color: var(--mar-ink) !important;
}

html { scroll-behavior: smooth; }

body,
button,
input,
select,
textarea {
  font-family: var(--mar-font-body) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body { letter-spacing: -.012em; }

h1, h2, h3, h4, h5, h6,
.title, .subtitle,
.nav-brand,
.button,
button {
  font-family: var(--mar-font-display) !important;
}

a { color: var(--mar-accent); }
a:hover { color: #173f9f; }

::selection { background: #dbe6ff; color: var(--mar-ink); }

/* Global chrome */
.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255, 255, 255, .92) !important;
  border-bottom: 1px solid rgba(231, 232, 235, .92) !important;
  box-shadow: none !important;
  backdrop-filter: saturate(160%) blur(20px);
  -webkit-backdrop-filter: saturate(160%) blur(20px);
}

.site-nav {
  width: min(100% - 40px, 1440px) !important;
  min-height: 70px;
  margin-inline: auto;
  gap: clamp(16px, 2vw, 32px) !important;
}

.nav-brand {
  gap: 10px !important;
  color: var(--mar-ink) !important;
  font-size: .94rem !important;
  font-weight: 750 !important;
  letter-spacing: -.035em !important;
  white-space: nowrap;
}

.brand-mark {
  width: 38px !important;
  height: 38px !important;
  flex: 0 0 38px;
  overflow: hidden;
  background: var(--mar-white) !important;
  border: 1px solid var(--mar-line) !important;
  border-radius: 11px !important;
  box-shadow: var(--mar-shadow-sm) !important;
}

.brand-mark img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
}

.nav-links { gap: 1px !important; }

.nav-top-link,
.nav-mega > summary {
  min-height: 38px !important;
  padding: 8px 10px !important;
  color: #555a63 !important;
  border-radius: 9px !important;
  font-size: .82rem !important;
  font-weight: 650 !important;
  letter-spacing: -.01em !important;
}

.nav-top-link:hover,
.nav-top-link:focus-visible,
.nav-top-link.is-active,
.nav-mega > summary:hover,
.nav-mega > summary:focus-visible,
.nav-mega.is-active > summary,
.nav-mega[open] > summary {
  color: var(--mar-ink) !important;
  background: var(--mar-soft) !important;
}

.nav-mega > summary small { display: none !important; }
.nav-actions { gap: 8px !important; }
.theme-toggle { display: none !important; }

.nav-search-link,
.mar-auth-slot button,
.mar-auth-slot a {
  min-height: 38px;
  border-radius: 10px !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
}

.nav-search-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 11px;
  color: var(--mar-ink-soft) !important;
  background: var(--mar-white) !important;
  border: 1px solid var(--mar-line-strong) !important;
  box-shadow: var(--mar-shadow-sm) !important;
  text-decoration: none;
}

.nav-search-link:hover { border-color: #aaaeb6 !important; }

.nav-toggle span { background: var(--mar-ink) !important; }

/* Mega menus */
.mart-mega,
html[data-theme] .mart-mega {
  background: rgba(255, 255, 255, .98) !important;
  color: var(--mar-ink) !important;
  border: 1px solid var(--mar-line) !important;
  border-radius: 20px !important;
  box-shadow: var(--mar-shadow-lg) !important;
  backdrop-filter: blur(24px) !important;
}

.mart-mega__intro,
.mart-mega__group,
html[data-theme] .mart-mega__intro,
html[data-theme] .mart-mega__group {
  background: var(--mar-white) !important;
  border: 1px solid var(--mar-line) !important;
  border-radius: 14px !important;
}

.mart-mega__intro { background: var(--mar-subtle) !important; }
.mart-mega strong, .mart-mega a { color: var(--mar-ink) !important; }
.mart-mega p { color: var(--mar-muted) !important; }
.mart-mega__group a:hover { color: var(--mar-accent) !important; }

.mart-mega__mark,
.mart-mega__icon {
  color: var(--mar-accent) !important;
  background: var(--mar-accent-soft) !important;
  border-color: #dce6ff !important;
}

/* Page foundations */
main,
main .section,
.section,
.hero,
.hero.is-landing,
footer.footer {
  background: var(--mar-white) !important;
  color: var(--mar-ink) !important;
}

.container { width: min(100% - 40px, 1240px); }

.section {
  padding-top: clamp(4.5rem, 7vw, 7.5rem) !important;
  padding-bottom: clamp(4.5rem, 7vw, 7.5rem) !important;
  border-bottom: 1px solid var(--mar-line) !important;
}

main > .section:nth-of-type(even),
main > section:nth-of-type(even):not(.hero) {
  background: var(--mar-subtle) !important;
}

h1, h2, h3, h4, h5, h6,
.title,
html[data-theme] h1,
html[data-theme] h2,
html[data-theme] h3 {
  color: var(--mar-ink) !important;
  background: none !important;
  -webkit-text-fill-color: var(--mar-ink) !important;
  letter-spacing: -.045em !important;
}

h1, .title.is-1 { font-weight: 780 !important; }
h2, .title.is-2, .title.is-3 { font-weight: 740 !important; }
h3, h4, .title.is-4 { font-weight: 700 !important; }

p, li,
.subtitle,
html[data-theme] p,
html[data-theme] li {
  color: var(--mar-muted);
}

.hero,
.hero.is-landing {
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid var(--mar-line) !important;
}

.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  background:
    radial-gradient(circle at 12% 12%, rgba(37, 87, 214, .075), transparent 28%),
    radial-gradient(circle at 88% 8%, rgba(72, 201, 228, .09), transparent 24%) !important;
}

.hero .hero-body,
.hero .container { position: relative; z-index: 1; }
.hero .container { max-width: 1120px !important; }

.hero.is-landing .hero-body {
  padding: clamp(5.5rem, 9vw, 9rem) 1.5rem !important;
}

.hero.is-landing .title.is-1 {
  display: block !important;
  max-width: 1040px;
  margin-inline: auto !important;
  color: var(--mar-ink) !important;
  background: none !important;
  font-size: clamp(3.1rem, 7vw, 6.2rem) !important;
  font-weight: 780 !important;
  line-height: .98 !important;
  letter-spacing: -.067em !important;
  text-wrap: balance;
}

.hero .subtitle {
  max-width: 760px;
  margin-inline: auto;
  color: var(--mar-muted) !important;
  font-size: clamp(1.04rem, 1.6vw, 1.25rem) !important;
  line-height: 1.65 !important;
}

.knowledge-eyebrow,
.visibility-eyebrow,
.mar-ai-kicker,
[class*="eyebrow"] {
  color: var(--mar-accent) !important;
  font-size: .7rem !important;
  font-weight: 750 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase;
}

/* Buttons and controls */
.button,
.hero-cta,
.mar-ai-submit,
button:not(.nav-toggle):not(.mar-ai-drawer__close) {
  min-height: 42px;
  border-radius: var(--mar-radius-sm) !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

.hero-cta,
.mar-ai-submit,
.button.is-primary,
.button.is-link:not(.is-light) {
  color: #fff !important;
  background: var(--mar-ink) !important;
  border: 1px solid var(--mar-ink) !important;
}

.hero-cta:hover,
.mar-ai-submit:hover,
.button.is-primary:hover,
.button.is-link:not(.is-light):hover {
  color: #fff !important;
  background: #30343b !important;
  border-color: #30343b !important;
  transform: translateY(-1px) !important;
}

.lab-shortcut--home,
.button.is-light,
.button.is-link.is-light,
.button.is-outlined {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  border: 1px solid var(--mar-line-strong) !important;
  box-shadow: var(--mar-shadow-sm) !important;
}

input,
select,
textarea,
.input,
.select select,
.textarea,
.mar-ai-input {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  border: 1px solid var(--mar-line-strong) !important;
  border-radius: var(--mar-radius-sm) !important;
  box-shadow: var(--mar-shadow-sm) !important;
}

input:focus,
select:focus,
textarea:focus,
.input:focus,
.select select:focus,
.textarea:focus,
.mar-ai-input:focus {
  border-color: #87a4ee !important;
  box-shadow: 0 0 0 4px rgba(37, 87, 214, .1) !important;
  outline: none !important;
}

/* Cards and discovery surfaces */
.featured-guide-grid,
#featured-cards,
.tools-grid,
.learning-grid,
.systems-grid,
.resource-grid { gap: 20px !important; }

.featured-guide-card,
.post-card,
.tool-card,
.learning-card,
.system-card,
.resource-card,
.mar-ai-panel,
.mar-ai-card,
.visibility-panel,
.linkedin-connect-card,
.card,
.box,
.panel {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  border: 1px solid var(--mar-line) !important;
  border-radius: var(--mar-radius-lg) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.featured-guide-card,
.post-card,
.tool-card,
.learning-card,
.system-card,
.resource-card {
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}

.featured-guide-card:hover,
.post-card:hover,
.tool-card:hover,
.learning-card:hover,
.system-card:hover,
.resource-card:hover {
  transform: translateY(-4px) !important;
  border-color: #cfd2d8 !important;
  box-shadow: var(--mar-shadow) !important;
}

.featured-guide-card h3,
.post-title,
.card h3,
.box h3 { color: var(--mar-ink) !important; }

.featured-guide-card p,
.post-excerpt,
.card p,
.box p { color: var(--mar-muted) !important; }

.post-card {
  max-width: none !important;
  min-height: 380px !important;
  overflow: hidden;
}

.post-media { background: var(--mar-soft) !important; }
.post-media::after { background: linear-gradient(to top, rgba(17, 19, 24, .22), transparent 54%) !important; }

.badge-date,
.img-badge,
.tag {
  color: var(--mar-ink-soft) !important;
  background: rgba(255, 255, 255, .92) !important;
  border: 1px solid rgba(255, 255, 255, .84) !important;
  border-radius: 999px !important;
}

.card-action,
.btn-inline { color: var(--mar-accent) !important; }

/* Home feature sections */
.visibility-panel,
.mar-ai-panel {
  padding: clamp(1.5rem, 4vw, 3.5rem) !important;
  box-shadow: var(--mar-shadow-sm) !important;
}

.mar-ai-section,
.mar-home-chat { background: var(--mar-subtle) !important; }

.mar-ai-input-wrap,
.mar-ai-card,
.mar-ai-empty { background: var(--mar-white) !important; }
.mar-ai-title, .mar-ai-empty strong { color: var(--mar-ink) !important; }
.mar-ai-lede, .mar-ai-empty span { color: var(--mar-muted) !important; }

/* Homepage story and diagnostics — remove the legacy dark panels */
#order-story,
.order-story,
#ai-shopping-lab-preview,
#airline-ai-visibility,
.visibility-shell {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  background-image: none !important;
  border-bottom: 1px solid var(--mar-line) !important;
}

.visibility-shell::before {
  opacity: .42 !important;
  background-image:
    linear-gradient(var(--mar-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--mar-line) 1px, transparent 1px) !important;
}

.visibility-scanner,
#ai-shopping-lab-preview .visibility-scanner,
#airline-ai-visibility .visibility-scanner {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  background-image: none !important;
}

.visibility-title,
.visibility-intro h2,
.visibility-scanner h2 { color: var(--mar-ink) !important; }
.visibility-intro p,
.visibility-lede,
.visibility-note { color: var(--mar-muted) !important; }

.visibility-panel,
.provider-card,
.provider-status,
.scan-result,
.visibility-form-card {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  border: 1px solid var(--mar-line) !important;
  box-shadow: none !important;
}

.order-story__glass,
.order-story__stage,
.order-story__comparison,
.order-story__compare-panel,
.order-story__artifact-group,
.order-story__artifact-card,
.order-story__order-card,
.order-story__workspace,
.order-story__summary,
.order-story__canvas {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  background-image: none !important;
  border-color: var(--mar-line) !important;
  box-shadow: none !important;
}

.order-story__stage,
.order-story__workspace,
.order-story__summary {
  border: 1px solid var(--mar-line) !important;
  border-radius: var(--mar-radius-lg) !important;
}

.order-story__compare-panel--legacy { background: #fffaf5 !important; }
.order-story__compare-panel--order { background: #f5f8ff !important; }
.order-story__artifact-group,
.order-story__artifact-card { background: var(--mar-subtle) !important; }

#order-story h1,
#order-story h2,
#order-story h3,
#order-story h4,
#order-story strong,
#order-story label,
#order-story [class*="title"] { color: var(--mar-ink) !important; }

#order-story p,
#order-story small,
#order-story [class*="lede"],
#order-story [class*="meta"] { color: var(--mar-muted) !important; }

#start-learning,
#explore-mart,
.home-hub-section {
  color: var(--mar-ink) !important;
  background: var(--mar-subtle) !important;
  background-image: none !important;
  border-bottom: 1px solid var(--mar-line) !important;
}

.home-hub-heading h2,
.learning-path-card h3,
.mart-tool-card h3,
.knowledge-metric strong { color: var(--mar-ink) !important; }

.home-hub-heading p,
.learning-path-card p,
.mart-tool-card p,
.knowledge-metric span,
.path-counts { color: var(--mar-muted) !important; }

.learning-path-card,
.mart-tool-card,
.knowledge-metric {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  border: 1px solid var(--mar-line) !important;
  border-radius: var(--mar-radius) !important;
  box-shadow: none !important;
}

.learning-path-card:hover,
.mart-tool-card:hover {
  transform: translateY(-4px) !important;
  border-color: #cfd2d8 !important;
  box-shadow: var(--mar-shadow) !important;
}

.card-pill {
  color: #555a63 !important;
  background: var(--mar-soft) !important;
  border: 1px solid var(--mar-line) !important;
}

.linkedin-connect-card {
  background: var(--mar-subtle) !important;
  box-shadow: none !important;
}

.linkedin-connect-card::after { color: rgba(37, 87, 214, .04) !important; }
.linkedin-connect-card h3 { color: var(--mar-ink) !important; }
.linkedin-connect-card p { color: var(--mar-muted) !important; }
.linkedin-connect-button { background: #0a66c2 !important; color: #fff !important; }

/* Tables */
.table,
table,
.dynamic-matrix {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  border-color: var(--mar-line) !important;
}

.dynamic-matrix {
  overflow: hidden;
  border: 1px solid var(--mar-line) !important;
  border-radius: var(--mar-radius) !important;
}

.table th,
table th,
.dynamic-matrix th {
  color: var(--mar-ink-soft) !important;
  background: var(--mar-soft) !important;
  border-color: var(--mar-line) !important;
}

.table td,
table td,
.dynamic-matrix td { border-color: var(--mar-line) !important; }
.dynamic-matrix .traditional { color: #1849a9 !important; background: #eef4ff !important; }
.dynamic-matrix .adjustment { color: #8b4513 !important; background: #fff8e8 !important; }
.dynamic-matrix .dynamic { color: #08724e !important; background: #ecf9f2 !important; }
.dynamic-matrix .empty { color: var(--mar-faint) !important; background: var(--mar-subtle) !important; }

/* Breadcrumbs */
.site-breadcrumbs { color: var(--mar-faint) !important; }
.site-breadcrumbs a { color: var(--mar-muted) !important; }
.site-breadcrumbs [aria-current="page"] { color: var(--mar-faint) !important; }

/* Floating MAR assistant: glass-white, never a dark neon orb */
.lab-shortcut.lab-shortcut--icon-only,
.lab-shortcut--icon-only,
[data-assistant-launcher="true"]:not(.lab-shortcut--home) {
  color: var(--mar-ink) !important;
  background: rgba(255, 255, 255, .82) !important;
  border: 1px solid rgba(215, 217, 222, .95) !important;
  box-shadow: 0 12px 38px rgba(17, 19, 24, .14) !important;
  backdrop-filter: saturate(170%) blur(18px) !important;
  -webkit-backdrop-filter: saturate(170%) blur(18px) !important;
}

.lab-shortcut.lab-shortcut--icon-only:hover,
[data-assistant-launcher="true"]:not(.lab-shortcut--home):hover {
  color: var(--mar-ink) !important;
  background: rgba(255, 255, 255, .96) !important;
  border-color: #c7cad0 !important;
  box-shadow: 0 16px 44px rgba(17, 19, 24, .17) !important;
}

.lab-shortcut__pulse { display: none !important; }
.lab-shortcut:not(.lab-shortcut--home)::before,
.lab-shortcut:not(.lab-shortcut--home)::after {
  opacity: 0 !important;
  background: none !important;
  background-image: none !important;
  animation: none !important;
}
.lab-shortcut__icon,
.lab-shortcut__icon::before,
.lab-shortcut__icon::after { color: var(--mar-ink) !important; border-color: var(--mar-ink) !important; }

.lab-shortcut--expanded::after {
  content: "Ask MAR";
  color: var(--mar-ink) !important;
  font-family: var(--mar-font-display) !important;
  font-size: .78rem;
  font-weight: 700;
}

.mar-ai-drawer::before {
  background: rgba(17, 19, 24, .25) !important;
  backdrop-filter: blur(6px) !important;
}

.mar-ai-drawer__panel,
.mar-ai-drawer__header,
.mar-ai-drawer__body,
.mar-ai-drawer .mar-ai-form {
  color: var(--mar-ink) !important;
  background: rgba(255, 255, 255, .98) !important;
  border-color: var(--mar-line) !important;
}

.mar-ai-drawer__title { color: var(--mar-ink) !important; }
.mar-ai-drawer__desc { color: var(--mar-muted) !important; }
.mar-ai-drawer__close { color: var(--mar-ink) !important; background: var(--mar-soft) !important; }

/* Consent prompt follows the same calm, light surface language. */
.cookie-consent-banner {
  color: var(--mar-ink) !important;
  background: rgba(255, 255, 255, .96) !important;
  border: 1px solid var(--mar-line) !important;
  box-shadow: var(--mar-shadow-lg) !important;
  backdrop-filter: blur(20px) !important;
}

.cookie-consent-banner__title,
.cookie-consent-banner label { color: var(--mar-ink) !important; }
.cookie-consent-banner__message { color: var(--mar-muted) !important; }
.cookie-consent-banner__button { color: #fff !important; background: var(--mar-ink) !important; }
.cookie-consent-banner__link { color: var(--mar-accent) !important; }

/* Light footer to preserve the white editorial character */
.site-footer,
html[data-theme] .site-footer {
  margin-top: 0 !important;
  color: var(--mar-muted) !important;
  background: var(--mar-subtle) !important;
  border-top: 1px solid var(--mar-line) !important;
}

.site-footer strong,
.footer-group > strong { color: var(--mar-ink) !important; }
.site-footer p { color: var(--mar-muted) !important; }
.site-footer a { color: #555a63 !important; }
.site-footer a:hover { color: var(--mar-ink) !important; }
.footer-bottom { border-color: var(--mar-line) !important; }

@media (min-width: 1024px) {
  #featured-cards { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 1100px) {
  .nav-links {
    background: rgba(255, 255, 255, .98) !important;
    border: 1px solid var(--mar-line) !important;
    box-shadow: var(--mar-shadow-lg) !important;
    backdrop-filter: blur(20px);
  }

  .nav-links[data-open="true"] { border-radius: 16px !important; }
  .nav-top-link, .nav-mega > summary { width: 100%; }
  .mart-mega { box-shadow: none !important; }
}

@media (max-width: 760px) {
  .site-nav, .container { width: min(100% - 24px, 1240px) !important; }
  .site-nav { min-height: 64px; }
  .nav-search-link { display: none; }
  .hero.is-landing .hero-body { padding: 4.5rem 1rem !important; }
  .hero.is-landing .title.is-1 { font-size: clamp(2.65rem, 13vw, 4.2rem) !important; }
  .section { padding-top: 4rem !important; padding-bottom: 4rem !important; }
  .featured-guide-card, .post-card, .tool-card, .learning-card, .card, .box { border-radius: 18px !important; }
}

@media (max-width: 430px) {
  .nav-brand > span:last-child { max-width: 132px; font-size: .72rem; line-height: 1.15; white-space: normal; }
  .brand-mark { width: 35px !important; height: 35px !important; flex-basis: 35px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation: none !important;
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* 2026-08-09: full light-surface and contrast audit */
:root,
html[data-theme="light"],
html[data-theme="dark"] {
  --mar-ink: #111318;
  --mar-ink-soft: #30343b;
  --mar-muted: #4b515b;
  --mar-faint: #686f7a;
}

/* Editorial pages: legacy post.css used pale dark-theme type on newly white cards. */
body.has-site-chrome .page-content,
body.has-site-chrome main.page-content {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
}

body.has-site-chrome .section .container.content,
body.has-site-chrome .section .container .content {
  color: var(--mar-ink-soft) !important;
  background: var(--mar-white) !important;
  background-image: none !important;
  border: 1px solid var(--mar-line) !important;
  box-shadow: 0 16px 44px rgba(17, 19, 24, .08) !important;
}

body.has-site-chrome .section .container.content :is(p, li, dd, dt, figcaption, em, small),
body.has-site-chrome .section .container .content :is(p, li, dd, dt, figcaption, em, small) {
  color: var(--mar-ink-soft) !important;
}

body.has-site-chrome .section .container.content :is(h1, h2, h3, h4, h5, h6, strong, b),
body.has-site-chrome .section .container .content :is(h1, h2, h3, h4, h5, h6, strong, b) {
  color: var(--mar-ink) !important;
}

body.has-site-chrome .section .container.content :is(.box, .callout, .toc, blockquote),
body.has-site-chrome .section .container .content :is(.box, .callout, .toc, blockquote) {
  color: var(--mar-ink-soft) !important;
  background: var(--mar-subtle) !important;
  border-color: var(--mar-line) !important;
}

body.has-site-chrome .section .container.content :is(.box, .callout, .toc, blockquote) :is(p, li, strong),
body.has-site-chrome .section .container .content :is(.box, .callout, .toc, blockquote) :is(p, li, strong) {
  color: var(--mar-ink-soft) !important;
}

body.has-site-chrome .section .container.content a,
body.has-site-chrome .section .container .content a {
  color: #1d4ed8 !important;
}

body.has-site-chrome .section .container.content a:hover,
body.has-site-chrome .section .container .content a:hover {
  color: #173f9f !important;
}

body.has-site-chrome .section .container.content :is(table, table tr, table tbody tr:nth-child(odd), table.table.is-striped tbody tr:not(.is-selected):nth-child(even)),
body.has-site-chrome .section .container .content :is(table, table tr, table tbody tr:nth-child(odd), table.table.is-striped tbody tr:not(.is-selected):nth-child(even)) {
  color: var(--mar-ink-soft) !important;
  background: var(--mar-white) !important;
}

body.has-site-chrome .section .container.content :is(th, td),
body.has-site-chrome .section .container .content :is(th, td) {
  color: var(--mar-ink-soft) !important;
  border-color: var(--mar-line) !important;
}

body.has-site-chrome .section .container.content th,
body.has-site-chrome .section .container .content th {
  color: var(--mar-ink) !important;
  background: var(--mar-soft) !important;
}

body.has-site-chrome .section .container.content code,
body.has-site-chrome .section .container .content code {
  color: #172033 !important;
  background: #eef2f7 !important;
  border-color: #d8dde6 !important;
}

body.has-site-chrome .section .container.content pre,
body.has-site-chrome .section .container .content pre,
body.has-site-chrome .section .container.content pre code,
body.has-site-chrome .section .container .content pre code {
  color: #eef4ff !important;
  background: #172033 !important;
}

/* Blog mastheads are light editorial surfaces, not leftover dark image overlays. */
.hero-banner,
.hero.is-medium.hero-banner {
  color: var(--mar-ink) !important;
  background: var(--mar-subtle) !important;
  background-image: none !important;
  border-bottom: 1px solid var(--mar-line) !important;
}

.hero-banner .overlay {
  background: transparent !important;
}

.hero-banner :is(.title, .subtitle, .has-text-white) {
  color: var(--mar-ink) !important;
  -webkit-text-fill-color: var(--mar-ink) !important;
}

.hero-banner .home-btn {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  border-color: var(--mar-line-strong) !important;
}

/* MART tools: move every field, result and chart label onto a readable light palette. */
body:has(.tool-page) {
  background: var(--mar-white) !important;
}

.tool-page {
  --tool-bg: #ffffff;
  --tool-panel: #ffffff;
  --tool-panel-soft: #f6f7f9;
  --tool-border: #dfe2e7;
  --tool-text: #111318;
  --tool-muted: #4b515b;
  --tool-accent: #2563eb;
  --tool-accent-2: #0f9f88;
  --tool-shadow: 0 16px 44px rgba(17, 19, 24, .09);
  color: var(--tool-text) !important;
  background: var(--mar-white) !important;
}

.tool-hero h1 { color: var(--mar-ink) !important; }
.tool-hero p { color: var(--mar-muted) !important; }
.tool-kicker { color: #1d4ed8 !important; }

.tool-panel {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  background-image: none !important;
  border-color: var(--mar-line) !important;
  box-shadow: var(--tool-shadow) !important;
}

.tool-field label,
.tool-field legend,
.tool-panel label {
  color: #374151 !important;
}

.tool-field input,
.tool-field select,
.tool-field textarea {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  border-color: #cfd4dc !important;
}

.tool-field input::placeholder,
.tool-field textarea::placeholder {
  color: #6b7280 !important;
}

.metric {
  color: var(--mar-ink) !important;
  background: var(--mar-subtle) !important;
  border-color: var(--mar-line) !important;
}

.metric span,
.metric small,
.bar-row,
.tool-note {
  color: var(--mar-muted) !important;
}

.metric strong,
.bar-row strong {
  color: var(--mar-ink) !important;
}

.bar-track { background: #e5e7eb !important; }

.insight {
  color: #27313c !important;
  background: #eaf8f5 !important;
  border-left-color: #0f9f88 !important;
}

.tool-button {
  color: #ffffff !important;
  background: #111318 !important;
  border: 1px solid #111318 !important;
}

.tool-button.secondary {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  border-color: #cfd4dc !important;
}

/* AI visibility and shopping forms: labels such as “Airline to measure” must be obvious. */
.visibility-shell :is(label, legend),
.visibility-scanner :is(label, legend),
.visibility-form-card :is(label, legend),
#airline-ai-visibility :is(label, legend),
#ai-shopping-lab-preview :is(label, legend) {
  color: #30343b !important;
  font-weight: 700 !important;
}

.visibility-shell :is(input, select, textarea),
.visibility-scanner :is(input, select, textarea),
.visibility-form-card :is(input, select, textarea) {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  border-color: #cfd4dc !important;
}

.visibility-shell :is(p, small, .help, .visibility-note, .provider-status),
.visibility-scanner :is(p, small, .help, .visibility-note, .provider-status) {
  color: var(--mar-muted) !important;
}

.visibility-shell :is(h2, h3, strong),
.visibility-scanner :is(h2, h3, strong) {
  color: var(--mar-ink) !important;
}

/* Learning paths and completion prompts are light and readable too. */
.knowledge-stats,
.learning-preview,
.learning-hub,
.learning-hero {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  background-image: none !important;
}

.knowledge-intro,
.learning-card p,
.learning-card ul,
.learning-progress__label,
.learning-module p,
.learning-note,
.module-completion p {
  color: var(--mar-muted) !important;
}

.learning-card,
.learning-track,
.learning-module,
.concept-map,
.module-completion__inner {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  background-image: none !important;
  border: 1px solid var(--mar-line) !important;
  box-shadow: none !important;
}

.learning-card :is(h3, a),
.learning-module a,
.concept-node,
.module-completion h2 {
  color: var(--mar-ink) !important;
}

.learning-pill,
.learning-module__status {
  color: #4b515b !important;
  background: var(--mar-soft) !important;
  border: 1px solid var(--mar-line) !important;
}

.concept-node {
  background: var(--mar-subtle) !important;
  border-color: var(--mar-line) !important;
}

.module-completion__button,
.learning-signin-button {
  color: #ffffff !important;
  background: var(--mar-ink) !important;
  border-color: var(--mar-ink) !important;
}

/* The final Unified Order card now belongs to the same premium white system. */
.order-story__compare-panel--unified,
.order-story[data-phase="unified"] .order-story__compare-panel--unified,
.order-story__unified-wrap {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  background-image:
    linear-gradient(var(--mar-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--mar-line) 1px, transparent 1px) !important;
  background-size: 44px 44px !important;
}

.order-story__unified {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
  background-image: none !important;
  border: 1px solid #cfe2dc !important;
  box-shadow: 0 18px 48px rgba(17, 19, 24, .11) !important;
}

.order-story__unified-kicker { color: #08745f !important; }
.order-story__unified h3 { color: var(--mar-ink) !important; }
.order-story__order-id {
  color: #374151 !important;
  background: var(--mar-subtle) !important;
  border-color: var(--mar-line) !important;
}

.order-story__order-items span {
  color: #374151 !important;
  background: #f6f9f8 !important;
  border-color: #dce7e3 !important;
}

.order-story__order-items span[data-right-to-fly],
.order-story__rtf strong {
  color: #08745f !important;
}

.order-story__metric strong { color: var(--mar-ink) !important; }
.order-story__metric span { color: var(--mar-muted) !important; }
.order-story__metrics { border-top-color: var(--mar-line) !important; }
.order-story__metric + .order-story__metric { border-left-color: var(--mar-line) !important; }

/* Personal homepage About section. */
.home-about-section {
  color: var(--mar-ink) !important;
  background: var(--mar-white) !important;
}

.home-about-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
  gap: clamp(2rem, 6vw, 5rem);
  align-items: start;
}

.home-about-copy h2 {
  max-width: 760px;
  margin: .5rem 0 1.25rem;
  font-size: clamp(2.2rem, 5vw, 4.6rem);
  line-height: 1.02;
  text-wrap: balance;
}

.home-about-copy p {
  max-width: 760px;
  color: var(--mar-ink-soft) !important;
  font-size: clamp(1rem, 1.4vw, 1.12rem);
  line-height: 1.8;
}

.home-about-note {
  padding: clamp(1.5rem, 3vw, 2rem);
  color: var(--mar-ink) !important;
  background: var(--mar-subtle) !important;
  border: 1px solid var(--mar-line) !important;
  border-radius: var(--mar-radius-lg);
}

.home-about-note h3 {
  margin: .45rem 0 .8rem;
  font-size: clamp(1.35rem, 2.5vw, 1.9rem);
  line-height: 1.18;
}

.home-about-note p {
  color: var(--mar-muted) !important;
  line-height: 1.7;
}

.home-about-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin-top: 1.25rem;
}

.home-about-actions a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: .7rem .95rem;
  color: var(--mar-ink) !important;
  background: var(--mar-white);
  border: 1px solid var(--mar-line-strong);
  border-radius: 10px;
  font-weight: 700;
  text-decoration: none;
}

.home-about-actions a:first-child {
  color: #ffffff !important;
  background: #0a66c2;
  border-color: #0a66c2;
}

@media (max-width: 820px) {
  .home-about-grid { grid-template-columns: 1fr; }
}
